summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG67
-rw-r--r--INSTALL2
-rw-r--r--SQL/mssql.initial.sql15
-rw-r--r--SQL/mssql.upgrade.sql9
-rw-r--r--SQL/mysql.initial.sql11
-rw-r--r--SQL/mysql.update.sql6
-rw-r--r--SQL/postgres.initial.sql16
-rw-r--r--SQL/postgres.update.sql8
-rw-r--r--SQL/sqlite.initial.sql4
-rw-r--r--SQL/sqlite.update.sql45
-rwxr-xr-xbin/installto.sh17
-rwxr-xr-xbin/update.sh6
-rw-r--r--config/main.inc.php.dist46
-rw-r--r--index.php33
-rw-r--r--installer/check.php4
-rw-r--r--installer/rcube_install.php6
-rw-r--r--plugins/acl/acl.js5
-rw-r--r--plugins/acl/acl.php16
-rw-r--r--plugins/acl/localization/bs_BA.inc89
-rw-r--r--plugins/acl/localization/ca_ES.inc89
-rw-r--r--plugins/acl/localization/cs_CZ.inc76
-rw-r--r--plugins/acl/localization/cy_GB.inc89
-rw-r--r--plugins/acl/localization/da_DK.inc73
-rw-r--r--plugins/acl/localization/de_CH.inc89
-rw-r--r--plugins/acl/localization/de_DE.inc80
-rw-r--r--plugins/acl/localization/en_GB.inc89
-rw-r--r--plugins/acl/localization/es_ES.inc89
-rw-r--r--plugins/acl/localization/fa_IR.inc45
-rw-r--r--plugins/acl/localization/fi_FI.inc61
-rw-r--r--plugins/acl/localization/fr_FR.inc89
-rw-r--r--plugins/acl/localization/he_IL.inc89
-rw-r--r--plugins/acl/localization/hu_HU.inc89
-rw-r--r--plugins/acl/localization/hy_AM.inc89
-rw-r--r--plugins/acl/localization/ja_JP.inc55
-rw-r--r--plugins/acl/localization/ko_KR.inc55
-rw-r--r--plugins/acl/localization/nl_NL.inc89
-rw-r--r--plugins/acl/localization/pl_PL.inc84
-rw-r--r--plugins/acl/localization/pt_BR.inc89
-rw-r--r--plugins/acl/localization/pt_PT.inc89
-rw-r--r--plugins/acl/localization/ru_RU.inc89
-rw-r--r--plugins/acl/localization/sk_SK.inc44
-rw-r--r--plugins/acl/localization/sl_SI.inc89
-rw-r--r--plugins/acl/localization/sv_SE.inc89
-rw-r--r--plugins/acl/localization/tr_TR.inc89
-rw-r--r--plugins/acl/localization/vi_VN.inc72
-rw-r--r--plugins/acl/localization/zh_TW.inc80
-rw-r--r--plugins/acl/package.xml12
-rw-r--r--plugins/acl/skins/classic/acl.css (renamed from plugins/acl/skins/default/acl.css)0
-rw-r--r--plugins/acl/skins/classic/images/enabled.png (renamed from plugins/acl/skins/default/images/enabled.png)bin674 -> 674 bytes
-rw-r--r--plugins/acl/skins/classic/images/partial.png (renamed from plugins/acl/skins/default/images/partial.png)bin389 -> 389 bytes
-rw-r--r--plugins/acl/skins/classic/templates/table.html (renamed from plugins/acl/skins/default/templates/table.html)12
-rw-r--r--plugins/acl/skins/larry/acl.css20
-rw-r--r--plugins/acl/skins/larry/templates/table.html11
-rw-r--r--plugins/archive/localization/cs_CZ.inc28
-rw-r--r--plugins/archive/localization/de_CH.inc17
-rw-r--r--plugins/archive/localization/de_DE.inc17
-rw-r--r--plugins/archive/localization/es_AR.inc17
-rw-r--r--plugins/archive/localization/es_ES.inc17
-rw-r--r--plugins/archive/localization/et_EE.inc17
-rw-r--r--plugins/archive/localization/fr_FR.inc17
-rw-r--r--plugins/archive/localization/gl_ES.inc8
-rw-r--r--plugins/archive/localization/hy_AM.inc21
-rw-r--r--plugins/archive/localization/ja_JP.inc6
-rw-r--r--plugins/archive/localization/ko_KR.inc21
-rw-r--r--plugins/archive/localization/nl_NL.inc17
-rw-r--r--plugins/archive/localization/pl_PL.inc6
-rw-r--r--plugins/archive/localization/pt_BR.inc17
-rw-r--r--plugins/archive/localization/ru_RU.inc17
-rw-r--r--plugins/archive/localization/sr_CS.inc21
-rw-r--r--plugins/archive/localization/sv_SE.inc17
-rw-r--r--plugins/archive/localization/zh_TW.inc17
-rw-r--r--plugins/archive/package.xml6
-rw-r--r--plugins/archive/skins/classic/archive.css (renamed from plugins/archive/skins/default/archive.css)2
-rw-r--r--plugins/archive/skins/classic/archive_act.png (renamed from plugins/archive/skins/default/archive_act.png)bin3663 -> 3663 bytes
-rw-r--r--plugins/archive/skins/classic/archive_pas.png (renamed from plugins/archive/skins/default/archive_pas.png)bin977 -> 977 bytes
-rw-r--r--plugins/archive/skins/classic/foldericon.png (renamed from plugins/archive/skins/default/foldericon.png)bin3312 -> 3312 bytes
-rw-r--r--plugins/enigma/enigma.php2
-rw-r--r--plugins/enigma/lib/enigma_ui.php2
-rw-r--r--plugins/enigma/skins/classic/enigma.css (renamed from plugins/enigma/skins/default/enigma.css)0
-rw-r--r--plugins/enigma/skins/classic/enigma.png (renamed from plugins/enigma/skins/default/enigma.png)bin1592 -> 1592 bytes
-rw-r--r--plugins/enigma/skins/classic/enigma_error.png (renamed from plugins/enigma/skins/default/enigma_error.png)bin1960 -> 1960 bytes
-rw-r--r--plugins/enigma/skins/classic/key.png (renamed from plugins/enigma/skins/default/key.png)bin1743 -> 1743 bytes
-rw-r--r--plugins/enigma/skins/classic/key_add.png (renamed from plugins/enigma/skins/default/key_add.png)bin1967 -> 1967 bytes
-rw-r--r--plugins/enigma/skins/classic/keys_toolbar.png (renamed from plugins/enigma/skins/default/keys_toolbar.png)bin14977 -> 14977 bytes
-rw-r--r--plugins/enigma/skins/classic/templates/keyimport.html (renamed from plugins/enigma/skins/default/templates/keyimport.html)0
-rw-r--r--plugins/enigma/skins/classic/templates/keyinfo.html (renamed from plugins/enigma/skins/default/templates/keyinfo.html)0
-rw-r--r--plugins/enigma/skins/classic/templates/keys.html (renamed from plugins/enigma/skins/default/templates/keys.html)2
-rw-r--r--plugins/help/help.php11
-rw-r--r--plugins/help/localization/bs_BA.inc20
-rw-r--r--plugins/help/localization/ca_ES.inc20
-rw-r--r--plugins/help/localization/cy_GB.inc20
-rw-r--r--plugins/help/localization/de_CH.inc20
-rw-r--r--plugins/help/localization/fa_IR.inc20
-rw-r--r--plugins/help/localization/fi_FI.inc20
-rw-r--r--plugins/help/localization/he_IL.inc20
-rw-r--r--plugins/help/localization/hy_AM.inc20
-rw-r--r--plugins/help/localization/ja_JP.inc16
-rw-r--r--plugins/help/localization/ko_KR.inc20
-rw-r--r--plugins/help/localization/lt_LT.inc20
-rw-r--r--plugins/help/localization/nl_NL.inc20
-rw-r--r--plugins/help/localization/pt_PT.inc20
-rw-r--r--plugins/help/localization/sk_SK.inc20
-rw-r--r--plugins/help/localization/sl_SI.inc20
-rw-r--r--plugins/help/localization/sr_CS.inc20
-rw-r--r--plugins/help/localization/tr_TR.inc20
-rw-r--r--plugins/help/localization/vi_VN.inc20
-rw-r--r--plugins/help/localization/zh_CN.inc20
-rw-r--r--plugins/help/package.xml6
-rw-r--r--plugins/help/skins/classic/help.css (renamed from plugins/help/skins/default/help.css)0
-rw-r--r--plugins/help/skins/classic/help.gif (renamed from plugins/help/skins/default/help.gif)bin898 -> 898 bytes
-rw-r--r--plugins/help/skins/classic/templates/help.html (renamed from plugins/help/skins/default/templates/help.html)0
-rw-r--r--plugins/help/skins/larry/help.css2
-rw-r--r--plugins/hide_blockquote/localization/bs_BA.inc20
-rw-r--r--plugins/hide_blockquote/localization/ca_ES.inc20
-rw-r--r--plugins/hide_blockquote/localization/cs_CZ.inc20
-rw-r--r--plugins/hide_blockquote/localization/cy_GB.inc20
-rw-r--r--plugins/hide_blockquote/localization/da_DK.inc20
-rw-r--r--plugins/hide_blockquote/localization/de_CH.inc20
-rw-r--r--plugins/hide_blockquote/localization/de_DE.inc20
-rw-r--r--plugins/hide_blockquote/localization/en_GB.inc20
-rw-r--r--plugins/hide_blockquote/localization/es_ES.inc20
-rw-r--r--plugins/hide_blockquote/localization/fi_FI.inc20
-rw-r--r--plugins/hide_blockquote/localization/fr_FR.inc20
-rw-r--r--plugins/hide_blockquote/localization/gl_ES.inc20
-rw-r--r--plugins/hide_blockquote/localization/he_IL.inc20
-rw-r--r--plugins/hide_blockquote/localization/hu_HU.inc20
-rw-r--r--plugins/hide_blockquote/localization/hy_AM.inc20
-rw-r--r--plugins/hide_blockquote/localization/ja_JP.inc20
-rw-r--r--plugins/hide_blockquote/localization/ko_KR.inc20
-rw-r--r--plugins/hide_blockquote/localization/lt_LT.inc20
-rw-r--r--plugins/hide_blockquote/localization/nl_NL.inc20
-rw-r--r--plugins/hide_blockquote/localization/pt_BR.inc20
-rw-r--r--plugins/hide_blockquote/localization/pt_PT.inc20
-rw-r--r--plugins/hide_blockquote/localization/ru_RU.inc20
-rw-r--r--plugins/hide_blockquote/localization/sk_SK.inc20
-rw-r--r--plugins/hide_blockquote/localization/sl_SI.inc20
-rw-r--r--plugins/hide_blockquote/localization/sr_CS.inc20
-rw-r--r--plugins/hide_blockquote/localization/sv_SE.inc20
-rw-r--r--plugins/hide_blockquote/localization/tr_TR.inc20
-rw-r--r--plugins/hide_blockquote/localization/vi_VN.inc20
-rw-r--r--plugins/hide_blockquote/package.xml2
-rw-r--r--plugins/jqueryui/config.inc.php.dist1
-rw-r--r--plugins/jqueryui/jqueryui.php19
-rw-r--r--plugins/jqueryui/package.xml32
-rw-r--r--plugins/jqueryui/themes/classic/images/buttongradient.png (renamed from plugins/jqueryui/themes/default/images/buttongradient.png)bin193 -> 193 bytes
-rw-r--r--plugins/jqueryui/themes/classic/images/listheader.png (renamed from plugins/jqueryui/themes/default/images/listheader.png)bin356 -> 356 bytes
-rwxr-xr-xplugins/jqueryui/themes/classic/images/ui-bg_flat_0_aaaaaa_40x100.png (renamed from plugins/jqueryui/themes/default/images/ui-bg_flat_0_aaaaaa_40x100.png)bin180 -> 180 bytes
-rwxr-xr-xplugins/jqueryui/themes/classic/images/ui-bg_flat_75_ffffff_40x100.png (renamed from plugins/jqueryui/themes/default/images/ui-bg_flat_75_ffffff_40x100.png)bin178 -> 178 bytes
-rwxr-xr-xplugins/jqueryui/themes/classic/images/ui-bg_flat_90_cc3333_40x100.png (renamed from plugins/jqueryui/themes/default/images/ui-bg_flat_90_cc3333_40x100.png)bin212 -> 212 bytes
-rwxr-xr-xplugins/jqueryui/themes/classic/images/ui-bg_glass_95_fef1ec_1x400.png (renamed from plugins/jqueryui/themes/default/images/ui-bg_glass_95_fef1ec_1x400.png)bin119 -> 119 bytes
-rwxr-xr-xplugins/jqueryui/themes/classic/images/ui-bg_highlight-hard_90_a3a3a3_1x100.png (renamed from plugins/jqueryui/themes/default/images/ui-bg_highlight-hard_90_a3a3a3_1x100.png)bin114 -> 114 bytes
-rwxr-xr-xplugins/jqueryui/themes/classic/images/ui-bg_highlight-hard_90_e6e6e7_1x100.png (renamed from plugins/jqueryui/themes/default/images/ui-bg_highlight-hard_90_e6e6e7_1x100.png)bin101 -> 101 bytes
-rwxr-xr-xplugins/jqueryui/themes/classic/images/ui-bg_highlight-hard_90_f4f4f4_1x100.png (renamed from plugins/jqueryui/themes/default/images/ui-bg_highlight-hard_90_f4f4f4_1x100.png)bin122 -> 122 bytes
-rwxr-xr-xplugins/jqueryui/themes/classic/images/ui-icons_000000_256x240.png (renamed from plugins/jqueryui/themes/default/images/ui-icons_000000_256x240.png)bin4369 -> 4369 bytes
-rwxr-xr-xplugins/jqueryui/themes/classic/images/ui-icons_333333_256x240.png (renamed from plugins/jqueryui/themes/default/images/ui-icons_333333_256x240.png)bin4369 -> 4369 bytes
-rwxr-xr-xplugins/jqueryui/themes/classic/images/ui-icons_666666_256x240.png (renamed from plugins/jqueryui/themes/default/images/ui-icons_666666_256x240.png)bin4369 -> 4369 bytes
-rwxr-xr-xplugins/jqueryui/themes/classic/images/ui-icons_cc3333_256x240.png (renamed from plugins/jqueryui/themes/default/images/ui-icons_cc3333_256x240.png)bin5355 -> 5355 bytes
-rwxr-xr-xplugins/jqueryui/themes/classic/images/ui-icons_dddddd_256x240.png (renamed from plugins/jqueryui/themes/default/images/ui-icons_dddddd_256x240.png)bin4369 -> 4369 bytes
-rwxr-xr-xplugins/jqueryui/themes/classic/jquery-ui-1.8.18.custom.css (renamed from plugins/jqueryui/themes/default/jquery-ui-1.8.18.custom.css)0
-rw-r--r--plugins/jqueryui/themes/classic/roundcube-custom.diff (renamed from plugins/jqueryui/themes/default/roundcube-custom.diff)0
-rwxr-xr-xplugins/jqueryui/themes/larry/jquery-ui-1.8.18.custom.css3
-rw-r--r--plugins/managesieve/Changelog9
-rw-r--r--plugins/managesieve/localization/en_GB.inc4
-rw-r--r--plugins/managesieve/localization/en_US.inc10
-rw-r--r--plugins/managesieve/localization/hy_AM.inc149
-rw-r--r--plugins/managesieve/localization/ja_JP.inc21
-rw-r--r--plugins/managesieve/localization/ko_KR.inc131
-rw-r--r--plugins/managesieve/localization/pl_PL.inc10
-rw-r--r--plugins/managesieve/localization/ru_RU.inc65
-rw-r--r--plugins/managesieve/localization/sl_SI.inc20
-rw-r--r--plugins/managesieve/localization/zh_CN.inc3
-rw-r--r--plugins/managesieve/localization/zh_TW.inc9
-rw-r--r--plugins/managesieve/managesieve.js6
-rw-r--r--plugins/managesieve/managesieve.php82
-rw-r--r--plugins/managesieve/package.xml41
-rw-r--r--plugins/managesieve/skins/classic/images/add.png (renamed from plugins/managesieve/skins/default/images/add.png)bin280 -> 280 bytes
-rw-r--r--plugins/managesieve/skins/classic/images/del.png (renamed from plugins/managesieve/skins/default/images/del.png)bin247 -> 247 bytes
-rw-r--r--plugins/managesieve/skins/classic/images/down_small.gif (renamed from plugins/managesieve/skins/default/images/down_small.gif)bin106 -> 106 bytes
-rw-r--r--plugins/managesieve/skins/classic/images/filter.png (renamed from plugins/managesieve/skins/default/images/filter.png)bin547 -> 547 bytes
-rw-r--r--plugins/managesieve/skins/classic/images/up_small.gif (renamed from plugins/managesieve/skins/default/images/up_small.gif)bin106 -> 106 bytes
-rw-r--r--plugins/managesieve/skins/classic/managesieve.css (renamed from plugins/managesieve/skins/default/managesieve.css)0
-rw-r--r--plugins/managesieve/skins/classic/managesieve_mail.css (renamed from plugins/managesieve/skins/default/managesieve_mail.css)0
-rw-r--r--plugins/managesieve/skins/classic/templates/filteredit.html (renamed from plugins/managesieve/skins/default/templates/filteredit.html)0
-rw-r--r--plugins/managesieve/skins/classic/templates/managesieve.html (renamed from plugins/managesieve/skins/default/templates/managesieve.html)0
-rw-r--r--plugins/managesieve/skins/classic/templates/setedit.html (renamed from plugins/managesieve/skins/default/templates/setedit.html)0
-rw-r--r--plugins/managesieve/skins/larry/managesieve.css13
-rw-r--r--plugins/managesieve/skins/larry/templates/filteredit.html10
-rw-r--r--plugins/managesieve/skins/larry/templates/managesieve.html6
-rw-r--r--plugins/managesieve/skins/larry/templates/setedit.html8
-rw-r--r--plugins/markasjunk/localization/cs_CZ.inc4
-rw-r--r--plugins/markasjunk/localization/da_DK.inc2
-rw-r--r--plugins/markasjunk/localization/de_CH.inc4
-rw-r--r--plugins/markasjunk/localization/de_DE.inc4
-rw-r--r--plugins/markasjunk/localization/es_ES.inc4
-rw-r--r--plugins/markasjunk/localization/hy_AM.inc20
-rw-r--r--plugins/markasjunk/localization/ja_JP.inc4
-rw-r--r--plugins/markasjunk/localization/ko_KR.inc20
-rw-r--r--plugins/markasjunk/localization/pl_PL.inc4
-rw-r--r--plugins/markasjunk/localization/ru_RU.inc4
-rw-r--r--plugins/markasjunk/localization/sk_SK.inc4
-rw-r--r--plugins/markasjunk/localization/sr_CS.inc20
-rw-r--r--plugins/markasjunk/localization/sv_SE.inc4
-rw-r--r--plugins/markasjunk/localization/zh_TW.inc4
-rw-r--r--plugins/markasjunk/package.xml4
-rw-r--r--plugins/markasjunk/skins/classic/junk_act.png (renamed from plugins/markasjunk/skins/default/junk_act.png)bin1995 -> 1995 bytes
-rw-r--r--plugins/markasjunk/skins/classic/junk_pas.png (renamed from plugins/markasjunk/skins/default/junk_pas.png)bin1988 -> 1988 bytes
-rw-r--r--plugins/markasjunk/skins/classic/markasjunk.css (renamed from plugins/markasjunk/skins/default/markasjunk.css)2
-rw-r--r--plugins/new_user_dialog/localization/hy_AM.inc19
-rw-r--r--plugins/new_user_dialog/localization/ko_KR.inc19
-rw-r--r--plugins/new_user_dialog/localization/pt_BR.inc5
-rw-r--r--plugins/new_user_dialog/localization/sr_CS.inc19
-rw-r--r--plugins/new_user_identity/new_user_identity.php9
-rw-r--r--plugins/new_user_identity/package.xml6
-rw-r--r--plugins/newmail_notifier/localization/hy_AM.inc26
-rw-r--r--plugins/newmail_notifier/localization/ko_KR.inc26
-rw-r--r--plugins/newmail_notifier/localization/sr_CS.inc21
-rw-r--r--plugins/newmail_notifier/newmail_notifier.php2
-rw-r--r--plugins/password/drivers/virtualmin.php4
-rw-r--r--plugins/password/localization/az_AZ.inc45
-rw-r--r--plugins/password/localization/bg_BG.inc38
-rw-r--r--plugins/password/localization/bs_BA.inc31
-rw-r--r--plugins/password/localization/ca_ES.inc43
-rw-r--r--plugins/password/localization/cs_CZ.inc51
-rw-r--r--plugins/password/localization/cy_GB.inc31
-rw-r--r--plugins/password/localization/da_DK.inc41
-rw-r--r--plugins/password/localization/de_CH.inc42
-rw-r--r--plugins/password/localization/de_DE.inc42
-rw-r--r--plugins/password/localization/en_GB.inc31
-rw-r--r--plugins/password/localization/eo.inc31
-rw-r--r--plugins/password/localization/es_AR.inc44
-rw-r--r--plugins/password/localization/es_ES.inc44
-rw-r--r--plugins/password/localization/et_EE.inc36
-rw-r--r--plugins/password/localization/fa_IR.inc26
-rw-r--r--plugins/password/localization/fi_FI.inc43
-rw-r--r--plugins/password/localization/fr_FR.inc41
-rw-r--r--plugins/password/localization/gl_ES.inc44
-rw-r--r--plugins/password/localization/he_IL.inc31
-rw-r--r--plugins/password/localization/hr_HR.inc44
-rw-r--r--plugins/password/localization/hu_HU.inc40
-rw-r--r--plugins/password/localization/hy_AM.inc31
-rw-r--r--plugins/password/localization/ja_JP.inc44
-rw-r--r--plugins/password/localization/ko_KR.inc31
-rw-r--r--plugins/password/localization/lt_LT.inc44
-rw-r--r--plugins/password/localization/lv_LV.inc42
-rw-r--r--plugins/password/localization/nl_NL.inc40
-rw-r--r--plugins/password/localization/pl_PL.inc44
-rw-r--r--plugins/password/localization/pt_BR.inc44
-rw-r--r--plugins/password/localization/pt_PT.inc41
-rw-r--r--plugins/password/localization/ru_RU.inc54
-rw-r--r--plugins/password/localization/sk_SK.inc50
-rw-r--r--plugins/password/localization/sl_SI.inc43
-rw-r--r--plugins/password/localization/sr_CS.inc31
-rw-r--r--plugins/password/localization/sv_SE.inc44
-rw-r--r--plugins/password/localization/tr_TR.inc44
-rw-r--r--plugins/password/localization/vi_VN.inc31
-rw-r--r--plugins/password/localization/zh_TW.inc44
-rw-r--r--plugins/squirrelmail_usercopy/config.inc.php.dist2
-rw-r--r--plugins/subscriptions_option/localization/bs_BA.inc18
-rw-r--r--plugins/subscriptions_option/localization/ca_ES.inc18
-rw-r--r--plugins/subscriptions_option/localization/cs_CZ.inc27
-rw-r--r--plugins/subscriptions_option/localization/cy_GB.inc18
-rw-r--r--plugins/subscriptions_option/localization/da_DK.inc18
-rw-r--r--plugins/subscriptions_option/localization/de_CH.inc16
-rw-r--r--plugins/subscriptions_option/localization/de_DE.inc16
-rw-r--r--plugins/subscriptions_option/localization/en_GB.inc18
-rw-r--r--plugins/subscriptions_option/localization/es_ES.inc16
-rw-r--r--plugins/subscriptions_option/localization/et_EE.inc16
-rw-r--r--plugins/subscriptions_option/localization/fa_IR.inc18
-rw-r--r--plugins/subscriptions_option/localization/fi_FI.inc18
-rw-r--r--plugins/subscriptions_option/localization/fr_FR.inc18
-rw-r--r--plugins/subscriptions_option/localization/gl_ES.inc16
-rw-r--r--plugins/subscriptions_option/localization/he_IL.inc18
-rw-r--r--plugins/subscriptions_option/localization/hu_HU.inc18
-rw-r--r--plugins/subscriptions_option/localization/hy_AM.inc18
-rw-r--r--plugins/subscriptions_option/localization/ja_JP.inc16
-rw-r--r--plugins/subscriptions_option/localization/ko_KR.inc18
-rw-r--r--plugins/subscriptions_option/localization/lt_LT.inc18
-rw-r--r--plugins/subscriptions_option/localization/nl_NL.inc18
-rw-r--r--plugins/subscriptions_option/localization/pl_PL.inc16
-rw-r--r--plugins/subscriptions_option/localization/pt_BR.inc18
-rw-r--r--plugins/subscriptions_option/localization/pt_PT.inc18
-rw-r--r--plugins/subscriptions_option/localization/ru_RU.inc16
-rw-r--r--plugins/subscriptions_option/localization/sk_SK.inc18
-rw-r--r--plugins/subscriptions_option/localization/sl_SI.inc18
-rw-r--r--plugins/subscriptions_option/localization/sr_CS.inc18
-rw-r--r--plugins/subscriptions_option/localization/sv_SE.inc16
-rw-r--r--plugins/subscriptions_option/localization/tr_TR.inc18
-rw-r--r--plugins/subscriptions_option/localization/zh_TW.inc16
-rw-r--r--plugins/userinfo/localization/hy_AM.inc21
-rw-r--r--plugins/userinfo/localization/ko_KR.inc21
-rw-r--r--plugins/userinfo/localization/sr_CS.inc21
-rw-r--r--plugins/vcard_attachments/localization/hy_AM.inc19
-rw-r--r--plugins/vcard_attachments/localization/ko_KR.inc19
-rw-r--r--plugins/vcard_attachments/localization/sr_CS.inc19
-rw-r--r--plugins/vcard_attachments/package.xml6
-rw-r--r--plugins/vcard_attachments/skins/classic/style.css (renamed from plugins/vcard_attachments/skins/default/style.css)0
-rw-r--r--plugins/vcard_attachments/skins/classic/vcard.png (renamed from plugins/vcard_attachments/skins/default/vcard.png)bin493 -> 493 bytes
-rw-r--r--plugins/vcard_attachments/skins/classic/vcard_add_contact.png (renamed from plugins/vcard_attachments/skins/default/vcard_add_contact.png)bin1361 -> 1361 bytes
-rw-r--r--program/.htaccess2
-rw-r--r--program/blank.gifbin56 -> 0 bytes
-rw-r--r--program/include/rcmail.php88
-rw-r--r--program/include/rcube.php20
-rw-r--r--program/include/rcube_addressbook.php2
-rw-r--r--program/include/rcube_browser.php4
-rw-r--r--program/include/rcube_cache.php12
-rw-r--r--program/include/rcube_config.php22
-rw-r--r--program/include/rcube_imap.php19
-rw-r--r--program/include/rcube_imap_cache.php123
-rw-r--r--program/include/rcube_imap_generic.php69
-rw-r--r--program/include/rcube_ldap.php4
-rw-r--r--program/include/rcube_message.php26
-rw-r--r--program/include/rcube_output_html.php25
-rw-r--r--program/include/rcube_output_json.php12
-rw-r--r--program/include/rcube_plugin.php9
-rw-r--r--program/include/rcube_session.php14
-rw-r--r--program/include/rcube_spellchecker.php22
-rw-r--r--program/include/rcube_user.php34
-rw-r--r--program/include/rcube_utils.php10
-rw-r--r--program/js/app.js132
-rw-r--r--program/js/common.js8
-rw-r--r--program/js/editor.js11
-rw-r--r--program/js/list.js10
-rw-r--r--program/js/tiny_mce/langs/nl.js2
-rw-r--r--program/js/tiny_mce/langs/ru.js2
-rw-r--r--program/js/tiny_mce/langs/sk.js2
-rw-r--r--program/js/tiny_mce/langs/uk.js2
-rw-r--r--program/js/tiny_mce/plugins/advimage/js/image.js8
-rw-r--r--program/js/tiny_mce/plugins/advimage/langs/nl_dlg.js2
-rw-r--r--program/js/tiny_mce/plugins/advimage/langs/uk_dlg.js2
-rw-r--r--program/js/tiny_mce/plugins/advlink/langs/nl_dlg.js2
-rw-r--r--program/js/tiny_mce/plugins/advlink/langs/uk_dlg.js2
-rw-r--r--program/js/tiny_mce/plugins/autolink/editor_plugin.js2
-rw-r--r--program/js/tiny_mce/plugins/autolink/editor_plugin_src.js7
-rw-r--r--program/js/tiny_mce/plugins/autosave/editor_plugin.js2
-rw-r--r--program/js/tiny_mce/plugins/autosave/editor_plugin_src.js6
-rw-r--r--program/js/tiny_mce/plugins/contextmenu/editor_plugin.js2
-rw-r--r--program/js/tiny_mce/plugins/contextmenu/editor_plugin_src.js16
-rw-r--r--program/js/tiny_mce/plugins/directionality/editor_plugin.js2
-rw-r--r--program/js/tiny_mce/plugins/directionality/editor_plugin_src.js41
-rw-r--r--program/js/tiny_mce/plugins/emotions/langs/uk_dlg.js2
-rw-r--r--program/js/tiny_mce/plugins/fullpage/langs/he_dlg.js2
-rw-r--r--program/js/tiny_mce/plugins/fullpage/langs/nl_dlg.js2
-rw-r--r--program/js/tiny_mce/plugins/fullscreen/editor_plugin.js2
-rw-r--r--program/js/tiny_mce/plugins/fullscreen/editor_plugin_src.js8
-rw-r--r--program/js/tiny_mce/plugins/lists/editor_plugin.js2
-rw-r--r--program/js/tiny_mce/plugins/lists/editor_plugin_src.js32
-rw-r--r--program/js/tiny_mce/plugins/media/editor_plugin.js2
-rw-r--r--program/js/tiny_mce/plugins/media/editor_plugin_src.js38
-rw-r--r--program/js/tiny_mce/plugins/media/js/media.js35
-rw-r--r--program/js/tiny_mce/plugins/media/langs/en_dlg.js2
-rw-r--r--program/js/tiny_mce/plugins/media/langs/uk_dlg.js2
-rw-r--r--program/js/tiny_mce/plugins/noneditable/editor_plugin.js2
-rw-r--r--program/js/tiny_mce/plugins/noneditable/editor_plugin_src.js5
-rw-r--r--program/js/tiny_mce/plugins/style/langs/es_dlg.js2
-rw-r--r--program/js/tiny_mce/plugins/style/langs/uk_dlg.js2
-rw-r--r--program/js/tiny_mce/plugins/table/editor_plugin.js2
-rw-r--r--program/js/tiny_mce/plugins/table/editor_plugin_src.js111
-rw-r--r--program/js/tiny_mce/plugins/table/js/table.js5
-rw-r--r--program/js/tiny_mce/themes/advanced/editor_template.js2
-rw-r--r--program/js/tiny_mce/themes/advanced/editor_template_src.js7
-rw-r--r--program/js/tiny_mce/themes/advanced/langs/he_dlg.js2
-rw-r--r--program/js/tiny_mce/themes/advanced/langs/nb_dlg.js2
-rw-r--r--program/js/tiny_mce/themes/advanced/langs/ru.js2
-rw-r--r--program/js/tiny_mce/themes/advanced/langs/uk.js2
-rw-r--r--program/js/tiny_mce/themes/advanced/langs/uk_dlg.js2
-rw-r--r--program/js/tiny_mce/themes/advanced/skins/default/content.css1
-rw-r--r--program/js/tiny_mce/themes/advanced/skins/highcontrast/content.css1
-rw-r--r--program/js/tiny_mce/themes/advanced/skins/o2k7/content.css1
-rw-r--r--program/js/tiny_mce/themes/advanced/source_editor.htm2
-rw-r--r--program/js/tiny_mce/tiny_mce.js2
-rw-r--r--program/js/tiny_mce/tiny_mce_src.js833
-rw-r--r--program/lib/Auth/SASL.php91
-rw-r--r--program/lib/Auth/SASL/Common.php105
-rw-r--r--program/lib/Auth/SASL/External.php2
-rw-r--r--program/lib/Auth/SASL/SCRAM.php306
-rw-r--r--program/lib/Net/SMTP.php20
-rw-r--r--program/localization/ar_SA/labels.inc32
-rw-r--r--program/localization/ar_SA/messages.inc47
-rw-r--r--program/localization/bs_BA/messages.inc2
-rw-r--r--program/localization/ca_ES/labels.inc287
-rw-r--r--program/localization/ca_ES/messages.inc218
-rw-r--r--program/localization/cs_CZ/messages.inc4
-rw-r--r--program/localization/cy_GB/messages.inc4
-rw-r--r--program/localization/da_DK/messages.inc4
-rw-r--r--program/localization/de_CH/labels.inc8
-rw-r--r--program/localization/de_DE/labels.inc8
-rw-r--r--program/localization/de_DE/messages.inc14
-rw-r--r--program/localization/en_GB/labels.inc9
-rw-r--r--program/localization/en_GB/messages.inc5
-rw-r--r--program/localization/en_US/messages.inc1
-rw-r--r--program/localization/eo/labels.inc15
-rw-r--r--program/localization/eo/messages.inc2
-rw-r--r--program/localization/es_ES/labels.inc7
-rw-r--r--program/localization/es_ES/messages.inc4
-rw-r--r--program/localization/et_EE/labels.inc4
-rw-r--r--program/localization/eu_ES/labels.inc8
-rw-r--r--program/localization/fa_IR/messages.inc2
-rw-r--r--program/localization/fi_FI/labels.inc7
-rw-r--r--program/localization/fi_FI/messages.inc4
-rw-r--r--program/localization/fr_FR/labels.inc6
-rw-r--r--program/localization/fr_FR/messages.inc4
-rw-r--r--program/localization/he_IL/labels.inc7
-rw-r--r--program/localization/he_IL/messages.inc2
-rw-r--r--program/localization/hr_HR/labels.inc5
-rw-r--r--program/localization/hu_HU/labels.inc13
-rw-r--r--program/localization/hu_HU/messages.inc4
-rw-r--r--program/localization/hy_AM/labels.inc199
-rw-r--r--program/localization/hy_AM/messages.inc74
-rw-r--r--program/localization/it_IT/messages.inc3
-rw-r--r--program/localization/ja_JP/labels.inc13
-rw-r--r--program/localization/ja_JP/messages.inc4
-rw-r--r--program/localization/ko_KR/labels.inc157
-rw-r--r--program/localization/ko_KR/messages.inc68
-rw-r--r--program/localization/lt_LT/messages.inc2
-rw-r--r--program/localization/ml_IN/labels.inc3
-rw-r--r--program/localization/ml_IN/messages.inc3
-rw-r--r--program/localization/nl_NL/labels.inc33
-rw-r--r--program/localization/nl_NL/messages.inc8
-rw-r--r--program/localization/pl_PL/labels.inc7
-rw-r--r--program/localization/pl_PL/messages.inc2
-rw-r--r--program/localization/pt_BR/labels.inc51
-rw-r--r--program/localization/pt_BR/messages.inc30
-rw-r--r--program/localization/pt_PT/messages.inc4
-rw-r--r--program/localization/ru_RU/labels.inc7
-rw-r--r--program/localization/ru_RU/messages.inc4
-rw-r--r--program/localization/si_LK/labels.inc20
-rw-r--r--program/localization/sk_SK/labels.inc4
-rw-r--r--program/localization/sk_SK/messages.inc4
-rw-r--r--program/localization/sl_SI/labels.inc5
-rw-r--r--program/localization/sl_SI/messages.inc23
-rw-r--r--program/localization/sr_CS/labels.inc47
-rw-r--r--program/localization/sv_SE/labels.inc36
-rw-r--r--program/localization/sv_SE/messages.inc11
-rw-r--r--program/localization/tr_TR/labels.inc83
-rw-r--r--program/localization/tr_TR/messages.inc4
-rw-r--r--program/localization/vi_VN/labels.inc118
-rw-r--r--program/localization/vi_VN/messages.inc96
-rw-r--r--program/localization/zh_TW/messages.inc4
-rw-r--r--program/resources/blank.gif (renamed from skins/default/images/blank.gif)bin54 -> 54 bytes
-rw-r--r--program/resources/blank.tif (renamed from program/blank.tif)bin270 -> 270 bytes
-rw-r--r--program/resources/blocked.gif (renamed from program/blocked.gif)bin118 -> 118 bytes
-rw-r--r--program/steps/addressbook/delete.inc3
-rw-r--r--program/steps/addressbook/edit.inc15
-rw-r--r--program/steps/addressbook/func.inc17
-rw-r--r--program/steps/addressbook/list.inc6
-rw-r--r--program/steps/addressbook/search.inc3
-rw-r--r--program/steps/addressbook/show.inc34
-rw-r--r--program/steps/mail/addcontact.inc13
-rw-r--r--program/steps/mail/autocomplete.inc4
-rw-r--r--program/steps/mail/compose.inc22
-rw-r--r--program/steps/mail/func.inc33
-rw-r--r--program/steps/mail/list_contacts.inc3
-rw-r--r--program/steps/mail/sendmail.inc13
-rw-r--r--program/steps/mail/show.inc16
-rw-r--r--program/steps/settings/folders.inc2
-rw-r--r--program/steps/settings/func.inc4
-rw-r--r--program/steps/utils/error.inc2
-rw-r--r--program/steps/utils/modcss.inc81
-rw-r--r--skins/classic/README (renamed from skins/default/README)0
-rw-r--r--skins/classic/addressbook.css (renamed from skins/default/addressbook.css)7
-rw-r--r--skins/classic/common.css (renamed from skins/default/common.css)6
-rw-r--r--skins/classic/editor_content.css (renamed from skins/default/editor_content.css)0
-rw-r--r--skins/classic/functions.js (renamed from skins/default/functions.js)0
-rw-r--r--skins/classic/googiespell.css (renamed from skins/default/googiespell.css)0
-rw-r--r--skins/classic/ie6hacks.css (renamed from skins/default/ie6hacks.css)0
-rw-r--r--skins/classic/iehacks.css (renamed from skins/default/iehacks.css)10
-rw-r--r--skins/classic/images/abook_toolbar.gif (renamed from skins/default/images/abook_toolbar.gif)bin5753 -> 5753 bytes
-rw-r--r--skins/classic/images/abook_toolbar.png (renamed from skins/default/images/abook_toolbar.png)bin16395 -> 16395 bytes
-rw-r--r--skins/classic/images/buttons/add_act.png (renamed from skins/default/images/buttons/add_act.png)bin179 -> 179 bytes
-rw-r--r--skins/classic/images/buttons/add_pas.png (renamed from skins/default/images/buttons/add_pas.png)bin197 -> 197 bytes
-rw-r--r--skins/classic/images/buttons/add_sel.png (renamed from skins/default/images/buttons/add_sel.png)bin148 -> 148 bytes
-rw-r--r--skins/classic/images/buttons/bg.gif (renamed from skins/default/images/buttons/bg.gif)bin197 -> 197 bytes
-rw-r--r--skins/classic/images/cleardot.png (renamed from skins/default/images/cleardot.png)bin101 -> 101 bytes
-rw-r--r--skins/classic/images/contactpic.png (renamed from skins/default/images/contactpic.png)bin375 -> 375 bytes
-rw-r--r--skins/classic/images/dbutton.png (renamed from skins/default/images/dbutton.png)bin240 -> 240 bytes
-rw-r--r--skins/classic/images/dimple.png (renamed from skins/default/images/dimple.png)bin174 -> 174 bytes
-rw-r--r--skins/classic/images/display/icons.gif (renamed from skins/default/images/display/icons.gif)bin2329 -> 2329 bytes
-rw-r--r--skins/classic/images/display/icons.png (renamed from skins/default/images/display/icons.png)bin4246 -> 4246 bytes
-rw-r--r--skins/classic/images/display/loading.gif (renamed from skins/default/images/display/loading.gif)bin2942 -> 2942 bytes
-rw-r--r--skins/classic/images/display/loading_blue.gif (renamed from skins/default/images/display/loading_blue.gif)bin847 -> 847 bytes
-rw-r--r--skins/classic/images/favicon.ico (renamed from skins/default/images/favicon.ico)bin1150 -> 1150 bytes
-rw-r--r--skins/classic/images/googiespell/change_lang.gif (renamed from skins/default/images/googiespell/change_lang.gif)bin111 -> 111 bytes
-rw-r--r--skins/classic/images/googiespell/indicator.gif (renamed from skins/default/images/googiespell/indicator.gif)bin722 -> 722 bytes
-rw-r--r--skins/classic/images/googiespell/ok.gif (renamed from skins/default/images/googiespell/ok.gif)bin143 -> 143 bytes
-rw-r--r--skins/classic/images/googiespell/spellc.gif (renamed from skins/default/images/googiespell/spellc.gif)bin354 -> 354 bytes
-rw-r--r--skins/classic/images/icons/attachment.png (renamed from skins/default/images/icons/attachment.png)bin657 -> 657 bytes
-rw-r--r--skins/classic/images/icons/blank.gif (renamed from skins/default/images/icons/blank.gif)bin54 -> 54 bytes
-rw-r--r--skins/classic/images/icons/collapsed.png (renamed from skins/default/images/icons/collapsed.png)bin184 -> 184 bytes
-rw-r--r--skins/classic/images/icons/columnpicker.gif (renamed from skins/default/images/icons/columnpicker.gif)bin133 -> 133 bytes
-rw-r--r--skins/classic/images/icons/delete.png (renamed from skins/default/images/icons/delete.png)bin841 -> 841 bytes
-rw-r--r--skins/classic/images/icons/deleted.png (renamed from skins/default/images/icons/deleted.png)bin543 -> 543 bytes
-rw-r--r--skins/classic/images/icons/dot.png (renamed from skins/default/images/icons/dot.png)bin244 -> 244 bytes
-rw-r--r--skins/classic/images/icons/down_small.gif (renamed from skins/default/images/icons/down_small.gif)bin106 -> 106 bytes
-rw-r--r--skins/classic/images/icons/expanded.png (renamed from skins/default/images/icons/expanded.png)bin123 -> 123 bytes
-rw-r--r--skins/classic/images/icons/extwin.png (renamed from skins/default/images/icons/extwin.png)bin263 -> 263 bytes
-rw-r--r--skins/classic/images/icons/flagged.png (renamed from skins/default/images/icons/flagged.png)bin674 -> 674 bytes
-rw-r--r--skins/classic/images/icons/folders.gif (renamed from skins/default/images/icons/folders.gif)bin2568 -> 2568 bytes
-rw-r--r--skins/classic/images/icons/folders.png (renamed from skins/default/images/icons/folders.png)bin4957 -> 4957 bytes
-rw-r--r--skins/classic/images/icons/forwarded.png (renamed from skins/default/images/icons/forwarded.png)bin315 -> 315 bytes
-rw-r--r--skins/classic/images/icons/forwarded_replied.png (renamed from skins/default/images/icons/forwarded_replied.png)bin375 -> 375 bytes
-rw-r--r--skins/classic/images/icons/glass.gif (renamed from skins/default/images/icons/glass.gif)bin909 -> 909 bytes
-rw-r--r--skins/classic/images/icons/glass.png (renamed from skins/default/images/icons/glass.png)bin433 -> 433 bytes
-rw-r--r--skins/classic/images/icons/glass_roll.png (renamed from skins/default/images/icons/glass_roll.png)bin544 -> 544 bytes
-rw-r--r--skins/classic/images/icons/groupactions.gifbin0 -> 1602 bytes
-rw-r--r--skins/classic/images/icons/groupactions.pngbin0 -> 1454 bytes
-rw-r--r--skins/classic/images/icons/minus.gif (renamed from skins/default/images/icons/minus.gif)bin82 -> 82 bytes
-rw-r--r--skins/classic/images/icons/plus.gif (renamed from skins/default/images/icons/plus.gif)bin93 -> 93 bytes
-rw-r--r--skins/classic/images/icons/rename.png (renamed from skins/default/images/icons/rename.png)bin747 -> 747 bytes
-rw-r--r--skins/classic/images/icons/replied.png (renamed from skins/default/images/icons/replied.png)bin317 -> 317 bytes
-rw-r--r--skins/classic/images/icons/reset.gif (renamed from skins/default/images/icons/reset.gif)bin164 -> 164 bytes
-rw-r--r--skins/classic/images/icons/silhouette.png (renamed from skins/default/images/icons/silhouette.png)bin255 -> 255 bytes
-rw-r--r--skins/classic/images/icons/sort.gif (renamed from skins/default/images/icons/sort.gif)bin148 -> 148 bytes
-rw-r--r--skins/classic/images/icons/unflagged.png (renamed from skins/default/images/icons/unflagged.png)bin389 -> 389 bytes
-rw-r--r--skins/classic/images/icons/unread.png (renamed from skins/default/images/icons/unread.png)bin460 -> 460 bytes
-rw-r--r--skins/classic/images/icons/unread_children.png (renamed from skins/default/images/icons/unread_children.png)bin441 -> 441 bytes
-rw-r--r--skins/classic/images/icons/up_small.gif (renamed from skins/default/images/icons/up_small.gif)bin106 -> 106 bytes
-rw-r--r--skins/classic/images/listheader.gif (renamed from skins/default/images/listheader.gif)bin322 -> 322 bytes
-rw-r--r--skins/classic/images/mail_footer.gif (renamed from skins/default/images/mail_footer.gif)bin1336 -> 1336 bytes
-rw-r--r--skins/classic/images/mail_footer.png (renamed from skins/default/images/mail_footer.png)bin1027 -> 1027 bytes
-rw-r--r--skins/classic/images/mail_toolbar.gif (renamed from skins/default/images/mail_toolbar.gif)bin12822 -> 12822 bytes
-rw-r--r--skins/classic/images/mail_toolbar.png (renamed from skins/default/images/mail_toolbar.png)bin37571 -> 37571 bytes
-rw-r--r--skins/classic/images/messageactions.gif (renamed from skins/default/images/messageactions.gif)bin1916 -> 1916 bytes
-rw-r--r--skins/classic/images/messageactions.png (renamed from skins/default/images/messageactions.png)bin2607 -> 2607 bytes
-rw-r--r--skins/classic/images/messageicons.gif (renamed from skins/default/images/messageicons.gif)bin2226 -> 2226 bytes
-rw-r--r--skins/classic/images/messageicons.png (renamed from skins/default/images/messageicons.png)bin4868 -> 4868 bytes
-rw-r--r--skins/classic/images/pagenav.gif (renamed from skins/default/images/pagenav.gif)bin357 -> 357 bytes
-rw-r--r--skins/classic/images/quota-colors.png (renamed from skins/default/images/quota-colors.png)bin492 -> 492 bytes
-rw-r--r--skins/classic/images/quota.gif (renamed from skins/default/images/quota.gif)bin998 -> 998 bytes
-rw-r--r--skins/classic/images/quota.png (renamed from skins/default/images/quota.png)bin216 -> 216 bytes
-rw-r--r--skins/classic/images/roundcube_logo.png (renamed from skins/default/images/roundcube_logo.png)bin7530 -> 7530 bytes
-rw-r--r--skins/classic/images/searchfield.gif (renamed from skins/default/images/searchfield.gif)bin336 -> 336 bytes
-rw-r--r--skins/classic/images/tabs-left.gif (renamed from skins/default/images/tabs-left.gif)bin295 -> 295 bytes
-rw-r--r--skins/classic/images/tabs-right.gif (renamed from skins/default/images/tabs-right.gif)bin837 -> 837 bytes
-rw-r--r--skins/classic/images/taskbar.gif (renamed from skins/default/images/taskbar.gif)bin2041 -> 2041 bytes
-rw-r--r--skins/classic/images/taskbar.png (renamed from skins/default/images/taskbar.png)bin2425 -> 2425 bytes
-rw-r--r--skins/classic/images/taskicons.gif (renamed from skins/default/images/taskicons.gif)bin1732 -> 1732 bytes
-rw-r--r--skins/classic/images/taskicons.png (renamed from skins/default/images/taskicons.png)bin1732 -> 1732 bytes
-rw-r--r--skins/classic/images/tree.gif (renamed from skins/default/images/tree.gif)bin92 -> 92 bytes
-rw-r--r--skins/classic/images/watermark.gif (renamed from skins/default/images/watermark.gif)bin10237 -> 10237 bytes
-rw-r--r--skins/classic/includes/header.html (renamed from skins/default/includes/header.html)0
-rw-r--r--skins/classic/includes/links.html (renamed from skins/default/includes/links.html)0
-rw-r--r--skins/classic/includes/messagetoolbar.html (renamed from skins/default/includes/messagetoolbar.html)0
-rw-r--r--skins/classic/includes/settingstabs.html (renamed from skins/default/includes/settingstabs.html)0
-rw-r--r--skins/classic/includes/taskbar.html (renamed from skins/default/includes/taskbar.html)0
-rw-r--r--skins/classic/mail.css (renamed from skins/default/mail.css)6
-rw-r--r--skins/classic/pngbehavior.htc (renamed from skins/default/pngbehavior.htc)2
-rw-r--r--skins/classic/print.css (renamed from skins/default/print.css)0
-rw-r--r--skins/classic/safari.css (renamed from skins/default/safari.css)0
-rw-r--r--skins/classic/settings.css (renamed from skins/default/settings.css)4
-rw-r--r--skins/classic/splitter.js (renamed from skins/default/splitter.js)0
-rw-r--r--skins/classic/templates/about.html (renamed from skins/default/templates/about.html)0
-rw-r--r--skins/classic/templates/addressbook.html (renamed from skins/default/templates/addressbook.html)0
-rw-r--r--skins/classic/templates/compose.html (renamed from skins/default/templates/compose.html)0
-rw-r--r--skins/classic/templates/contact.html (renamed from skins/default/templates/contact.html)0
-rw-r--r--skins/classic/templates/contactadd.html (renamed from skins/default/templates/contactadd.html)1
-rw-r--r--skins/classic/templates/contactedit.html (renamed from skins/default/templates/contactedit.html)2
-rw-r--r--skins/classic/templates/contactsearch.html (renamed from skins/default/templates/contactsearch.html)0
-rw-r--r--skins/classic/templates/error.html (renamed from skins/default/templates/error.html)0
-rw-r--r--skins/classic/templates/folderedit.html (renamed from skins/default/templates/folderedit.html)14
-rw-r--r--skins/classic/templates/folders.html (renamed from skins/default/templates/folders.html)0
-rw-r--r--skins/classic/templates/identities.html (renamed from skins/default/templates/identities.html)2
-rw-r--r--skins/classic/templates/identityedit.html (renamed from skins/default/templates/identityedit.html)15
-rw-r--r--skins/classic/templates/importcontacts.html (renamed from skins/default/templates/importcontacts.html)0
-rw-r--r--skins/classic/templates/login.html (renamed from skins/default/templates/login.html)2
-rw-r--r--skins/classic/templates/mail.html (renamed from skins/default/templates/mail.html)0
-rw-r--r--skins/classic/templates/message.html (renamed from skins/default/templates/message.html)0
-rw-r--r--skins/classic/templates/messageerror.html (renamed from skins/default/templates/messageerror.html)0
-rw-r--r--skins/classic/templates/messagepart.html (renamed from skins/default/templates/messagepart.html)0
-rw-r--r--skins/classic/templates/messagepreview.html (renamed from skins/default/templates/messagepreview.html)0
-rw-r--r--skins/classic/templates/messageprint.html (renamed from skins/default/templates/messageprint.html)0
-rw-r--r--skins/classic/templates/plugin.html (renamed from skins/default/templates/plugin.html)0
-rw-r--r--skins/classic/templates/settings.html (renamed from skins/default/templates/settings.html)0
-rw-r--r--skins/classic/templates/settingsedit.html (renamed from skins/default/templates/settingsedit.html)13
-rw-r--r--skins/classic/watermark.html (renamed from skins/default/watermark.html)0
-rw-r--r--skins/default/images/icons/groupactions.gifbin357 -> 0 bytes
-rw-r--r--skins/default/images/icons/groupactions.pngbin495 -> 0 bytes
-rw-r--r--skins/larry/addressbook.css34
-rw-r--r--skins/larry/ie7hacks.css6
-rw-r--r--skins/larry/iehacks.css8
-rw-r--r--skins/larry/images/contactpic_32px.pngbin0 -> 4883 bytes
-rw-r--r--skins/larry/images/listicons.pngbin26783 -> 27068 bytes
-rw-r--r--skins/larry/images/overflowshadow.pngbin0 -> 1163 bytes
-rw-r--r--skins/larry/includes/footer.html2
-rw-r--r--skins/larry/includes/mailtoolbar.html16
-rw-r--r--skins/larry/mail.css183
-rw-r--r--skins/larry/settings.css4
-rw-r--r--skins/larry/styles.css96
-rw-r--r--skins/larry/svggradient.php3
-rw-r--r--skins/larry/svggradients.css7
-rw-r--r--skins/larry/templates/addressbook.html33
-rw-r--r--skins/larry/templates/compose.html5
-rw-r--r--skins/larry/templates/contactedit.html5
-rw-r--r--skins/larry/templates/folderedit.html2
-rw-r--r--skins/larry/templates/folders.html4
-rw-r--r--skins/larry/templates/identities.html4
-rw-r--r--skins/larry/templates/identityedit.html2
-rw-r--r--skins/larry/templates/login.html2
-rw-r--r--skins/larry/templates/mail.html44
-rw-r--r--skins/larry/templates/message.html17
-rw-r--r--skins/larry/templates/messagepreview.html3
-rw-r--r--skins/larry/templates/settings.html6
-rw-r--r--skins/larry/templates/settingsedit.html4
-rw-r--r--skins/larry/ui.js61
-rw-r--r--tests/mailfunc.php2
604 files changed, 9646 insertions, 2537 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 03a731a77..ba7d1a139 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -2,27 +2,63 @@ CHANGELOG Roundcube Webmail
===========================
- Add new DB abstraction layer based on PHP PDO, supporting SQLite3 (#1488332)
+- Removed PEAR::MDB2 package
+- Removed users.alias column, added option ('user_aliases')
+ to use email address from identities as username (#1488581)
+- Removed redundant cache.cache_id column (#1488528)
+- Fix order of attachments in sent mail (#1488423)
+- Fix Shift + delete button does not permanently delete messages (#1488243)
+- Add Content-Length for attachments where possible (#1485478)
+- Fix attachment sizes in message print page and attachment preview page (#1488515)
+- Add mail attachments using drag & drop on HTML5 enabled browsers
+- Add workaround for invalid BODYSTRUCTURE response - parse message with Mail_mimeDecode package (#1485585)
+- Display Tiff as Jpeg in browsers without Tiff support (#1488452)
+- Don't display Pdf/Tiff/Flash attachments inline without browser support (#1488452, #1487929)
+- Add is_escaped attribute for html_select and html_textarea (#1488485)
+- Fix issue where draft auto-save wasn't executed after some inactivity time
+- Add vCard import from multiple files at once (#1488015)
+- Roundcube Framework:
+ Add possibility to replace IMAP driver with custom class
+ Add IMAP auto-connection feature, improving performance with caching enabled
+ Replace imap_init hook with storage_init (with additional 'driver' argument)
+ Improved performance by caching IMAP server's capabilities in session
+ Unified global functions naming (rcube_ prefix)
+ Move global functions from main.inc and rcube_shared.inc into classes
+ Better classes separation
+
+RELEASE 0.8.0
+-------------
+- Don't show product version on login screen (can be enabled by config)
+- Renamed old default skin to 'classic'. Larry is the new default skin.
+- Support connections to memcached socket file (#1488577)
+- Enable TinyMCE inlinepopups plugin
+- Update to TinyMCE 3.5.6
+- Correctly escape localized labels in javascript variable (#1488567)
+- Update Net_SMTP/Auth_SASL packages to fix Digest-MD5/Cram-MD5 authentication (#1488571)
+- Don't add attachments content into reply/forward/draft message body (#1488557)
+- Fix 'no connection' errors on page unloads (#1488547)
+- Plugin API: Add 'unauthenticated' hook (#1488138)
+- Show explicit error message when provided hostname is invalid (#1488550)
+- Fix wrong compose screen elements focus in IE9 (#1488541)
+- Fix fatal error when date.timezone isn't set (#1488546)
+- Update to TinyMCE 3.5.4.1
+- Better icons with distinct shapes for priority columns (#1488377)
+- Show dedicated icon for multipart/report messages (#1488524)
+- Properly hide text of icon links/buttons (#1488534)
- Fix handling of unitless CSS size values in HTML message (#1488535)
- Fix removing contact photo using LDAP addressbook (#1488420)
- Fix storing X-ANNIVERSARY date in vCard format (#1488527)
- Update to Mail_Mime-1.8.5 (#1488521)
-- Fix Shift + delete button does not permanently delete messages (#1488243)
-- Add Content-Length for attachments where possible (#1485478)
-- Fix attachment sizes in message print page and attachment preview page (#1488515)
- Fix XSS vulnerability in message subject handling using Larry skin (#1488519)
- Fix handling of links with various URI schemes e.g. "skype:" (#1488106)
- Fix handling of links inside PRE elements on html to text conversion
- Fix indexing of links on html to text conversion
-- Add mail attachments using drag & drop on HTML5 enabled browsers
-- Add workaround for invalid BODYSTRUCTURE response - parse message with Mail_mimeDecode package (#1485585)
- Decode header value in rcube_mime::get() by default (#1488511)
- Fix errors with enabled PHP magic_quotes_sybase option (#1488506)
- Fix SQL query for contacts listing on MS SQL Server (#1488505)
-- Update to TinyMCE 3.5.2
- Fix window.resize handler on IE8 and Opera (#1488453)
- Don't let error message popups cover the login form (#1488500)
-- Display Tiff as Jpeg in browsers without Tiff support (#1488452)
-- Don't display Pdf/Tiff/Flash attachments inline without browser support (#1488452, #1487929)
+- Update to TinyMCE 3.5.2
- Don't show errors when moving contacts into groups they are already in (#1488493)
- Make folders with unread messages in subfolders bold again (#1486793)
- Abbreviate long attachment file names with ellipsis (#1488499)
@@ -30,19 +66,8 @@ CHANGELOG Roundcube Webmail
- Add listcontrols template container in Larry skin (#1488498)
- Fix host autoselection when default_host is an array (#1488495)
- Move messages forwarding mode setting into Preferences
-- Add is_escaped attribute for html_select and html_textarea (#1488485)
- Fix HTML entities handling in HTML editor (#1488483)
- Fix listing shared folders on Courier IMAP (#1488466)
-- Fix issue where draft auto-save wasn't executed after some inactivity time
-- Add vCard import from multiple files at once (#1488015)
-- Roundcube Framework:
- Add possibility to replace IMAP driver with custom class
- Add IMAP auto-connection feature, improving performance with caching enabled
- Replace imap_init hook with storage_init (with additional 'driver' argument)
- Improved performance by caching IMAP server's capabilities in session
- Unified global functions naming (rcube_ prefix)
- Move global functions from main.inc and rcube_shared.inc into classes
- Better classes separation
RELEASE 0.8-rc
--------------
@@ -1364,7 +1389,3 @@ RELEASE 0.1-RC1
Now based on the message structure delivered by the IMAP server.
- Fixed some XSS and SQL injection issues
- Fixed charset problems with folder renaming
-
-
-
-
diff --git a/INSTALL b/INSTALL
index 8143094fb..228980129 100644
--- a/INSTALL
+++ b/INSTALL
@@ -20,7 +20,7 @@ REQUIREMENTS
- Mail_mimeDecode 1.5.5 or newer
- Net_SMTP 1.4.2 or newer
- Net_IDNA2 0.1.1 or newer
- - Auth_SASL 1.0.3 or newer
+ - Auth_SASL 1.0.6 or newer
* php.ini options (see .htaccess file):
- error_reporting E_ALL & ~E_NOTICE (or lower)
- memory_limit > 16MB (increase as suitable to support large attachments)
diff --git a/SQL/mssql.initial.sql b/SQL/mssql.initial.sql
index 2ac6aa63e..85b8e4ef6 100644
--- a/SQL/mssql.initial.sql
+++ b/SQL/mssql.initial.sql
@@ -1,5 +1,4 @@
CREATE TABLE [dbo].[cache] (
- [cache_id] [int] IDENTITY (1, 1) NOT NULL ,
[user_id] [int] NOT NULL ,
[cache_key] [varchar] (128) COLLATE Latin1_General_CI_AI NOT NULL ,
[created] [datetime] NOT NULL ,
@@ -93,7 +92,6 @@ CREATE TABLE [dbo].[users] (
[user_id] [int] IDENTITY (1, 1) NOT NULL ,
[username] [varchar] (128) COLLATE Latin1_General_CI_AI NOT NULL ,
[mail_host] [varchar] (128) COLLATE Latin1_General_CI_AI NOT NULL ,
- [alias] [varchar] (128) COLLATE Latin1_General_CI_AI NOT NULL ,
[created] [datetime] NOT NULL ,
[last_login] [datetime] NULL ,
[language] [varchar] (5) COLLATE Latin1_General_CI_AI NULL ,
@@ -117,13 +115,6 @@ CREATE TABLE [dbo].[searches] (
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
-ALTER TABLE [dbo].[cache] WITH NOCHECK ADD
- PRIMARY KEY CLUSTERED
- (
- [cache_id]
- ) ON [PRIMARY]
-GO
-
ALTER TABLE [dbo].[cache_index] WITH NOCHECK ADD
PRIMARY KEY CLUSTERED
(
@@ -282,6 +273,8 @@ GO
CREATE INDEX [IX_identities_user_id] ON [dbo].[identities]([user_id]) ON [PRIMARY]
GO
+CREATE INDEX [IX_identities_email] ON [dbo].[identities]([email],[del]) ON [PRIMARY]
+GO
ALTER TABLE [dbo].[session] ADD
CONSTRAINT [DF_session_sess_id] DEFAULT ('') FOR [sess_id],
@@ -295,16 +288,12 @@ GO
ALTER TABLE [dbo].[users] ADD
CONSTRAINT [DF_users_username] DEFAULT ('') FOR [username],
CONSTRAINT [DF_users_mail_host] DEFAULT ('') FOR [mail_host],
- CONSTRAINT [DF_users_alias] DEFAULT ('') FOR [alias],
CONSTRAINT [DF_users_created] DEFAULT (getdate()) FOR [created]
GO
CREATE UNIQUE INDEX [IX_users_username] ON [dbo].[users]([username],[mail_host]) ON [PRIMARY]
GO
-CREATE INDEX [IX_users_alias] ON [dbo].[users]([alias]) ON [PRIMARY]
-GO
-
CREATE UNIQUE INDEX [IX_dictionary_user_language] ON [dbo].[dictionary]([user_id],[language]) ON [PRIMARY]
GO
diff --git a/SQL/mssql.upgrade.sql b/SQL/mssql.upgrade.sql
index d111ef3e7..26001e713 100644
--- a/SQL/mssql.upgrade.sql
+++ b/SQL/mssql.upgrade.sql
@@ -261,4 +261,13 @@ ALTER TABLE [dbo].[contacts] ALTER COLUMN [email] [varchar] (8000) COLLATE Latin
GO
ALTER TABLE [dbo].[contacts] ADD CONSTRAINT [DF_contacts_email] DEFAULT ('') FOR [email]
GO
+
+-- Updates from version 0.8
+
+ALTER TABLE [dbo].[cache] DROP COLUMN [cache_id]
+GO
+ALTER TABLE [dbo].[users] DROP COLUMN [alias]
+GO
+CREATE INDEX [IX_identities_email] ON [dbo].[identities]([email],[del]) ON [PRIMARY]
+GO
\ No newline at end of file
diff --git a/SQL/mysql.initial.sql b/SQL/mysql.initial.sql
index b0a7ee7a9..47d9db4a2 100644
--- a/SQL/mysql.initial.sql
+++ b/SQL/mysql.initial.sql
@@ -22,26 +22,22 @@ CREATE TABLE `users` (
`user_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
`username` varchar(128) BINARY NOT NULL,
`mail_host` varchar(128) NOT NULL,
- `alias` varchar(128) BINARY NOT NULL,
`created` datetime NOT NULL DEFAULT '1000-01-01 00:00:00',
`last_login` datetime DEFAULT NULL,
`language` varchar(5),
`preferences` text,
PRIMARY KEY(`user_id`),
- UNIQUE `username` (`username`, `mail_host`),
- INDEX `alias_index` (`alias`)
+ UNIQUE `username` (`username`, `mail_host`)
) /*!40000 ENGINE=INNODB */ /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */;
-- Table structure for table `cache`
CREATE TABLE `cache` (
- `cache_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
+ `user_id` int(10) UNSIGNED NOT NULL,
`cache_key` varchar(128) /*!40101 CHARACTER SET ascii COLLATE ascii_general_ci */ NOT NULL ,
`created` datetime NOT NULL DEFAULT '1000-01-01 00:00:00',
`data` longtext NOT NULL,
- `user_id` int(10) UNSIGNED NOT NULL,
- PRIMARY KEY(`cache_id`),
CONSTRAINT `user_id_fk_cache` FOREIGN KEY (`user_id`)
REFERENCES `users`(`user_id`) ON DELETE CASCADE ON UPDATE CASCADE,
INDEX `created_index` (`created`),
@@ -158,7 +154,8 @@ CREATE TABLE `identities` (
PRIMARY KEY(`identity_id`),
CONSTRAINT `user_id_fk_identities` FOREIGN KEY (`user_id`)
REFERENCES `users`(`user_id`) ON DELETE CASCADE ON UPDATE CASCADE,
- INDEX `user_identities_index` (`user_id`, `del`)
+ INDEX `user_identities_index` (`user_id`, `del`),
+ INDEX `email_identities_index` (`email`, `del`)
) /*!40000 ENGINE=INNODB */ /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */;
diff --git a/SQL/mysql.update.sql b/SQL/mysql.update.sql
index 300ceb59d..237aa3e38 100644
--- a/SQL/mysql.update.sql
+++ b/SQL/mysql.update.sql
@@ -239,3 +239,9 @@ ALTER TABLE `identities` ALTER `user_id` DROP DEFAULT;
ALTER TABLE `searches` ALTER `user_id` DROP DEFAULT;
/*!40014 SET FOREIGN_KEY_CHECKS=1 */;
+
+-- Updates from version 0.8
+
+ALTER TABLE `cache` DROP COLUMN `cache_id`;
+ALTER TABLE `users` DROP COLUMN `alias`;
+ALTER TABLE `identities` ADD INDEX `email_identities_index` (`email`, `del`);
diff --git a/SQL/postgres.initial.sql b/SQL/postgres.initial.sql
index e12a9978a..f7b2d96d9 100644
--- a/SQL/postgres.initial.sql
+++ b/SQL/postgres.initial.sql
@@ -20,7 +20,6 @@ CREATE TABLE users (
user_id integer DEFAULT nextval('user_ids'::text) PRIMARY KEY,
username varchar(128) DEFAULT '' NOT NULL,
mail_host varchar(128) DEFAULT '' NOT NULL,
- alias varchar(128) DEFAULT '' NOT NULL,
created timestamp with time zone DEFAULT now() NOT NULL,
last_login timestamp with time zone DEFAULT NULL,
"language" varchar(5),
@@ -28,9 +27,7 @@ CREATE TABLE users (
CONSTRAINT users_username_key UNIQUE (username, mail_host)
);
-CREATE INDEX users_alias_id_idx ON users (alias);
-
--
-- Table "session"
-- Name: session; Type: TABLE; Schema: public; Owner: postgres
@@ -81,6 +78,7 @@ CREATE TABLE identities (
);
CREATE INDEX identities_user_id_idx ON identities (user_id, del);
+CREATE INDEX identities_email_idx ON identities (email, del);
--
@@ -160,23 +158,11 @@ CREATE TABLE contactgroupmembers (
CREATE INDEX contactgroupmembers_contact_id_idx ON contactgroupmembers (contact_id);
--
--- Sequence "cache_ids"
--- Name: cache_ids; Type: SEQUENCE; Schema: public; Owner: postgres
---
-
-CREATE SEQUENCE cache_ids
- INCREMENT BY 1
- NO MAXVALUE
- NO MINVALUE
- CACHE 1;
-
---
-- Table "cache"
-- Name: cache; Type: TABLE; Schema: public; Owner: postgres
--
CREATE TABLE "cache" (
- cache_id integer DEFAULT nextval('cache_ids'::text) PRIMARY KEY,
user_id integer NOT NULL
REFERENCES users (user_id) ON DELETE CASCADE ON UPDATE CASCADE,
cache_key varchar(128) DEFAULT '' NOT NULL,
diff --git a/SQL/postgres.update.sql b/SQL/postgres.update.sql
index 7e9d34fa9..11ab93bfc 100644
--- a/SQL/postgres.update.sql
+++ b/SQL/postgres.update.sql
@@ -175,3 +175,11 @@ ALTER TABLE "session" ALTER sess_id TYPE varchar(128);
DROP INDEX contacts_user_id_idx;
CREATE INDEX contacts_user_id_idx ON contacts USING btree (user_id, del);
ALTER TABLE contacts ALTER email TYPE text;
+
+-- Updates from version 0.8
+
+ALTER TABLE cache DROP COLUMN cache_id;
+DROP SEQUENCE cache_ids;
+
+ALTER TABLE users DROP COLUMN alias;
+CREATE INDEX identities_email_idx ON identities (email, del);
diff --git a/SQL/sqlite.initial.sql b/SQL/sqlite.initial.sql
index dafb5a15d..f5b5615d8 100644
--- a/SQL/sqlite.initial.sql
+++ b/SQL/sqlite.initial.sql
@@ -5,7 +5,6 @@
--
CREATE TABLE cache (
- cache_id integer NOT NULL PRIMARY KEY,
user_id integer NOT NULL default 0,
cache_key varchar(128) NOT NULL default '',
created datetime NOT NULL default '0000-00-00 00:00:00',
@@ -81,6 +80,7 @@ CREATE TABLE identities (
);
CREATE INDEX ix_identities_user_id ON identities(user_id, del);
+CREATE INDEX ix_identities_email ON identities(email, del);
-- --------------------------------------------------------
@@ -93,7 +93,6 @@ CREATE TABLE users (
user_id integer NOT NULL PRIMARY KEY,
username varchar(128) NOT NULL default '',
mail_host varchar(128) NOT NULL default '',
- alias varchar(128) NOT NULL default '',
created datetime NOT NULL default '0000-00-00 00:00:00',
last_login datetime DEFAULT NULL,
language varchar(5),
@@ -101,7 +100,6 @@ CREATE TABLE users (
);
CREATE UNIQUE INDEX ix_users_username ON users(username, mail_host);
-CREATE INDEX ix_users_alias ON users(alias);
-- --------------------------------------------------------
diff --git a/SQL/sqlite.update.sql b/SQL/sqlite.update.sql
index 9f410fb13..72a29e9ae 100644
--- a/SQL/sqlite.update.sql
+++ b/SQL/sqlite.update.sql
@@ -333,3 +333,48 @@ INSERT INTO contacts (contact_id, user_id, changed, del, name, email, firstname,
CREATE INDEX ix_contacts_user_id ON contacts(user_id, del);
DROP TABLE contacts_tmp;
+
+-- Updates from version 0.8
+
+DROP TABLE cache;
+CREATE TABLE cache (
+ user_id integer NOT NULL default 0,
+ cache_key varchar(128) NOT NULL default '',
+ created datetime NOT NULL default '0000-00-00 00:00:00',
+ data text NOT NULL
+);
+
+CREATE INDEX ix_cache_user_cache_key ON cache(user_id, cache_key);
+CREATE INDEX ix_cache_created ON cache(created);
+
+CREATE TABLE tmp_users (
+ user_id integer NOT NULL PRIMARY KEY,
+ username varchar(128) NOT NULL default '',
+ mail_host varchar(128) NOT NULL default '',
+ created datetime NOT NULL default '0000-00-00 00:00:00',
+ last_login datetime DEFAULT NULL,
+ language varchar(5),
+ preferences text NOT NULL default ''
+);
+
+INSERT INTO tmp_users (user_id, username, mail_host, created, last_login, language, preferences)
+ SELECT user_id, username, mail_host, created, last_login, language, preferences FROM users;
+
+DROP TABLE users;
+
+CREATE TABLE users (
+ user_id integer NOT NULL PRIMARY KEY,
+ username varchar(128) NOT NULL default '',
+ mail_host varchar(128) NOT NULL default '',
+ created datetime NOT NULL default '0000-00-00 00:00:00',
+ last_login datetime DEFAULT NULL,
+ language varchar(5),
+ preferences text NOT NULL default ''
+);
+
+INSERT INTO users (user_id, username, mail_host, created, last_login, language, preferences)
+ SELECT user_id, username, mail_host, created, last_login, language, preferences FROM tmp_users;
+
+CREATE UNIQUE INDEX ix_users_username ON users(username, mail_host);
+
+CREATE INDEX ix_identities_email ON identities(email, del);
diff --git a/bin/installto.sh b/bin/installto.sh
index 3a64476a6..de96bf004 100755
--- a/bin/installto.sh
+++ b/bin/installto.sh
@@ -5,7 +5,7 @@
| bin/installto.sh |
| |
| This file is part of the Roundcube Webmail client |
- | Copyright (C) 2011, The Roundcube Dev Team |
+ | Copyright (C) 2012, The Roundcube Dev Team |
| |
| Licensed under the GNU General Public License version 3 or |
| any later version with exceptions for skins & plugins. |
@@ -50,14 +50,25 @@ if (strtolower($input) == 'y') {
break;
}
}
- foreach (array('index.php','.htaccess','config/main.inc.php.dist','config/db.inc.php.dist','CHANGELOG','README','UPGRADING') as $file) {
+ foreach (array('index.php','.htaccess','config/main.inc.php.dist','config/db.inc.php.dist','CHANGELOG','README.md','UPGRADING','LICENSE') as $file) {
if (!system("rsync -av " . INSTALL_PATH . "$file $target_dir/$file")) {
$err = true;
break;
}
}
echo "done.\n\n";
-
+
+ if (is_dir("$target_dir/skins/default")) {
+ echo "Removing old default skin...";
+ system("rm -rf $target_dir/skins/default $target_dir/plugins/jqueryui/themes/default");
+ foreach (glob(INSTALL_PATH . "plugins/*/skins") as $plugin_skin_dir) {
+ $plugin_skin_dir = preg_replace('!^.*' . INSTALL_PATH . '!', '', $plugin_skin_dir);
+ if (is_dir("$target_dir/$plugin_skin_dir/classic"))
+ system("rm -rf $target_dir/$plugin_skin_dir/default");
+ }
+ echo "done.\n\n";
+ }
+
if (!$err) {
echo "Running update script at target...\n";
system("cd $target_dir && bin/update.sh --version=$oldversion");
diff --git a/bin/update.sh b/bin/update.sh
index aa10c2fd7..f141fa685 100755
--- a/bin/update.sh
+++ b/bin/update.sh
@@ -111,6 +111,12 @@ if ($RCI->configured) {
if ($write1 && $write2) {
echo "Done.\n";
echo "Your configuration files are now up-to-date!\n";
+
+ if ($messages['missing']) {
+ echo "But you still need to add the following missing options:\n";
+ foreach ($messages['missing'] as $msg)
+ echo "- '" . $msg['prop'] . ($msg['name'] ? "': " . $msg['name'] : "'") . "\n";
+ }
}
else {
echo "Failed to write config files!\n";
diff --git a/config/main.inc.php.dist b/config/main.inc.php.dist
index e0fa933bf..58e59ae6e 100644
--- a/config/main.inc.php.dist
+++ b/config/main.inc.php.dist
@@ -68,10 +68,11 @@ $rcmail_config['smtp_debug'] = false;
// to display a pulldown menu or set one host as string.
// To use SSL/TLS connection, enter hostname with prefix ssl:// or tls://
// Supported replacement variables:
-// %n - http hostname ($_SERVER['SERVER_NAME'])
-// %d - domain (http hostname without the first part)
+// %n - hostname ($_SERVER['SERVER_NAME'])
+// %t - hostname without the first part
+// %d - domain (http hostname $_SERVER['HTTP_HOST'] without the first part)
// %s - domain name after the '@' from e-mail address provided at login screen
-// For example %n = mail.domain.tld, %d = domain.tld
+// For example %n = mail.domain.tld, %t = domain.tld
$rcmail_config['default_host'] = '';
// TCP port used for IMAP connections
@@ -135,10 +136,11 @@ $rcmail_config['messages_cache'] = false;
// If left blank, the PHP mail() function is used
// Supported replacement variables:
// %h - user's IMAP hostname
-// %n - http hostname ($_SERVER['SERVER_NAME'])
-// %d - domain (http hostname without the first part)
+// %n - hostname ($_SERVER['SERVER_NAME'])
+// %t - hostname without the first part
+// %d - domain (http hostname $_SERVER['HTTP_HOST'] without the first part)
// %z - IMAP domain (IMAP hostname without the first part)
-// For example %n = mail.domain.tld, %d = domain.tld
+// For example %n = mail.domain.tld, %t = domain.tld
$rcmail_config['smtp_server'] = '';
// SMTP port (default is 25; use 587 for STARTTLS or 465 for the
@@ -193,6 +195,9 @@ $rcmail_config['skin_logo'] = null;
// set to false if only registered users can use this service
$rcmail_config['auto_create_user'] = true;
+// Enables possibility to log in using email address from user identities
+$rcmail_config['user_aliases'] = false;
+
// use this folder to store log files (must be writeable for apache user)
// This is used by the 'file' log driver.
$rcmail_config['log_dir'] = 'logs/';
@@ -228,6 +233,9 @@ $rcmail_config['login_lc'] = false;
// Includes should be interpreted as PHP files
$rcmail_config['skin_include_php'] = false;
+// display software version on login screen
+$rcmail_config['display_version'] = false;
+
// Session lifetime in minutes
// must be greater than 'keep_alive'/60
$rcmail_config['session_lifetime'] = 10;
@@ -244,8 +252,8 @@ $rcmail_config['session_name'] = null;
$rcmail_config['session_storage'] = 'db';
// Use these hosts for accessing memcached
-// Define any number of hosts in the form hostname:port
-$rcmail_config['memcache_hosts'] = null; // e.g. array( 'localhost:11211', '192.168.1.12:11211' );
+// Define any number of hosts in the form of hostname:port or unix:///path/to/socket.file
+$rcmail_config['memcache_hosts'] = null; // e.g. array( 'localhost:11211', '192.168.1.12:11211', 'unix:///var/tmp/memcached.sock' );
// check client IP in session athorization
$rcmail_config['ip_check'] = false;
@@ -267,10 +275,11 @@ $rcmail_config['des_key'] = 'rcmail-!24ByteDESkey*Str';
// Specify an array with 'host' => 'domain' values to support multiple hosts
// Supported replacement variables:
// %h - user's IMAP hostname
-// %n - http hostname ($_SERVER['SERVER_NAME'])
-// %d - domain (http hostname without the first part)
+// %n - hostname ($_SERVER['SERVER_NAME'])
+// %t - hostname without the first part
+// %d - domain (http hostname $_SERVER['HTTP_HOST'] without the first part)
// %z - IMAP domain (IMAP hostname without the first part)
-// For example %n = mail.domain.tld, %d = domain.tld
+// For example %n = mail.domain.tld, %t = domain.tld
$rcmail_config['username_domain'] = '';
// This domain will be used to form e-mail addresses of new users
@@ -280,7 +289,7 @@ $rcmail_config['username_domain'] = '';
// %n - http hostname ($_SERVER['SERVER_NAME'])
// %d - domain (http hostname without the first part)
// %z - IMAP domain (IMAP hostname without the first part)
-// For example %n = mail.domain.tld, %d = domain.tld
+// For example %n = mail.domain.tld, %t = domain.tld
$rcmail_config['mail_domain'] = '';
// Password charset.
@@ -532,10 +541,11 @@ $rcmail_config['ldap_public']['Verisign'] = array(
'name' => 'Verisign.com',
// Replacement variables supported in host names:
// %h - user's IMAP hostname
- // %n - http hostname ($_SERVER['SERVER_NAME'])
- // %d - domain (http hostname without the first part)
+ // %n - hostname ($_SERVER['SERVER_NAME'])
+ // %t - hostname without the first part
+ // %d - domain (http hostname $_SERVER['HTTP_HOST'] without the first part)
// %z - IMAP domain (IMAP hostname without the first part)
- // For example %n = mail.domain.tld, %d = domain.tld
+ // For example %n = mail.domain.tld, %t = domain.tld
'hosts' => array('directory.verisign.com'),
'port' => 389,
'use_tls' => false,
@@ -592,7 +602,7 @@ $rcmail_config['ldap_public']['Verisign'] = array(
'name' => 'cn',
'surname' => 'sn',
'firstname' => 'givenName',
- 'title' => 'title',
+ 'jobtitle' => 'title',
'email' => 'mail:*',
'phone:home' => 'homePhone',
'phone:work' => 'telephoneNumber',
@@ -678,7 +688,7 @@ $rcmail_config['addressbook_search_mode'] = 0;
$rcmail_config['default_charset'] = 'ISO-8859-1';
// skin name: folder from skins/
-$rcmail_config['skin'] = 'default';
+$rcmail_config['skin'] = 'larry';
// show up to X items in messages list view
$rcmail_config['mail_pagesize'] = 50;
@@ -762,7 +772,7 @@ $rcmail_config['keep_alive'] = 60;
$rcmail_config['check_all_folders'] = false;
// If true, after message delete/move, the next message will be displayed
-$rcmail_config['display_next'] = false;
+$rcmail_config['display_next'] = true;
// 0 - Do not expand threads
// 1 - Expand all threads automatically
diff --git a/index.php b/index.php
index c823f19ae..ef5733a12 100644
--- a/index.php
+++ b/index.php
@@ -100,12 +100,9 @@ if ($RCMAIL->task == 'login' && $RCMAIL->action == 'login') {
'valid' => $request_valid,
));
- // check if client supports cookies
- if ($auth['cookiecheck'] && empty($_COOKIE)) {
- $OUTPUT->show_message("cookiesdisabled", 'warning');
- }
- else if ($auth['valid'] && !$auth['abort'] &&
- $RCMAIL->login($auth['user'], $auth['pass'], $auth['host'])
+ // Login
+ if ($auth['valid'] && !$auth['abort'] &&
+ $RCMAIL->login($auth['user'], $auth['pass'], $auth['host'], $auth['cookiecheck'])
) {
// create new session ID, don't destroy the current session
// it was destroyed already by $RCMAIL->kill_session() above
@@ -140,9 +137,23 @@ if ($RCMAIL->task == 'login' && $RCMAIL->action == 'login') {
$OUTPUT->redirect($redir);
}
else {
- $error_code = is_object($RCMAIL->storage) ? $RCMAIL->storage->get_error_code() : 1;
+ if (!$auth['valid']) {
+ $error_code = RCMAIL::ERROR_INVALID_REQUEST;
+ }
+ else {
+ $error_code = $auth['error'] ? $auth['error'] : $RCMAIL->login_error();
+ }
- $OUTPUT->show_message($error_code < -1 ? 'storageerror' : (!$auth['valid'] ? 'invalidrequest' : 'loginfailed'), 'warning');
+ $error_labels = array(
+ RCMAIL::ERROR_STORAGE => 'storageerror',
+ RCMAIL::ERROR_COOKIES_DISABLED => 'cookiesdisabled',
+ RCMAIL::ERROR_INVALID_REQUEST => 'invalidrequest',
+ RCMAIL::ERROR_INVALID_HOST => 'invalidhost',
+ );
+
+ $error_message = $error_labels[$error_code] ? $error_labels[$error_code] : 'loginfailed';
+
+ $OUTPUT->show_message($error_message, 'warning');
$RCMAIL->plugins->exec_hook('login_failed', array(
'code' => $error_code, 'host' => $auth['host'], 'user' => $auth['user']));
$RCMAIL->kill_session();
@@ -200,8 +211,10 @@ if (empty($RCMAIL->user->ID)) {
if ($session_error || $_REQUEST['_err'] == 'session')
$OUTPUT->show_message('sessionerror', 'error', null, true, -1);
- $RCMAIL->set_task('login');
- $OUTPUT->send('login');
+ $plugin = $RCMAIL->plugins->exec_hook('unauthenticated', array('task' => 'login', 'error' => $session_error));
+
+ $RCMAIL->set_task($plugin['task']);
+ $OUTPUT->send($plugin['task']);
}
// CSRF prevention
else {
diff --git a/installer/check.php b/installer/check.php
index 3136563b1..52460bb0f 100644
--- a/installer/check.php
+++ b/installer/check.php
@@ -38,7 +38,9 @@ $ini_checks = array(
);
$optional_checks = array(
- 'date.timezone' => '-NOTEMPTY-',
+ // required for utils/modcss.inc, should we require this?
+ 'allow_url_fopen' => 1,
+ 'date.timezone' => '-NOTEMPTY-',
);
$source_urls = array(
diff --git a/installer/rcube_install.php b/installer/rcube_install.php
index 331e29625..bfb111f1d 100644
--- a/installer/rcube_install.php
+++ b/installer/rcube_install.php
@@ -5,7 +5,7 @@
| rcube_install.php |
| |
| This file is part of the Roundcube Webmail package |
- | Copyright (C) 2008-2011, The Roundcube Dev Team |
+ | Copyright (C) 2008-2012, The Roundcube Dev Team |
| |
| Licensed under the GNU General Public License version 3 or |
| any later version with exceptions for skins & plugins. |
@@ -274,7 +274,7 @@ class rcube_install
}
else if (!empty($this->config['spellcheck_languages'])) {
foreach ($this->config['spellcheck_languages'] as $lang => $descr)
- if (!pspell_new($lang))
+ if (!@pspell_new($lang))
$out['dependencies'][] = array('prop' => 'spellcheck_languages',
'explain' => "You are missing pspell support for language $lang ($descr)");
}
@@ -453,7 +453,7 @@ class rcube_install
'0.5-beta', '0.5', '0.5.1',
'0.6-beta', '0.6',
'0.7-beta', '0.7', '0.7.1', '0.7.2',
- '0.8-beta', '0.8-rc',
+ '0.8-beta', '0.8-rc', '0.8.0',
));
return $select;
}
diff --git a/plugins/acl/acl.js b/plugins/acl/acl.js
index aa9e06d3d..b6e2c811d 100644
--- a/plugins/acl/acl.js
+++ b/plugins/acl/acl.js
@@ -28,6 +28,9 @@ if (window.rcmail) {
rcmail.enable_command('acl-create', 'acl-save', 'acl-cancel', 'acl-mode-switch', true);
rcmail.enable_command('acl-delete', 'acl-edit', false);
+
+ if (rcmail.env.acl_advanced)
+ $('#acl-switch').addClass('selected');
});
}
@@ -129,6 +132,8 @@ rcube_webmail.prototype.acl_mode_switch = function(elem)
// ACL table initialization
rcube_webmail.prototype.acl_list_init = function()
{
+ $('#acl-switch')[this.env.acl_advanced ? 'addClass' : 'removeClass']('selected');
+
this.acl_list = new rcube_list_widget(this.gui_objects.acltable,
{multiselect:true, draggable:false, keyboard:true, toggleselect:true});
this.acl_list.addEventListener('select', function(o) { rcmail.acl_list_select(o); });
diff --git a/plugins/acl/acl.php b/plugins/acl/acl.php
index ab981ab89..8709f0b00 100644
--- a/plugins/acl/acl.php
+++ b/plugins/acl/acl.php
@@ -128,8 +128,10 @@ class acl extends rcube_plugin
*/
function folder_form($args)
{
- // Edited folder name (empty in create-folder mode)
$mbox_imap = $args['options']['name'];
+ $myrights = $args['options']['rights'];
+
+ // Edited folder name (empty in create-folder mode)
if (!strlen($mbox_imap)) {
return $args;
}
@@ -139,18 +141,8 @@ class acl extends rcube_plugin
return $args;
}
*/
- // Namespace root
- if ($args['options']['is_root']) {
- return $args;
- }
-
// Get MYRIGHTS
- if (!($myrights = $args['options']['rights'])) {
- return $args;
- }
-
- // Do nothing if no ACL support
- if (!$this->rc->storage->get_capability('ACL')) {
+ if (empty($myrights)) {
return $args;
}
diff --git a/plugins/acl/localization/bs_BA.inc b/plugins/acl/localization/bs_BA.inc
new file mode 100644
index 000000000..90eb254ad
--- /dev/null
+++ b/plugins/acl/localization/bs_BA.inc
@@ -0,0 +1,89 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/bs_BA/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Kenan Dervišević <kenan3008@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = 'Razmjena';
+$labels['myrights'] = 'Prava pristupa';
+$labels['username'] = 'Korisnik:';
+$labels['advanced'] = 'napredni mod';
+$labels['newuser'] = 'Dodaj unos';
+$labels['actions'] = 'Akcije za prava pristupa...';
+$labels['anyone'] = 'Svi korisnici (bilo ko)';
+$labels['anonymous'] = 'Gosti (anonimno)';
+$labels['identifier'] = 'Identifikator';
+$labels['acll'] = 'Pronađi';
+$labels['shortacll'] = 'Pronađi';
+$labels['aclr'] = 'ProÄitaj poruke';
+$labels['acls'] = 'Zadrži stanje pregleda';
+$labels['aclw'] = 'Oznake za pisanje';
+$labels['acli'] = 'Umetni (Kopiraj u)';
+$labels['aclp'] = 'Objavi';
+$labels['shortaclp'] = 'Objavi';
+$labels['aclc'] = 'Napravi podfoldere';
+$labels['aclk'] = 'Napravi podfoldere';
+$labels['acld'] = 'Obriši poruke';
+$labels['aclt'] = 'Obriši poruke';
+$labels['acle'] = 'Izbriši';
+$labels['shortacle'] = 'Izbriši';
+$labels['aclx'] = 'Obriši folder';
+$labels['acla'] = 'Administracija';
+$labels['shortacla'] = 'Administracija';
+$labels['aclfull'] = 'Puna kontrola';
+$labels['aclother'] = 'Ostalo';
+$labels['shortaclother'] = 'Ostalo';
+$labels['aclread'] = 'ProÄitano';
+$labels['shortaclr'] = 'ProÄitano';
+$labels['shortaclread'] = 'ProÄitano';
+$labels['aclwrite'] = 'Piši';
+$labels['shortaclw'] = 'Piši';
+$labels['shortaclwrite'] = 'Piši';
+$labels['acldelete'] = 'Obriši';
+$labels['shortacld'] = 'Obriši';
+$labels['shortaclt'] = 'Obriši';
+$labels['shortacldelete'] = 'Obriši';
+$labels['shortacls'] = 'Zadrži';
+$labels['shortacli'] = 'Umetni';
+$labels['shortaclc'] = 'Kreiraj';
+$labels['shortaclk'] = 'Kreiraj';
+$labels['shortaclx'] = 'Brisanje foldera';
+$labels['longacll'] = 'Ovaj folder je vidljiv u listama i moguće je izvršiti pretplatu na njega';
+$labels['longaclr'] = 'Folder je moguće otvoriti radi Äitanja';
+$labels['longaclread'] = 'Folder je moguće otvoriti radi Äitanja';
+$labels['longacls'] = 'Oznaka Äitanja za poruke se može promijeniti';
+$labels['longaclw'] = 'Oznake za poruke i kljuÄne rijeÄi je moguće promijeniti, osim za pregledano i obrisano';
+$labels['longacli'] = 'Moguće je kopirati i zapisivati poruke u folder';
+$labels['longaclp'] = 'Moguće je objavljivati poruke u ovaj folder';
+$labels['longaclc'] = 'Moguće je kreirati (ili preimenovati) foldere diretno ispod ovog foldera';
+$labels['longaclk'] = 'Moguće je kreirati (ili preimenovati) foldere diretno ispod ovog foldera';
+$labels['longacld'] = 'Oznaka za obrisane poruke se može mijenjati';
+$labels['longaclt'] = 'Oznaka za obrisane poruke se može mijenjati';
+$labels['longacle'] = 'Poruke je moguće obrisati';
+$labels['longaclx'] = 'Folder je moguće obrisati ili preimenovati';
+$labels['longacla'] = 'Pristupna prava foldera je moguće promijeniti';
+$labels['longaclfull'] = 'Puna kontrola ukljuÄujući i administraciju foldera';
+$labels['longaclwrite'] = 'Moguće je oznaÄavati, zapisivati i kopirati poruke u folder';
+$labels['longacldelete'] = 'Moguće je obrisati poruke';
+$labels['deleting'] = 'Brišem prava pristupa...';
+$labels['saving'] = 'Snimam prava pristupa...';
+$labels['updatesuccess'] = 'Prava pristupa su uspješno promijenjena';
+$labels['deletesuccess'] = 'Prava pristupa su uspješno obrisana';
+$labels['createsuccess'] = 'Prava pristupa su uspješno dodana';
+$labels['updateerror'] = 'Nije moguće ažurirati prava pristupa';
+$labels['deleteerror'] = 'Nije moguće obrisati prava pristupa';
+$labels['createerror'] = 'Nije moguće dodati prava pristupa';
+$labels['deleteconfirm'] = 'Jeste li sigurni da želite ukloniti prava pristupa za odabrane korisnike?';
+$labels['norights'] = 'Niste odabrali prava pristupa!';
+$labels['nouser'] = 'Niste odabrali korisniÄko ime!';
+
diff --git a/plugins/acl/localization/ca_ES.inc b/plugins/acl/localization/ca_ES.inc
new file mode 100644
index 000000000..c182736c2
--- /dev/null
+++ b/plugins/acl/localization/ca_ES.inc
@@ -0,0 +1,89 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ca_ES/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Jordi Sanfeliu <jordi@fibranet.cat> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = 'Comparteix';
+$labels['myrights'] = 'Permisos d\'accés';
+$labels['username'] = 'Usuari:';
+$labels['advanced'] = 'Mode avançat';
+$labels['newuser'] = 'Afegeix una entrada';
+$labels['actions'] = 'Accions dels permisos d\'accés';
+$labels['anyone'] = 'Tots els usuaris';
+$labels['anonymous'] = 'Convidats';
+$labels['identifier'] = 'Identificador';
+$labels['acll'] = 'Cerca';
+$labels['shortacll'] = 'Cerca';
+$labels['aclr'] = 'Llegeix missatges';
+$labels['acls'] = 'Conserva\'l com a llegit';
+$labels['aclw'] = 'Escriu marques';
+$labels['acli'] = 'Insereix (copia dins)';
+$labels['aclp'] = 'Envia l\'entrada';
+$labels['shortaclp'] = 'Envia l\'entrada';
+$labels['aclc'] = 'Crea subcarpetes';
+$labels['aclk'] = 'Crea subcarpetes';
+$labels['acld'] = 'Suprimeix missatges';
+$labels['aclt'] = 'Suprimeix missatges';
+$labels['acle'] = 'Buida';
+$labels['shortacle'] = 'Buida';
+$labels['aclx'] = 'Suprimeix carpeta';
+$labels['acla'] = 'Administra';
+$labels['shortacla'] = 'Administra';
+$labels['aclfull'] = 'Control total';
+$labels['aclother'] = 'Un altre';
+$labels['shortaclother'] = 'Un altre';
+$labels['aclread'] = 'Lectura';
+$labels['shortaclr'] = 'Lectura';
+$labels['shortaclread'] = 'Lectura';
+$labels['aclwrite'] = 'Escriptura';
+$labels['shortaclw'] = 'Escriptura';
+$labels['shortaclwrite'] = 'Escriptura';
+$labels['acldelete'] = 'Suprimeix';
+$labels['shortacld'] = 'Suprimeix';
+$labels['shortaclt'] = 'Suprimeix';
+$labels['shortacldelete'] = 'Suprimeix';
+$labels['shortacls'] = 'Conserva';
+$labels['shortacli'] = 'Insereix';
+$labels['shortaclc'] = 'Crea';
+$labels['shortaclk'] = 'Crea';
+$labels['shortaclx'] = 'Suprimeix carpeta';
+$labels['longacll'] = 'La carpeta és visible a les llistes i s\'hi pot subscriure';
+$labels['longaclr'] = 'La carpeta pot ser oberta per llegir';
+$labels['longaclread'] = 'La carpeta pot ser oberta per llegir';
+$labels['longacls'] = 'Els missatges marcats com a Llegit poden ser canviats';
+$labels['longaclw'] = 'Les marques i les paraules clau dels missatges poden ser canviats, excepte els Llegit i Suprimit';
+$labels['longacli'] = 'Els missatges poden ser escrits i copiats a la carpeta';
+$labels['longaclp'] = 'Els missatges poden ser enviats a aquesta carpeta';
+$labels['longaclc'] = 'Es poden crear (or reanomenar) carpetes directament sota aquesta carpeta';
+$labels['longaclk'] = 'Es poden crear (or reanomenar) carpetes directament sota aquesta carpeta';
+$labels['longacld'] = 'Poden ser canviats els missatges amb l\'indicador Suprimit';
+$labels['longaclt'] = 'Poden ser canviats els missatges amb l\'indicador Suprimit';
+$labels['longacle'] = 'Els missatges poden ser purgats';
+$labels['longaclx'] = 'La carpeta pot ser suprimida o reanomenada';
+$labels['longacla'] = 'Els permisos d\'accés a la carpeta poden ser canviats';
+$labels['longaclfull'] = 'Control total fins i tot la gestió de carpetes';
+$labels['longaclwrite'] = 'Els missatges poden ser marcats, escrits o copiats a la carpeta';
+$labels['longacldelete'] = 'Els missatges poden ser suprimits';
+$labels['deleting'] = 'Suprimint els permisos d\'accés...';
+$labels['saving'] = 'Desant els permisos d\'accés...';
+$labels['updatesuccess'] = 'Els permisos d\'accés han estat canviats correctament';
+$labels['deletesuccess'] = 'Els permisos d\'accés han estat suprimits correctament';
+$labels['createsuccess'] = 'Els permisos d\'accés han afegits suprimits correctament';
+$labels['updateerror'] = 'No s\'ha pogut actualitzar els permisos d\'accés';
+$labels['deleteerror'] = 'No s\'ha pogut suprimir els permisos d\'accés';
+$labels['createerror'] = 'No s\'ha pogut afegir els permisos d\'accés';
+$labels['deleteconfirm'] = 'Esteu segurs que voleu suprimir els permisos d\'accés de l\'usuari o usuaris seleccionats?';
+$labels['norights'] = 'No s\'ha especificat cap permís';
+$labels['nouser'] = 'No s\'ha especificat cap nom d\'usuari';
+
diff --git a/plugins/acl/localization/cs_CZ.inc b/plugins/acl/localization/cs_CZ.inc
new file mode 100644
index 000000000..f37acf68b
--- /dev/null
+++ b/plugins/acl/localization/cs_CZ.inc
@@ -0,0 +1,76 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/cs_CZ/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Martin Bárta <martin.bartama@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = 'Sdílení';
+$labels['myrights'] = 'Přístupová práva';
+$labels['username'] = 'Uživatel:';
+$labels['advanced'] = 'pokroÄilý režim';
+$labels['newuser'] = 'Přidat záznam';
+$labels['anyone'] = 'Všichni uživatelé (kdokoli)';
+$labels['anonymous'] = 'Hosté (anonymní)';
+$labels['identifier'] = 'Identifikátor';
+$labels['aclr'] = 'Číst zprávy';
+$labels['aclw'] = 'Zapsat oznaÄení';
+$labels['acli'] = 'Vložit (Kopírovat do)';
+$labels['aclp'] = 'Odeslat';
+$labels['shortaclp'] = 'Odeslat';
+$labels['aclc'] = 'Vytvořit podsložky';
+$labels['aclk'] = 'Vytvořit podsložky';
+$labels['acld'] = 'Smazat zprávy';
+$labels['aclt'] = 'Smazat zprávy';
+$labels['acle'] = 'Vyprázdnit';
+$labels['shortacle'] = 'Vyprázdnit';
+$labels['aclx'] = 'Smazat složku';
+$labels['acla'] = 'Spravovat';
+$labels['shortacla'] = 'Spravovat';
+$labels['aclfull'] = 'Plný přístup';
+$labels['aclother'] = 'Ostatní';
+$labels['shortaclother'] = 'Ostatní';
+$labels['aclread'] = 'Číst';
+$labels['shortaclr'] = 'Číst';
+$labels['shortaclread'] = 'Číst';
+$labels['aclwrite'] = 'Zapsat';
+$labels['shortaclw'] = 'Zapsat';
+$labels['shortaclwrite'] = 'Zapsat';
+$labels['acldelete'] = 'Smazat';
+$labels['shortacld'] = 'Smazat';
+$labels['shortaclt'] = 'Smazat';
+$labels['shortacldelete'] = 'Smazat';
+$labels['shortacls'] = 'Zachovat';
+$labels['shortacli'] = 'Vložit';
+$labels['shortaclc'] = 'Vytvořit';
+$labels['shortaclk'] = 'Vytvořit';
+$labels['shortaclx'] = 'Mazat složky';
+$labels['longaclr'] = 'Složka může být otevÅ™ena pro Ätení';
+$labels['longaclread'] = 'Složka může být otevÅ™ena pro Ätení';
+$labels['longacls'] = 'OznaÄená zpráva byla zmÄ›nÄ›na';
+$labels['longaclp'] = 'Zpráva byla odeslána do složky';
+$labels['longacle'] = 'Zpráva může být smazána';
+$labels['longaclx'] = 'Složka může být smazána nebo přejmenována';
+$labels['longacla'] = 'Přístupová práva složky mohou být změněna';
+$labels['longacldelete'] = 'Zprávy mohou být smazány';
+$labels['deleting'] = 'Odstraňuji přístupová práva...';
+$labels['saving'] = 'Ukládám přístupová práva...';
+$labels['updatesuccess'] = 'Přístupová práva byla úspěšně změněna';
+$labels['deletesuccess'] = 'Přístupová páva byla úspěšně odstraněna';
+$labels['createsuccess'] = 'Přístupová práva byla úspěšně přídána';
+$labels['updateerror'] = 'Nelze upravit přístupová práva';
+$labels['deleteerror'] = 'Nelze odstranit přístupová práva';
+$labels['createerror'] = 'Nelze přidat přístupová práva';
+$labels['deleteconfirm'] = 'Opravdu si přejete odstranit přístupová práva pro vybrané(ho) uživatele?';
+$labels['norights'] = 'Nejsou specifikována žádná práva!';
+$labels['nouser'] = 'Není specifikováno uživatelské jméno';
+
diff --git a/plugins/acl/localization/cy_GB.inc b/plugins/acl/localization/cy_GB.inc
new file mode 100644
index 000000000..20dd1495b
--- /dev/null
+++ b/plugins/acl/localization/cy_GB.inc
@@ -0,0 +1,89 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/cy_GB/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Dafydd Tomos |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = 'Rhannu';
+$labels['myrights'] = 'Hawliau Mynediad';
+$labels['username'] = 'Defnyddiwr:';
+$labels['advanced'] = 'Modd uwch';
+$labels['newuser'] = 'Ychwanegu cofnod';
+$labels['actions'] = 'Gweithredoedd hawl mynediad...';
+$labels['anyone'] = 'Pob defnyddiwr (unrhywun)';
+$labels['anonymous'] = 'Gwestai (anhysbys)';
+$labels['identifier'] = 'Dynodwr';
+$labels['acll'] = 'Chwilio';
+$labels['shortacll'] = 'Chwilio';
+$labels['aclr'] = 'Darllen negeseuon';
+$labels['acls'] = 'Cadw stad Gwelwyd';
+$labels['aclw'] = 'Fflagiau ysgrifennu';
+$labels['acli'] = 'Mewnosod (Copïo fewn i)';
+$labels['aclp'] = 'Postio';
+$labels['shortaclp'] = 'Postio';
+$labels['aclc'] = 'Creu is-ffolderi';
+$labels['aclk'] = 'Creu is-ffolderi';
+$labels['acld'] = 'Dileu negeseuon';
+$labels['aclt'] = 'Dileu negeseuon';
+$labels['acle'] = 'Dileu';
+$labels['shortacle'] = 'Dileu';
+$labels['aclx'] = 'Dileu ffolder';
+$labels['acla'] = 'Gweinyddu';
+$labels['shortacla'] = 'Gweinyddu';
+$labels['aclfull'] = 'Rheolaeth lawn';
+$labels['aclother'] = 'Arall';
+$labels['shortaclother'] = 'Arall';
+$labels['aclread'] = 'Darllen';
+$labels['shortaclr'] = 'Darllen';
+$labels['shortaclread'] = 'Darllen';
+$labels['aclwrite'] = 'Ysgrifennu';
+$labels['shortaclw'] = 'Ysgrifennu';
+$labels['shortaclwrite'] = 'Ysgrifennu';
+$labels['acldelete'] = 'Dileu';
+$labels['shortacld'] = 'Dileu';
+$labels['shortaclt'] = 'Dileu';
+$labels['shortacldelete'] = 'Dileu';
+$labels['shortacls'] = 'Cadw';
+$labels['shortacli'] = 'Mewnosod';
+$labels['shortaclc'] = 'Creu';
+$labels['shortaclk'] = 'Creu';
+$labels['shortaclx'] = 'Dileu ffolder';
+$labels['longacll'] = 'Mae\'r ffolder hwn i\'w weld ar y rhestrau a mae\'n bosib tanysgrifio iddo';
+$labels['longaclr'] = 'Gellir agor y ffolder hwn i\'w ddarllen';
+$labels['longaclread'] = 'Gellir agor y ffolder hwn i\'w ddarllen';
+$labels['longacls'] = 'Gellir newid y fflag negeseuon Gwelwyd';
+$labels['longaclw'] = 'Gellir newid y fflagiau negeseuon a allweddeiriau, heblaw Gwelwyd a Dilëuwyd';
+$labels['longacli'] = 'Gellir ysgrifennu neu copïo negeseuon i\'r ffolder';
+$labels['longaclp'] = 'Gellir postio negeseuon i\'r ffolder hwn';
+$labels['longaclc'] = 'Gellir creu (neu ail-enwi) ffolderi yn uniongyrchol o dan y ffolder hwn';
+$labels['longaclk'] = 'Gellir creu (neu ail-enwi) ffolderi yn uniongyrchol o dan y ffolder hwn';
+$labels['longacld'] = 'Gellir newid fflag neges Dileu';
+$labels['longaclt'] = 'Gellir newid fflag neges Dileu';
+$labels['longacle'] = 'Gellir gwaredu negeseuon';
+$labels['longaclx'] = 'Gellir dileu neu ail-enwi\'r ffolder';
+$labels['longacla'] = 'Gellir newid hawliau mynediad y ffolder';
+$labels['longaclfull'] = 'Rheolaeth lawn yn cynnwys rheolaeth ffolderi';
+$labels['longaclwrite'] = 'Gellir nodi, ysgrifennu neu copïo negeseuon i\'r ffolder';
+$labels['longacldelete'] = 'Gellir dileu negeseuon';
+$labels['deleting'] = 'Yn dileu hawliau mynediad...';
+$labels['saving'] = 'Yn cadw hawliau mynediad...';
+$labels['updatesuccess'] = 'Wedi newid hawliau mynediad yn llwyddiannus';
+$labels['deletesuccess'] = 'Wedi dileu hawliau mynediad yn llwyddiannus';
+$labels['createsuccess'] = 'Wedi ychwanegu hawliau mynediad yn llwyddiannus';
+$labels['updateerror'] = 'Methwyd diweddaru hawliau mynediad';
+$labels['deleteerror'] = 'Methwyd dileu hawliau mynediad';
+$labels['createerror'] = 'Methwyd ychwanegu hawliau mynediad';
+$labels['deleteconfirm'] = 'Ydych chi\'n siwr eich bod am ddileu hawliau mynediad y defnyddiwr/wyr ddewiswyd?';
+$labels['norights'] = 'Nid oes hawliau wedi eu nodi!';
+$labels['nouser'] = 'Nid oes enw defnyddiwr wedi ei nodi!';
+
diff --git a/plugins/acl/localization/da_DK.inc b/plugins/acl/localization/da_DK.inc
new file mode 100644
index 000000000..c3006743c
--- /dev/null
+++ b/plugins/acl/localization/da_DK.inc
@@ -0,0 +1,73 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/da_DK/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Johannes Hessellund <osos@openeyes.dk> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = 'Deling';
+$labels['myrights'] = 'Adgangrettigheder';
+$labels['username'] = 'Bruger:';
+$labels['advanced'] = 'avanceret mode';
+$labels['newuser'] = 'Tilføj indgang';
+$labels['anyone'] = 'Alle brugere';
+$labels['anonymous'] = 'Gæst (anonym)';
+$labels['identifier'] = 'Identifikator';
+$labels['acll'] = 'Slå op';
+$labels['shortacll'] = 'Slå op';
+$labels['aclr'] = 'Læs beskeder';
+$labels['acls'] = 'Behold læst-status';
+$labels['aclw'] = 'Skriv flag';
+$labels['acli'] = 'Indsæt (kopier ind i)';
+$labels['aclp'] = 'Send';
+$labels['shortaclp'] = 'Send';
+$labels['aclc'] = 'Opret undermapper';
+$labels['aclk'] = 'Opret undermapper';
+$labels['acld'] = 'Slet beskeder';
+$labels['aclt'] = 'Slet beskeder';
+$labels['acle'] = 'Udslet';
+$labels['shortacle'] = 'Udslet';
+$labels['aclx'] = 'Slet mappe';
+$labels['acla'] = 'Administrer';
+$labels['shortacla'] = 'Administrer';
+$labels['aclfull'] = 'Fuld kontrol';
+$labels['aclother'] = 'Andet';
+$labels['shortaclother'] = 'Andet';
+$labels['aclread'] = 'Læse';
+$labels['shortaclr'] = 'Læse';
+$labels['shortaclread'] = 'Læse';
+$labels['aclwrite'] = 'Skrive';
+$labels['shortaclw'] = 'Skrive';
+$labels['shortaclwrite'] = 'Skrive';
+$labels['acldelete'] = 'Slet';
+$labels['shortacld'] = 'Slet';
+$labels['shortaclt'] = 'Slet';
+$labels['shortacldelete'] = 'Slet';
+$labels['shortacls'] = 'Behold';
+$labels['shortacli'] = 'Indsæt';
+$labels['shortaclc'] = 'Opret';
+$labels['shortaclk'] = 'Opret';
+$labels['shortaclx'] = 'Slet mappe';
+$labels['longacll'] = 'Mappen er synlig på listen og kan abonneres på';
+$labels['longaclr'] = 'Mappen kan åbnes for læsning';
+$labels['longaclread'] = 'Mappen kan åbnes for læsning';
+$labels['longacls'] = 'Beskeders Læst-flag kan ændres';
+$labels['longacli'] = 'Beskeder kan blive skrevet eller kopieret til mappen';
+$labels['longaclp'] = 'Beskeder kan sendes til denne mappe';
+$labels['longaclc'] = 'Mapper kan blive oprettet (eller omdøbt) direkte under denne mappe';
+$labels['longaclk'] = 'Mapper kan blive oprettet (eller omdøbt) direkte under denne mappe';
+$labels['longacld'] = 'Beskeders Slet-flag kan ændres';
+$labels['longaclt'] = 'Beskeders Slet-flag kan ændres';
+$labels['longacle'] = 'Beskeder kan slettes';
+$labels['longaclx'] = 'Mappen kan blive slettet eller omdøbt';
+$labels['longacla'] = 'Mappen adgangsrettigheder kan ændres';
+
diff --git a/plugins/acl/localization/de_CH.inc b/plugins/acl/localization/de_CH.inc
new file mode 100644
index 000000000..f90404d19
--- /dev/null
+++ b/plugins/acl/localization/de_CH.inc
@@ -0,0 +1,89 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/de_CH/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = 'Freigabe';
+$labels['myrights'] = 'Zugriffsrechte';
+$labels['username'] = 'Benutzer:';
+$labels['advanced'] = 'erweiterter Modus';
+$labels['newuser'] = 'Eintrag hinzufügen';
+$labels['actions'] = 'Zugriffsrechte Aktionen...';
+$labels['anyone'] = 'Alle Benutzer (anyone)';
+$labels['anonymous'] = 'Gäste (anonymous)';
+$labels['identifier'] = 'Bezeichnung';
+$labels['acll'] = 'Sichtbar';
+$labels['shortacll'] = 'Sichtbar';
+$labels['aclr'] = 'Nachrichten lesen';
+$labels['acls'] = 'Lesestatus ändern';
+$labels['aclw'] = 'Flags schreiben';
+$labels['acli'] = 'Nachrichten hinzufügen';
+$labels['aclp'] = 'Senden an';
+$labels['shortaclp'] = 'Senden an';
+$labels['aclc'] = 'Unterordner erstellen';
+$labels['aclk'] = 'Unterordner erstellen';
+$labels['acld'] = 'Nachrichten als gelöscht markieren';
+$labels['aclt'] = 'Nachrichten als gelöscht markieren';
+$labels['acle'] = 'Endgültig löschen';
+$labels['shortacle'] = 'Endgültig löschen';
+$labels['aclx'] = 'Ordner löschen';
+$labels['acla'] = 'Verwalten';
+$labels['shortacla'] = 'Verwalten';
+$labels['aclfull'] = 'Vollzugriff';
+$labels['aclother'] = 'Andere';
+$labels['shortaclother'] = 'Andere';
+$labels['aclread'] = 'Lesen';
+$labels['shortaclr'] = 'Lesen';
+$labels['shortaclread'] = 'Lesen';
+$labels['aclwrite'] = 'Schreiben';
+$labels['shortaclw'] = 'Schreiben';
+$labels['shortaclwrite'] = 'Schreiben';
+$labels['acldelete'] = 'Löschen';
+$labels['shortacld'] = 'Löschen';
+$labels['shortaclt'] = 'Löschen';
+$labels['shortacldelete'] = 'Löschen';
+$labels['shortacls'] = 'Behalte';
+$labels['shortacli'] = 'Hinzufügen';
+$labels['shortaclc'] = 'Erstellen';
+$labels['shortaclk'] = 'Erstellen';
+$labels['shortaclx'] = 'Ordner löschen';
+$labels['longacll'] = 'Der Ordner ist sichtbar und kann abonniert werden';
+$labels['longaclr'] = 'Der Ordnerinhalt kann gelesen werden';
+$labels['longaclread'] = 'Der Ordnerinhalt kann gelesen werden';
+$labels['longacls'] = 'Der Lesestatus von Nachrichten kann geändert werden';
+$labels['longaclw'] = 'Alle Nachrichten-Flags und Schlüsselwörter ausser "Gelesen" und "Gelöscht" können geändert werden';
+$labels['longacli'] = 'Nachrichten können in diesen Ordner kopiert oder verschoben werden';
+$labels['longaclp'] = 'Nachrichten können an diesen Ordner gesendet werden';
+$labels['longaclc'] = 'Unterordner können in diesem Ordner erstellt oder umbenannt werden';
+$labels['longaclk'] = 'Unterordner können in diesem Ordner erstellt oder umbenannt werden';
+$labels['longacld'] = 'Der "gelöscht" Status von Nachrichten kann geändert werden';
+$labels['longaclt'] = 'Der "gelöscht" Status von Nachrichten kann geändert werden';
+$labels['longacle'] = 'Als "gelöscht" markierte Nachrichten können entfernt werden';
+$labels['longaclx'] = 'Der Ordner kann gelöscht oder umbenannt werden';
+$labels['longacla'] = 'Die Zugriffsrechte des Ordners können geändert werden';
+$labels['longaclfull'] = 'Vollzugriff inklusive Ordner-Verwaltung';
+$labels['longaclwrite'] = 'Nachrichten können markiert, an den Ordner gesendet und in den Ordner kopiert oder verschoben werden';
+$labels['longacldelete'] = 'Nachrichten können gelöscht werden';
+$labels['deleting'] = 'Zugriffsrechte werden entzogen...';
+$labels['saving'] = 'Zugriffsrechte werden gespeichert...';
+$labels['updatesuccess'] = 'Zugriffsrechte erfolgreich geändert';
+$labels['deletesuccess'] = 'Zugriffsrechte erfolgreich entzogen';
+$labels['createsuccess'] = 'Zugriffsrechte erfolgreich hinzugefügt';
+$labels['updateerror'] = 'Zugriffsrechte konnten nicht geändert werden';
+$labels['deleteerror'] = 'Zugriffsrechte konnten nicht entzogen werden';
+$labels['createerror'] = 'Zugriffsrechte konnten nicht gewährt werden';
+$labels['deleteconfirm'] = 'Sind Sie sicher, dass Sie die Zugriffsrechte den ausgewählten Benutzern entziehen möchten?';
+$labels['norights'] = 'Es wurden keine Zugriffsrechte ausgewählt!';
+$labels['nouser'] = 'Es wurde kein Benutzer ausgewählt!';
+
diff --git a/plugins/acl/localization/de_DE.inc b/plugins/acl/localization/de_DE.inc
index 92c7e4290..cfb685c73 100644
--- a/plugins/acl/localization/de_DE.inc
+++ b/plugins/acl/localization/de_DE.inc
@@ -1,5 +1,19 @@
<?php
+/*
+ +-----------------------------------------------------------------------+
+ | localization/de_DE/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
$labels['sharing'] = 'Freigabe';
$labels['myrights'] = 'Zugriffsrechte';
$labels['username'] = 'Benutzer:';
@@ -9,48 +23,44 @@ $labels['actions'] = 'Zugriffsrechte Aktionen...';
$labels['anyone'] = 'Alle Benutzer (anyone)';
$labels['anonymous'] = 'Gäste (anonymous)';
$labels['identifier'] = 'Bezeichnung';
-
-$labels['acll'] = 'Ordner sichtbar';
+$labels['acll'] = 'Sichtbar';
+$labels['shortacll'] = 'Sichtbar';
$labels['aclr'] = 'Nachrichten lesen';
$labels['acls'] = 'Lesestatus ändern';
$labels['aclw'] = 'Flags schreiben';
$labels['acli'] = 'Nachrichten Hinzufügen';
-$labels['aclp'] = 'Nachrichten Senden an';
+$labels['aclp'] = 'Senden an';
+$labels['shortaclp'] = 'Senden an';
$labels['aclc'] = 'Unterordner erstellen';
$labels['aclk'] = 'Unterordner erstellen';
$labels['acld'] = 'Nachrichten als gelöscht markieren';
$labels['aclt'] = 'Nachrichten als gelöscht markieren';
-$labels['acle'] = 'Nachrichten endgültig Löschen';
+$labels['acle'] = 'endgültig löschen';
+$labels['shortacle'] = 'endgültig löschen';
$labels['aclx'] = 'Ordner löschen';
-$labels['acla'] = 'Zugriffsrechte Verwalten';
-
+$labels['acla'] = 'Verwalten';
+$labels['shortacla'] = 'Verwalten';
$labels['aclfull'] = 'Vollzugriff';
$labels['aclother'] = 'Andere';
+$labels['shortaclother'] = 'Andere';
$labels['aclread'] = 'Lesen';
+$labels['shortaclr'] = 'Lesen';
+$labels['shortaclread'] = 'Lesen';
$labels['aclwrite'] = 'Schreiben';
+$labels['shortaclw'] = 'Schreiben';
+$labels['shortaclwrite'] = 'Schreiben';
$labels['acldelete'] = 'Löschen';
-
-$labels['shortacll'] = 'Sichtbar';
-$labels['shortaclr'] = 'Lesen';
+$labels['shortacld'] = 'Löschen';
+$labels['shortaclt'] = 'Löschen';
+$labels['shortacldelete'] = 'Löschen';
$labels['shortacls'] = 'Lesestatus';
-$labels['shortaclw'] = 'Flags ändern';
$labels['shortacli'] = 'Hinzufügen';
-$labels['shortaclp'] = 'Senden an';
$labels['shortaclc'] = 'Erstellen';
$labels['shortaclk'] = 'Erstellen';
-$labels['shortacld'] = 'Löschen';
-$labels['shortaclt'] = 'Löschen';
-$labels['shortacle'] = 'endgültig löschen';
$labels['shortaclx'] = 'Ordner löschen';
-$labels['shortacla'] = 'Verwalten';
-
-$labels['shortaclother'] = 'Andere';
-$labels['shortaclread'] = 'Lesen';
-$labels['shortaclwrite'] = 'Schreiben';
-$labels['shortacldelete'] = 'Löschen';
-
$labels['longacll'] = 'Der Ordner ist sichtbar und kann abonniert werden';
-$labels['longaclr'] = 'Nachrichten im Ordner können gelesen werden';
+$labels['longaclr'] = 'Der Ordnerinhalt kann gelesen werden';
+$labels['longaclread'] = 'Der Ordnerinhalt kann gelesen werden';
$labels['longacls'] = 'Der Lesestatus von Nachrichten kann geändert werden';
$labels['longaclw'] = 'Alle Nachrichten-Flags und Schlüsselwörter außer "Gelesen" und "Gelöscht" können geändert werden';
$labels['longacli'] = 'Nachrichten können in diesen Ordner kopiert oder verschoben werden';
@@ -62,22 +72,18 @@ $labels['longaclt'] = 'Der "gelöscht" Status von Nachrichten kann geändert wer
$labels['longacle'] = 'Als "gelöscht" markiert Nachrichten können gelöscht werden.';
$labels['longaclx'] = 'Der Ordner kann gelöscht oder umbenannt werden';
$labels['longacla'] = 'Die Zugriffsrechte des Ordners können geändert werden';
-
$labels['longaclfull'] = 'Vollzugriff inklusive Ordner-Verwaltung';
-$labels['longaclread'] = 'Der Ordnerinhalt kann gelesen werden';
$labels['longaclwrite'] = 'Nachrichten können markiert, an den Ordner gesendet und in den Ordner kopiert oder verschoben werden';
$labels['longacldelete'] = 'Nachrichten können gelöscht werden';
+$labels['deleting'] = 'Zugriffsrechte werden entzogen...';
+$labels['saving'] = 'Zugriffsrechte werden gewährt...';
+$labels['updatesuccess'] = 'Zugriffsrechte erfolgreich geändert';
+$labels['deletesuccess'] = 'Zugriffsrechte erfolgreich entzogen';
+$labels['createsuccess'] = 'Zugriffsrechte erfolgreich gewährt';
+$labels['updateerror'] = 'Zugriffsrechte konnten nicht geändert werden';
+$labels['deleteerror'] = 'Zugriffsrechte konnten nicht entzogen werden';
+$labels['createerror'] = 'Zugriffsrechte konnten nicht gewährt werden';
+$labels['deleteconfirm'] = 'Sind Sie sicher, daß Sie die Zugriffsrechte den ausgewählten Benutzern entziehen möchten?';
+$labels['norights'] = 'Es wurden keine Zugriffsrechte ausgewählt!';
+$labels['nouser'] = 'Es wurde kein Benutzer ausgewählt!';
-$messages['deleting'] = 'Zugriffsrechte werden entzogen...';
-$messages['saving'] = 'Zugriffsrechte werden gewährt...';
-$messages['updatesuccess'] = 'Zugriffsrechte erfolgreich geändert';
-$messages['deletesuccess'] = 'Zugriffsrechte erfolgreich entzogen';
-$messages['createsuccess'] = 'Zugriffsrechte erfolgreich gewährt';
-$messages['updateerror'] = 'Zugriffsrechte konnten nicht geändert werden';
-$messages['deleteerror'] = 'Zugriffsrechte konnten nicht entzogen werden';
-$messages['createerror'] = 'Zugriffsrechte konnten nicht gewährt werden';
-$messages['deleteconfirm'] = 'Sind Sie sicher, daß Sie die Zugriffsrechte den ausgewählten Benutzern entziehen möchten?';
-$messages['norights'] = 'Es wurden keine Zugriffsrechte ausgewählt!';
-$messages['nouser'] = 'Es wurde kein Benutzer ausgewählt!';
-
-?>
diff --git a/plugins/acl/localization/en_GB.inc b/plugins/acl/localization/en_GB.inc
new file mode 100644
index 000000000..201cb3c0b
--- /dev/null
+++ b/plugins/acl/localization/en_GB.inc
@@ -0,0 +1,89 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/en_GB/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Lazlo |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = 'Sharing';
+$labels['myrights'] = 'Access Rights';
+$labels['username'] = 'User:';
+$labels['advanced'] = 'advanced mode';
+$labels['newuser'] = 'Add entry';
+$labels['actions'] = 'Access right actions...';
+$labels['anyone'] = 'All users (anyone)';
+$labels['anonymous'] = 'Guests (anonymous)';
+$labels['identifier'] = 'Identifier';
+$labels['acll'] = 'Look-up';
+$labels['shortacll'] = 'Look-up';
+$labels['aclr'] = 'Read messages';
+$labels['acls'] = 'Keep Seen state';
+$labels['aclw'] = 'Write flags';
+$labels['acli'] = 'Insert (copy into)';
+$labels['aclp'] = 'Post';
+$labels['shortaclp'] = 'Post';
+$labels['aclc'] = 'Create sub-folders';
+$labels['aclk'] = 'Create sub-folders';
+$labels['acld'] = 'Delete messages';
+$labels['aclt'] = 'Delete messages';
+$labels['acle'] = 'Expunge';
+$labels['shortacle'] = 'Expunge';
+$labels['aclx'] = 'Delete folder';
+$labels['acla'] = 'Administer';
+$labels['shortacla'] = 'Administer';
+$labels['aclfull'] = 'Full control';
+$labels['aclother'] = 'Other';
+$labels['shortaclother'] = 'Other';
+$labels['aclread'] = 'Read';
+$labels['shortaclr'] = 'Read';
+$labels['shortaclread'] = 'Read';
+$labels['aclwrite'] = 'Write';
+$labels['shortaclw'] = 'Write';
+$labels['shortaclwrite'] = 'Write';
+$labels['acldelete'] = 'Delete';
+$labels['shortacld'] = 'Delete';
+$labels['shortaclt'] = 'Delete';
+$labels['shortacldelete'] = 'Delete';
+$labels['shortacls'] = 'Keep';
+$labels['shortacli'] = 'Insert';
+$labels['shortaclc'] = 'Create';
+$labels['shortaclk'] = 'Create';
+$labels['shortaclx'] = 'Folder delete';
+$labels['longacll'] = 'The folder is visible on lists and can be subscribed to.';
+$labels['longaclr'] = 'The folder can be opened for reading';
+$labels['longaclread'] = 'The folder can be opened for reading';
+$labels['longacls'] = 'Messages Seen flag can be changed';
+$labels['longaclw'] = 'Messages flags and keywords can be changed, except Seen and Deleted.';
+$labels['longacli'] = 'Messages can be written or copied to the folder';
+$labels['longaclp'] = 'Messages can be posted to this folder';
+$labels['longaclc'] = 'Folders can be created (or renamed) directly under this folder';
+$labels['longaclk'] = 'Folders can be created (or renamed) directly under this folder';
+$labels['longacld'] = 'Messages Delete flag can be changed';
+$labels['longaclt'] = 'Messages Delete flag can be changed';
+$labels['longacle'] = 'Messages can be expunged';
+$labels['longaclx'] = 'The folder can be deleted or renamed';
+$labels['longacla'] = 'The folder access rights can be changed';
+$labels['longaclfull'] = 'Full control including folder administration';
+$labels['longaclwrite'] = 'Messages can be marked, written or copied to the folder';
+$labels['longacldelete'] = 'Messages can be deleted';
+$labels['deleting'] = 'Deleting access rights...';
+$labels['saving'] = 'Saving access rights...';
+$labels['updatesuccess'] = 'Successfully changed access rights';
+$labels['deletesuccess'] = 'Successfully deleted access rights';
+$labels['createsuccess'] = 'Successfully added access rights';
+$labels['updateerror'] = 'Ubable to update access rights';
+$labels['deleteerror'] = 'Unable to delete access rights';
+$labels['createerror'] = 'Unable to add access rights';
+$labels['deleteconfirm'] = 'Are you sure, you want to remove access rights of selected user(s)?';
+$labels['norights'] = 'No rights has been specified!';
+$labels['nouser'] = 'No username has been specified!';
+
diff --git a/plugins/acl/localization/es_ES.inc b/plugins/acl/localization/es_ES.inc
new file mode 100644
index 000000000..a95dcc589
--- /dev/null
+++ b/plugins/acl/localization/es_ES.inc
@@ -0,0 +1,89 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/es_ES/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: pompilos <ciordia@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = 'Compartir';
+$labels['myrights'] = 'Permisos de acceso';
+$labels['username'] = 'Usuario:';
+$labels['advanced'] = 'Modo avanzado';
+$labels['newuser'] = 'Añadir una entrada';
+$labels['actions'] = 'Acciones sobre los permisos de acceso…';
+$labels['anyone'] = 'Todos los usuarios (cualquiera)';
+$labels['anonymous'] = 'Invitados (anónimo)';
+$labels['identifier'] = 'Identificador';
+$labels['acll'] = 'Búsqueda';
+$labels['shortacll'] = 'Búsqueda';
+$labels['aclr'] = 'Leer mensajes';
+$labels['acls'] = 'Mantener como "Leído';
+$labels['aclw'] = 'Escribir etiquetas';
+$labels['acli'] = 'Insertar (Copiar dentro)';
+$labels['aclp'] = 'Enviar';
+$labels['shortaclp'] = 'Enviar';
+$labels['aclc'] = 'Crear subcarpetas';
+$labels['aclk'] = 'Crear subcarpetas';
+$labels['acld'] = 'Borrar mensajes';
+$labels['aclt'] = 'Borrar mensajes';
+$labels['acle'] = 'Expurgar';
+$labels['shortacle'] = 'Expurgar';
+$labels['aclx'] = 'Borrar carpeta';
+$labels['acla'] = 'Administrar';
+$labels['shortacla'] = 'Administrar';
+$labels['aclfull'] = 'Control total';
+$labels['aclother'] = 'Otro';
+$labels['shortaclother'] = 'Otro';
+$labels['aclread'] = 'Leer';
+$labels['shortaclr'] = 'Leer';
+$labels['shortaclread'] = 'Leer';
+$labels['aclwrite'] = 'Escribir';
+$labels['shortaclw'] = 'Escribir';
+$labels['shortaclwrite'] = 'Escribir';
+$labels['acldelete'] = 'Borrar';
+$labels['shortacld'] = 'Borrar';
+$labels['shortaclt'] = 'Borrar';
+$labels['shortacldelete'] = 'Borrar';
+$labels['shortacls'] = 'Conservar';
+$labels['shortacli'] = 'Insertar';
+$labels['shortaclc'] = 'Crear';
+$labels['shortaclk'] = 'Crear';
+$labels['shortaclx'] = 'Borrar carpeta';
+$labels['longacll'] = 'La carpeta es visible en las listas y es posible suscribirse a ella';
+$labels['longaclr'] = 'Se puede abrir la carpeta para leer';
+$labels['longaclread'] = 'Se puede abrir la carpeta para leer';
+$labels['longacls'] = 'Se pueden cambiar los mensajes con la etiqueta "Leído';
+$labels['longaclw'] = 'Las etiquetas de mensaje y las palabras clave se pueden cambiar, excepto "Leído" y "Borrado';
+$labels['longacli'] = 'Se pueden escribir mensajes o copiarlos a la carpeta';
+$labels['longaclp'] = 'Se pueden enviar mensajes a esta carpeta';
+$labels['longaclc'] = 'Se pueden crear (o renombrar) carpetas directamente bajo esta carpeta';
+$labels['longaclk'] = 'Se pueden crear (o renombrar) carpetas directamente bajo esta carpeta';
+$labels['longacld'] = 'No se pueden cambiar los mensajes etiquetados como "Borrado';
+$labels['longaclt'] = 'No se pueden cambiar los mensajes etiquetados como "Borrado';
+$labels['longacle'] = 'No se pueden expurgar los mensajes';
+$labels['longaclx'] = 'La carpeta se puede borrar o renombrar';
+$labels['longacla'] = 'Se pueden cambiar los permisos de acceso';
+$labels['longaclfull'] = 'Control total, incluyendo la gestión de carpetas';
+$labels['longaclwrite'] = 'Se pueden etiquetar, escribir o copiar mensajes a la carpeta';
+$labels['longacldelete'] = 'Los mensajes se pueden borrar';
+$labels['deleting'] = 'Borrando permisos de acceso…';
+$labels['saving'] = 'Guardando permisos de acceso…';
+$labels['updatesuccess'] = 'Se han cambiado los permisos de acceso';
+$labels['deletesuccess'] = 'Se han borrado los permisos de acceso';
+$labels['createsuccess'] = 'Se han añadido los permisos de acceso';
+$labels['updateerror'] = 'No se han podido actualizar los permisos de acceso';
+$labels['deleteerror'] = 'No se han podido borrar los permisos de acceso';
+$labels['createerror'] = 'No se han podido añadir los permisos de acceso';
+$labels['deleteconfirm'] = '¿Seguro que quiere borrar los permisos de acceso del usuairo seleccionado?';
+$labels['norights'] = 'No se han especificado los permisos de acceso';
+$labels['nouser'] = 'No se ha especificado un nombre de usuario';
+
diff --git a/plugins/acl/localization/fa_IR.inc b/plugins/acl/localization/fa_IR.inc
new file mode 100644
index 000000000..a13102300
--- /dev/null
+++ b/plugins/acl/localization/fa_IR.inc
@@ -0,0 +1,45 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/fa_IR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Hamid <abbaszadeh.h@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = 'اشتراک‌گذاری';
+$labels['myrights'] = 'مجوزهای دسترسی';
+$labels['username'] = 'کاربر:';
+$labels['advanced'] = 'حالت پیشرÙته';
+$labels['identifier'] = 'شناساگر';
+$labels['aclr'] = 'پیام های خوانده شده';
+$labels['aclp'] = 'نوشته';
+$labels['shortaclp'] = 'نوشته';
+$labels['aclx'] = 'حذ٠پوشه';
+$labels['acla'] = 'مدیر';
+$labels['shortacla'] = 'مدیر';
+$labels['aclfull'] = 'کنترل کامل';
+$labels['aclother'] = 'دیگر';
+$labels['shortaclother'] = 'دیگر';
+$labels['aclread'] = 'خوانده شده';
+$labels['shortaclr'] = 'خوانده شده';
+$labels['shortaclread'] = 'خوانده شده';
+$labels['aclwrite'] = 'نوشتن';
+$labels['shortaclw'] = 'نوشتن';
+$labels['shortaclwrite'] = 'نوشتن';
+$labels['acldelete'] = 'حذÙ';
+$labels['shortacld'] = 'حذÙ';
+$labels['shortaclt'] = 'حذÙ';
+$labels['shortacldelete'] = 'حذÙ';
+$labels['shortacls'] = 'نگه داشتن';
+$labels['shortacli'] = 'جاگذارى';
+$labels['shortaclc'] = 'ایجاد';
+$labels['shortaclk'] = 'ایجاد';
+
diff --git a/plugins/acl/localization/fi_FI.inc b/plugins/acl/localization/fi_FI.inc
new file mode 100644
index 000000000..7af5b3e26
--- /dev/null
+++ b/plugins/acl/localization/fi_FI.inc
@@ -0,0 +1,61 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/fi_FI/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Jiri Grönroos |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = 'Jakaminen';
+$labels['myrights'] = 'Käyttöoikeudet';
+$labels['username'] = 'Käyttäjä:';
+$labels['advanced'] = 'edistynyt tila';
+$labels['anyone'] = 'Kaikki käyttäjät (kuka tahansa)';
+$labels['anonymous'] = 'Vieraat (anonyymit)';
+$labels['aclr'] = 'Lue viestejä';
+$labels['aclc'] = 'Luo alikansioita';
+$labels['aclk'] = 'Luo alikansioita';
+$labels['acld'] = 'Poista viestejä';
+$labels['aclt'] = 'Poista viestejä';
+$labels['aclx'] = 'Poista kansio';
+$labels['aclfull'] = 'Täysi hallinta';
+$labels['aclother'] = 'Muu';
+$labels['shortaclother'] = 'Muu';
+$labels['aclread'] = 'Luku';
+$labels['shortaclr'] = 'Luku';
+$labels['shortaclread'] = 'Luku';
+$labels['aclwrite'] = 'Kirjoitus';
+$labels['shortaclw'] = 'Kirjoitus';
+$labels['shortaclwrite'] = 'Kirjoitus';
+$labels['acldelete'] = 'Poisto';
+$labels['shortacld'] = 'Poisto';
+$labels['shortaclt'] = 'Poisto';
+$labels['shortacldelete'] = 'Poisto';
+$labels['shortaclc'] = 'Luo';
+$labels['shortaclk'] = 'Luo';
+$labels['longaclr'] = 'Kansio voidaan avata lukua varten';
+$labels['longaclread'] = 'Kansio voidaan avata lukua varten';
+$labels['longaclc'] = 'Kansioita voi luoda (tai nimetä uudelleen) tämän kansion alla';
+$labels['longaclk'] = 'Kansioita voi luoda (tai nimetä uudelleen) tämän kansion alla';
+$labels['longaclx'] = 'Kansion voi poistaa tai nimetä uudelleen';
+$labels['longacla'] = 'Kansion käyttöoikeuksia voi muuttaa';
+$labels['longaclfull'] = 'Täysi hallinta mukaan lukien kansioiden ylläpidon';
+$labels['longacldelete'] = 'Viestejä voi poistaa';
+$labels['deleting'] = 'Poistetaan käyttöoikeuksia...';
+$labels['saving'] = 'Tallennetaan käyttöoikeuksia...';
+$labels['updatesuccess'] = 'Käyttöoikeudet on muutettu onnistuneesti';
+$labels['deletesuccess'] = 'Käyttöoikeudet on poistettu onnistuneesti';
+$labels['createsuccess'] = 'Käyttöoikeudet on lisätty onnistuneesti';
+$labels['deleteerror'] = 'Käyttöoikeuksien poisto epäonnistui';
+$labels['createerror'] = 'Käyttöoikeuksien lisäys epäonnistui';
+$labels['norights'] = 'Käyttöoikeuksia ei ole määritelty!';
+$labels['nouser'] = 'Käyttäjätunnusta ei ole määritelty!';
+
diff --git a/plugins/acl/localization/fr_FR.inc b/plugins/acl/localization/fr_FR.inc
new file mode 100644
index 000000000..e4239dc46
--- /dev/null
+++ b/plugins/acl/localization/fr_FR.inc
@@ -0,0 +1,89 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/fr_FR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Tr4sK |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = 'Partage';
+$labels['myrights'] = 'Droits d\'accès';
+$labels['username'] = 'Utilisateur :';
+$labels['advanced'] = 'Mode avancé';
+$labels['newuser'] = 'Ajouter l\'entrée';
+$labels['actions'] = 'Action sur les droits d\'accès...';
+$labels['anyone'] = 'Tous les utilisateurs (tout le monde)';
+$labels['anonymous'] = 'Invités (anonymes)';
+$labels['identifier'] = 'Identifiant';
+$labels['acll'] = 'Consultation';
+$labels['shortacll'] = 'Consultation';
+$labels['aclr'] = 'Lire les messages';
+$labels['acls'] = 'Garder l\'état vu';
+$labels['aclw'] = 'Écrire une étiquette';
+$labels['acli'] = 'Insérer (Copier dans)';
+$labels['aclp'] = 'Envoyer';
+$labels['shortaclp'] = 'Envoyer';
+$labels['aclc'] = 'Créer des sous-dossiers';
+$labels['aclk'] = 'Créer des sous-dossiers';
+$labels['acld'] = 'Supprimer des messages';
+$labels['aclt'] = 'Supprimer des messages';
+$labels['acle'] = 'Purger';
+$labels['shortacle'] = 'Purger';
+$labels['aclx'] = 'Supprimer un dossier';
+$labels['acla'] = 'Administrer';
+$labels['shortacla'] = 'Administrer';
+$labels['aclfull'] = 'Contrôle total';
+$labels['aclother'] = 'Autre';
+$labels['shortaclother'] = 'Autre';
+$labels['aclread'] = 'Lecture';
+$labels['shortaclr'] = 'Lecture';
+$labels['shortaclread'] = 'Lecture';
+$labels['aclwrite'] = 'Écriture';
+$labels['shortaclw'] = 'Écriture';
+$labels['shortaclwrite'] = 'Écriture';
+$labels['acldelete'] = 'Translation can be either \'Supprimer\' or \'Effacer\' depends of the whole context.';
+$labels['shortacld'] = 'Translation can be either \'Supprimer\' or \'Effacer\' depends of the whole context.';
+$labels['shortaclt'] = 'Translation can be either \'Supprimer\' or \'Effacer\' depends of the whole context.';
+$labels['shortacldelete'] = 'Translation can be either \'Supprimer\' or \'Effacer\' depends of the whole context.';
+$labels['shortacls'] = 'Conserver';
+$labels['shortacli'] = 'Insérer';
+$labels['shortaclc'] = 'Créer';
+$labels['shortaclk'] = 'Créer';
+$labels['shortaclx'] = 'Supprimer un dossier';
+$labels['longacll'] = 'Ce dossier est visible dans les listes et peut être souscrit';
+$labels['longaclr'] = 'Le dossier peut-être ouvert pour lecture';
+$labels['longaclread'] = 'Le dossier peut-être ouvert pour lecture';
+$labels['longacls'] = 'L\'étiquette Lu peut-être changée';
+$labels['longaclw'] = 'Les étiquettes et les mot-clés peuvent-être changé, sauf pour Vu et Supprimé';
+$labels['longacli'] = 'Les messages peuvent-être écrit ou copié dans le dossier';
+$labels['longaclp'] = 'Les messages peuvent-être envoyé dans ce dossier';
+$labels['longaclc'] = 'Les dossiers peuvent-être créer (ou renommer) directement depuis ce dossier';
+$labels['longaclk'] = 'Les dossiers peuvent-être créer (ou renommer) directement depuis ce dossier';
+$labels['longacld'] = 'L\'étiquette de suppression des messages peut-être modifiée';
+$labels['longaclt'] = 'L\'étiquette de suppression des messages peut-être modifiée';
+$labels['longacle'] = 'Les messages peuvent-être purgés';
+$labels['longaclx'] = 'Le dossier peut-être supprimé ou renommé';
+$labels['longacla'] = 'Les droits d\'accès au dossier peuvent-être modifiés';
+$labels['longaclfull'] = 'Contrôle total, dossier d\'administration inclus';
+$labels['longaclwrite'] = 'Les messages peuvent-être marqué, écrit ou copié dans ce dossier';
+$labels['longacldelete'] = 'Les messages peuvent-être supprimé';
+$labels['deleting'] = 'Suppression des droits d\'accès…';
+$labels['saving'] = 'Sauvegarde des droits d\'accès…';
+$labels['updatesuccess'] = 'Les droits d\'accès ont été changé avec succès';
+$labels['deletesuccess'] = 'Les droits d\'accès ont été supprimé avec succès';
+$labels['createsuccess'] = 'Les droits d\'accès ont été ajouté avec succès';
+$labels['updateerror'] = 'Impossible de mettre à jour les droits d\'accès';
+$labels['deleteerror'] = 'Impossible de supprimer les droits d\'accès';
+$labels['createerror'] = 'Impossible d\'ajouter des droits d\'accès';
+$labels['deleteconfirm'] = 'Êtes-vous sûr de vouloir retirer les droits d\'accès du/des utilisateur(s) sélectionné ?';
+$labels['norights'] = 'Aucun droit n\'a été spécifié !';
+$labels['nouser'] = 'Aucun nom d\'utilisateur n\'a été spécifié !';
+
diff --git a/plugins/acl/localization/he_IL.inc b/plugins/acl/localization/he_IL.inc
new file mode 100644
index 000000000..83b3f8292
--- /dev/null
+++ b/plugins/acl/localization/he_IL.inc
@@ -0,0 +1,89 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/he_IL/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Moshe Leibovitch <moish@mln.co.il> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = 'שיתוף';
+$labels['myrights'] = 'זכויות גישה';
+$labels['username'] = 'משתמש:';
+$labels['advanced'] = 'מצב מתקד×';
+$labels['newuser'] = 'הוסף ערך';
+$labels['actions'] = 'פעולות על זכויות גישה...';
+$labels['anyone'] = 'כל ×”×ž×©×ª×ž×©×™× (כל ×חד)';
+$labels['anonymous'] = '××•×¨×—×™× (×נונימי)';
+$labels['identifier'] = 'מזהה';
+$labels['acll'] = 'חיפוש';
+$labels['shortacll'] = 'חיפוש';
+$labels['aclr'] = 'קרי×ת הודעות';
+$labels['acls'] = 'שמירה על סטטוס נר××”';
+$labels['aclw'] = 'דגלי כתיבה';
+$labels['acli'] = 'הוספה בין ×¢×¨×›×™× (העתקה לתוך)';
+$labels['aclp'] = 'פרסו×';
+$labels['shortaclp'] = 'פרסו×';
+$labels['aclc'] = 'יצירת תת־תיקיות';
+$labels['aclk'] = 'יצירת תת־תיקיות';
+$labels['acld'] = 'מחיקת הודעות';
+$labels['aclt'] = 'מחיקת הודעות';
+$labels['acle'] = 'ניקוי רשומות שבוטלו';
+$labels['shortacle'] = 'ניקוי רשומות שבוטלו';
+$labels['aclx'] = 'מחיקת תיקיה';
+$labels['acla'] = 'מנהל';
+$labels['shortacla'] = 'מנהל';
+$labels['aclfull'] = 'שליטה מל××”';
+$labels['aclother'] = '×חר';
+$labels['shortaclother'] = '×חר';
+$labels['aclread'] = 'קרי××”';
+$labels['shortaclr'] = 'קרי××”';
+$labels['shortaclread'] = 'קרי××”';
+$labels['aclwrite'] = 'כתיבה';
+$labels['shortaclw'] = 'כתיבה';
+$labels['shortaclwrite'] = 'כתיבה';
+$labels['acldelete'] = 'מחיקה';
+$labels['shortacld'] = 'מחיקה';
+$labels['shortaclt'] = 'מחיקה';
+$labels['shortacldelete'] = 'מחיקה';
+$labels['shortacls'] = 'להש×יר';
+$labels['shortacli'] = 'הוספה בין ערכי×';
+$labels['shortaclc'] = 'יצירה';
+$labels['shortaclk'] = 'יצירה';
+$labels['shortaclx'] = 'מחיקת תיקיה';
+$labels['longacll'] = 'התיקיה תר××” ברשימות וניתן ×™×”×™×” ×œ×”×¨×©× ×ליה';
+$labels['longaclr'] = 'ניתן לפתוח ×ת התיקיה ×•×œ×§×¨×•× ×‘×”';
+$labels['longaclread'] = 'ניתן לפתוח ×ת התיקיה ×•×œ×§×¨×•× ×‘×”';
+$labels['longacls'] = 'ניתן לשנות דגל נר××” בהודעות';
+$labels['longaclw'] = 'ניתן לשנות ×“×’×œ×™× ×•×ž×™×œ×•×ª מפתח בהודעות, למעט נר××” ונמחק';
+$labels['longacli'] = 'ניתן לכתוב הודעות לתיקיה ×ו למוחקן';
+$labels['longaclp'] = 'ניתן ×œ×¤×¨×¡× ×”×•×“×¢×•×ª לתוך תיקיה זו';
+$labels['longaclc'] = 'ניתן ליצור (×ו לשנות ש×) תיקיות, ישירות תחת תיקיה זו';
+$labels['longaclk'] = 'ניתן ליצור (×ו לשנות ש×) תיקיות, ישירות תחת תיקיה זו';
+$labels['longacld'] = 'ניתן לשנות דגל נמחק של הודעות';
+$labels['longaclt'] = 'ניתן לשנות דגל נמחק של הודעות';
+$labels['longacle'] = 'ניתן לנקות הודעות שסומנו כמבוטלות';
+$labels['longaclx'] = 'ניתן למחוק תיקיה זו ×ו לשנות שמה';
+$labels['longacla'] = 'ניתן לשנות זכויות גישה של תיקיה זו';
+$labels['longaclfull'] = 'שליטה מל××” כולל ניהול התיקיה';
+$labels['longaclwrite'] = 'ניתן לסמן, לכתוב ×ו להעתיק הודעות לתיקיה זו';
+$labels['longacldelete'] = 'ניתן למחוק הודעות';
+$labels['deleting'] = 'זכויות גישה נמחקות...';
+$labels['saving'] = 'זכויות גישה נשמרות...';
+$labels['updatesuccess'] = 'זכויות גישה שונו בהצלחה';
+$labels['deletesuccess'] = 'זכויות גישה נמחקו בהצלחה';
+$labels['createsuccess'] = 'זכויות גישה נוספו בהצלחה';
+$labels['updateerror'] = '×œ× × ×™×ª×Ÿ לעדכן זכויות גישה';
+$labels['deleteerror'] = '×œ× × ×™×ª×Ÿ למחוק זכויות גישה';
+$labels['createerror'] = '×œ× × ×™×ª×Ÿ להוסיף זכויות גישה';
+$labels['deleteconfirm'] = '×”×× ×•×“××™ שברצונך להסיר זכויות גישה של המשתמש(×™×) שנבחרו?';
+$labels['norights'] = '×œ× ×¦×•×™× ×• זכויות גישה כלשהן !';
+$labels['nouser'] = '×œ× ×¦×•×™×Ÿ ×©× ×ž×©×ª×ž×© כלשהו!';
+
diff --git a/plugins/acl/localization/hu_HU.inc b/plugins/acl/localization/hu_HU.inc
new file mode 100644
index 000000000..f5ca78fe4
--- /dev/null
+++ b/plugins/acl/localization/hu_HU.inc
@@ -0,0 +1,89 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/hu_HU/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: bela |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = 'Megosztás';
+$labels['myrights'] = 'Hozzáférési jogok';
+$labels['username'] = 'Felhasználó:';
+$labels['advanced'] = 'Haladó beállítások';
+$labels['newuser'] = 'Elem hozzáadása';
+$labels['actions'] = 'Hozzáférési jogok müveletei..';
+$labels['anyone'] = 'Minden felhasználó (bárki)';
+$labels['anonymous'] = 'Vendégek (névtelen)';
+$labels['identifier'] = 'Azonosító';
+$labels['acll'] = 'Keresés';
+$labels['shortacll'] = 'Keresés';
+$labels['aclr'] = 'Üzenetek olvasása';
+$labels['acls'] = 'Olvasottsági állapot megtartása';
+$labels['aclw'] = 'Üzenet jelölése';
+$labels['acli'] = 'Beillesztés (Bemásolás)';
+$labels['aclp'] = 'Bejegyzés';
+$labels['shortaclp'] = 'Bejegyzés';
+$labels['aclc'] = 'Almappa létrehozás';
+$labels['aclk'] = 'Almappa létrehozás';
+$labels['acld'] = 'Üzenetek törlése';
+$labels['aclt'] = 'Üzenetek törlése';
+$labels['acle'] = 'Törölt üzenetek eltávolítása';
+$labels['shortacle'] = 'Törölt üzenetek eltávolítása';
+$labels['aclx'] = 'Mappa törlés';
+$labels['acla'] = 'Adminisztrátor';
+$labels['shortacla'] = 'Adminisztrátor';
+$labels['aclfull'] = 'Teljes hozzáférés';
+$labels['aclother'] = 'Egyéb';
+$labels['shortaclother'] = 'Egyéb';
+$labels['aclread'] = 'Olvasás';
+$labels['shortaclr'] = 'Olvasás';
+$labels['shortaclread'] = 'Olvasás';
+$labels['aclwrite'] = 'Ãrás';
+$labels['shortaclw'] = 'Ãrás';
+$labels['shortaclwrite'] = 'Ãrás';
+$labels['acldelete'] = 'Törlés';
+$labels['shortacld'] = 'Törlés';
+$labels['shortaclt'] = 'Törlés';
+$labels['shortacldelete'] = 'Törlés';
+$labels['shortacls'] = 'Megtartás';
+$labels['shortacli'] = 'Beszúrás';
+$labels['shortaclc'] = 'Létrehozás';
+$labels['shortaclk'] = 'Létrehozás';
+$labels['shortaclx'] = 'Mappa törlése';
+$labels['longacll'] = 'A mappa látható a listán és fel tudsz rá iratkozni.';
+$labels['longaclr'] = 'A mappa olvasásra megnyitható';
+$labels['longaclread'] = 'A mappa olvasásra megnyitható';
+$labels['longacls'] = 'Az üzenet megtekintési állapota módosítható';
+$labels['longaclw'] = 'Az üzenetek jelölései és kulcsszavai módosíthatóak, kivéve az olvasottsági állapotot és az üzenet törölt állapotát.';
+$labels['longacli'] = 'Üzenetek irhatóak és máolshatóak a mappába.';
+$labels['longaclp'] = 'Ebbe a mappába tudsz üzeneteket tenni.';
+$labels['longaclc'] = 'Mappák létrehozhazóak (átnevezhetőek) ez alatt a mappa alatt.';
+$labels['longaclk'] = 'Mappák létrehozhazóak (átnevezhetőek) ez alatt a mappa alatt.';
+$labels['longacld'] = 'Üzenet törölve jelző módositható.';
+$labels['longaclt'] = 'Üzenet törölve jelző módositható.';
+$labels['longacle'] = 'Az üzenetek véglegesen eltávolíthatóak';
+$labels['longaclx'] = 'A mappa törölhető vagy átnevezhető';
+$labels['longacla'] = 'A mappa hozzáférési jogai módosíthatóak';
+$labels['longaclfull'] = 'Teljes hozzáférés beleértve a mappák kezelését';
+$labels['longaclwrite'] = 'Az üzenetek megjelölhetök, irhatók és másolhatók ebbe a mappába';
+$labels['longacldelete'] = 'Az üzenetek törölhetőek';
+$labels['deleting'] = 'Hozzáférési jogok törlése...';
+$labels['saving'] = 'Hozzáférési jogok mentése...';
+$labels['updatesuccess'] = 'A hozzáférési jogok sikeresen módosultak.';
+$labels['deletesuccess'] = 'A hozzáférési jogok törlése sikeresen megtörtént.';
+$labels['createsuccess'] = 'A hozzáférési jogok hozzáadása sikeresen megtörtént.';
+$labels['updateerror'] = 'Nem sikerült módosítani a hozzáférési jogokat.';
+$labels['deleteerror'] = 'Nem sikerült törölni a hozzáférési jogokat.';
+$labels['createerror'] = 'Nem sikerült a hozzáférési jogok hozzáadása';
+$labels['deleteconfirm'] = 'Biztosan eltávolítja a kiválasztott felhasználó(k) hozzáférési jogait?';
+$labels['norights'] = 'Nincsennek jogok megadva.';
+$labels['nouser'] = 'A felhasználónév nincs megadva.';
+
diff --git a/plugins/acl/localization/hy_AM.inc b/plugins/acl/localization/hy_AM.inc
new file mode 100644
index 000000000..86292984a
--- /dev/null
+++ b/plugins/acl/localization/hy_AM.inc
@@ -0,0 +1,89 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/hy_AM/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Vahan Yerkanian <vahan@yerkanian.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = 'Ô¿Õ«Õ½Õ¾Õ¥Õ¬';
+$labels['myrights'] = 'Õ„Õ¸Ö‚Õ¿Ö„Õ« Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„Õ¶Õ¥Ö€';
+$labels['username'] = 'Õ•Õ£Õ¿Õ¡Õ¿Õ¥Ö€`';
+$labels['advanced'] = 'Ô¸Õ¶Õ¤Õ¬Õ¡ÕµÕ¶Õ¾Õ¡Õ® Õ¿Õ¡Ö€Õ¢Õ¥Ö€Õ¡Õ¯';
+$labels['newuser'] = 'Ô±Õ¾Õ¥Õ¬Õ¡ÖÕ¶Õ¥Õ¬ Õ£Ö€Õ¡Õ¼Õ¸Ö‚Õ´';
+$labels['actions'] = 'Մուտքի իրավունքների գործողություններ…';
+$labels['anyone'] = 'Ô²Õ¸Õ¬Õ¸Ö€ Ö…Õ£Õ¿Õ¾Õ¸Õ²Õ¶Õ¥Ö€Õ¨ (ÖÕ¡Õ¶Õ¯Õ¡ÖÕ¡Õ®)';
+$labels['anonymous'] = 'Õ€ÕµÕ¸Ö‚Ö€Õ¥Ö€Õ¨ (Õ¡Õ¶Õ¡Õ¶Õ¸Ö‚Õ¶)';
+$labels['identifier'] = 'Õ†Õ¯Õ¡Ö€Õ¡Õ£Ö€Õ«Õ¹';
+$labels['acll'] = 'Õ“Õ¶Õ¿Ö€Õ¸Ö‚Õ´';
+$labels['shortacll'] = 'Õ“Õ¶Õ¿Ö€Õ¸Ö‚Õ´';
+$labels['aclr'] = 'Ô¿Õ¡Ö€Õ¤Õ¡Õ¬ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¨';
+$labels['acls'] = 'ÕŠÕ¡Õ°ÕºÕ¡Õ¶Õ¥Õ¬ Õ¤Õ«Õ¿Õ´Õ¡Õ¶ Õ¯Õ¡Ö€Õ£Õ¡Õ¾Õ«Õ³Õ¡Õ¯Õ¨';
+$labels['aclw'] = 'Ô³Ö€Õ¡Õ¼Õ´Õ¡Õ¶ Õ¶Õ·Õ¸Ö‚Õ´Õ¶Õ¥Ö€';
+$labels['acli'] = 'Õ†Õ¥Ö€Õ¤Õ¶Õ¥Õ¬ (ÕŠÕ¡Õ¿Õ³Õ¥Õ¶Õ¥Õ¬ Õ¶Õ¥Ö€Õ½)';
+$labels['aclp'] = 'Õ€Ö€Õ¡ÕºÕ¡Ö€Õ¡Õ¯Õ¥Õ¬';
+$labels['shortaclp'] = 'Õ€Ö€Õ¡ÕºÕ¡Ö€Õ¡Õ¯Õ¥Õ¬';
+$labels['aclc'] = 'ÕÕ¿Õ¥Õ²Õ®Õ¥Õ¬ Õ¥Õ¶Õ©Õ¡ÕºÕ¡Õ¶Õ¡Õ¯Õ¶Õ¥Ö€';
+$labels['aclk'] = 'ÕÕ¿Õ¥Õ²Õ®Õ¥Õ¬ Õ¥Õ¶Õ©Õ¡ÕºÕ¡Õ¶Õ¡Õ¯Õ¶Õ¥Ö€';
+$labels['acld'] = 'Õ‹Õ¶Õ»Õ¥Õ¬ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¨';
+$labels['aclt'] = 'Õ‹Õ¶Õ»Õ¥Õ¬ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¨';
+$labels['acle'] = 'Õ€Õ¥Õ¼Õ¡ÖÕ¶Õ¥Õ¬';
+$labels['shortacle'] = 'Õ€Õ¥Õ¼Õ¡ÖÕ¶Õ¥Õ¬';
+$labels['aclx'] = 'Õ‹Õ¶Õ»Õ¥Õ¬ ÕºÕ¡Õ¶Õ¡Õ¯Õ¨';
+$labels['acla'] = 'Ô¿Õ¡Õ¼Õ¡Õ¾Õ¡Ö€Õ¥Õ¬';
+$labels['shortacla'] = 'Ô¿Õ¡Õ¼Õ¡Õ¾Õ¡Ö€Õ¥Õ¬';
+$labels['aclfull'] = 'Ô¼Ö€Õ«Õ¾ Õ¾Õ¥Ö€Õ¡Õ°Õ½Õ¯Õ¸Ö‚Õ´';
+$labels['aclother'] = 'Ô±ÕµÕ¬';
+$labels['shortaclother'] = 'Ô±ÕµÕ¬';
+$labels['aclread'] = 'Ô¿Õ¡Ö€Õ¤Õ¡Õ¬';
+$labels['shortaclr'] = 'Ô¿Õ¡Ö€Õ¤Õ¡Õ¬';
+$labels['shortaclread'] = 'Ô¿Õ¡Ö€Õ¤Õ¡Õ¬';
+$labels['aclwrite'] = 'Ô³Ö€Õ¥Õ¬';
+$labels['shortaclw'] = 'Ô³Ö€Õ¥Õ¬';
+$labels['shortaclwrite'] = 'Ô³Ö€Õ¥Õ¬';
+$labels['acldelete'] = 'Õ‹Õ¶Õ»Õ¥Õ¬';
+$labels['shortacld'] = 'Õ‹Õ¶Õ»Õ¥Õ¬';
+$labels['shortaclt'] = 'Õ‹Õ¶Õ»Õ¥Õ¬';
+$labels['shortacldelete'] = 'Õ‹Õ¶Õ»Õ¥Õ¬';
+$labels['shortacls'] = 'ÕŠÕ¡Õ°Õ¥Õ¬';
+$labels['shortacli'] = 'Õ†Õ¥Ö€Õ¤Õ¶Õ¥Õ¬';
+$labels['shortaclc'] = 'ÕÕ¿Õ¥Õ²Õ®Õ¥Õ¬';
+$labels['shortaclk'] = 'ÕÕ¿Õ¥Õ²Õ®Õ¥Õ¬';
+$labels['shortaclx'] = 'ÕŠÕ¡Õ¶Õ¡Õ¯Õ« Õ»Õ¶Õ»Õ¸Ö‚Õ´';
+$labels['longacll'] = 'ÕŠÕ¡Õ¶Õ¡Õ¯Õ¨ Õ¥Ö€Ö‡Õ¸Ö‚Õ´ Õ§ ÖÕ¸Ö‚ÖÕ¡Õ¯Õ¶Õ¥Ö€Õ¸Ö‚Õ´ Ö‡ Õ¶Ö€Õ¡Õ¶ Õ°Õ¶Õ¡Ö€Õ¡Õ¾Õ¸Ö€ Õ§ Õ¢Õ¡ÕªÕ¡Õ¶Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¾Õ¥Õ¬';
+$labels['longaclr'] = 'ÕŠÕ¡Õ¶Õ¡Õ¯Õ¨ Õ¯Õ¡Ö€Õ¸Õ² Õ§ Õ¢Õ¡ÖÕ¾Õ¥Õ¬ Õ¨Õ¶Õ©Õ¥Ö€ÖÕ´Õ¡Õ¶ Õ°Õ¡Õ´Õ¡Ö€';
+$labels['longaclread'] = 'ÕŠÕ¡Õ¶Õ¡Õ¯Õ¨ Õ¯Õ¡Ö€Õ¸Õ² Õ§ Õ¢Õ¡ÖÕ¾Õ¥Õ¬ Õ¨Õ¶Õ©Õ¥Ö€ÖÕ´Õ¡Õ¶ Õ°Õ¡Õ´Õ¡Ö€';
+$labels['longacls'] = 'ÕÕ¥Õ½Õ¾Õ¡Õ® Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ« Õ¶Õ·Õ¸Ö‚Õ´Õ¨ Õ¯Õ¡Ö€Õ¸Õ² Õ§ ÖƒÕ¸ÖƒÕ¸Õ­Õ¾Õ¥Õ¬';
+$labels['longaclw'] = 'Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ« Õ¶Õ·Õ¸Ö‚Õ´Õ¶Õ¥Ö€Õ¨ Ö‡ Õ°Õ«Õ´Õ¶Õ¡Õ¢Õ¡Õ¼Õ¥Ö€Õ¨ Õ¯Õ¡Ö€Õ¸Õ² Õ¥Õ¶ ÖƒÕ¸ÖƒÕ¸Õ­Õ¾Õ¥Õ¬, Õ¢Õ¡ÖÕ¡Õ¼Õ¸Ö‚Õ©ÕµÕ¡Õ´Õ¢ ÕÕ¥Õ½Õ¡Õ® Ö‡ Õ‹Õ¶Õ»Õ¾Õ¡Õ® Õ¶Õ·Õ¸Ö‚Õ´Õ¶Õ¥Ö€Õ«';
+$labels['longacli'] = 'Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¨ Õ¯Õ¡Ö€Õ¸Õ² Õ¥Õ¶ Õ£Ö€Õ¾Õ¥Õ¬ Ö‡ ÕºÕ¡Õ¿Õ³Õ¥Õ¶Õ¾Õ¥Õ¬ ÕºÕ¡Õ¶Õ¡Õ¯Õ« Õ´Õ¥Õ»';
+$labels['longaclp'] = 'Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¨ Õ¯Õ¡Ö€Õ¸Õ² Õ¥Õ¶ Õ°Ö€Õ¡ÕºÕ¡Ö€Õ¡Õ¯Õ¾Õ¥Õ¬ Õ¡ÕµÕ½ ÕºÕ¡Õ¶Õ¡Õ¯Õ¸Ö‚Õ´';
+$labels['longaclc'] = 'ÕŠÕ¡Õ¶Õ¡Õ¯Õ¶Õ¥Ö€Õ¨ Õ¯Õ¡Ö€Õ¸Õ² Õ¥Õ¶ Õ½Õ¿Õ¥Õ²Õ®Õ¾Õ¥Õ¬ (Õ¯Õ¡Õ´ Õ¾Õ¥Ö€Õ¡Õ¶Õ¾Õ¡Õ¶Õ¾Õ¥Õ¬) Õ¡ÕµÕ½ ÕºÕ¡Õ¶Õ¡Õ¯Õ¸Ö‚Õ´';
+$labels['longaclk'] = 'ÕŠÕ¡Õ¶Õ¡Õ¯Õ¶Õ¥Ö€Õ¨ Õ¯Õ¡Ö€Õ¸Õ² Õ¥Õ¶ Õ½Õ¿Õ¥Õ²Õ®Õ¾Õ¥Õ¬ (Õ¯Õ¡Õ´ Õ¾Õ¥Ö€Õ¡Õ¶Õ¾Õ¡Õ¶Õ¾Õ¥Õ¬) Õ¡ÕµÕ½ ÕºÕ¡Õ¶Õ¡Õ¯Õ¸Ö‚Õ´';
+$labels['longacld'] = 'Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ« Õ‹Õ¶Õ»Õ¥Õ¬ Õ¶Õ·Õ¸Ö‚Õ´Õ¨ Õ¯Õ¡Ö€Õ¸Õ² Õ§ ÖƒÕ¸ÖƒÕ¸Õ­Õ¾Õ¥Õ¬';
+$labels['longaclt'] = 'Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ« Õ‹Õ¶Õ»Õ¥Õ¬ Õ¶Õ·Õ¸Ö‚Õ´Õ¨ Õ¯Õ¡Ö€Õ¸Õ² Õ§ ÖƒÕ¸ÖƒÕ¸Õ­Õ¾Õ¥Õ¬';
+$labels['longacle'] = 'Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¨ Õ¯Õ¡Ö€Õ¸Õ² Õ¥Õ¶ Õ°Õ¥Õ¼Õ¡ÖÕ¾Õ¥Õ¬';
+$labels['longaclx'] = 'ÕŠÕ¡Õ¶Õ¡Õ¯Õ¨ Õ¯Õ¡Ö€Õ¸Õ² Õ§ Õ»Õ¶Õ»Õ¾Õ¥Õ¬ Õ¯Õ¡Õ´ Õ¾Õ¥Ö€Õ¡Õ¶Õ¾Õ¡Õ¶Õ¾Õ¥Õ¬';
+$labels['longacla'] = 'ÕŠÕ¡Õ¶Õ¡Õ¯Õ« Õ´Õ¸Ö‚Õ¿Ö„Õ« Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„Õ¶Õ¥Ö€Õ¨ Õ¯Õ¡Ö€Õ¸Õ² Õ¥Õ¶ ÖƒÕ¸ÖƒÕ¸Õ­Õ¾Õ¥Õ¬';
+$labels['longaclfull'] = 'Ô¼Ö€Õ«Õ¾ Õ¾Õ¥Ö€Õ¡Õ°Õ½Õ¯Õ¸Ö‚Õ´ Õ¶Õ¥Ö€Õ¡Õ¼ÕµÕ¡Õ¬ ÕºÕ¡Õ¶Õ¡Õ¯Õ¶Õ¥Ö€Õ« Õ¯Õ¡Õ¼Õ¡Õ¾Õ¡Ö€Õ¸Ö‚Õ´Õ¨';
+$labels['longaclwrite'] = 'Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¨ Õ¯Õ¡Ö€Õ¸Õ² Õ¥Õ¶ Õ¶Õ·Õ¾Õ¥Õ¬, Õ½Õ¿Õ¥Õ²Õ®Õ¾Õ¥Õ¬ Ö‡ ÕºÕ¡Õ¿Õ³Õ¥Õ¶Õ¾Õ¥Õ¬ Õ¡ÕµÕ½ ÕºÕ¡Õ¶Õ¡Õ¯Õ¸Ö‚Õ´';
+$labels['longacldelete'] = 'Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¨ Õ¯Õ¡Ö€Õ¸Õ² Õ¥Õ¶ Õ»Õ¶Õ»Õ¾Õ¥Õ¬';
+$labels['deleting'] = 'Ջնջվում են մուտքի իրավունքները…';
+$labels['saving'] = 'Պահպանվում են մուտքի իրավունքները…';
+$labels['updatesuccess'] = 'Õ„Õ¸Ö‚Õ¿Ö„Õ« Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„Õ¶Õ¥Ö€Õ¨ Õ¢Õ¡Ö€Õ¥Õ°Õ¡Õ»Õ¸Õ² ÖƒÕ¸ÖƒÕ¸Õ­Õ¾Õ¥ÖÕ«Õ¶Ö‰';
+$labels['deletesuccess'] = 'Õ„Õ¸Ö‚Õ¿Ö„Õ« Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„Õ¶Õ¥Ö€Õ¨ Õ¢Õ¡Ö€Õ¥Õ°Õ¡Õ»Õ¸Õ² Õ»Õ¶Õ»Õ¾Õ¥ÖÕ«Õ¶Ö‰';
+$labels['createsuccess'] = 'Õ„Õ¸Ö‚Õ¿Ö„Õ« Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„Õ¶Õ¥Ö€Õ¨ Õ¢Õ¡Ö€Õ¥Õ°Õ¡Õ»Õ¸Õ² Õ¡Õ¾Õ¥Õ¬Õ¡ÖÕ¾Õ¥ÖÕ¾Õ«Õ¶Ö‰';
+$labels['updateerror'] = 'Õ„Õ¸Ö‚Õ¿Ö„Õ« Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„Õ¶Õ¥Ö€Õ¨ Õ©Õ¡Ö€Õ´Õ¡ÖÕ¸Ö‚Õ´Õ¨ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥ÖÖ‰';
+$labels['deleteerror'] = 'Õ„Õ¸Ö‚Õ¿Ö„Õ« Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„Õ¶Õ¥Ö€Õ¨ Õ»Õ¶Õ»Õ¸Ö‚Õ´Õ¨ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥ÖÖ‰';
+$labels['createerror'] = 'Õ„Õ¸Ö‚Õ¿Ö„Õ« Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„Õ¶Õ¥Ö€Õ¨ Õ¡Õ¾Õ¥Õ¬Õ¡ÖÕ¸Ö‚Õ´Õ¨ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥ÖÖ‰';
+$labels['deleteconfirm'] = 'Ô´Õ¸Ö‚Ö„ Õ¾Õ½Õ¿Õ¡ÕžÕ° Õ§Ö„, Õ¸Ö€ ÖÕ¡Õ¶Õ¯Õ¡Õ¶Õ¸Ö‚Õ´ Õ¥Ö„ Õ¶Õ·Õ¾Õ¡Õ® Ö…Õ£Õ¿Õ¾Õ¸Õ²Õ¶Õ¥Ö€Õ«Õ¶ Õ¦Ö€Õ¯Õ¥Õ¬ Õ´Õ¸Ö‚Õ¿Ö„Õ« Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„Õ¶Õ¥Ö€Õ«ÖÖ‰';
+$labels['norights'] = 'ÕˆÕ¹ Õ´Õ« Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„ Õ¹Õ«Õ› Õ¶Õ·Õ¾Õ¥Õ¬Ö‰';
+$labels['nouser'] = 'Õ•Õ£Õ¿Õ¾Õ¸Õ²Õ« Õ¡Õ¶Õ¸Ö‚Õ¶Õ¨ Õ¹Õ«Õ› Õ¶Õ·Õ¾Õ¥Õ¬Ö‰';
+
diff --git a/plugins/acl/localization/ja_JP.inc b/plugins/acl/localization/ja_JP.inc
new file mode 100644
index 000000000..68be68021
--- /dev/null
+++ b/plugins/acl/localization/ja_JP.inc
@@ -0,0 +1,55 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ja_JP/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Takahiro Kambe |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = '共有';
+$labels['myrights'] = 'アクセス権';
+$labels['username'] = 'ユーザー:';
+$labels['advanced'] = '詳細ãªãƒ¢ãƒ¼ãƒ‰';
+$labels['newuser'] = '項目を追加';
+$labels['anyone'] = '(誰ã§ã‚‚)ã™ã¹ã¦ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼';
+$labels['anonymous'] = 'ゲスト(匿å)';
+$labels['acll'] = '検索';
+$labels['shortacll'] = '検索';
+$labels['aclr'] = 'メッセージを読む';
+$labels['aclw'] = '書ãè¾¼ã¿ãƒ•ãƒ©ãƒƒã‚°';
+$labels['aclc'] = 'サブフォルダを作æˆ';
+$labels['aclk'] = 'サブフォルダを作æˆ';
+$labels['acld'] = 'メッセージを削除';
+$labels['aclt'] = 'メッセージを削除';
+$labels['aclx'] = 'フォルダーを削除';
+$labels['aclread'] = '読ã¿è¾¼ã¿';
+$labels['shortaclr'] = '読ã¿è¾¼ã¿';
+$labels['shortaclread'] = '読ã¿è¾¼ã¿';
+$labels['aclwrite'] = '書ãè¾¼ã¿';
+$labels['shortaclw'] = '書ãè¾¼ã¿';
+$labels['shortaclwrite'] = '書ãè¾¼ã¿';
+$labels['acldelete'] = '削除';
+$labels['shortacld'] = '削除';
+$labels['shortaclt'] = '削除';
+$labels['shortacldelete'] = '削除';
+$labels['shortacli'] = '挿入';
+$labels['shortaclc'] = '作æˆ';
+$labels['shortaclk'] = '作æˆ';
+$labels['shortaclx'] = 'フォルダーã®å‰Šé™¤';
+$labels['deleting'] = 'アクセス権を削除中...';
+$labels['saving'] = 'アクセス権をä¿å­˜ä¸­...';
+$labels['updatesuccess'] = 'アクセス権を変更ã—ã¾ã—ãŸ';
+$labels['deletesuccess'] = 'アクセス権を削除ã—ã¾ã—ãŸ';
+$labels['createsuccess'] = 'アクセス権を追加ã—ã¾ã—ãŸ';
+$labels['updateerror'] = 'アクセス権を更新ã§ãã¾ã›ã‚“';
+$labels['deleteerror'] = 'アクセス権を削除ã§ãã¾ã›ã‚“';
+$labels['createerror'] = 'アクセス権を追加ã§ãã¾ã›ã‚“';
+
diff --git a/plugins/acl/localization/ko_KR.inc b/plugins/acl/localization/ko_KR.inc
new file mode 100644
index 000000000..54f7d4032
--- /dev/null
+++ b/plugins/acl/localization/ko_KR.inc
@@ -0,0 +1,55 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ko_KR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Kim, Woohyun <woohyun.kim@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = '공유';
+$labels['myrights'] = '접근 권한';
+$labels['username'] = '사용ìž:';
+$labels['newuser'] = '엔트리 추가';
+$labels['identifier'] = 'ì‹ë³„ìž';
+$labels['acls'] = 'ì½ì€ ìƒíƒœë¡œ 유지';
+$labels['aclp'] = '게시';
+$labels['shortaclp'] = '게시';
+$labels['aclc'] = '하위 í´ë” 만들기';
+$labels['aclk'] = '하위 í´ë” 만들기';
+$labels['acld'] = '메시지 삭제';
+$labels['aclt'] = '메시지 삭제';
+$labels['aclx'] = 'í´ë” ì‚­ì œ';
+$labels['acla'] = '관리ìž';
+$labels['shortacla'] = '관리ìž';
+$labels['shortaclx'] = 'í´ë” ì‚­ì œ';
+$labels['longacli'] = 'í´ë”ì— ë©”ì‹œì§€ë¥¼ 복사하거나 작성할 수 있ìŒ';
+$labels['longaclp'] = 'ì´ í´ë”ë¡œ 메시지를 게시할 수 있ìŒ';
+$labels['longaclc'] = 'ì´ í´ë”ì˜ ë°”ë¡œ ë°‘ì— í´ë”를 ìƒì„±(ë˜ëŠ” ì´ë¦„ 변경)í•  수 있ìŒ';
+$labels['longaclk'] = 'ì´ í´ë”ì˜ ë°”ë¡œ ë°‘ì— í´ë”를 ìƒì„±(ë˜ëŠ” ì´ë¦„ 변경)í•  수 있ìŒ';
+$labels['longacld'] = '메시지 ì‚­ì œ 플래그가 ë³€ê²½ë  ìˆ˜ 있ìŒ';
+$labels['longaclt'] = '메시지 ì‚­ì œ 플래그가 ë³€ê²½ë  ìˆ˜ 있ìŒ';
+$labels['longaclx'] = 'í´ë”를 삭제하거나 ì´ë¦„ 변경 í•  수 있ìŒ';
+$labels['longacla'] = 'í´ë”ì˜ ì ‘ê·¼ ê¶Œí•œì„ ë³€ê²½í•  수 있ìŒ';
+$labels['longaclfull'] = 'í´ë” 관리를 í¬í•¨í•œ 모든 제어권';
+$labels['longaclwrite'] = 'ë©”ì‹œì§€ì— í‘œì‹œí•˜ê±°ë‚˜, í´ë”ë¡œ 메시지를 복사하거나 작성할 수 있ìŒ';
+$labels['longacldelete'] = '메시지를 삭제할 수 있ìŒ';
+$labels['deleting'] = '접근 권한 삭제 중...';
+$labels['saving'] = '접근 권한 저장 중...';
+$labels['updatesuccess'] = 'ì ‘ê·¼ ê¶Œí•œì„ ë³€ê²½í•˜ëŠ”ë° ì„±ê³µ 함.';
+$labels['deletesuccess'] = 'ì ‘ê·¼ ê¶Œí•œì„ ì‚­ì œí•˜ëŠ”ë° ì„±ê³µ 함.';
+$labels['createsuccess'] = 'ì ‘ê·¼ ê¶Œí•œì„ ì¶”ê°€í•˜ëŠ”ë° ì„±ê³µ 함.';
+$labels['updateerror'] = 'ì ‘ê·¼ ê¶Œí•œì„ ê°±ì‹ í•  수 ì—†ìŒ.';
+$labels['deleteerror'] = 'ì ‘ê·¼ ê¶Œí•œì„ ì‚­ì œí•  수 ì—†ìŒ.';
+$labels['createerror'] = 'ì ‘ê·¼ ê¶Œí•œì„ ì¶”ê°€í•  수 ì—†ìŒ.';
+$labels['deleteconfirm'] = 'ì„ íƒí•œ 사용ìž(들)ì˜ ì ‘ê·¼ ê¶Œí•œì„ ì‚­ì œí•˜ê³ ìž í•˜ëŠ” ê²ƒì´ í™•ì‹¤ 합니까?';
+$labels['norights'] = 'ì§€ì •ëœ ê¶Œí•œì´ ì—†ìŒ!';
+$labels['nouser'] = 'ì§€ì •ëœ usernameì´ ì—†ìŒ!';
+
diff --git a/plugins/acl/localization/nl_NL.inc b/plugins/acl/localization/nl_NL.inc
new file mode 100644
index 000000000..68dcc7f96
--- /dev/null
+++ b/plugins/acl/localization/nl_NL.inc
@@ -0,0 +1,89 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/nl_NL/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Geert Wirken |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = 'Delen';
+$labels['myrights'] = 'Toegangsrechten';
+$labels['username'] = 'Gebruiker:';
+$labels['advanced'] = 'geavanceerde modus';
+$labels['newuser'] = 'Item toevoegen';
+$labels['actions'] = 'Toegangsrechtenopties...';
+$labels['anyone'] = 'Alle gebruikers (iedereen)';
+$labels['anonymous'] = 'Gasten (anoniem)';
+$labels['identifier'] = 'Identificatie';
+$labels['acll'] = 'Opzoeken';
+$labels['shortacll'] = 'Opzoeken';
+$labels['aclr'] = 'Berichten lezen';
+$labels['acls'] = 'Onthoud gelezen-status';
+$labels['aclw'] = 'Markeringen instellen';
+$labels['acli'] = 'Invoergen (kopiëren naar)';
+$labels['aclp'] = 'Plaatsen';
+$labels['shortaclp'] = 'Plaatsen';
+$labels['aclc'] = 'Submappen aanmaken';
+$labels['aclk'] = 'Submappen aanmaken';
+$labels['acld'] = 'Berichten verwijderen';
+$labels['aclt'] = 'Berichten verwijderen';
+$labels['acle'] = 'Vernietigen';
+$labels['shortacle'] = 'Vernietigen';
+$labels['aclx'] = 'Map verwijderen';
+$labels['acla'] = 'Beheren';
+$labels['shortacla'] = 'Beheren';
+$labels['aclfull'] = 'Volledige toegang';
+$labels['aclother'] = 'Overig';
+$labels['shortaclother'] = 'Overig';
+$labels['aclread'] = 'Lezen';
+$labels['shortaclr'] = 'Lezen';
+$labels['shortaclread'] = 'Lezen';
+$labels['aclwrite'] = 'Schrijven';
+$labels['shortaclw'] = 'Schrijven';
+$labels['shortaclwrite'] = 'Schrijven';
+$labels['acldelete'] = 'Verwijderen';
+$labels['shortacld'] = 'Verwijderen';
+$labels['shortaclt'] = 'Verwijderen';
+$labels['shortacldelete'] = 'Verwijderen';
+$labels['shortacls'] = 'Behouden';
+$labels['shortacli'] = 'Invoegen';
+$labels['shortaclc'] = 'Aanmaken';
+$labels['shortaclk'] = 'Aanmaken';
+$labels['shortaclx'] = 'Map verwijderen';
+$labels['longacll'] = 'De map is zichtbaar in lijsten en het is mogelijk om te abonneren op deze map';
+$labels['longaclr'] = 'De map kan geopend worden om te lezen';
+$labels['longaclread'] = 'De map kan geopend worden om te lezen';
+$labels['longacls'] = 'De berichtmarkering \'Gelezen\' kan aangepast worden';
+$labels['longaclw'] = 'Berichtmarkeringen en labels kunnen aangepast worden, behalve \'Gelezen\' en \'Verwijderd\'';
+$labels['longacli'] = 'Berichten kunnen opgesteld worden of gekopieerd worden naar deze map';
+$labels['longaclp'] = 'Berichten kunnen geplaatst worden in deze map';
+$labels['longaclc'] = 'Mappen kunnen aangemaakt of hernoemd worden rechtstreeks onder deze map';
+$labels['longaclk'] = 'Mappen kunnen aangemaakt of hernoemd worden rechtstreeks onder deze map';
+$labels['longacld'] = 'De berichtmarkering \'Verwijderd\' kan aangepast worden';
+$labels['longaclt'] = 'De berichtmarkering \'Verwijderd\' kan aangepast worden';
+$labels['longacle'] = 'Berichten kunnen vernietigd worden';
+$labels['longaclx'] = 'De map kan verwijderd of hernoemd worden';
+$labels['longacla'] = 'De toegangsrechten voor deze map kunnen veranderd worden';
+$labels['longaclfull'] = 'Volledige controle inclusief mappenbeheer';
+$labels['longaclwrite'] = 'Berichten kunnen gemarkeerd worden, opgesteld worden of gekopieerd worden naar deze map';
+$labels['longacldelete'] = 'Berichten kunnen verwijderd worden';
+$labels['deleting'] = 'Toegangsrechten worden verwijderd...';
+$labels['saving'] = 'Toegangsrechten worden opgeslagen...';
+$labels['updatesuccess'] = 'Toegangsrechten succesvol veranderd';
+$labels['deletesuccess'] = 'Toegangsrechten succesvol verwijderd';
+$labels['createsuccess'] = 'Toegangsrechten succesvol toegevoegd';
+$labels['updateerror'] = 'Toegangsrechten kunnen niet bijgewerkt worden';
+$labels['deleteerror'] = 'Toegangsrechten kunnen niet verwijderd worden';
+$labels['createerror'] = 'Toegangsrechten kunnen niet toegevoegd worden';
+$labels['deleteconfirm'] = 'Weet u zeker dat u de toegangsrechten van de geselecteerde gebruiker(s) wilt verwijderen?';
+$labels['norights'] = 'Er zijn geen toegangsrechten opgegeven!';
+$labels['nouser'] = 'Er is geen gebruikersnaam opgegeven!';
+
diff --git a/plugins/acl/localization/pl_PL.inc b/plugins/acl/localization/pl_PL.inc
index 0b3689927..b8007f025 100644
--- a/plugins/acl/localization/pl_PL.inc
+++ b/plugins/acl/localization/pl_PL.inc
@@ -1,5 +1,19 @@
<?php
+/*
+ +-----------------------------------------------------------------------+
+ | localization/pl_PL/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
$labels['sharing'] = 'Udostępnianie';
$labels['myrights'] = 'Prawa dostępu';
$labels['username'] = 'Użytkownik:';
@@ -9,50 +23,46 @@ $labels['actions'] = 'Akcje na prawach...';
$labels['anyone'] = 'Wszyscy (anyone)';
$labels['anonymous'] = 'Goście (anonymous)';
$labels['identifier'] = 'Identyfikator';
-
-$labels['acll'] = 'PodglÄ…d (Lookup)';
+$labels['acll'] = 'PodglÄ…d';
+$labels['shortacll'] = 'PodglÄ…d';
$labels['aclr'] = 'Odczyt (Read)';
$labels['acls'] = 'Zmiana stanu wiadomości (Keep)';
$labels['aclw'] = 'Zmiana flag wiadomości (Write)';
$labels['acli'] = 'Dodawanie/Kopiowanie do (Insert)';
-$labels['aclp'] = 'Wysyłanie (Post)';
+$labels['aclp'] = 'Wysyłanie';
+$labels['shortaclp'] = 'Wysyłanie';
$labels['aclc'] = 'Tworzenie podfolderów (Create)';
$labels['aclk'] = 'Tworzenie podfolderów (Create)';
$labels['acld'] = 'Usuwanie wiadomości (Delete)';
$labels['aclt'] = 'Usuwanie wiadomości (Delete)';
-$labels['acle'] = 'PorzÄ…dkowanie folderu (Expunge)';
+$labels['acle'] = 'PorzÄ…dkowanie';
+$labels['shortacle'] = 'PorzÄ…dkowanie';
$labels['aclx'] = 'Usuwanie folderu (Delete)';
-$labels['acla'] = 'Administracja (Administer)';
-
+$labels['acla'] = 'Administracja';
+$labels['shortacla'] = 'Administracja';
$labels['aclfull'] = 'Wszystkie';
-$labels['aclother'] = 'Inne';
+$labels['aclother'] = 'Pozostałe';
+$labels['shortaclother'] = 'Pozostałe';
$labels['aclread'] = 'Odczyt';
+$labels['shortaclr'] = 'Odczyt';
+$labels['shortaclread'] = 'Odczyt';
$labels['aclwrite'] = 'Zapis';
+$labels['shortaclw'] = 'Zapis';
+$labels['shortaclwrite'] = 'Zapis';
$labels['acldelete'] = 'Usuwanie';
-
-$labels['shortacll'] = 'PodglÄ…d';
-$labels['shortaclr'] = 'Odczyt';
+$labels['shortacld'] = 'Usuwanie';
+$labels['shortaclt'] = 'Usuwanie';
+$labels['shortacldelete'] = 'Usuwanie';
$labels['shortacls'] = 'Zmiana';
-$labels['shortaclw'] = 'Zmiana flag';
$labels['shortacli'] = 'Dodawanie';
-$labels['shortaclp'] = 'Wysyłanie';
$labels['shortaclc'] = 'Tworzenie';
$labels['shortaclk'] = 'Tworzenie';
-$labels['shortacld'] = 'Usuwanie';
-$labels['shortaclt'] = 'Usuwanie';
-$labels['shortacle'] = 'PorzÄ…dkowanie';
$labels['shortaclx'] = 'Usuwanie folderu';
-$labels['shortacla'] = 'Administracja';
-
-$labels['shortaclother'] = 'Pozostałe';
-$labels['shortaclread'] = 'Odczyt';
-$labels['shortaclwrite'] = 'Zapis';
-$labels['shortacldelete'] = 'Usuwanie';
-
$labels['longacll'] = 'Pozwala na subskrybowanie folderu i powoduje, że jest on widoczny na liście';
-$labels['longaclr'] = 'Pozwala na otwarcie folderu w trybie do odczytu';
+$labels['longaclr'] = 'Folder może być otwarty w trybie do odczytu';
+$labels['longaclread'] = 'Folder może być otwarty w trybie do odczytu';
$labels['longacls'] = 'Pozwala na zmienę stanu wiadomości';
-$labels['longaclw'] = 'Pozwala zmieniać wszystkie flagi wiadomości, oprócz "Przeczytano" i "Usunięto"';
+$labels['longaclw'] = 'Pozwala zmieniać wszystkie flagi wiadomości, oprócz "Przeczytano" i "Usunięto';
$labels['longacli'] = 'Pozwala zapisywać wiadomości i kopiować do folderu';
$labels['longaclp'] = 'Pozwala wysyłać wiadomości do folderu';
$labels['longaclc'] = 'Pozwala tworzyć (lub zmieniać nazwę) podfoldery';
@@ -62,22 +72,18 @@ $labels['longaclt'] = 'Pozwala zmianiać flagę "Usunięto" wiadomości';
$labels['longacle'] = 'Pozwala na usuwanie wiadomości oznaczonych do usunięcia';
$labels['longaclx'] = 'Pozwala na zmianę nazwy lub usunięcie folderu';
$labels['longacla'] = 'Pozwala na zmiane praw dostępu do folderu';
-
$labels['longaclfull'] = 'Pełna kontrola włącznie z administrowaniem folderem';
-$labels['longaclread'] = 'Folder może być otwarty w trybie do odczytu';
$labels['longaclwrite'] = 'Wiadomości mogą być oznaczane, zapisywane i kopiowane do folderu';
$labels['longacldelete'] = 'Wiadomości mogą być usuwane';
+$labels['deleting'] = 'Usuwanie praw dostępu...';
+$labels['saving'] = 'Zapisywanie praw dostępu...';
+$labels['updatesuccess'] = 'Pomyślnie zmieniono prawa dostępu';
+$labels['deletesuccess'] = 'Pomyślnie usunięto prawa dostępu';
+$labels['createsuccess'] = 'Pomyślnie dodano prawa dostępu';
+$labels['updateerror'] = 'Nie udało się zmienić praw dostępu';
+$labels['deleteerror'] = 'Nie udało się usunąć praw dostępu';
+$labels['createerror'] = 'Nie udało się dodać praw dostępu';
+$labels['deleteconfirm'] = 'Czy na pewno chcesz usunąć prawa wybranym użytkownikom?';
+$labels['norights'] = 'Nie wybrano praw dostępu!';
+$labels['nouser'] = 'Nie podano nazwy użytkownika!';
-$messages['deleting'] = 'Usuwanie praw dostępu...';
-$messages['saving'] = 'Zapisywanie praw dostępu...';
-$messages['updatesuccess'] = 'Pomyślnie zmieniono prawa dostępu';
-$messages['deletesuccess'] = 'Pomyślnie usunięto prawa dostępu';
-$messages['createsuccess'] = 'Pomyślnie dodano prawa dostępu';
-$messages['updateerror'] = 'Nie udało się zmienić praw dostępu';
-$messages['deleteerror'] = 'Nie udało się usunąć praw dostępu';
-$messages['createerror'] = 'Nie udało się dodać praw dostępu';
-$messages['deleteconfirm'] = 'Czy na pewno chcesz usunąć prawa wybranym użytkownikom?';
-$messages['norights'] = 'Nie wybrano praw dostępu!';
-$messages['nouser'] = 'Nie podano nazwy użytkownika!';
-
-?>
diff --git a/plugins/acl/localization/pt_BR.inc b/plugins/acl/localization/pt_BR.inc
new file mode 100644
index 000000000..2e4828304
--- /dev/null
+++ b/plugins/acl/localization/pt_BR.inc
@@ -0,0 +1,89 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/pt_BR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Claudio F Filho <filhocf@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = 'Compartilhamento';
+$labels['myrights'] = 'Permissões de Acesso';
+$labels['username'] = 'Usuário:';
+$labels['advanced'] = 'modo avançado';
+$labels['newuser'] = 'Adicionar entrada';
+$labels['actions'] = 'Ações de direito de acesso...';
+$labels['anyone'] = 'Todos os usuários (qualquer um)';
+$labels['anonymous'] = 'Convidados (anônimos)';
+$labels['identifier'] = 'Identificador';
+$labels['acll'] = 'Pesquisar';
+$labels['shortacll'] = 'Pesquisar';
+$labels['aclr'] = 'Ler mensagens';
+$labels['acls'] = 'Manter estado de enviado';
+$labels['aclw'] = 'Salvar marcadores';
+$labels['acli'] = 'Inserir (Cópia em)';
+$labels['aclp'] = 'Enviar';
+$labels['shortaclp'] = 'Enviar';
+$labels['aclc'] = 'Criar subpastas';
+$labels['aclk'] = 'Criar subpastas';
+$labels['acld'] = 'Apagar mensagens';
+$labels['aclt'] = 'Apagar mensagens';
+$labels['acle'] = 'Expurgar';
+$labels['shortacle'] = 'Expurgar';
+$labels['aclx'] = 'Apagar pasta';
+$labels['acla'] = 'Administrar';
+$labels['shortacla'] = 'Administrar';
+$labels['aclfull'] = 'Controle total';
+$labels['aclother'] = 'Outro';
+$labels['shortaclother'] = 'Outro';
+$labels['aclread'] = 'Ler';
+$labels['shortaclr'] = 'Ler';
+$labels['shortaclread'] = 'Ler';
+$labels['aclwrite'] = 'Salvar';
+$labels['shortaclw'] = 'Salvar';
+$labels['shortaclwrite'] = 'Salvar';
+$labels['acldelete'] = 'Excluir';
+$labels['shortacld'] = 'Excluir';
+$labels['shortaclt'] = 'Excluir';
+$labels['shortacldelete'] = 'Excluir';
+$labels['shortacls'] = 'Manter';
+$labels['shortacli'] = 'Inserir';
+$labels['shortaclc'] = 'Criar';
+$labels['shortaclk'] = 'Criar';
+$labels['shortaclx'] = 'Excluir pasta';
+$labels['longacll'] = 'A pasta está visível nas listas e pode ser inscrita para';
+$labels['longaclr'] = 'A pasta pode ser aberta para leitura';
+$labels['longaclread'] = 'A pasta pode ser aberta para leitura';
+$labels['longacls'] = 'Marcador de Mensagem Enviada pode ser modificadas';
+$labels['longaclw'] = 'Marcadores de mensagens e palavras-chave podem ser modificadas, exceto de Enviadas e Excluídas';
+$labels['longacli'] = 'As mensagens podem ser escritas ou copiadas para a pasta';
+$labels['longaclp'] = 'As mensagens podem ser enviadas para esta pasta';
+$labels['longaclc'] = 'As pastas podem ser criadas (ou renomeadas) diretamente sob esta pasta';
+$labels['longaclk'] = 'As pastas podem ser criadas (ou renomeadas) diretamente sob esta pasta';
+$labels['longacld'] = 'O marcador de Mensagens Excluídas podem ser modificadas';
+$labels['longaclt'] = 'O marcador de Mensagens Excluídas podem ser modificadas';
+$labels['longacle'] = 'As mensagens podem ser expurgadas';
+$labels['longaclx'] = 'A pasta pode ser apagada ou renomeada';
+$labels['longacla'] = 'As permissões de acesso da pasta podem ser alteradas';
+$labels['longaclfull'] = 'Controle total incluindo a pasta de administração';
+$labels['longaclwrite'] = 'As mensagens podem ser marcadas, salvas ou copiadas para a pasta';
+$labels['longacldelete'] = 'Mensagens podem ser apagadas';
+$labels['deleting'] = 'Apagando permissões de acesso...';
+$labels['saving'] = 'Salvando permissões de acesso...';
+$labels['updatesuccess'] = 'Permissões de acesso alteradas com sucesso';
+$labels['deletesuccess'] = 'Permissões de acesso apagadas com sucesso';
+$labels['createsuccess'] = 'Permissões de acesso adicionadas com sucesso';
+$labels['updateerror'] = 'Não foi possível atualizar as permissões de acesso';
+$labels['deleteerror'] = 'Não foi possível apagar as permissões de acesso';
+$labels['createerror'] = 'Não foi possível adicionar as permissões de acesso';
+$labels['deleteconfirm'] = 'Tem certeza que deseja remover as permissões de acesso do(s) usuário(s) delecionado(s)?';
+$labels['norights'] = 'Não foram definidas permissões!';
+$labels['nouser'] = 'Nome de usuário não especificado!';
+
diff --git a/plugins/acl/localization/pt_PT.inc b/plugins/acl/localization/pt_PT.inc
new file mode 100644
index 000000000..72c595afa
--- /dev/null
+++ b/plugins/acl/localization/pt_PT.inc
@@ -0,0 +1,89 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/pt_PT/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: David |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = 'Partilhar';
+$labels['myrights'] = 'Permissões de acesso';
+$labels['username'] = 'Utilizador:';
+$labels['advanced'] = 'Modo avançado';
+$labels['newuser'] = 'Adicionar entrada';
+$labels['actions'] = 'Acções de permissão de acesso...';
+$labels['anyone'] = 'Todos os utilizadores (todos)';
+$labels['anonymous'] = 'Convidado (anónimo)';
+$labels['identifier'] = 'Identificador';
+$labels['acll'] = 'Pesquisar';
+$labels['shortacll'] = 'Pesquisar';
+$labels['aclr'] = 'Ler mensagens';
+$labels['acls'] = 'Manter estado de enviado';
+$labels['aclw'] = 'Guardar marcadores';
+$labels['acli'] = 'Inserir (cópia em)';
+$labels['aclp'] = 'Publicar';
+$labels['shortaclp'] = 'Publicar';
+$labels['aclc'] = 'Criar subpastas';
+$labels['aclk'] = 'Criar subpastas';
+$labels['acld'] = 'Eliminar mensagens';
+$labels['aclt'] = 'Eliminar mensagens';
+$labels['acle'] = 'Eliminar';
+$labels['shortacle'] = 'Eliminar';
+$labels['aclx'] = 'Eliminar pasta';
+$labels['acla'] = 'Administrar';
+$labels['shortacla'] = 'Administrar';
+$labels['aclfull'] = 'Controlo total';
+$labels['aclother'] = 'Outro';
+$labels['shortaclother'] = 'Outro';
+$labels['aclread'] = 'Ler';
+$labels['shortaclr'] = 'Ler';
+$labels['shortaclread'] = 'Ler';
+$labels['aclwrite'] = 'Guardar';
+$labels['shortaclw'] = 'Guardar';
+$labels['shortaclwrite'] = 'Guardar';
+$labels['acldelete'] = 'Eliminar';
+$labels['shortacld'] = 'Eliminar';
+$labels['shortaclt'] = 'Eliminar';
+$labels['shortacldelete'] = 'Eliminar';
+$labels['shortacls'] = 'Manter';
+$labels['shortacli'] = 'Inserir';
+$labels['shortaclc'] = 'Criar';
+$labels['shortaclk'] = 'Criar';
+$labels['shortaclx'] = 'Eliminar pasta';
+$labels['longacll'] = 'A pasta está visível na lista e pode subscrita para';
+$labels['longaclr'] = 'A pasta pode ser aberta para leitura';
+$labels['longaclread'] = 'A pasta pode ser aberta para leitura';
+$labels['longacls'] = 'O marcador de mensagem enviada pode ser alterado';
+$labels['longaclw'] = 'Marcadores de mensagens e palavras-chave podem ser alterados, excepto de Enviadas e Eliminadas';
+$labels['longacli'] = 'As mensagens podem ser escritas e copiadas para a pasta';
+$labels['longaclp'] = 'As mensagens podem ser publicadas na pasta';
+$labels['longaclc'] = 'As pastas podem ser criadas (ou renomeadas) directamente nesta pasta';
+$labels['longaclk'] = 'As pastas podem ser criadas (ou renomeadas) directamente nesta pasta';
+$labels['longacld'] = 'O marcador de mensagens Eliminadas pode ser alterado';
+$labels['longaclt'] = 'O marcador de mensagens Eliminadas pode ser alterado';
+$labels['longacle'] = 'As mensagens podem ser eliminadas';
+$labels['longaclx'] = 'A pasta pode ser eliminada ou renomeada';
+$labels['longacla'] = 'As permissões de acesso da pasta podem ser alteradas';
+$labels['longaclfull'] = 'Controlo total incluindo administração da pasta';
+$labels['longaclwrite'] = 'As mensagens podem ser marcadas, guardadas ou copiadas para a pasta';
+$labels['longacldelete'] = 'As mensagens podem ser eliminadas';
+$labels['deleting'] = 'A eliminar as permissões de acesso...';
+$labels['saving'] = 'A guardar as permissões de acesso...';
+$labels['updatesuccess'] = 'Permissões de acesso alteradas com sucesso';
+$labels['deletesuccess'] = 'Permissões de acesso eliminadas com sucesso';
+$labels['createsuccess'] = 'Permissões de acesso adicionadas com sucesso';
+$labels['updateerror'] = 'Não foi possível actualizar as permissões de acesso';
+$labels['deleteerror'] = 'Não foi possível eliminar as permissões de acesso';
+$labels['createerror'] = 'Não foi possível adicionar as permissões de acesso';
+$labels['deleteconfirm'] = 'Tem a certeza que pretende remover as permissões de acesso do(s) utilizador(es) seleccionado(s)?';
+$labels['norights'] = 'Não foram especificadas quaisquer permissões!';
+$labels['nouser'] = 'Não foi especificado nenhum nome de utilizador!';
+
diff --git a/plugins/acl/localization/ru_RU.inc b/plugins/acl/localization/ru_RU.inc
new file mode 100644
index 000000000..f50610a03
--- /dev/null
+++ b/plugins/acl/localization/ru_RU.inc
@@ -0,0 +1,89 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ru_RU/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Vahan Yerkanian <vahan@yerkanian.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = 'СовмеÑтный доÑтуп';
+$labels['myrights'] = 'Права доÑтупа';
+$labels['username'] = 'Пользователь:';
+$labels['advanced'] = 'ЭкÑпертный режим';
+$labels['newuser'] = 'Добавить поле';
+$labels['actions'] = 'ДейÑÑ‚Ð²Ð¸Ñ Ñ Ð¿Ñ€Ð°Ð²Ð°Ð¼Ð¸ доÑтупа...';
+$labels['anyone'] = 'Ð’Ñе пользователи (любые)';
+$labels['anonymous'] = 'ГоÑти (анонимные)';
+$labels['identifier'] = 'Идентификатор';
+$labels['acll'] = 'ПоиÑк';
+$labels['shortacll'] = 'ПоиÑк';
+$labels['aclr'] = 'Прочитать ÑообщениÑ';
+$labels['acls'] = 'ОÑтавить ÑоÑтоÑние Увидено';
+$labels['aclw'] = 'Флаги запиÑи';
+$labels['acli'] = 'Ð’Ñтавить (копировать в...)';
+$labels['aclp'] = 'Отправить';
+$labels['shortaclp'] = 'Отправить';
+$labels['aclc'] = 'Создать вложенные папки';
+$labels['aclk'] = 'Создать вложенные папки';
+$labels['acld'] = 'Удалить ÑообщениÑ';
+$labels['aclt'] = 'Удалить ÑообщениÑ';
+$labels['acle'] = 'Уничтожить ÑообщениÑ';
+$labels['shortacle'] = 'Уничтожить ÑообщениÑ';
+$labels['aclx'] = 'Удалить папку';
+$labels['acla'] = 'ÐдминиÑтрировать';
+$labels['shortacla'] = 'ÐдминиÑтрировать';
+$labels['aclfull'] = 'Полный доÑтуп';
+$labels['aclother'] = 'Другое';
+$labels['shortaclother'] = 'Другое';
+$labels['aclread'] = 'Чтение';
+$labels['shortaclr'] = 'Чтение';
+$labels['shortaclread'] = 'Чтение';
+$labels['aclwrite'] = 'ЗапиÑÑŒ';
+$labels['shortaclw'] = 'ЗапиÑÑŒ';
+$labels['shortaclwrite'] = 'ЗапиÑÑŒ';
+$labels['acldelete'] = 'Удаление';
+$labels['shortacld'] = 'Удаление';
+$labels['shortaclt'] = 'Удаление';
+$labels['shortacldelete'] = 'Удаление';
+$labels['shortacls'] = 'ОÑтавить';
+$labels['shortacli'] = 'Ð’Ñтавить';
+$labels['shortaclc'] = 'Создать';
+$labels['shortaclk'] = 'Создать';
+$labels['shortaclx'] = 'Удаление папки';
+$labels['longacll'] = 'Папка видима в ÑпиÑках и доÑтупна Ð´Ð»Ñ Ð¿Ð¾Ð´Ð¿Ð¸Ñки';
+$labels['longaclr'] = 'Эта папка может быть открыта Ð´Ð»Ñ Ñ‡Ñ‚ÐµÐ½Ð¸Ñ';
+$labels['longaclread'] = 'Эта папка может быть открыта Ð´Ð»Ñ Ñ‡Ñ‚ÐµÐ½Ð¸Ñ';
+$labels['longacls'] = 'Флаг Прочитано может быть изменен';
+$labels['longaclw'] = 'Флаги и ключевые Ñлова, кроме Прочитано и Удалено, могут быть изменены';
+$labels['longacli'] = 'Ð¡Ð¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¼Ð¾Ð³ÑƒÑ‚ быть запиÑаны или Ñкопированы в папку';
+$labels['longaclp'] = 'Ð¡Ð¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¼Ð¾Ð³ÑƒÑ‚ быть отправлены в Ñту папку';
+$labels['longaclc'] = 'Подпапки могут быть Ñозданы или переименованы прÑмо в Ñтой папке';
+$labels['longaclk'] = 'Подпапки могут быть Ñозданы или переименованы прÑмо в Ñтой папке';
+$labels['longacld'] = 'Флаг Удалено может быть изменен';
+$labels['longaclt'] = 'Флаг Удалено может быть изменен';
+$labels['longacle'] = 'Ð¡Ð¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¼Ð¾Ð³ÑƒÑ‚ быть уничтожены';
+$labels['longaclx'] = 'Эта папка может быть переименована или удалена';
+$labels['longacla'] = 'Права доÑтупа к папке могут быть изменены';
+$labels['longaclfull'] = 'Полный доÑтуп, Ð²ÐºÐ»ÑŽÑ‡Ð°Ñ ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ðµ папкой';
+$labels['longaclwrite'] = 'Ð¡Ð¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¼Ð¾Ð¶Ð½Ð¾ помечать, запиÑывать или копировать в папку';
+$labels['longacldelete'] = 'Ð¡Ð¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¼Ð¾Ð¶Ð½Ð¾ удалÑÑ‚ÑŒ';
+$labels['deleting'] = 'Удаление прав доÑтупа...';
+$labels['saving'] = 'Сохранение прав доÑтупа...';
+$labels['updatesuccess'] = 'Права доÑтупа уÑпешно изменены';
+$labels['deletesuccess'] = 'Права доÑтупа уÑпешно удалены';
+$labels['createsuccess'] = 'УÑпешно добавлены права доÑтупа';
+$labels['updateerror'] = 'Ðевозможно обновить права доÑтупа';
+$labels['deleteerror'] = 'Ðевозможно удалить права доÑтупа';
+$labels['createerror'] = 'Ðевозможно добавить права доÑтупа';
+$labels['deleteconfirm'] = 'Ð’Ñ‹ уверены в том, что хотите удалить права доÑтупа выбранных пользователей?';
+$labels['norights'] = 'Права доÑтупа не уÑтановлены!';
+$labels['nouser'] = 'Ðе определено Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ!';
+
diff --git a/plugins/acl/localization/sk_SK.inc b/plugins/acl/localization/sk_SK.inc
new file mode 100644
index 000000000..d83a87a3e
--- /dev/null
+++ b/plugins/acl/localization/sk_SK.inc
@@ -0,0 +1,44 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sk_SK/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: panda |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = 'Zdieľanie';
+$labels['myrights'] = 'Prístupové práva';
+$labels['username'] = 'Užívateľ:';
+$labels['advanced'] = 'pokroÄilý mód';
+$labels['newuser'] = 'Pridať údaj';
+$labels['anyone'] = 'Všetci užívatelia (ktokoľvek)';
+$labels['anonymous'] = 'Hostia (anonymne)';
+$labels['identifier'] = 'Identifikátor';
+$labels['acll'] = 'Hľadanie';
+$labels['shortacll'] = 'Hľadanie';
+$labels['aclr'] = 'Čítať správy';
+$labels['acli'] = 'Vložiť (kopírovať do)';
+$labels['aclc'] = 'VytvoriÅ¥ podprieÄinky';
+$labels['aclk'] = 'VytvoriÅ¥ podprieÄinky';
+$labels['acld'] = 'Zmazať správy';
+$labels['aclt'] = 'Zmazať správy';
+$labels['aclx'] = 'ZmazaÅ¥ prieÄinok';
+$labels['acla'] = 'Spravovať';
+$labels['shortacla'] = 'Spravovať';
+$labels['acldelete'] = 'Zmazať';
+$labels['shortacld'] = 'Zmazať';
+$labels['shortaclt'] = 'Zmazať';
+$labels['shortacldelete'] = 'Zmazať';
+$labels['shortacls'] = 'Ponechať';
+$labels['shortacli'] = 'Vložiť';
+$labels['shortaclc'] = 'Vytvoriť';
+$labels['shortaclk'] = 'Vytvoriť';
+
diff --git a/plugins/acl/localization/sl_SI.inc b/plugins/acl/localization/sl_SI.inc
new file mode 100644
index 000000000..e644c9d14
--- /dev/null
+++ b/plugins/acl/localization/sl_SI.inc
@@ -0,0 +1,89 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sl_SI/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Teja Cetinski <teja.cetinski@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = 'Skupna raba';
+$labels['myrights'] = 'Pravice dostopa';
+$labels['username'] = 'Uporabnik:';
+$labels['advanced'] = 'Napredni naÄin';
+$labels['newuser'] = 'Dodaj vnos';
+$labels['actions'] = 'Nastavitve pravic dostopa';
+$labels['anyone'] = 'Vsi uporabniki';
+$labels['anonymous'] = 'Gosti';
+$labels['identifier'] = 'OznaÄevalnik';
+$labels['acll'] = 'Iskanje';
+$labels['shortacll'] = 'Iskanje';
+$labels['aclr'] = 'Prebrana sporoÄila';
+$labels['acls'] = 'Ohrani status \'Prebrano\'';
+$labels['aclw'] = 'OznaÄi pisanje sporoÄila';
+$labels['acli'] = 'Vstavi (Kopiraj v)';
+$labels['aclp'] = 'Objava';
+$labels['shortaclp'] = 'Objava';
+$labels['aclc'] = 'Ustvari podmape';
+$labels['aclk'] = 'Ustvari podmape';
+$labels['acld'] = 'IzbriÅ¡i sporoÄila';
+$labels['aclt'] = 'IzbriÅ¡i sporoÄila';
+$labels['acle'] = 'Izbriši';
+$labels['shortacle'] = 'Izbriši';
+$labels['aclx'] = 'Izbriši mapo';
+$labels['acla'] = 'Uredi';
+$labels['shortacla'] = 'Uredi';
+$labels['aclfull'] = 'Popolno upravljanje';
+$labels['aclother'] = 'Ostalo';
+$labels['shortaclother'] = 'Ostalo';
+$labels['aclread'] = 'Preberi';
+$labels['shortaclr'] = 'Preberi';
+$labels['shortaclread'] = 'Preberi';
+$labels['aclwrite'] = 'Sestavi';
+$labels['shortaclw'] = 'Sestavi';
+$labels['shortaclwrite'] = 'Sestavi';
+$labels['acldelete'] = 'Izbriši';
+$labels['shortacld'] = 'Izbriši';
+$labels['shortaclt'] = 'Izbriši';
+$labels['shortacldelete'] = 'Izbriši';
+$labels['shortacls'] = 'Ohrani';
+$labels['shortacli'] = 'Vstavi';
+$labels['shortaclc'] = 'Ustvari';
+$labels['shortaclk'] = 'Ustvari';
+$labels['shortaclx'] = 'Izbriši mapo';
+$labels['longacll'] = 'Mapa je vidna na seznamih in jo lahko naroÄite';
+$labels['longaclr'] = 'Mapa je na voljo za branje';
+$labels['longaclread'] = 'Mapa je na voljo za branje';
+$labels['longacls'] = 'Oznaka \'Prebrano sporoÄilo\' je lahko spremenjena';
+$labels['longaclw'] = 'Oznake sporoÄil in kljuÄne besede je mogoÄe spremeniti, z izjemo oznak "Prebrano" in "Izbrisano';
+$labels['longacli'] = 'SporoÄilo je lahko poslano ali kopirano v mapo';
+$labels['longaclp'] = 'SporoÄilo je lahko poslano v to mapo';
+$labels['longaclc'] = 'V tej mapi so lahko ustvarjene (ali preimenovane) podmape';
+$labels['longaclk'] = 'V tej mapi so lahko ustvarjene (ali preimenovane) podmape';
+$labels['longacld'] = 'Oznako sporoÄila \'Izbrisano\' je mogoÄe spremeniti';
+$labels['longaclt'] = 'Oznako sporoÄila \'Izbrisano\' je mogoÄe spremeniti';
+$labels['longacle'] = 'SporoÄila so lahko izbrisana';
+$labels['longaclx'] = 'Mapa je lahko izbrisana ali preimenovana';
+$labels['longacla'] = 'Pravice na mapi so lahko spremenjene';
+$labels['longaclfull'] = 'Popolno upravljanje, vkljuÄno z urejanjem map';
+$labels['longaclwrite'] = 'SporoÄila je mogoÄe oznaÄiti, sestaviti ali kopirati v mapo';
+$labels['longacldelete'] = 'SporoÄila so lahko izbrisana';
+$labels['deleting'] = 'Brisanje pravic';
+$labels['saving'] = 'Shranjevanje pravic';
+$labels['updatesuccess'] = 'Pravice so bile uspešno spremenjene';
+$labels['deletesuccess'] = 'Pravice so bile uspešno izbrisane';
+$labels['createsuccess'] = 'Pravice so bile uspešno dodane';
+$labels['updateerror'] = 'Pravic ni mogoÄe posodobiti';
+$labels['deleteerror'] = 'Pravic ni mogoÄe izbrisati';
+$labels['createerror'] = 'Pravic ni bilo mogoÄe dodati';
+$labels['deleteconfirm'] = 'Ste prepriÄani, da želite odstraniti pravice dostopa za izbrane uporabnike?';
+$labels['norights'] = 'Pravic niste doloÄili';
+$labels['nouser'] = 'Niste doloÄili uporabniÅ¡lega imena';
+
diff --git a/plugins/acl/localization/sv_SE.inc b/plugins/acl/localization/sv_SE.inc
new file mode 100644
index 000000000..a2f41dcaa
--- /dev/null
+++ b/plugins/acl/localization/sv_SE.inc
@@ -0,0 +1,89 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sv_SE/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Jonas Nasholm |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = 'Utdelning';
+$labels['myrights'] = 'Åtkomsträttigheter';
+$labels['username'] = 'Användare:';
+$labels['advanced'] = 'avancerat läge';
+$labels['newuser'] = 'Lägg till';
+$labels['actions'] = 'Hantera åtkomsträttigheter...';
+$labels['anyone'] = 'Alla användare (alla)';
+$labels['anonymous'] = 'Gäster (anonyma)';
+$labels['identifier'] = 'Identifikation';
+$labels['acll'] = 'Uppslagning';
+$labels['shortacll'] = 'Uppslagning';
+$labels['aclr'] = 'Läs meddelanden';
+$labels['acls'] = 'Behåll status Sett';
+$labels['aclw'] = 'Skriv flaggor';
+$labels['acli'] = 'Infoga (kopiera in)';
+$labels['aclp'] = 'Posta';
+$labels['shortaclp'] = 'Posta';
+$labels['aclc'] = 'Skapa underkataloger';
+$labels['aclk'] = 'Skapa underkataloger';
+$labels['acld'] = 'Ta bort meddelanden';
+$labels['aclt'] = 'Ta bort meddelanden';
+$labels['acle'] = 'Utplåna';
+$labels['shortacle'] = 'Utplåna';
+$labels['aclx'] = 'Ta bort katalog';
+$labels['acla'] = 'Administrera';
+$labels['shortacla'] = 'Administrera';
+$labels['aclfull'] = 'Full kontroll';
+$labels['aclother'] = 'Övrig';
+$labels['shortaclother'] = 'Övrig';
+$labels['aclread'] = 'Läs';
+$labels['shortaclr'] = 'Läs';
+$labels['shortaclread'] = 'Läs';
+$labels['aclwrite'] = 'Skriv';
+$labels['shortaclw'] = 'Skriv';
+$labels['shortaclwrite'] = 'Skriv';
+$labels['acldelete'] = 'Ta bort';
+$labels['shortacld'] = 'Ta bort';
+$labels['shortaclt'] = 'Ta bort';
+$labels['shortacldelete'] = 'Ta bort';
+$labels['shortacls'] = 'Behåll';
+$labels['shortacli'] = 'Infoga';
+$labels['shortaclc'] = 'Skapa';
+$labels['shortaclk'] = 'Skapa';
+$labels['shortaclx'] = 'Ta bort katalog';
+$labels['longacll'] = 'Katalogen är synlig i listor och den kan prenumereras på';
+$labels['longaclr'] = 'Katalogen kan öppnas för läsning';
+$labels['longaclread'] = 'Katalogen kan öppnas för läsning';
+$labels['longacls'] = 'Meddelandeflagga Sett kan ändras';
+$labels['longaclw'] = 'Meddelandeflaggor och nyckelord kan ändras, undantaget Sett och Raderat';
+$labels['longacli'] = 'Meddelanden kan skrivas eller kopieras till katalogen';
+$labels['longaclp'] = 'Meddelanden kan postas till denna katalog';
+$labels['longaclc'] = 'Kataloger kan skapas (eller ges annat namn) direkt i denna katalog';
+$labels['longaclk'] = 'Kataloger kan skapas (eller ges annat namn) direkt i denna katalog';
+$labels['longacld'] = 'Meddelandeflagga Raderat kan ändras';
+$labels['longaclt'] = 'Meddelandeflagga Raderat kan ändras';
+$labels['longacle'] = 'Meddelanden kan utplånas';
+$labels['longaclx'] = 'Katalogen kan tas bort eller ges annat namn';
+$labels['longacla'] = 'Katalogens åtkomsträttigheter kan ändras';
+$labels['longaclfull'] = 'Full kontroll inklusive katalogadministration';
+$labels['longaclwrite'] = 'Meddelanden kan märkas, skrivas eller kopieras till katalogen';
+$labels['longacldelete'] = 'Meddelanden kan tas bort';
+$labels['deleting'] = 'Tar bort åtkomsträttigheter...';
+$labels['saving'] = 'Sparar åtkomsträttigheter...';
+$labels['updatesuccess'] = 'Åtkomsträttigheterna är ändrade';
+$labels['deletesuccess'] = 'Åtkomsträttigheterna är borttagna';
+$labels['createsuccess'] = 'Åtkomsträttigheterna är tillagda';
+$labels['updateerror'] = 'Åtkomsträttigheterna kunde inte ändras';
+$labels['deleteerror'] = 'Åtkomsträttigheterna kunde inte tas bort';
+$labels['createerror'] = 'Åtkomsträttigheterna kunde inte läggas till';
+$labels['deleteconfirm'] = 'Vill du verkligen ta bort åtkomsträttigheterna för markerade användare?';
+$labels['norights'] = 'Inga åtkomsträttigheter angavs!';
+$labels['nouser'] = 'Inget användarnamn angavs!';
+
diff --git a/plugins/acl/localization/tr_TR.inc b/plugins/acl/localization/tr_TR.inc
new file mode 100644
index 000000000..509effaad
--- /dev/null
+++ b/plugins/acl/localization/tr_TR.inc
@@ -0,0 +1,89 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/tr_TR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: ismail yenigul |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = 'Paylaşım';
+$labels['myrights'] = 'Erişim Hakları';
+$labels['username'] = 'Kullanıcı:';
+$labels['advanced'] = 'Ä°leri seviye mod';
+$labels['newuser'] = 'Girdi ekle';
+$labels['actions'] = 'Erişim hakları aksiyonları...';
+$labels['anyone'] = 'Tüm kullanıcılar(kim olursa)';
+$labels['anonymous'] = 'Ziyaretçiler(anonim)';
+$labels['identifier'] = 'Tanımlayıcı';
+$labels['acll'] = 'Arama';
+$labels['shortacll'] = 'Arama';
+$labels['aclr'] = 'Mesajları oku';
+$labels['acls'] = 'Göründü durumunu muhafaza et';
+$labels['aclw'] = 'Yazma bayrakları';
+$labels['acli'] = 'Ekle(kopyala)';
+$labels['aclp'] = 'Gönder';
+$labels['shortaclp'] = 'Gönder';
+$labels['aclc'] = 'Alt dizinler oluÅŸtur';
+$labels['aclk'] = 'Alt dizinler oluÅŸtur';
+$labels['acld'] = 'Mesajları sil';
+$labels['aclt'] = 'Mesajları sil';
+$labels['acle'] = 'Sil';
+$labels['shortacle'] = 'Sil';
+$labels['aclx'] = 'Dizini sil';
+$labels['acla'] = 'Yönet';
+$labels['shortacla'] = 'Yönet';
+$labels['aclfull'] = 'Tam kontrol';
+$labels['aclother'] = 'DiÄŸer';
+$labels['shortaclother'] = 'DiÄŸer';
+$labels['aclread'] = 'Oku';
+$labels['shortaclr'] = 'Oku';
+$labels['shortaclread'] = 'Oku';
+$labels['aclwrite'] = 'Yaz';
+$labels['shortaclw'] = 'Yaz';
+$labels['shortaclwrite'] = 'Yaz';
+$labels['acldelete'] = 'Sil';
+$labels['shortacld'] = 'Sil';
+$labels['shortaclt'] = 'Sil';
+$labels['shortacldelete'] = 'Sil';
+$labels['shortacls'] = 'Koru';
+$labels['shortacli'] = 'Ekle';
+$labels['shortaclc'] = 'OluÅŸtur';
+$labels['shortaclk'] = 'OluÅŸtur';
+$labels['shortaclx'] = 'Dizin sil';
+$labels['longacll'] = 'Klasör listesinde görülebilir ve abone olunabilir';
+$labels['longaclr'] = 'Dizin yazma için okunabilir';
+$labels['longaclread'] = 'Dizin yazma için okunabilir';
+$labels['longacls'] = 'Mesajların göründü bayrağı değiştirilebilir';
+$labels['longaclw'] = 'Görülme ve Silinme bayrakları hariç bayraklar ve anahtar kelimeler değiştirilebilir';
+$labels['longacli'] = 'Mesajlar dizini yazılabilir veya kopyalanabilir';
+$labels['longaclp'] = 'Mesajlar bu dizine gönderilebilir';
+$labels['longaclc'] = 'Dizinler doğrudan bu klasör altında oluşturulabilir veya yeniden adlandırılabilir.';
+$labels['longaclk'] = 'Dizinler doğrudan bu klasör altında oluşturulabilir veya yeniden adlandırılabilir.';
+$labels['longacld'] = 'mesajları sil bayrakları değiştirilebilir';
+$labels['longaclt'] = 'mesajları sil bayrakları değiştirilebilir';
+$labels['longacle'] = 'Mesajlar silinebilir';
+$labels['longaclx'] = 'Klasörü silinebilir veya yeniden adlandırılabilir';
+$labels['longacla'] = 'Dizin erişim hakları değiştirilebilir';
+$labels['longaclfull'] = 'Dizin yönetimi de dahil olmak üzere tam kontrol';
+$labels['longaclwrite'] = 'Dizin yönetimi de dahil olmak üzere tam kontrol';
+$labels['longacldelete'] = 'Mesajlar silinebilir';
+$labels['deleting'] = 'Erişim hakları siliniyor...';
+$labels['saving'] = 'Erişim hakları saklanıyor...';
+$labels['updatesuccess'] = 'Erişim hakları başarıyla değiştirildi';
+$labels['deletesuccess'] = 'Erişim hakları başarıyla silindi';
+$labels['createsuccess'] = 'Erişim hakları başarıyla eklendi';
+$labels['updateerror'] = 'Erişim haklarını güncellenemedi';
+$labels['deleteerror'] = 'Erişim haklarını silinemedi';
+$labels['createerror'] = 'Erişim hakları eklenemedi';
+$labels['deleteconfirm'] = 'Seçilen kullanıcılar için erişim haklarını silmek istediğinizden emin misiniz?';
+$labels['norights'] = 'Hiçbir hak belirtilmemiş!';
+$labels['nouser'] = 'Hiçbir kullanıcı belirtilmemiş!';
+
diff --git a/plugins/acl/localization/vi_VN.inc b/plugins/acl/localization/vi_VN.inc
new file mode 100644
index 000000000..66dc1eb50
--- /dev/null
+++ b/plugins/acl/localization/vi_VN.inc
@@ -0,0 +1,72 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/vi_VN/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Hung Pham <phamhung77@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = 'Chia sẻ';
+$labels['myrights'] = 'Quyá»n truy cập';
+$labels['username'] = 'NgÆ°á»i dùng:';
+$labels['newuser'] = 'Thêm bài viết';
+$labels['anyone'] = 'Tất cả ngÆ°á»i dùng (bất kỳ ai)';
+$labels['anonymous'] = 'Khách (vô hình)';
+$labels['acll'] = 'Tìm kiếm';
+$labels['shortacll'] = 'Tìm kiếm';
+$labels['aclr'] = 'Äá»c thÆ°';
+$labels['acli'] = 'CheÌ€n thêm (sao cheÌp vaÌ€o)';
+$labels['aclp'] = 'Äăng bài';
+$labels['shortaclp'] = 'Äăng bài';
+$labels['aclc'] = 'Khởi tạo thư mục con';
+$labels['aclk'] = 'Khởi tạo thư mục con';
+$labels['acld'] = 'Xóa thư';
+$labels['aclt'] = 'Xóa thư';
+$labels['aclx'] = 'Xóa folder';
+$labels['acla'] = 'Quản lý';
+$labels['shortacla'] = 'Quản lý';
+$labels['aclfull'] = 'Quản lý toàn bộ';
+$labels['aclother'] = 'Loại khác';
+$labels['shortaclother'] = 'Loại khác';
+$labels['aclread'] = 'Äá»c';
+$labels['shortaclr'] = 'Äá»c';
+$labels['shortaclread'] = 'Äá»c';
+$labels['aclwrite'] = 'Viết';
+$labels['shortaclw'] = 'Viết';
+$labels['shortaclwrite'] = 'Viết';
+$labels['acldelete'] = 'Xoá';
+$labels['shortacld'] = 'Xoá';
+$labels['shortaclt'] = 'Xoá';
+$labels['shortacldelete'] = 'Xoá';
+$labels['shortacls'] = 'Giữ';
+$labels['shortacli'] = 'Chèn';
+$labels['shortaclc'] = 'Tạo mới';
+$labels['shortaclk'] = 'Tạo mới';
+$labels['longacll'] = 'ThÆ° muÌ£c coÌ sẵn trong danh saÌch vaÌ€ coÌ thể gửi tÆ¡Ìi';
+$labels['longaclr'] = 'Folder có thể được mở để Ä‘á»c';
+$labels['longaclread'] = 'Folder có thể được mở để Ä‘á»c';
+$labels['longacli'] = 'Thư có thể được ghi hoặc sao chép tới thư mục';
+$labels['longaclp'] = 'ThÆ° coÌ thể';
+$labels['longaclc'] = 'Cácthư mục có thể được tạo (hoặc đặt lại tên) trực tiếp dưới thư mục này';
+$labels['longaclk'] = 'Cácthư mục có thể được tạo (hoặc đặt lại tên) trực tiếp dưới thư mục này';
+$labels['longaclx'] = 'Folder có thể xóa được hoặc đặt lại tên';
+$labels['longacla'] = 'Quyênf truy cập folder có thể thay đổi';
+$labels['longaclfull'] = 'Quản lý toàn bộ bao gồm cả thư mục hành chính';
+$labels['longaclwrite'] = 'Thư có thể được đánh dấu, ghi hoăc sao chép tới thư mục';
+$labels['longacldelete'] = 'Thư có thể bị xóa';
+$labels['deleting'] = 'Xóa quyá»n truy cập...';
+$labels['saving'] = 'LÆ°u quyá»n truy cập...';
+$labels['updatesuccess'] = 'Thay đổi quyá»n truy cập thành công...';
+$labels['deletesuccess'] = 'Xóa quyá»n truy cập thành công...';
+$labels['createsuccess'] = 'Thêm quyá»n truy cập thành công...';
+$labels['deleteerror'] = 'Khôngthể xóa quyá»n truy cập';
+$labels['deleteconfirm'] = 'Bạn có chắc là muốn xóa bá» quyá»n truy cập của ngÆ°á»i dùng được chá»n?';
+
diff --git a/plugins/acl/localization/zh_TW.inc b/plugins/acl/localization/zh_TW.inc
new file mode 100644
index 000000000..c58296ac9
--- /dev/null
+++ b/plugins/acl/localization/zh_TW.inc
@@ -0,0 +1,80 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/zh_TW/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Nansen |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['sharing'] = '分享';
+$labels['myrights'] = 'å­˜å–權é™';
+$labels['username'] = '使用者:';
+$labels['advanced'] = '進階模å¼';
+$labels['newuser'] = '新增項目';
+$labels['actions'] = '權é™è¨­å®š';
+$labels['anyone'] = '所有使用者 (anyone)';
+$labels['anonymous'] = '訪客 (anonymous)';
+$labels['identifier'] = '識別';
+$labels['acll'] = '尋找';
+$labels['shortacll'] = '尋找';
+$labels['aclr'] = '讀å–訊æ¯';
+$labels['aclw'] = '寫入標幟';
+$labels['aclp'] = '發表';
+$labels['shortaclp'] = '發表';
+$labels['aclc'] = '建立å­è³‡æ–™å¤¾';
+$labels['aclk'] = '建立å­è³‡æ–™å¤¾';
+$labels['acld'] = '刪除訊æ¯';
+$labels['aclt'] = '刪除訊æ¯';
+$labels['acle'] = '刪去';
+$labels['shortacle'] = '刪去';
+$labels['aclx'] = '刪除資料夾';
+$labels['acla'] = '管ç†è€…';
+$labels['shortacla'] = '管ç†è€…';
+$labels['aclfull'] = '完全控制';
+$labels['aclother'] = '其它';
+$labels['shortaclother'] = '其它';
+$labels['aclread'] = '讀å–';
+$labels['shortaclr'] = '讀å–';
+$labels['shortaclread'] = '讀å–';
+$labels['aclwrite'] = '寫入';
+$labels['shortaclw'] = '寫入';
+$labels['shortaclwrite'] = '寫入';
+$labels['acldelete'] = '刪除';
+$labels['shortacld'] = '刪除';
+$labels['shortaclt'] = '刪除';
+$labels['shortacldelete'] = '刪除';
+$labels['shortacls'] = 'ä¿å­˜';
+$labels['shortacli'] = 'æ’å…¥';
+$labels['shortaclc'] = '建立';
+$labels['shortaclk'] = '建立';
+$labels['shortaclx'] = '資料夾刪除';
+$labels['longaclr'] = '資料夾能被打開與讀å–';
+$labels['longaclread'] = '資料夾能被打開與讀å–';
+$labels['longacls'] = '能修改訊æ¯æ¨™å¹Ÿ';
+$labels['longacli'] = '訊æ¯èƒ½å¯«å…¥æˆ–複製到資料夾';
+$labels['longaclp'] = '訊æ¯èƒ½è¢«æŠ•éžåˆ°é€™å€‹è³‡æ–™å¤¾';
+$labels['longacld'] = '能修改訊æ¯åˆªé™¤æ¨™å¹Ÿ';
+$labels['longaclt'] = '能修改訊æ¯åˆªé™¤æ¨™å¹Ÿ';
+$labels['longacle'] = '能抹除訊æ¯';
+$labels['longaclx'] = '資料夾能被刪除或é‡æ–°å‘½å';
+$labels['longacla'] = '能變更資料夾權é™';
+$labels['longaclfull'] = '完全控制包å«è³‡æ–™å¤¾ç®¡ç†è€…';
+$labels['longacldelete'] = '訊æ¯èƒ½è¢«åˆªé™¤';
+$labels['deleting'] = '刪除權é™...';
+$labels['saving'] = '儲存權é™...';
+$labels['updatesuccess'] = '權é™è®Šæ›´å®Œæˆ';
+$labels['deletesuccess'] = '權é™åˆªé™¤å®Œæˆ';
+$labels['createsuccess'] = '權é™æ–°å¢žå®Œæˆ';
+$labels['updateerror'] = '無法更新權é™';
+$labels['deleteerror'] = '無法刪除權é™';
+$labels['createerror'] = '無法新增權é™';
+$labels['deleteconfirm'] = '您確定è¦åˆªé™¤æ‰€é¸å–使用者的權é™å—Ž?';
+
diff --git a/plugins/acl/package.xml b/plugins/acl/package.xml
index 7ea0f3297..e5d411e18 100644
--- a/plugins/acl/package.xml
+++ b/plugins/acl/package.xml
@@ -13,9 +13,9 @@
<email>alec@alec.pl</email>
<active>yes</active>
</lead>
- <date>2012-03-13</date>
+ <date>2012-06-28</date>
<version>
- <release>0.8</release>
+ <release>1.0</release>
<api>0.7</api>
</version>
<stability>
@@ -38,10 +38,10 @@
<file name="localization/de_DE.inc" role="data"></file>
<file name="localization/en_US.inc" role="data"></file>
<file name="localization/pl_PL.inc" role="data"></file>
- <file name="skins/default/acl.css" role="data"></file>
- <file name="skins/default/images/enabled.png" role="data"></file>
- <file name="skins/default/images/partial.png" role="data"></file>
- <file name="skins/default/templates/table.html" role="data"></file>
+ <file name="skins/classic/acl.css" role="data"></file>
+ <file name="skins/classic/images/enabled.png" role="data"></file>
+ <file name="skins/classic/images/partial.png" role="data"></file>
+ <file name="skins/classic/templates/table.html" role="data"></file>
<file name="skins/larry/acl.css" role="data"></file>
<file name="skins/larry/images/enabled.png" role="data"></file>
<file name="skins/larry/images/partial.png" role="data"></file>
diff --git a/plugins/acl/skins/default/acl.css b/plugins/acl/skins/classic/acl.css
index cf3391f49..cf3391f49 100644
--- a/plugins/acl/skins/default/acl.css
+++ b/plugins/acl/skins/classic/acl.css
diff --git a/plugins/acl/skins/default/images/enabled.png b/plugins/acl/skins/classic/images/enabled.png
index 98215f68c..98215f68c 100644
--- a/plugins/acl/skins/default/images/enabled.png
+++ b/plugins/acl/skins/classic/images/enabled.png
Binary files differ
diff --git a/plugins/acl/skins/default/images/partial.png b/plugins/acl/skins/classic/images/partial.png
index 12023f057..12023f057 100644
--- a/plugins/acl/skins/default/images/partial.png
+++ b/plugins/acl/skins/classic/images/partial.png
Binary files differ
diff --git a/plugins/acl/skins/default/templates/table.html b/plugins/acl/skins/classic/templates/table.html
index 2365ef757..bca63d0b3 100644
--- a/plugins/acl/skins/default/templates/table.html
+++ b/plugins/acl/skins/classic/templates/table.html
@@ -11,20 +11,16 @@
<div class="boxfooter">
<roundcube:button command="acl-create" id="aclcreatelink" type="link" title="acl.newuser" class="buttonPas addgroup" classAct="button addgroup" content=" " />
<roundcube:button name="aclmenulink" id="aclmenulink" type="link" title="acl.actions" class="button groupactions" onclick="show_aclmenu(); return false" content=" " />
- <roundcube:if condition="!in_array('acl_advanced_mode', (array)config:dont_override)" />
- <div id="acladvswitch" class="pagenav">
- <span><label for="acl-switch"><roundcube:label name="acl.advanced" /></label>
- <input type="checkbox" id="acl-switch" onclick="rcmail.command('acl-mode-switch')"<roundcube:exp expression="config:acl_advanced_mode == true ? ' checked=checked' : ''" /> />
- </span>
- </div>
- <roundcube:endif />
</div>
</div>
-<div id="aclmenu" class="popupmenu">
+<div id="aclmenu" class="popupmenu selectable">
<ul>
<li><roundcube:button command="acl-edit" label="edit" classAct="active" /></li>
<li><roundcube:button command="acl-delete" label="delete" classAct="active" /></li>
+ <roundcube:if condition="!in_array('acl_advanced_mode', (array)config:dont_override)" />
+ <li><roundcube:button name="acl-switch" id="acl-switch" label="acl.advanced" onclick="rcmail.command('acl-mode-switch')" class="active" /></li>
+ <roundcube:endif />
</ul>
</div>
diff --git a/plugins/acl/skins/larry/acl.css b/plugins/acl/skins/larry/acl.css
index 658480e40..5e2448efd 100644
--- a/plugins/acl/skins/larry/acl.css
+++ b/plugins/acl/skins/larry/acl.css
@@ -79,21 +79,21 @@
#acltable tbody tr.selected td.partial
{
- background-color: #019bc6;
- background-image: url(images/partial.png), -moz-linear-gradient(top, #019bc6 0%, #017cb4 100%);
- background-image: url(images/partial.png), -webkit-gradient(linear, left top, left bottom, color-stop(0%,#019bc6), color-stop(100%,#017cb4));
- background-image: url(images/partial.png), -o-linear-gradient(top, #019bc6 0%, #017cb4 100%);
- background-image: url(images/partial.png), -ms-linear-gradient(top, #019bc6 0%, #017cb4 100%);
+ background-color: #019bc6;
+ background-image: url(images/partial.png), -moz-linear-gradient(top, #019bc6 0%, #017cb4 100%);
+ background-image: url(images/partial.png), -webkit-gradient(linear, left top, left bottom, color-stop(0%,#019bc6), color-stop(100%,#017cb4));
+ background-image: url(images/partial.png), -o-linear-gradient(top, #019bc6 0%, #017cb4 100%);
+ background-image: url(images/partial.png), -ms-linear-gradient(top, #019bc6 0%, #017cb4 100%);
background-image: url(images/partial.png), linear-gradient(top, #019bc6 0%, #017cb4 100%);
}
#acltable tbody tr.selected td.enabled
{
- background-color: #019bc6;
- background-image: url(images/enabled.png), -moz-linear-gradient(top, #019bc6 0%, #017cb4 100%);
- background-image: url(images/enabled.png), -webkit-gradient(linear, left top, left bottom, color-stop(0%,#019bc6), color-stop(100%,#017cb4));
- background-image: url(images/enabled.png), -o-linear-gradient(top, #019bc6 0%, #017cb4 100%);
- background-image: url(images/enabled.png), -ms-linear-gradient(top, #019bc6 0%, #017cb4 100%);
+ background-color: #019bc6;
+ background-image: url(images/enabled.png), -moz-linear-gradient(top, #019bc6 0%, #017cb4 100%);
+ background-image: url(images/enabled.png), -webkit-gradient(linear, left top, left bottom, color-stop(0%,#019bc6), color-stop(100%,#017cb4));
+ background-image: url(images/enabled.png), -o-linear-gradient(top, #019bc6 0%, #017cb4 100%);
+ background-image: url(images/enabled.png), -ms-linear-gradient(top, #019bc6 0%, #017cb4 100%);
background-image: url(images/enabled.png), linear-gradient(top, #019bc6 0%, #017cb4 100%);
}
diff --git a/plugins/acl/skins/larry/templates/table.html b/plugins/acl/skins/larry/templates/table.html
index c8dff81b1..7f99f6ffe 100644
--- a/plugins/acl/skins/larry/templates/table.html
+++ b/plugins/acl/skins/larry/templates/table.html
@@ -4,19 +4,16 @@
</div>
<div id="acllist-footer" class="boxfooter">
<roundcube:button command="acl-create" id="aclcreatelink" type="link" title="acl.newuser" class="listbutton add disabled" classAct="listbutton add" innerClass="inner" content="+" /><roundcube:button name="aclmenulink" id="aclmenulink" type="link" title="acl.actions" class="listbutton groupactions"onclick="UI.show_popup('aclmenu');return false" innerClass="inner" content="&#9881;" />
- <roundcube:if condition="!in_array('acl_advanced_mode', (array)config:dont_override)" />
- <span class="countdisplay" style="display: inline">
- <label for="acl-switch"><roundcube:label name="acl.advanced" /></label>
- <input type="checkbox" id="acl-switch" onclick="rcmail.command('acl-mode-switch')"<roundcube:exp expression="config:acl_advanced_mode == true ? ' checked=checked' : ''" /> />
- </span>
- <roundcube:endif />
</div>
</div>
<div id="aclmenu" class="popupmenu">
- <ul class="toolbarmenu">
+ <ul class="toolbarmenu selectable">
<li><roundcube:button command="acl-edit" label="edit" classAct="active" /></li>
<li><roundcube:button command="acl-delete" label="delete" classAct="active" /></li>
+ <roundcube:if condition="!in_array('acl_advanced_mode', (array)config:dont_override)" />
+ <li><roundcube:button name="acl-switch" id="acl-switch" label="acl.advanced" onclick="rcmail.command('acl-mode-switch')" class="active" /></li>
+ <roundcube:endif />
</ul>
</div>
diff --git a/plugins/archive/localization/cs_CZ.inc b/plugins/archive/localization/cs_CZ.inc
index bb257bca0..28a41913b 100644
--- a/plugins/archive/localization/cs_CZ.inc
+++ b/plugins/archive/localization/cs_CZ.inc
@@ -1,25 +1,21 @@
<?php
/*
-
-+-----------------------------------------------------------------------+
-| language/cs_CZ/labels.inc |
-| |
-| Language file of the Roundcube archive plugin |
-| Copyright (C) 2005-2009, The Roundcube Dev Team |
-| Licensed under the GNU GPL |
-| |
-+-----------------------------------------------------------------------+
-| Author: Milan Kozak <hodza@hodza.net> |
-+-----------------------------------------------------------------------+
-
-@version $Id: labels.inc 2993 2009-09-26 18:32:07Z alec $
-
+ +-----------------------------------------------------------------------+
+ | localization/cs_CZ/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
*/
$labels = array();
+$labels['buttontext'] = 'Archiv';
+$labels['archivefolder'] = 'Archiv';
$labels['buttontitle'] = 'Archivovat zprávu';
$labels['archived'] = 'Úspěšně vloženo do archivu';
-$labels['archivefolder'] = 'Archiv';
-?>
diff --git a/plugins/archive/localization/de_CH.inc b/plugins/archive/localization/de_CH.inc
index 2ed0f5ac8..bae441305 100644
--- a/plugins/archive/localization/de_CH.inc
+++ b/plugins/archive/localization/de_CH.inc
@@ -1,8 +1,21 @@
<?php
+/*
+ +-----------------------------------------------------------------------+
+ | localization/de_CH/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+
$labels = array();
+$labels['buttontext'] = 'Archiv';
+$labels['archivefolder'] = 'Archiv';
$labels['buttontitle'] = 'Nachricht archivieren';
$labels['archived'] = 'Nachricht erfolgreich archiviert';
-$labels['archivefolder'] = 'Archiv';
-?>
diff --git a/plugins/archive/localization/de_DE.inc b/plugins/archive/localization/de_DE.inc
index 2ed0f5ac8..c525837fd 100644
--- a/plugins/archive/localization/de_DE.inc
+++ b/plugins/archive/localization/de_DE.inc
@@ -1,8 +1,21 @@
<?php
+/*
+ +-----------------------------------------------------------------------+
+ | localization/de_DE/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+
$labels = array();
+$labels['buttontext'] = 'Archiv';
+$labels['archivefolder'] = 'Archiv';
$labels['buttontitle'] = 'Nachricht archivieren';
$labels['archived'] = 'Nachricht erfolgreich archiviert';
-$labels['archivefolder'] = 'Archiv';
-?>
diff --git a/plugins/archive/localization/es_AR.inc b/plugins/archive/localization/es_AR.inc
index 7d021f561..39466a980 100644
--- a/plugins/archive/localization/es_AR.inc
+++ b/plugins/archive/localization/es_AR.inc
@@ -1,10 +1,21 @@
<?php
-// MPBAUPGRADE
+/*
+ +-----------------------------------------------------------------------+
+ | localization/es_AR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
$labels = array();
+$labels['buttontext'] = 'Archivo';
+$labels['archivefolder'] = 'Archivo';
$labels['buttontitle'] = 'Archivar este mensaje';
$labels['archived'] = 'Mensaje Archivado';
-$labels['archivefolder'] = 'Archivo';
-?>
diff --git a/plugins/archive/localization/es_ES.inc b/plugins/archive/localization/es_ES.inc
index 7d021f561..7cd5917c6 100644
--- a/plugins/archive/localization/es_ES.inc
+++ b/plugins/archive/localization/es_ES.inc
@@ -1,10 +1,21 @@
<?php
-// MPBAUPGRADE
+/*
+ +-----------------------------------------------------------------------+
+ | localization/es_ES/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
$labels = array();
+$labels['buttontext'] = 'Archivo';
+$labels['archivefolder'] = 'Archivo';
$labels['buttontitle'] = 'Archivar este mensaje';
$labels['archived'] = 'Mensaje Archivado';
-$labels['archivefolder'] = 'Archivo';
-?>
diff --git a/plugins/archive/localization/et_EE.inc b/plugins/archive/localization/et_EE.inc
index e3968d755..53e9b2504 100644
--- a/plugins/archive/localization/et_EE.inc
+++ b/plugins/archive/localization/et_EE.inc
@@ -1,8 +1,21 @@
<?php
+/*
+ +-----------------------------------------------------------------------+
+ | localization/et_EE/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+
$labels = array();
+$labels['buttontext'] = 'Arhiveeri';
+$labels['archivefolder'] = 'Arhiveeri';
$labels['buttontitle'] = 'Arhiveeri see kiri';
$labels['archived'] = 'Edukalt arhiveeritud';
-$labels['archivefolder'] = 'Arhiveeri';
-?>
diff --git a/plugins/archive/localization/fr_FR.inc b/plugins/archive/localization/fr_FR.inc
index 498a091fe..35434dac1 100644
--- a/plugins/archive/localization/fr_FR.inc
+++ b/plugins/archive/localization/fr_FR.inc
@@ -1,8 +1,21 @@
<?php
+/*
+ +-----------------------------------------------------------------------+
+ | localization/fr_FR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+
$labels = array();
+$labels['buttontext'] = 'Archive';
+$labels['archivefolder'] = 'Archive';
$labels['buttontitle'] = 'Archiver ce message';
$labels['archived'] = 'Message archivé avec success';
-$labels['archivefolder'] = 'Archive';
-?>
diff --git a/plugins/archive/localization/gl_ES.inc b/plugins/archive/localization/gl_ES.inc
index 6f580f844..1e6c620f9 100644
--- a/plugins/archive/localization/gl_ES.inc
+++ b/plugins/archive/localization/gl_ES.inc
@@ -9,13 +9,13 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: ghas <Unknown> |
+ | Author: Thomas |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
-$labels['buttontitle'] = 'Arquivar esta mensaxe';
-$labels['archived'] = 'Arquivado correctamente';
+$labels['buttontext'] = 'Arquivo';
$labels['archivefolder'] = 'Arquivo';
+$labels['buttontitle'] = 'Arquivar esta mensaxe';
+$labels['archived'] = 'Aquivouse a mensaxe';
diff --git a/plugins/archive/localization/hy_AM.inc b/plugins/archive/localization/hy_AM.inc
new file mode 100644
index 000000000..ff29d198c
--- /dev/null
+++ b/plugins/archive/localization/hy_AM.inc
@@ -0,0 +1,21 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/hy_AM/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Vahan Yerkanian <vahan@yerkanian.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['buttontext'] = 'Ô±Ö€Õ­Õ«Õ¾';
+$labels['archivefolder'] = 'Ô±Ö€Õ­Õ«Õ¾';
+$labels['buttontitle'] = 'Ô±Ö€Õ­Õ«Õ¾Õ¡ÖÕ¶Õ¥Õ¬ Õ¡ÕµÕ½ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨';
+$labels['archived'] = 'Ô²Õ¡Ö€Õ¥Õ°Õ¡Õ»Õ¸Õ² Õ¡Ö€Õ­Õ«Õ¾Õ¡ÖÕ¾Õ¥Ö';
+
diff --git a/plugins/archive/localization/ja_JP.inc b/plugins/archive/localization/ja_JP.inc
index 647f70f9f..1de4de0d1 100644
--- a/plugins/archive/localization/ja_JP.inc
+++ b/plugins/archive/localization/ja_JP.inc
@@ -9,13 +9,13 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Takahiro Kambe <Unknown> |
+ | Author: Takahiro Kambe |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
+$labels['buttontext'] = 'アーカイブ';
+$labels['archivefolder'] = 'アーカイブ';
$labels['buttontitle'] = 'ã“ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’アーカイブ';
$labels['archived'] = 'アーカイブã—ã¾ã—ãŸã€‚';
-$labels['archivefolder'] = 'アーカイブ';
diff --git a/plugins/archive/localization/ko_KR.inc b/plugins/archive/localization/ko_KR.inc
new file mode 100644
index 000000000..b067356a6
--- /dev/null
+++ b/plugins/archive/localization/ko_KR.inc
@@ -0,0 +1,21 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ko_KR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Kim, Woohyun <woohyun.kim@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['buttontext'] = 'ë³´ê´€';
+$labels['archivefolder'] = 'ë³´ê´€';
+$labels['buttontitle'] = 'ì´ ë©”ì‹œì§€ë¥¼ ë³´ê´€';
+$labels['archived'] = '성공ì ìœ¼ë¡œ ë³´ê´€ ë¨';
+
diff --git a/plugins/archive/localization/nl_NL.inc b/plugins/archive/localization/nl_NL.inc
index 0d47f7b9c..44f671239 100644
--- a/plugins/archive/localization/nl_NL.inc
+++ b/plugins/archive/localization/nl_NL.inc
@@ -1,8 +1,21 @@
<?php
+/*
+ +-----------------------------------------------------------------------+
+ | localization/nl_NL/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+
$labels = array();
+$labels['buttontext'] = 'Archief';
+$labels['archivefolder'] = 'Archief';
$labels['buttontitle'] = 'Archiveer dit bericht';
$labels['archived'] = 'Succesvol gearchiveerd';
-$labels['archivefolder'] = 'Archief';
-?>
diff --git a/plugins/archive/localization/pl_PL.inc b/plugins/archive/localization/pl_PL.inc
index c0d58d311..1e6ff0b44 100644
--- a/plugins/archive/localization/pl_PL.inc
+++ b/plugins/archive/localization/pl_PL.inc
@@ -9,13 +9,13 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: Thomas |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
+$labels['buttontext'] = 'Archiwum';
+$labels['archivefolder'] = 'Archiwum';
$labels['buttontitle'] = 'PrzenieÅ› do archiwum';
$labels['archived'] = 'Pomyślnie zarchiwizowano';
-$labels['archivefolder'] = 'Archiwum';
diff --git a/plugins/archive/localization/pt_BR.inc b/plugins/archive/localization/pt_BR.inc
index 224f53caa..1991290eb 100644
--- a/plugins/archive/localization/pt_BR.inc
+++ b/plugins/archive/localization/pt_BR.inc
@@ -1,8 +1,21 @@
<?php
+/*
+ +-----------------------------------------------------------------------+
+ | localization/pt_BR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+
$labels = array();
+$labels['buttontext'] = 'Arquivo';
+$labels['archivefolder'] = 'Arquivo';
$labels['buttontitle'] = 'Arquivar esta mensagem';
$labels['archived'] = 'Arquivada com sucesso';
-$labels['archivefolder'] = 'Arquivo';
-?>
diff --git a/plugins/archive/localization/ru_RU.inc b/plugins/archive/localization/ru_RU.inc
index e377ad017..6fd1dab28 100644
--- a/plugins/archive/localization/ru_RU.inc
+++ b/plugins/archive/localization/ru_RU.inc
@@ -1,8 +1,21 @@
<?php
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ru_RU/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+
$labels = array();
+$labels['buttontext'] = 'Ðрхив';
+$labels['archivefolder'] = 'Ðрхив';
$labels['buttontitle'] = 'ПеремеÑтить выбранное в архив';
$labels['archived'] = 'ПеренеÑено в Ðрхив';
-$labels['archivefolder'] = 'Ðрхив';
-?>
diff --git a/plugins/archive/localization/sr_CS.inc b/plugins/archive/localization/sr_CS.inc
new file mode 100644
index 000000000..81128c4ca
--- /dev/null
+++ b/plugins/archive/localization/sr_CS.inc
@@ -0,0 +1,21 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sr_CS/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Saša Zejnilović <zejnils@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['buttontext'] = 'Arhiva';
+$labels['archivefolder'] = 'Arhiva';
+$labels['buttontitle'] = 'Arhivirati ovu poruku';
+$labels['archived'] = 'Uspěšno arhivirano';
+
diff --git a/plugins/archive/localization/sv_SE.inc b/plugins/archive/localization/sv_SE.inc
index c55da7aaf..13d0cf007 100644
--- a/plugins/archive/localization/sv_SE.inc
+++ b/plugins/archive/localization/sv_SE.inc
@@ -1,8 +1,21 @@
<?php
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sv_SE/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Jonas Nasholm |
+ +-----------------------------------------------------------------------+
+*/
+
$labels = array();
+$labels['buttontext'] = 'Arkiv';
+$labels['archivefolder'] = 'Arkiv';
$labels['buttontitle'] = 'Arkivera meddelande';
$labels['archived'] = 'Meddelandet är arkiverat';
-$labels['archivefolder'] = 'Arkiv';
-?>
diff --git a/plugins/archive/localization/zh_TW.inc b/plugins/archive/localization/zh_TW.inc
index 5cccebbdc..0f6e9b943 100644
--- a/plugins/archive/localization/zh_TW.inc
+++ b/plugins/archive/localization/zh_TW.inc
@@ -1,8 +1,21 @@
<?php
+/*
+ +-----------------------------------------------------------------------+
+ | localization/zh_TW/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+
$labels = array();
+$labels['buttontext'] = 'å°å­˜';
+$labels['archivefolder'] = 'å°å­˜';
$labels['buttontitle'] = 'å°å­˜æ­¤ä¿¡ä»¶';
$labels['archived'] = 'å·²æˆåŠŸå°å­˜';
-$labels['archivefolder'] = 'å°å­˜';
-?>
diff --git a/plugins/archive/package.xml b/plugins/archive/package.xml
index 0d02b2d41..1aeffaf41 100644
--- a/plugins/archive/package.xml
+++ b/plugins/archive/package.xml
@@ -50,9 +50,9 @@
<file name="localization/ru_RU.inc" role="data"></file>
<file name="localization/sv_SE.inc" role="data"></file>
<file name="localization/zh_TW.inc" role="data"></file>
- <file name="skins/default/archive_act.png" role="data"></file>
- <file name="skins/default/archive_pas.png" role="data"></file>
- <file name="skins/default/foldericon.png" role="data"></file>
+ <file name="skins/classic/archive_act.png" role="data"></file>
+ <file name="skins/classic/archive_pas.png" role="data"></file>
+ <file name="skins/classic/foldericon.png" role="data"></file>
</dir>
<!-- / -->
</contents>
diff --git a/plugins/archive/skins/default/archive.css b/plugins/archive/skins/classic/archive.css
index 9cd221549..3880fe3da 100644
--- a/plugins/archive/skins/default/archive.css
+++ b/plugins/archive/skins/classic/archive.css
@@ -1,6 +1,6 @@
#messagetoolbar a.button.archive {
- text-indent: -1000px;
+ text-indent: -5000px;
background: url(archive_act.png) 0 0 no-repeat;
}
diff --git a/plugins/archive/skins/default/archive_act.png b/plugins/archive/skins/classic/archive_act.png
index 2a1735868..2a1735868 100644
--- a/plugins/archive/skins/default/archive_act.png
+++ b/plugins/archive/skins/classic/archive_act.png
Binary files differ
diff --git a/plugins/archive/skins/default/archive_pas.png b/plugins/archive/skins/classic/archive_pas.png
index 8de208583..8de208583 100644
--- a/plugins/archive/skins/default/archive_pas.png
+++ b/plugins/archive/skins/classic/archive_pas.png
Binary files differ
diff --git a/plugins/archive/skins/default/foldericon.png b/plugins/archive/skins/classic/foldericon.png
index ec0853c44..ec0853c44 100644
--- a/plugins/archive/skins/default/foldericon.png
+++ b/plugins/archive/skins/classic/foldericon.png
Binary files differ
diff --git a/plugins/enigma/enigma.php b/plugins/enigma/enigma.php
index fb7c98635..22afc901d 100644
--- a/plugins/enigma/enigma.php
+++ b/plugins/enigma/enigma.php
@@ -435,7 +435,7 @@ class enigma extends rcube_plugin
'href' => "#",
'onclick' => "return ".JS_OBJECT_NAME.".enigma_import_attachment('".JQ($part)."')",
'title' => $this->gettext('keyattimport')),
- html::img(array('src' => $this->url('skins/default/key_add.png'), 'style' => "vertical-align:middle")))
+ html::img(array('src' => $this->url('skins/classic/key_add.png'), 'style' => "vertical-align:middle")))
. ' ' . html::span(null, $this->gettext('keyattfound')));
$attach_script = true;
diff --git a/plugins/enigma/lib/enigma_ui.php b/plugins/enigma/lib/enigma_ui.php
index 5901b58d9..9c32f2faf 100644
--- a/plugins/enigma/lib/enigma_ui.php
+++ b/plugins/enigma/lib/enigma_ui.php
@@ -129,7 +129,7 @@ class enigma_ui
$this->rc->output->set_env('contentframe', $attrib['name']);
$this->rc->output->set_env('blankpage', $attrib['src'] ?
- $this->rc->output->abs_url($attrib['src']) : 'program/blank.gif');
+ $this->rc->output->abs_url($attrib['src']) : 'program/resources/blank.gif');
return html::tag('iframe', $attrib);
}
diff --git a/plugins/enigma/skins/default/enigma.css b/plugins/enigma/skins/classic/enigma.css
index b1c656f82..b1c656f82 100644
--- a/plugins/enigma/skins/default/enigma.css
+++ b/plugins/enigma/skins/classic/enigma.css
diff --git a/plugins/enigma/skins/default/enigma.png b/plugins/enigma/skins/classic/enigma.png
index 3ef106e2a..3ef106e2a 100644
--- a/plugins/enigma/skins/default/enigma.png
+++ b/plugins/enigma/skins/classic/enigma.png
Binary files differ
diff --git a/plugins/enigma/skins/default/enigma_error.png b/plugins/enigma/skins/classic/enigma_error.png
index 9bf100efd..9bf100efd 100644
--- a/plugins/enigma/skins/default/enigma_error.png
+++ b/plugins/enigma/skins/classic/enigma_error.png
Binary files differ
diff --git a/plugins/enigma/skins/default/key.png b/plugins/enigma/skins/classic/key.png
index ea1cbd11c..ea1cbd11c 100644
--- a/plugins/enigma/skins/default/key.png
+++ b/plugins/enigma/skins/classic/key.png
Binary files differ
diff --git a/plugins/enigma/skins/default/key_add.png b/plugins/enigma/skins/classic/key_add.png
index f22cc870a..f22cc870a 100644
--- a/plugins/enigma/skins/default/key_add.png
+++ b/plugins/enigma/skins/classic/key_add.png
Binary files differ
diff --git a/plugins/enigma/skins/default/keys_toolbar.png b/plugins/enigma/skins/classic/keys_toolbar.png
index 7cc258cc8..7cc258cc8 100644
--- a/plugins/enigma/skins/default/keys_toolbar.png
+++ b/plugins/enigma/skins/classic/keys_toolbar.png
Binary files differ
diff --git a/plugins/enigma/skins/default/templates/keyimport.html b/plugins/enigma/skins/classic/templates/keyimport.html
index 4e0b304a5..4e0b304a5 100644
--- a/plugins/enigma/skins/default/templates/keyimport.html
+++ b/plugins/enigma/skins/classic/templates/keyimport.html
diff --git a/plugins/enigma/skins/default/templates/keyinfo.html b/plugins/enigma/skins/classic/templates/keyinfo.html
index 2e8ed61db..2e8ed61db 100644
--- a/plugins/enigma/skins/default/templates/keyinfo.html
+++ b/plugins/enigma/skins/classic/templates/keyinfo.html
diff --git a/plugins/enigma/skins/default/templates/keys.html b/plugins/enigma/skins/classic/templates/keys.html
index 810c4a211..4271eccb7 100644
--- a/plugins/enigma/skins/default/templates/keys.html
+++ b/plugins/enigma/skins/classic/templates/keys.html
@@ -6,7 +6,7 @@
<link rel="stylesheet" type="text/css" href="/this/enigma.css" />
<script type="text/javascript" src="/functions.js"></script>
<script type="text/javascript" src="/splitter.js"></script>
-<style type="text/css">
+<style type="text/css">
#enigmakeyslist { width: <roundcube:exp expression="!empty(cookie:enigmaviewsplitter) ? cookie:enigmaviewsplitter-5 : 210" />px; }
#enigmacontent-box { left: <roundcube:exp expression="!empty(cookie:enigmaviewsplitter) ? cookie:enigmaviewsplitter+5 : 220" />px;
<roundcube:exp expression="browser:ie ? ('width:expression((parseInt(this.parentNode.offsetWidth)-'.(!empty(cookie:enigmaeviewsplitter) ? cookie:enigmaviewsplitter+5 : 220).')+\\'px\\');') : ''" />
diff --git a/plugins/help/help.php b/plugins/help/help.php
index ad7dbf0ba..1a76cbbda 100644
--- a/plugins/help/help.php
+++ b/plugins/help/help.php
@@ -42,12 +42,11 @@ class help extends rcube_plugin
'label' => 'help.help',
), 'taskbar');
- $skin = $rcmail->config->get('skin');
- if (!file_exists($this->home."/skins/$skin/help.css"))
- $skin = 'default';
-
- // add style for taskbar button (must be here) and Help UI
- $this->include_stylesheet("skins/$skin/help.css");
+ // add style for taskbar button (must be here) and Help UI
+ $skin_path = $this->local_skin_path();
+ if (is_file($this->home . "/$skin_path/help.css")) {
+ $this->include_stylesheet("$skin_path/help.css");
+ }
}
function action()
diff --git a/plugins/help/localization/bs_BA.inc b/plugins/help/localization/bs_BA.inc
new file mode 100644
index 000000000..714d4e775
--- /dev/null
+++ b/plugins/help/localization/bs_BA.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/bs_BA/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Kenan Dervišević <kenan3008@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['help'] = 'Pomoć';
+$labels['about'] = 'O programu';
+$labels['license'] = 'Licenca';
+
diff --git a/plugins/help/localization/ca_ES.inc b/plugins/help/localization/ca_ES.inc
new file mode 100644
index 000000000..bd45469cd
--- /dev/null
+++ b/plugins/help/localization/ca_ES.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ca_ES/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Jordi Sanfeliu <jordi@fibranet.cat> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['help'] = 'Ajuda';
+$labels['about'] = 'Quant a';
+$labels['license'] = 'Llicència';
+
diff --git a/plugins/help/localization/cy_GB.inc b/plugins/help/localization/cy_GB.inc
new file mode 100644
index 000000000..78969b9d2
--- /dev/null
+++ b/plugins/help/localization/cy_GB.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/cy_GB/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Dafydd Tomos |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['help'] = 'Cymorth';
+$labels['about'] = 'Amdan';
+$labels['license'] = 'Trwydded';
+
diff --git a/plugins/help/localization/de_CH.inc b/plugins/help/localization/de_CH.inc
new file mode 100644
index 000000000..ee9c78634
--- /dev/null
+++ b/plugins/help/localization/de_CH.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/de_CH/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['help'] = 'Hilfe';
+$labels['about'] = 'Information';
+$labels['license'] = 'Lizenz';
+
diff --git a/plugins/help/localization/fa_IR.inc b/plugins/help/localization/fa_IR.inc
new file mode 100644
index 000000000..5635d70bf
--- /dev/null
+++ b/plugins/help/localization/fa_IR.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/fa_IR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Hamid <abbaszadeh.h@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['help'] = 'راهنما';
+$labels['about'] = 'درباره';
+$labels['license'] = 'گواهینامه';
+
diff --git a/plugins/help/localization/fi_FI.inc b/plugins/help/localization/fi_FI.inc
new file mode 100644
index 000000000..3ca3da356
--- /dev/null
+++ b/plugins/help/localization/fi_FI.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/fi_FI/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Jiri Grönroos |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['help'] = 'Ohje';
+$labels['about'] = 'Tietoja';
+$labels['license'] = 'Lisenssi';
+
diff --git a/plugins/help/localization/he_IL.inc b/plugins/help/localization/he_IL.inc
new file mode 100644
index 000000000..105acbd16
--- /dev/null
+++ b/plugins/help/localization/he_IL.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/he_IL/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Moshe Leibovitch <moish@mln.co.il> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['help'] = 'עזרה';
+$labels['about'] = '×ודות';
+$labels['license'] = 'רשיון';
+
diff --git a/plugins/help/localization/hy_AM.inc b/plugins/help/localization/hy_AM.inc
new file mode 100644
index 000000000..7e56fda1b
--- /dev/null
+++ b/plugins/help/localization/hy_AM.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/hy_AM/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Vahan Yerkanian <vahan@yerkanian.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['help'] = 'Õ•Õ£Õ¶Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶';
+$labels['about'] = 'Õ†Õ¯Õ¡Ö€Õ¡Õ£Õ«Ö€';
+$labels['license'] = 'Ô±Ö€Õ¿Õ¸Õ¶Õ¡Õ£Õ«Ö€';
+
diff --git a/plugins/help/localization/ja_JP.inc b/plugins/help/localization/ja_JP.inc
index 18081bb7d..a41a3b103 100644
--- a/plugins/help/localization/ja_JP.inc
+++ b/plugins/help/localization/ja_JP.inc
@@ -1,10 +1,20 @@
<?php
-// EN-Revision: 3891
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ja_JP/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Takahiro Kambe |
+ +-----------------------------------------------------------------------+
+*/
$labels = array();
$labels['help'] = 'ヘルプ';
-$labels['about'] = '紹介';
+$labels['about'] = 'ã“ã®ãƒ—ログラムã«ã¤ã„ã¦';
$labels['license'] = 'ライセンス';
-?>
diff --git a/plugins/help/localization/ko_KR.inc b/plugins/help/localization/ko_KR.inc
new file mode 100644
index 000000000..c57dfa0f5
--- /dev/null
+++ b/plugins/help/localization/ko_KR.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ko_KR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Kim, Woohyun <woohyun.kim@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['help'] = 'ë„움ë§';
+$labels['about'] = 'ì •ë³´';
+$labels['license'] = 'ë¼ì´ì„¼ìŠ¤';
+
diff --git a/plugins/help/localization/lt_LT.inc b/plugins/help/localization/lt_LT.inc
new file mode 100644
index 000000000..a7a2b827d
--- /dev/null
+++ b/plugins/help/localization/lt_LT.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/lt_LT/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Rimas Kudelis <rq@akl.lt> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['help'] = 'Žinynas';
+$labels['about'] = 'Apie';
+$labels['license'] = 'Licencija';
+
diff --git a/plugins/help/localization/nl_NL.inc b/plugins/help/localization/nl_NL.inc
new file mode 100644
index 000000000..6fdf8d4cb
--- /dev/null
+++ b/plugins/help/localization/nl_NL.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/nl_NL/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Geert Wirken |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['help'] = 'Help';
+$labels['about'] = 'Over';
+$labels['license'] = 'Licentie';
+
diff --git a/plugins/help/localization/pt_PT.inc b/plugins/help/localization/pt_PT.inc
new file mode 100644
index 000000000..c28503b33
--- /dev/null
+++ b/plugins/help/localization/pt_PT.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/pt_PT/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: David |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['help'] = 'Ajuda';
+$labels['about'] = 'Sobre...';
+$labels['license'] = 'Licença';
+
diff --git a/plugins/help/localization/sk_SK.inc b/plugins/help/localization/sk_SK.inc
new file mode 100644
index 000000000..6fdacd1b6
--- /dev/null
+++ b/plugins/help/localization/sk_SK.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sk_SK/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: panda |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['help'] = 'Nápoveda';
+$labels['about'] = 'O aplikácii';
+$labels['license'] = 'Licencia';
+
diff --git a/plugins/help/localization/sl_SI.inc b/plugins/help/localization/sl_SI.inc
new file mode 100644
index 000000000..d72cd1838
--- /dev/null
+++ b/plugins/help/localization/sl_SI.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sl_SI/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Barbara Krasovec <barbarak@arnes.si> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['help'] = 'PomoÄ';
+$labels['about'] = 'Vizitka';
+$labels['license'] = 'Licenca';
+
diff --git a/plugins/help/localization/sr_CS.inc b/plugins/help/localization/sr_CS.inc
new file mode 100644
index 000000000..b0499f0ec
--- /dev/null
+++ b/plugins/help/localization/sr_CS.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sr_CS/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Saša Zejnilović <zejnils@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['help'] = 'Помоћ';
+$labels['about'] = 'Info';
+$labels['license'] = 'Licenca';
+
diff --git a/plugins/help/localization/tr_TR.inc b/plugins/help/localization/tr_TR.inc
new file mode 100644
index 000000000..306c1c462
--- /dev/null
+++ b/plugins/help/localization/tr_TR.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/tr_TR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: ismail yenigul |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['help'] = 'Yardım';
+$labels['about'] = 'Hakkında';
+$labels['license'] = 'Lisans';
+
diff --git a/plugins/help/localization/vi_VN.inc b/plugins/help/localization/vi_VN.inc
new file mode 100644
index 000000000..9c737464e
--- /dev/null
+++ b/plugins/help/localization/vi_VN.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/vi_VN/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Hung Pham <phamhung77@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['help'] = 'Trợ giúp';
+$labels['about'] = 'Giới thiệu';
+$labels['license'] = 'Bản quyá»n';
+
diff --git a/plugins/help/localization/zh_CN.inc b/plugins/help/localization/zh_CN.inc
new file mode 100644
index 000000000..da7b7a8c6
--- /dev/null
+++ b/plugins/help/localization/zh_CN.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/zh_CN/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Christopher Meng <cickumqt@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['help'] = '帮助';
+$labels['about'] = '关于';
+$labels['license'] = '许å¯åè®®';
+
diff --git a/plugins/help/package.xml b/plugins/help/package.xml
index 67e83fb06..2c4fd2cc8 100644
--- a/plugins/help/package.xml
+++ b/plugins/help/package.xml
@@ -33,9 +33,9 @@
<file name="content/about.html" role="data"></file>
<file name="content/license.html" role="data"></file>
<file name="config.inc.php.dist" role="data"></file>
- <file name="skins/default/help.css" role="data"></file>
- <file name="skins/default/help.gif" role="data"></file>
- <file name="skins/default/templates/help.html" role="data"></file>
+ <file name="skins/classic/help.css" role="data"></file>
+ <file name="skins/classic/help.gif" role="data"></file>
+ <file name="skins/classic/templates/help.html" role="data"></file>
<file name="localization/cs_CZ.inc" role="data"></file>
<file name="localization/da_DK.inc" role="data"></file>
<file name="localization/de_DE.inc" role="data"></file>
diff --git a/plugins/help/skins/default/help.css b/plugins/help/skins/classic/help.css
index 8f67f111e..8f67f111e 100644
--- a/plugins/help/skins/default/help.css
+++ b/plugins/help/skins/classic/help.css
diff --git a/plugins/help/skins/default/help.gif b/plugins/help/skins/classic/help.gif
index fe41e43c0..fe41e43c0 100644
--- a/plugins/help/skins/default/help.gif
+++ b/plugins/help/skins/classic/help.gif
Binary files differ
diff --git a/plugins/help/skins/default/templates/help.html b/plugins/help/skins/classic/templates/help.html
index 98beb6655..98beb6655 100644
--- a/plugins/help/skins/default/templates/help.html
+++ b/plugins/help/skins/classic/templates/help.html
diff --git a/plugins/help/skins/larry/help.css b/plugins/help/skins/larry/help.css
index eab80b5d9..20caa7a87 100644
--- a/plugins/help/skins/larry/help.css
+++ b/plugins/help/skins/larry/help.css
@@ -11,7 +11,7 @@
#helptoolbar {
position: absolute;
top: -6px;
- right: 0;
+ left: 0;
height: 40px;
white-space: nowrap;
}
diff --git a/plugins/hide_blockquote/localization/bs_BA.inc b/plugins/hide_blockquote/localization/bs_BA.inc
new file mode 100644
index 000000000..ae9bda580
--- /dev/null
+++ b/plugins/hide_blockquote/localization/bs_BA.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/bs_BA/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Kenan Dervišević <kenan3008@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'Sakrij';
+$labels['show'] = 'Prikaži';
+$labels['quotelimit'] = 'Sakrij citate kada je broj linija veći od';
+
diff --git a/plugins/hide_blockquote/localization/ca_ES.inc b/plugins/hide_blockquote/localization/ca_ES.inc
new file mode 100644
index 000000000..d8ca7c919
--- /dev/null
+++ b/plugins/hide_blockquote/localization/ca_ES.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ca_ES/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Jordi Sanfeliu <jordi@fibranet.cat> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'Amaga';
+$labels['show'] = 'Mostra';
+$labels['quotelimit'] = 'Amaga la cita quan el nombre de línies sigui més gran de';
+
diff --git a/plugins/hide_blockquote/localization/cs_CZ.inc b/plugins/hide_blockquote/localization/cs_CZ.inc
new file mode 100644
index 000000000..22b2e87e1
--- /dev/null
+++ b/plugins/hide_blockquote/localization/cs_CZ.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/cs_CZ/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Tomáš Kyzlink |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'Skrýt';
+$labels['show'] = 'Zobrazit';
+$labels['quotelimit'] = 'Skrýt citaci pokud je poÄet řádků vÄ›tší než';
+
diff --git a/plugins/hide_blockquote/localization/cy_GB.inc b/plugins/hide_blockquote/localization/cy_GB.inc
new file mode 100644
index 000000000..40b0ec207
--- /dev/null
+++ b/plugins/hide_blockquote/localization/cy_GB.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/cy_GB/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Dafydd Tomos |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'Cuddio';
+$labels['show'] = 'Dangos';
+$labels['quotelimit'] = 'Cuddio dyfynniad pan mae\'r nifer o linellau yn fwy na';
+
diff --git a/plugins/hide_blockquote/localization/da_DK.inc b/plugins/hide_blockquote/localization/da_DK.inc
new file mode 100644
index 000000000..50fbc718d
--- /dev/null
+++ b/plugins/hide_blockquote/localization/da_DK.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/da_DK/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Johannes Hessellund <osos@openeyes.dk> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'Skjul';
+$labels['show'] = 'Vis';
+$labels['quotelimit'] = 'Skjul citat antallet af linjer er højere end';
+
diff --git a/plugins/hide_blockquote/localization/de_CH.inc b/plugins/hide_blockquote/localization/de_CH.inc
new file mode 100644
index 000000000..26b8707f7
--- /dev/null
+++ b/plugins/hide_blockquote/localization/de_CH.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/de_CH/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'ausblenden';
+$labels['show'] = 'einblenden';
+$labels['quotelimit'] = 'Zitate verbergen ab einer Zeilenlänge von';
+
diff --git a/plugins/hide_blockquote/localization/de_DE.inc b/plugins/hide_blockquote/localization/de_DE.inc
new file mode 100644
index 000000000..4ae3b96e7
--- /dev/null
+++ b/plugins/hide_blockquote/localization/de_DE.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/de_DE/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'ausblenden';
+$labels['show'] = 'einblenden';
+$labels['quotelimit'] = 'Zitate verbergen ab einer Zeilenlänge von';
+
diff --git a/plugins/hide_blockquote/localization/en_GB.inc b/plugins/hide_blockquote/localization/en_GB.inc
new file mode 100644
index 000000000..68f634e00
--- /dev/null
+++ b/plugins/hide_blockquote/localization/en_GB.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/en_GB/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Aleksander Machniak <alec@alec.pl> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'Hide';
+$labels['show'] = 'Show';
+$labels['quotelimit'] = 'Hide citation when lines count is greater than';
+
diff --git a/plugins/hide_blockquote/localization/es_ES.inc b/plugins/hide_blockquote/localization/es_ES.inc
new file mode 100644
index 000000000..485fef551
--- /dev/null
+++ b/plugins/hide_blockquote/localization/es_ES.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/es_ES/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Eduardo Alberto Calvo |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'Ocultar';
+$labels['show'] = 'Mostrar';
+$labels['quotelimit'] = 'Ocultar la cita cuando el numero de lineas es mayor que';
+
diff --git a/plugins/hide_blockquote/localization/fi_FI.inc b/plugins/hide_blockquote/localization/fi_FI.inc
new file mode 100644
index 000000000..ada6d754a
--- /dev/null
+++ b/plugins/hide_blockquote/localization/fi_FI.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/fi_FI/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Jiri Grönroos |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'Piilota';
+$labels['show'] = 'Näytä';
+$labels['quotelimit'] = 'Piilota lainaus, kun rivien lukumäärä on suurempi kuin';
+
diff --git a/plugins/hide_blockquote/localization/fr_FR.inc b/plugins/hide_blockquote/localization/fr_FR.inc
new file mode 100644
index 000000000..5964186af
--- /dev/null
+++ b/plugins/hide_blockquote/localization/fr_FR.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/fr_FR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Patrick Fiquet |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'Cacher';
+$labels['show'] = 'Afficher';
+$labels['quotelimit'] = 'Cacher la citation quand le nombre de lignes est plus grand que';
+
diff --git a/plugins/hide_blockquote/localization/gl_ES.inc b/plugins/hide_blockquote/localization/gl_ES.inc
new file mode 100644
index 000000000..bb45812cc
--- /dev/null
+++ b/plugins/hide_blockquote/localization/gl_ES.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/gl_ES/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: oterobueu <oterobueu@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'Agochar';
+$labels['show'] = 'Amosar';
+$labels['quotelimit'] = 'Agochar mencións cando haxa demasiadas liñas';
+
diff --git a/plugins/hide_blockquote/localization/he_IL.inc b/plugins/hide_blockquote/localization/he_IL.inc
new file mode 100644
index 000000000..9ddc6bd2a
--- /dev/null
+++ b/plugins/hide_blockquote/localization/he_IL.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/he_IL/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Moshe Leibovitch <moish@mln.co.il> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'הסתר';
+$labels['show'] = 'הצג';
+$labels['quotelimit'] = 'הסתר ציטוט ×›×שר מספר השורות גדול מ-';
+
diff --git a/plugins/hide_blockquote/localization/hu_HU.inc b/plugins/hide_blockquote/localization/hu_HU.inc
new file mode 100644
index 000000000..a3418f4a6
--- /dev/null
+++ b/plugins/hide_blockquote/localization/hu_HU.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/hu_HU/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: bela |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'Elrejtés';
+$labels['show'] = 'Megjelenítés';
+$labels['quotelimit'] = 'Idézet elrejtése ha a sorok száma több mint';
+
diff --git a/plugins/hide_blockquote/localization/hy_AM.inc b/plugins/hide_blockquote/localization/hy_AM.inc
new file mode 100644
index 000000000..8aa5f2d12
--- /dev/null
+++ b/plugins/hide_blockquote/localization/hy_AM.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/hy_AM/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Vahan Yerkanian <vahan@yerkanian.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'Ô¹Õ¡Ö„ÖÕ¶Õ¥Õ¬';
+$labels['show'] = 'Õ‘Õ¸Ö‚ÖÕ¡Õ¤Ö€Õ¥Õ¬';
+$labels['quotelimit'] = 'Ô¹Õ¡Ö„ÖÕ¶Õ¥Õ¬ ÖÕ«Õ¿Õ¸Ö‚Õ´Õ¨ Õ¥Ö€Õ¢ Õ¿Õ¸Õ²Õ¥Ö€Õ« Ö„Õ¡Õ¶Õ¡Õ¯Õ¨ Õ£Õ¥Ö€Õ¡Õ¦Õ¡Õ¶ÖÕ¸Ö‚Õ´ Õ§';
+
diff --git a/plugins/hide_blockquote/localization/ja_JP.inc b/plugins/hide_blockquote/localization/ja_JP.inc
new file mode 100644
index 000000000..3fbbb2806
--- /dev/null
+++ b/plugins/hide_blockquote/localization/ja_JP.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ja_JP/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Takahiro Kambe |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'éš ã™';
+$labels['show'] = '表示';
+$labels['quotelimit'] = '次ã®è¡Œæ•°ã‚ˆã‚Šå¤šã„引用をéžè¡¨ç¤º';
+
diff --git a/plugins/hide_blockquote/localization/ko_KR.inc b/plugins/hide_blockquote/localization/ko_KR.inc
new file mode 100644
index 000000000..d83dd8bce
--- /dev/null
+++ b/plugins/hide_blockquote/localization/ko_KR.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ko_KR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Kim, Woohyun <woohyun.kim@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = '숨기기';
+$labels['show'] = 'ë³´ì´ê¸°';
+$labels['quotelimit'] = 'ë¼ì¸ 개수가 정해진 개수보다 í´ ë•Œ ì¸ìš©êµ¬ ê°ì¶”기';
+
diff --git a/plugins/hide_blockquote/localization/lt_LT.inc b/plugins/hide_blockquote/localization/lt_LT.inc
new file mode 100644
index 000000000..159f1747d
--- /dev/null
+++ b/plugins/hide_blockquote/localization/lt_LT.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/lt_LT/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Rimas Kudelis <rq@akl.lt> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'PaslÄ—pti';
+$labels['show'] = 'Parodyti';
+$labels['quotelimit'] = 'PaslÄ—pti citatÄ…, kai joje eiluÄių daugiau negu';
+
diff --git a/plugins/hide_blockquote/localization/nl_NL.inc b/plugins/hide_blockquote/localization/nl_NL.inc
new file mode 100644
index 000000000..1e14835e0
--- /dev/null
+++ b/plugins/hide_blockquote/localization/nl_NL.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/nl_NL/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Geert Wirken |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'Verbergen';
+$labels['show'] = 'Tonen';
+$labels['quotelimit'] = 'Verberg citaat wanneer aantal regels groter is dan';
+
diff --git a/plugins/hide_blockquote/localization/pt_BR.inc b/plugins/hide_blockquote/localization/pt_BR.inc
new file mode 100644
index 000000000..3acdd4534
--- /dev/null
+++ b/plugins/hide_blockquote/localization/pt_BR.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/pt_BR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Victor Benincasa <vbenincasa@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'Ocultar';
+$labels['show'] = 'Exibir';
+$labels['quotelimit'] = 'Ocultar a citação quando o número de linhas for maior do que';
+
diff --git a/plugins/hide_blockquote/localization/pt_PT.inc b/plugins/hide_blockquote/localization/pt_PT.inc
new file mode 100644
index 000000000..8afa6d549
--- /dev/null
+++ b/plugins/hide_blockquote/localization/pt_PT.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/pt_PT/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: David |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'Ocultar';
+$labels['show'] = 'Mostrar';
+$labels['quotelimit'] = 'Ocultar citação quando o numero de linhas for maior que';
+
diff --git a/plugins/hide_blockquote/localization/ru_RU.inc b/plugins/hide_blockquote/localization/ru_RU.inc
new file mode 100644
index 000000000..ab7733e0d
--- /dev/null
+++ b/plugins/hide_blockquote/localization/ru_RU.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ru_RU/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Sergey Dukachev <admin@mfitness.ru> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'Скрыть';
+$labels['show'] = 'Показать';
+$labels['quotelimit'] = 'Скрыть цитату, еÑли чиÑло Ñтрок более чем';
+
diff --git a/plugins/hide_blockquote/localization/sk_SK.inc b/plugins/hide_blockquote/localization/sk_SK.inc
new file mode 100644
index 000000000..e9263833b
--- /dev/null
+++ b/plugins/hide_blockquote/localization/sk_SK.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sk_SK/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: panda |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'Skryť';
+$labels['show'] = 'Zobraziť';
+$labels['quotelimit'] = 'SkryÅ¥ citáciu pokiaľ je poÄet riadkov väÄší než';
+
diff --git a/plugins/hide_blockquote/localization/sl_SI.inc b/plugins/hide_blockquote/localization/sl_SI.inc
new file mode 100644
index 000000000..31cfc3caa
--- /dev/null
+++ b/plugins/hide_blockquote/localization/sl_SI.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sl_SI/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Barbara Krasovec <barbarak@arnes.si> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'Skrij';
+$labels['show'] = 'Prikaži';
+$labels['quotelimit'] = 'Skrij citiran tekst, ko je Å¡tevilo vrstic veÄje od';
+
diff --git a/plugins/hide_blockquote/localization/sr_CS.inc b/plugins/hide_blockquote/localization/sr_CS.inc
new file mode 100644
index 000000000..485ef5966
--- /dev/null
+++ b/plugins/hide_blockquote/localization/sr_CS.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sr_CS/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Saša Zejnilović <zejnils@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'Сакриј';
+$labels['show'] = 'Прикажи';
+$labels['quotelimit'] = 'Сакриј цитат када је број редова већи од';
+
diff --git a/plugins/hide_blockquote/localization/sv_SE.inc b/plugins/hide_blockquote/localization/sv_SE.inc
new file mode 100644
index 000000000..c6abb488f
--- /dev/null
+++ b/plugins/hide_blockquote/localization/sv_SE.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sv_SE/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Jonas Nasholm |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'Dölj';
+$labels['show'] = 'Visa';
+$labels['quotelimit'] = 'Dölj citat när antalet rader överstiger';
+
diff --git a/plugins/hide_blockquote/localization/tr_TR.inc b/plugins/hide_blockquote/localization/tr_TR.inc
new file mode 100644
index 000000000..525ec5064
--- /dev/null
+++ b/plugins/hide_blockquote/localization/tr_TR.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/tr_TR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: ismail yenigul |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'Gizle';
+$labels['show'] = 'Göster';
+$labels['quotelimit'] = 'Satır sayısı şu satır sayısındna fazla ile alıntıları gizle:';
+
diff --git a/plugins/hide_blockquote/localization/vi_VN.inc b/plugins/hide_blockquote/localization/vi_VN.inc
new file mode 100644
index 000000000..fc2cb5011
--- /dev/null
+++ b/plugins/hide_blockquote/localization/vi_VN.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/vi_VN/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Hung Pham <phamhung77@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['hide'] = 'Ẩn';
+$labels['show'] = 'Hiển thị';
+$labels['quotelimit'] = 'Ẩn trích dẫn khi tổng số dòng lớn hơn';
+
diff --git a/plugins/hide_blockquote/package.xml b/plugins/hide_blockquote/package.xml
index 833691261..0d895c1d9 100644
--- a/plugins/hide_blockquote/package.xml
+++ b/plugins/hide_blockquote/package.xml
@@ -36,7 +36,7 @@
</file>
<file name="localization/en_US.inc" role="data"></file>
<file name="localization/pl_PL.inc" role="data"></file>
- <file name="skins/default/style.css" role="data"></file>
+ <file name="skins/classic/style.css" role="data"></file>
</dir>
<!-- / -->
</contents>
diff --git a/plugins/jqueryui/config.inc.php.dist b/plugins/jqueryui/config.inc.php.dist
index 65c01757a..a3c3f75a0 100644
--- a/plugins/jqueryui/config.inc.php.dist
+++ b/plugins/jqueryui/config.inc.php.dist
@@ -6,6 +6,7 @@ $rcmail_config['jquery_ui_i18n'] = array('datepicker');
// map Roundcube skins with jquery-ui themes here
$rcmail_config['jquery_ui_skin_map'] = array(
'larry' => 'larry',
+ 'default' => 'larry',
'groupvice4' => 'redmond',
);
diff --git a/plugins/jqueryui/jqueryui.php b/plugins/jqueryui/jqueryui.php
index 69b9ca1c0..f96366ee8 100644
--- a/plugins/jqueryui/jqueryui.php
+++ b/plugins/jqueryui/jqueryui.php
@@ -24,7 +24,7 @@ class jqueryui extends rcube_plugin
$this->include_script("js/jquery-ui-$version.custom.min.js");
// include UI stylesheet
- $skin = $rcmail->config->get('skin', 'default');
+ $skin = $rcmail->config->get('skin');
$ui_map = $rcmail->config->get('jquery_ui_skin_map', array());
$ui_theme = $ui_map[$skin] ? $ui_map[$skin] : $skin;
@@ -32,7 +32,22 @@ class jqueryui extends rcube_plugin
$this->include_stylesheet("themes/$ui_theme/jquery-ui-$version.custom.css");
}
else {
- $this->include_stylesheet("themes/default/jquery-ui-$version.custom.css");
+ $this->include_stylesheet("themes/larry/jquery-ui-$version.custom.css");
+ }
+
+ if ($ui_theme == 'larry') {
+ // patch dialog position function in order to fully fit the close button into the window
+ $rcmail->output->add_script("jQuery.extend(jQuery.ui.dialog.prototype.options.position, {
+ using: function(pos) {
+ var me = jQuery(this),
+ offset = me.css(pos).offset(),
+ topOffset = offset.top - 12;
+ if (topOffset < 0)
+ me.css('top', pos.top - topOffset);
+ if (offset.left + me.outerWidth() + 12 > jQuery(window).width())
+ me.css('left', pos.left - 12);
+ }
+ });", 'foot');
}
// jquery UI localization
diff --git a/plugins/jqueryui/package.xml b/plugins/jqueryui/package.xml
index 18f241a2e..1d265169c 100644
--- a/plugins/jqueryui/package.xml
+++ b/plugins/jqueryui/package.xml
@@ -99,22 +99,22 @@
<file name="js/i18n/jquery.ui.datepicker-zh-HK.js" role="data"></file>
<file name="js/i18n/jquery.ui.datepicker-zh-TW.js" role="data"></file>
- <file name="themes/default/jquery-ui-1.8.14.custom.css" role="data"></file>
- <file name="themes/default/roundcube-custom.diff" role="data"></file>
- <file name="themes/default/images/buttongradient.png" role="data"></file>
- <file name="themes/default/images/ui-bg_flat_90_cc3333_40x100.png" role="data"></file>
- <file name="themes/default/images/ui-bg_highlight-hard_90_f4f4f4_1x100.png" role="data"></file>
- <file name="themes/default/images/ui-icons_cc3333_256x240.png" role="data"></file>
- <file name="themes/default/images/listheader.png" role="data"></file>
- <file name="themes/default/images/ui-bg_glass_95_fef1ec_1x400.png" role="data"></file>
- <file name="themes/default/images/ui-icons_000000_256x240.png" role="data"></file>
- <file name="themes/default/images/ui-icons_dddddd_256x240.png" role="data"></file>
- <file name="themes/default/images/ui-bg_flat_0_aaaaaa_40x100.png" role="data"></file>
- <file name="themes/default/images/ui-bg_highlight-hard_90_a3a3a3_1x100.png" role="data"></file>
- <file name="themes/default/images/ui-icons_333333_256x240.png" role="data"></file>
- <file name="themes/default/images/ui-bg_flat_75_ffffff_40x100.png" role="data"></file>
- <file name="themes/default/images/ui-bg_highlight-hard_90_e6e6e7_1x100.png" role="data"></file>
- <file name="themes/default/images/ui-icons_666666_256x240.png" role="data"></file>
+ <file name="themes/classic/jquery-ui-1.8.14.custom.css" role="data"></file>
+ <file name="themes/classic/roundcube-custom.diff" role="data"></file>
+ <file name="themes/classic/images/buttongradient.png" role="data"></file>
+ <file name="themes/classic/images/ui-bg_flat_90_cc3333_40x100.png" role="data"></file>
+ <file name="themes/classic/images/ui-bg_highlight-hard_90_f4f4f4_1x100.png" role="data"></file>
+ <file name="themes/classic/images/ui-icons_cc3333_256x240.png" role="data"></file>
+ <file name="themes/classic/images/listheader.png" role="data"></file>
+ <file name="themes/classic/images/ui-bg_glass_95_fef1ec_1x400.png" role="data"></file>
+ <file name="themes/classic/images/ui-icons_000000_256x240.png" role="data"></file>
+ <file name="themes/classic/images/ui-icons_dddddd_256x240.png" role="data"></file>
+ <file name="themes/classic/images/ui-bg_flat_0_aaaaaa_40x100.png" role="data"></file>
+ <file name="themes/classic/images/ui-bg_highlight-hard_90_a3a3a3_1x100.png" role="data"></file>
+ <file name="themes/classic/images/ui-icons_333333_256x240.png" role="data"></file>
+ <file name="themes/classic/images/ui-bg_flat_75_ffffff_40x100.png" role="data"></file>
+ <file name="themes/classic/images/ui-bg_highlight-hard_90_e6e6e7_1x100.png" role="data"></file>
+ <file name="themes/classic/images/ui-icons_666666_256x240.png" role="data"></file>
<file name="themes/redmont/jquery-ui-1.8.14.custom.css" role="data"></file>
<file name="themes/redmont/images/ui-bg_flat_0_aaaaaa_40x100.png" role="data"></file>
diff --git a/plugins/jqueryui/themes/default/images/buttongradient.png b/plugins/jqueryui/themes/classic/images/buttongradient.png
index 0595474c7..0595474c7 100644
--- a/plugins/jqueryui/themes/default/images/buttongradient.png
+++ b/plugins/jqueryui/themes/classic/images/buttongradient.png
Binary files differ
diff --git a/plugins/jqueryui/themes/default/images/listheader.png b/plugins/jqueryui/themes/classic/images/listheader.png
index 670df0c4a..670df0c4a 100644
--- a/plugins/jqueryui/themes/default/images/listheader.png
+++ b/plugins/jqueryui/themes/classic/images/listheader.png
Binary files differ
diff --git a/plugins/jqueryui/themes/default/images/ui-bg_flat_0_aaaaaa_40x100.png b/plugins/jqueryui/themes/classic/images/ui-bg_flat_0_aaaaaa_40x100.png
index 5b5dab2ab..5b5dab2ab 100755
--- a/plugins/jqueryui/themes/default/images/ui-bg_flat_0_aaaaaa_40x100.png
+++ b/plugins/jqueryui/themes/classic/images/ui-bg_flat_0_aaaaaa_40x100.png
Binary files differ
diff --git a/plugins/jqueryui/themes/default/images/ui-bg_flat_75_ffffff_40x100.png b/plugins/jqueryui/themes/classic/images/ui-bg_flat_75_ffffff_40x100.png
index ac8b229af..ac8b229af 100755
--- a/plugins/jqueryui/themes/default/images/ui-bg_flat_75_ffffff_40x100.png
+++ b/plugins/jqueryui/themes/classic/images/ui-bg_flat_75_ffffff_40x100.png
Binary files differ
diff --git a/plugins/jqueryui/themes/default/images/ui-bg_flat_90_cc3333_40x100.png b/plugins/jqueryui/themes/classic/images/ui-bg_flat_90_cc3333_40x100.png
index 6a5d37d65..6a5d37d65 100755
--- a/plugins/jqueryui/themes/default/images/ui-bg_flat_90_cc3333_40x100.png
+++ b/plugins/jqueryui/themes/classic/images/ui-bg_flat_90_cc3333_40x100.png
Binary files differ
diff --git a/plugins/jqueryui/themes/default/images/ui-bg_glass_95_fef1ec_1x400.png b/plugins/jqueryui/themes/classic/images/ui-bg_glass_95_fef1ec_1x400.png
index 4443fdc1a..4443fdc1a 100755
--- a/plugins/jqueryui/themes/default/images/ui-bg_glass_95_fef1ec_1x400.png
+++ b/plugins/jqueryui/themes/classic/images/ui-bg_glass_95_fef1ec_1x400.png
Binary files differ
diff --git a/plugins/jqueryui/themes/default/images/ui-bg_highlight-hard_90_a3a3a3_1x100.png b/plugins/jqueryui/themes/classic/images/ui-bg_highlight-hard_90_a3a3a3_1x100.png
index b3533aafe..b3533aafe 100755
--- a/plugins/jqueryui/themes/default/images/ui-bg_highlight-hard_90_a3a3a3_1x100.png
+++ b/plugins/jqueryui/themes/classic/images/ui-bg_highlight-hard_90_a3a3a3_1x100.png
Binary files differ
diff --git a/plugins/jqueryui/themes/default/images/ui-bg_highlight-hard_90_e6e6e7_1x100.png b/plugins/jqueryui/themes/classic/images/ui-bg_highlight-hard_90_e6e6e7_1x100.png
index d0a127f4d..d0a127f4d 100755
--- a/plugins/jqueryui/themes/default/images/ui-bg_highlight-hard_90_e6e6e7_1x100.png
+++ b/plugins/jqueryui/themes/classic/images/ui-bg_highlight-hard_90_e6e6e7_1x100.png
Binary files differ
diff --git a/plugins/jqueryui/themes/default/images/ui-bg_highlight-hard_90_f4f4f4_1x100.png b/plugins/jqueryui/themes/classic/images/ui-bg_highlight-hard_90_f4f4f4_1x100.png
index ecc0ac16a..ecc0ac16a 100755
--- a/plugins/jqueryui/themes/default/images/ui-bg_highlight-hard_90_f4f4f4_1x100.png
+++ b/plugins/jqueryui/themes/classic/images/ui-bg_highlight-hard_90_f4f4f4_1x100.png
Binary files differ
diff --git a/plugins/jqueryui/themes/default/images/ui-icons_000000_256x240.png b/plugins/jqueryui/themes/classic/images/ui-icons_000000_256x240.png
index 7c211aa08..7c211aa08 100755
--- a/plugins/jqueryui/themes/default/images/ui-icons_000000_256x240.png
+++ b/plugins/jqueryui/themes/classic/images/ui-icons_000000_256x240.png
Binary files differ
diff --git a/plugins/jqueryui/themes/default/images/ui-icons_333333_256x240.png b/plugins/jqueryui/themes/classic/images/ui-icons_333333_256x240.png
index fe079a595..fe079a595 100755
--- a/plugins/jqueryui/themes/default/images/ui-icons_333333_256x240.png
+++ b/plugins/jqueryui/themes/classic/images/ui-icons_333333_256x240.png
Binary files differ
diff --git a/plugins/jqueryui/themes/default/images/ui-icons_666666_256x240.png b/plugins/jqueryui/themes/classic/images/ui-icons_666666_256x240.png
index f87de1ca1..f87de1ca1 100755
--- a/plugins/jqueryui/themes/default/images/ui-icons_666666_256x240.png
+++ b/plugins/jqueryui/themes/classic/images/ui-icons_666666_256x240.png
Binary files differ
diff --git a/plugins/jqueryui/themes/default/images/ui-icons_cc3333_256x240.png b/plugins/jqueryui/themes/classic/images/ui-icons_cc3333_256x240.png
index b2fe02927..b2fe02927 100755
--- a/plugins/jqueryui/themes/default/images/ui-icons_cc3333_256x240.png
+++ b/plugins/jqueryui/themes/classic/images/ui-icons_cc3333_256x240.png
Binary files differ
diff --git a/plugins/jqueryui/themes/default/images/ui-icons_dddddd_256x240.png b/plugins/jqueryui/themes/classic/images/ui-icons_dddddd_256x240.png
index 91aada0ab..91aada0ab 100755
--- a/plugins/jqueryui/themes/default/images/ui-icons_dddddd_256x240.png
+++ b/plugins/jqueryui/themes/classic/images/ui-icons_dddddd_256x240.png
Binary files differ
diff --git a/plugins/jqueryui/themes/default/jquery-ui-1.8.18.custom.css b/plugins/jqueryui/themes/classic/jquery-ui-1.8.18.custom.css
index 288e624ed..288e624ed 100755
--- a/plugins/jqueryui/themes/default/jquery-ui-1.8.18.custom.css
+++ b/plugins/jqueryui/themes/classic/jquery-ui-1.8.18.custom.css
diff --git a/plugins/jqueryui/themes/default/roundcube-custom.diff b/plugins/jqueryui/themes/classic/roundcube-custom.diff
index f5be87956..f5be87956 100644
--- a/plugins/jqueryui/themes/default/roundcube-custom.diff
+++ b/plugins/jqueryui/themes/classic/roundcube-custom.diff
diff --git a/plugins/jqueryui/themes/larry/jquery-ui-1.8.18.custom.css b/plugins/jqueryui/themes/larry/jquery-ui-1.8.18.custom.css
index e2737f5b2..b51fb9571 100755
--- a/plugins/jqueryui/themes/larry/jquery-ui-1.8.18.custom.css
+++ b/plugins/jqueryui/themes/larry/jquery-ui-1.8.18.custom.css
@@ -56,7 +56,7 @@
.ui-widget { font-family: Lucida Grande,Verdana,Arial,sans-serif; font-size: 1.0em; }
.ui-widget .ui-widget { font-size: 1em; }
.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Lucida Grande,Verdana,Arial,sans-serif; font-size: 1em; }
-.ui-widget-content { border: 0; background: #fafafa url(images/ui-bg_highlight-soft_75_fafafa_1x100.png) 50% top repeat-x; color: #333; }
+.ui-widget-content { border: 1px solid #aaa; background: #fafafa url(images/ui-bg_highlight-soft_75_fafafa_1x100.png) 50% top repeat-x; color: #333; }
/*.ui-widget-content a { color: #333; }*/
.ui-widget-header { border: 2px solid #fafafa; background: #e4e4e4 url(images/ui-bg_highlight-soft_90_e4e4e4_1x100.png) 50% 50% repeat-x; color: #666666; font-weight: bold; }
.ui-widget-header a { color: #aaaaaa; }
@@ -505,6 +505,7 @@ button.ui-button::-moz-focus-inner { border: 0; padding: 0; } /* reset extra pad
* http://docs.jquery.com/UI/Dialog#theming
*/
.ui-dialog { position: absolute; padding: 3px; width: 300px; background: #fff; border-radius:6px; box-shadow: 1px 1px 18px #666; -moz-box-shadow: 1px 1px 12px #666; -webkit-box-shadow: #666 1px 1px 12px; }
+.ui-dialog .ui-widget-content { border: 0 }
.ui-dialog .ui-dialog-titlebar { padding: 15px 1em 8px 1em; position: relative; border: 0; border-radius: 5px 5px 0 0; }
.ui-dialog .ui-dialog-title { float: left; margin: .1em 16px .1em 0; font-size: 1.3em; text-shadow: 1px 1px 1px #fff; }
.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: -15px; top: -15px; margin:0; width: 30px; height: 30px; z-index:99999; }
diff --git a/plugins/managesieve/Changelog b/plugins/managesieve/Changelog
index 1e6011064..c015ee403 100644
--- a/plugins/managesieve/Changelog
+++ b/plugins/managesieve/Changelog
@@ -1,6 +1,15 @@
+* version 5.2 [2012-07-24]
+-----------------------------------------------------------
+- Added GUI for variables setting - RFC5229 (patch from Paweł Słowik)
+- Fixed scrollbars in Larry's iframes
+- Fix performance issue in message_headers_output hook handling
+
+* version 5.1 [2012-06-21]
+-----------------------------------------------------------
- Fixed filter popup width (for non-english localizations)
- Fixed tokenizer infinite loop on invalid script content
- Larry skin support
+- Fixed custom header name validity check, made RFC2822-compliant
* version 5.0 [2012-01-05]
-----------------------------------------------------------
diff --git a/plugins/managesieve/localization/en_GB.inc b/plugins/managesieve/localization/en_GB.inc
index 5e1c83a9c..6859f5fff 100644
--- a/plugins/managesieve/localization/en_GB.inc
+++ b/plugins/managesieve/localization/en_GB.inc
@@ -93,6 +93,10 @@ $labels['flagdeleted'] = 'Deleted';
$labels['flaganswered'] = 'Answered';
$labels['flagflagged'] = 'Flagged';
$labels['flagdraft'] = 'Draft';
+$labels['setvariable'] = 'Set variable';
+$labels['setvarname'] = 'Variable name:';
+$labels['setvarvalue'] = 'Variable value:';
+$labels['setvarmodifiers'] = 'Modifiers:';
$labels['filtercreate'] = 'Create filter';
$labels['usedata'] = 'Use following data in the filter:';
$labels['nextstep'] = 'Next Step';
diff --git a/plugins/managesieve/localization/en_US.inc b/plugins/managesieve/localization/en_US.inc
index 5aea5dcb8..191291338 100644
--- a/plugins/managesieve/localization/en_US.inc
+++ b/plugins/managesieve/localization/en_US.inc
@@ -78,6 +78,16 @@ $labels['flagdeleted'] = 'Deleted';
$labels['flaganswered'] = 'Answered';
$labels['flagflagged'] = 'Flagged';
$labels['flagdraft'] = 'Draft';
+$labels['setvariable'] = 'Set variable';
+$labels['setvarname'] = 'Variable name:';
+$labels['setvarvalue'] = 'Variable value:';
+$labels['setvarmodifiers'] = 'Modifiers:';
+$labels['varlower'] = 'lower-case';
+$labels['varupper'] = 'upper-case';
+$labels['varlowerfirst'] = 'first character lower-case';
+$labels['varupperfirst'] = 'first character upper-case';
+$labels['varquotewildcard'] = 'quote special characters';
+$labels['varlength'] = 'length';
$labels['filtercreate'] = 'Create filter';
$labels['usedata'] = 'Use following data in the filter:';
$labels['nextstep'] = 'Next Step';
diff --git a/plugins/managesieve/localization/hy_AM.inc b/plugins/managesieve/localization/hy_AM.inc
new file mode 100644
index 000000000..ea4e982ea
--- /dev/null
+++ b/plugins/managesieve/localization/hy_AM.inc
@@ -0,0 +1,149 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/hy_AM/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Vahan Yerkanian <vahan@yerkanian.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['filters'] = 'Ô¶Õ¿Õ«Õ¹Õ¶Õ¥Ö€';
+$labels['managefilters'] = 'Ô¿Õ¡Õ¼Õ¡Õ¾Õ¡Ö€Õ¥Õ¬ Õ½Õ¿Õ¡ÖÕ¾Õ¸Õ² Õ¶Õ¡Õ´Õ¡Õ¯Õ¶Õ¥Ö€Õ« Õ¦Õ¿Õ«Õ¹Õ¶Õ¥Ö€Õ¨';
+$labels['filtername'] = 'Ô¶Õ¿Õ«Õ¹Õ« Õ¡Õ¶Õ¸Ö‚Õ¶';
+$labels['newfilter'] = 'Õ†Õ¸Ö€ Õ¦Õ¿Õ«Õ¹';
+$labels['filteradd'] = 'Ô±Õ¾Õ¥Õ¬Õ¡ÖÕ¶Õ¥Õ¬ Õ¦Õ¿Õ«Õ¹';
+$labels['filterdel'] = 'Õ‹Õ¶Õ»Õ¥Õ¬ Õ¦Õ¿Õ«Õ¹Õ¨';
+$labels['moveup'] = 'Ô²Õ¡Ö€Õ±Ö€Õ¡ÖÕ¶Õ¥Õ¬';
+$labels['movedown'] = 'Ô»Õ»Õ¥ÖÕ¶Õ¥Õ¬';
+$labels['filterallof'] = 'Õ°Õ¥Õ¿Ö‡ÕµÕ¡Õ¬ Õ¢Õ¸Õ¬Õ¸Ö€ ÕºÕ¡Õ°Õ¡Õ¶Õ»Õ¶Õ¥Ö€Õ«Õ¶ Õ°Õ¡Õ´Õ¡ÕºÕ¡Õ¿Õ¡Õ½Õ­Õ¡Õ¶Õ¸Õ²';
+$labels['filteranyof'] = 'Õ°Õ¥Õ¿Ö‡ÕµÕ¡Õ¬ ÕºÕ¡Õ°Õ¡Õ¶Õ»Õ¶Õ¥Ö€Õ«Ö ÖÕ¡Õ¶Õ¯Õ¡ÖÕ¡Õ®Õ«Õ¶ Õ°Õ¡Õ´Õ¡ÕºÕ¡Õ¿Õ¡Õ½Õ­Õ¡Õ¶Õ¸Õ²';
+$labels['filterany'] = 'Õ¢Õ¸Õ¬Õ¸Ö€ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¨';
+$labels['filtercontains'] = 'ÕºÕ¡Ö€Õ¸Ö‚Õ¶Õ¡Õ¯Õ¸Ö‚Õ´ Õ§';
+$labels['filternotcontains'] = 'Õ¹Õ« ÕºÕ¡Ö€Õ¸Ö‚Õ¶Õ¡Õ¯Õ¸Ö‚Õ´';
+$labels['filteris'] = 'Õ°Õ¡Õ¾Õ¡Õ½Õ¡Ö€ Õ§';
+$labels['filterisnot'] = 'Õ°Õ¡Õ¾Õ¡Õ½Õ¡Ö€ Õ¹Õ§';
+$labels['filterexists'] = 'Õ£Õ¸ÕµÕ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶ Õ¸Ö‚Õ¶Õ«';
+$labels['filternotexists'] = 'Õ£Õ¸ÕµÕ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶ Õ¹Õ¸Ö‚Õ¶Õ«';
+$labels['filtermatches'] = 'Õ¢Õ¡Õ¾Õ¡Ö€Õ¡Ö€Õ¸Ö‚Õ´ Õ§ Õ¡Ö€Õ¿Õ¡Õ°Õ¡ÕµÕ¿Õ¸Ö‚Õ©ÕµÕ¡Õ¶Õ¨';
+$labels['filternotmatches'] = 'Õ¹Õ« Õ¢Õ¡Õ¾Õ¡Ö€Õ¡Ö€Õ¸Ö‚Õ´ Õ¡Ö€Õ¿Õ¡Õ°Õ¡ÕµÕ¿Õ¸Ö‚Õ©ÕµÕ¡Õ¶Õ¨';
+$labels['filterregex'] = 'Õ¢Õ¡Õ¾Õ¡Ö€Õ¡Ö€Õ¸Ö‚Õ´ Õ§ Õ¯Õ¡Õ¶Õ¸Õ¶Õ¡Õ¾Õ¸Ö€ Õ¡Ö€Õ¿Õ¡Õ°Õ¡ÕµÕ¿Õ¸Ö‚Õ©ÕµÕ¡Õ¶Õ¨';
+$labels['filternotregex'] = 'Õ¹Õ« Õ¢Õ¡Õ¾Õ¡Ö€Õ¡Ö€Õ¸Ö‚Õ´ Õ¯Õ¡Õ¶Õ¸Õ¶Õ¡Õ¾Õ¸Ö€ Õ¡Ö€Õ¿Õ¡Õ°Õ¡ÕµÕ¿Õ¸Ö‚Õ©ÕµÕ¡Õ¶Õ¨';
+$labels['filterunder'] = 'Õ¿Õ¡Õ¯';
+$labels['filterover'] = 'Õ¾Ö€Õ¡';
+$labels['addrule'] = 'Ô±Õ¾Õ¥Õ¬Õ¡ÖÕ¶Õ¥Õ¬ ÕºÕ¡ÕµÕ´Õ¡Õ¶Õ¨';
+$labels['delrule'] = 'Õ‹Õ¶Õ»Õ¥Õ¬ ÕºÕ¡ÕµÕ´Õ¡Õ¶Õ¨';
+$labels['messagemoveto'] = 'ÕÕ¥Õ²Õ¡ÖƒÕ¸Õ­Õ¥Õ¬ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨';
+$labels['messageredirect'] = 'ÕŽÕ¥Ö€Õ¡Õ°Õ¡Õ½ÖÕ¥Õ¾Õ¸Ö€Õ¥Õ¬ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨';
+$labels['messagecopyto'] = 'ÕŠÕ¡Õ¿Õ³Õ¥Õ¶Õ¥Õ¬ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨';
+$labels['messagesendcopy'] = 'ÕˆÖ‚Õ²Õ¡Ö€Õ¯Õ¥Õ¬ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¡Õ¶ ÕºÕ¡Õ¿Õ³Õ¥Õ¶';
+$labels['messagereply'] = 'ÕŠÕ¡Õ¿Õ¡Õ½Õ­Õ¡Õ¶Õ¥Õ¬ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¡Õ´Õ¢';
+$labels['messagedelete'] = 'Õ‹Õ¶Õ»Õ¥Õ¬ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨';
+$labels['messagediscard'] = 'Õ€Õ¥Õ¼Õ¡ÖÕ¶Õ¥Õ¬, Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¡Õ´Õ¢';
+$labels['messagesrules'] = 'ÕÕ¿Õ¡ÖÕ¾Õ¸Õ² Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ« Õ°Õ¡Õ´Õ¡Ö€';
+$labels['messagesactions'] = '…կատարել հետևյալ գործողությունները.';
+$labels['add'] = 'Ô±Õ¾Õ¥Õ¬Õ¡ÖÕ¶Õ¥Õ¬';
+$labels['del'] = 'Õ‹Õ¶Õ»Õ¥Õ¬';
+$labels['sender'] = 'ÕˆÖ‚Õ²Õ¡Ö€Õ¯Õ¸Õ²';
+$labels['recipient'] = 'ÕÕ¿Õ¡ÖÕ¸Õ²';
+$labels['vacationaddresses'] = 'Ô»Õ´ Õ°Õ¡Õ¾Õ¥Õ¬ÕµÕ¡Õ¬ Õ§Õ¬ÖƒÕ¸Õ½Õ¿Õ« Õ°Õ¡Õ½ÖÕ¥Õ¶Õ¥Ö€ (Õ¢Õ¡ÕªÕ¡Õ¶Õ¾Õ¡Õ® Õ½Õ¿Õ¸Ö€Õ¡Õ¯Õ¥Õ¿Õ¶Õ¥Ö€Õ¸Õ¾).';
+$labels['vacationdays'] = 'Ô»Õ¶Õ¹ Õ°Õ¡Õ³Õ¡Õ­Õ¸Ö‚Õ©ÕµÕ¡Õ´Õ¢ Õ¸Ö‚Õ²Õ¡Ö€Õ¯Õ¥Õ¬ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¨ (Ö…Ö€Õ¥Ö€)`';
+$labels['vacationreason'] = 'Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¡Õ¶ Õ¢Õ¸Õ¾Õ¡Õ¶Õ¤Õ¡Õ¯Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶ (Õ¡Ö€Õ±Õ¡Õ¯Õ¸Ö‚Ö€Õ¤Õ« ÕºÕ¡Õ¿Õ³Õ¡Õ¼)`';
+$labels['vacationsubject'] = 'Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¡Õ¶ Õ¾Õ¥Ö€Õ¶Õ¡Õ£Õ«Ö€`';
+$labels['rulestop'] = 'Ô´Õ¡Õ¤Õ¡Ö€Õ¥Õ¬ ÕºÕ¡ÕµÕ´Õ¡Õ¶Õ¶Õ¥Ö€Õ« Õ½Õ¿Õ¸Ö‚Õ£Õ¸Ö‚Õ´Õ¨';
+$labels['enable'] = 'Õ„Õ«Õ¡ÖÕ¶Õ¥Õ¬/Ô±Õ¶Õ»Õ¡Õ¿Õ¥Õ¬';
+$labels['filterset'] = 'Ô¶Õ¿Õ«Õ¹Õ¶Õ¥Ö€Õ« Õ°Õ¡Õ´Õ¡Õ¬Õ«Ö€';
+$labels['filtersets'] = 'Ô¶Õ¿Õ«Õ¹Õ¶Õ¥Ö€Õ« Õ°Õ¡Õ´Õ¡Õ¬Õ«Ö€Õ¶Õ¥Ö€';
+$labels['filtersetadd'] = 'Ô±Õ¾Õ¥Õ¬Õ¡ÖÕ¶Õ¥Õ¬ Õ¦Õ¿Õ«Õ¹Õ¶Õ¥Ö€Õ« Õ°Õ¡Õ´Õ¡Õ¬Õ«Ö€';
+$labels['filtersetdel'] = 'Õ‹Õ¶Õ»Õ¥Õ¬ Õ¡Õ¼Õ¯Õ¡ Õ¦Õ¿Õ«Õ¹Õ¶Õ¥Ö€Õ« Õ°Õ¡Õ´Õ¡Õ¬Õ«Ö€Õ¨';
+$labels['filtersetact'] = 'Õ„Õ«Õ¡ÖÕ¶Õ¥Õ¬ Õ¡Õ¼Õ¯Õ¡ Õ¦Õ¿Õ«Õ¹Õ¶Õ¥Ö€Õ« Õ°Õ¡Õ´Õ¡Õ¬Õ«Ö€Õ¨';
+$labels['filtersetdeact'] = 'Ô±Õ¶Õ»Õ¡Õ¿Õ¥Õ¬ Õ¡Õ¼Õ¯Õ¡ Õ¦Õ¿Õ«Õ¹Õ¶Õ¥Ö€Õ« Õ°Õ¡Õ´Õ¡Õ¬Õ«Ö€Õ¨';
+$labels['filterdef'] = 'Ô¶Õ¿Õ«Õ¹Õ« Õ½Õ¡Õ°Õ´Õ¡Õ¶Õ¸Ö‚Õ´';
+$labels['filtersetname'] = 'Ô¶Õ¿Õ«Õ¹Õ¶Õ¥Ö€Õ« Õ°Õ¡Õ´Õ¡Õ¬Õ«Ö€Õ« Õ¡Õ¶Õ¸Ö‚Õ¶';
+$labels['newfilterset'] = 'Õ†Õ¸Ö€ Õ¦Õ¿Õ«Õ¹Õ¶Õ¥Ö€Õ« Õ°Õ¡Õ´Õ¡Õ¬Õ«Ö€';
+$labels['active'] = 'Õ¡Õ¯Õ¿Õ«Õ¾';
+$labels['none'] = 'Õ¸Õ¹ Õ´Õ¥Õ¯Õ¨';
+$labels['fromset'] = 'Õ°Õ¡Õ´Õ¡Õ¬Õ«Ö€Õ«Ö';
+$labels['fromfile'] = 'Ö†Õ¡ÕµÕ¬Õ«Ö';
+$labels['filterdisabled'] = 'Ô¶Õ¿Õ«Õ¹Õ¨ Õ¡Õ¶Õ»Õ¡Õ¿Õ¾Õ¡Õ® Õ§';
+$labels['countisgreaterthan'] = 'Ö„Õ¡Õ¶Õ¡Õ¯Õ¨ Õ£Õ¥Ö€Õ¡Õ¦Õ¡Õ¶ÖÕ¸Ö‚Õ´ Õ§';
+$labels['countisgreaterthanequal'] = 'Ö„Õ¡Õ¶Õ¡Õ¯Õ¨ Õ£Õ¥Ö€Õ¡Õ¦Õ¡Õ¶ÖÕ¸Ö‚Õ´ Õ§ Õ¯Õ¡Õ´ Õ°Õ¡Õ¾Õ¡Õ½Õ¡Ö€ Õ§';
+$labels['countislessthan'] = 'Ö„Õ¡Õ¶Õ¡Õ¯Õ¨ ÕºÕ¡Õ¯Õ¡Õ½ Õ§';
+$labels['countislessthanequal'] = 'Ö„Õ¡Õ¶Õ¡Õ¯Õ¨ ÕºÕ¡Õ¯Õ¡Õ½ Õ§ Õ¯Õ¡Õ´ Õ°Õ¡Õ¾Õ¡Õ½Õ¡Ö€ Õ§';
+$labels['countequals'] = 'Ö„Õ¡Õ¶Õ¡Õ¯Õ¨ Õ°Õ¡Õ¾Õ¡Õ½Õ¡Ö€ Õ§';
+$labels['countnotequals'] = 'Ö„Õ¡Õ¶Õ¡Õ¯Õ¨ Õ°Õ¡Õ¾Õ¡Õ½Õ¡Ö€ Õ¹Õ§';
+$labels['valueisgreaterthan'] = 'Õ¡Ö€ÕªÕ¥Ö„Õ¨ Õ£Õ¥Ö€Õ¡Õ¦Õ¡Õ¶ÖÕ¸Ö‚Õ´ Õ§';
+$labels['valueisgreaterthanequal'] = 'Õ¡Ö€ÕªÕ¥Ö„Õ¨ Õ£Õ¥Ö€Õ¡Õ¦Õ¡Õ¶ÖÕ¸Ö‚Õ´ Õ§ Õ¯Õ¡Õ´ Õ°Õ¡Õ¾Õ¡Õ½Õ¡Ö€ Õ§';
+$labels['valueislessthan'] = 'Õ¡Ö€ÕªÕ¥Ö„Õ¨ ÕºÕ¡Õ¯Õ¡Õ½ Õ§';
+$labels['valueislessthanequal'] = 'Õ¡Ö€ÕªÕ¥Ö„Õ¨ ÕºÕ¡Õ¯Õ¡Õ½ Õ§ Õ¯Õ¡Õ´ Õ°Õ¡Õ¾Õ¡Õ½Õ¡Ö€ Õ§';
+$labels['valueequals'] = 'Õ¡Ö€ÕªÕ¥Ö„Õ¨ Õ°Õ¡Õ¾Õ¡Õ½Õ¡Ö€ Õ§';
+$labels['valuenotequals'] = 'Õ¡Ö€ÕªÕ¥Ö„Õ¨ Õ°Õ¡Õ¾Õ¡Õ½Õ¡Ö€ Õ¹Õ§';
+$labels['setflags'] = 'Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ Õ¶Õ·Õ¥Õ¬ Õ¸Ö€ÕºÕ¥Õ½';
+$labels['addflags'] = 'Ô±Õ¾Õ¥Õ¬Õ¡ÖÕ¶Õ¥Õ¬ Õ¶Õ·Õ¡Õ¶Õ¶Õ¥Ö€ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¡Õ¶Õ¨';
+$labels['removeflags'] = 'Õ€Õ¥Õ¼Õ¡ÖÕ¶Õ¥Õ¬ Õ¶Õ·Õ¡Õ¶Õ¶Õ¥Ö€ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ«Ö';
+$labels['flagread'] = 'Ô¸Õ¶Õ©Õ¥Ö€ÖÕ¾Õ¡Õ®';
+$labels['flagdeleted'] = 'Õ‹Õ¶Õ»Õ¾Õ¡Õ®';
+$labels['flaganswered'] = 'ÕŠÕ¡Õ¿Õ¡Õ½Õ­Õ¡Õ¶Õ¾Õ¡Õ®';
+$labels['flagflagged'] = 'Õ†Õ·Õ¾Õ¡Õ®';
+$labels['flagdraft'] = 'ÕÖ‡Õ¡Õ£Õ«Ö€';
+$labels['filtercreate'] = 'ÕÕ¿Õ¥Õ²Õ®Õ¥Õ¬ Õ¦Õ¿Õ«Õ¹';
+$labels['usedata'] = 'Ô¶Õ¿Õ«Õ¹Õ¸Ö‚Õ´ Ö…Õ£Õ¿Õ¡Õ£Õ¸Ö€Õ®Õ¥Õ¬ Õ°Õ¥Õ¿Ö‡ÕµÕ¡Õ¬ Õ¿Õ¥Õ²Õ¥Õ¯Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨.';
+$labels['nextstep'] = 'Õ€Õ¡Õ»Õ¸Ö€Õ¤ Ö„Õ¡ÕµÕ¬';
+$labels['...'] = '…';
+$labels['advancedopts'] = 'Õ€Õ¡Õ¾Õ¥Õ¬ÕµÕ¡Õ¬ Õ¨Õ¶Õ¿Ö€Õ¡Õ¶Ö„Õ¶Õ¥Ö€';
+$labels['body'] = 'Õ„Õ¡Ö€Õ´Õ«Õ¶';
+$labels['address'] = 'Õ°Õ¡Õ½ÖÕ¥';
+$labels['envelope'] = 'Õ®Ö€Õ¡Ö€';
+$labels['modifier'] = 'ÖƒÕ¸ÖƒÕ¸Õ­Õ«Õ¹`';
+$labels['text'] = 'Õ¿Õ¥Ö„Õ½Õ¿';
+$labels['undecoded'] = 'Õ´Õ¡Ö„Õ¸Ö‚Ö€';
+$labels['contenttype'] = 'Õ¢Õ¸Õ¾Õ¡Õ¶Õ¤Õ¡Õ¯Õ¸Ö‚Õ©ÕµÕ¡Õ¶ Õ¿Õ«Õº';
+$labels['modtype'] = 'Õ¿Õ«Õº`';
+$labels['allparts'] = 'Õ¢Õ¸Õ¬Õ¸Ö€Õ¨';
+$labels['domain'] = 'Õ¿Õ«Ö€Õ¸Ö‚ÕµÕ©';
+$labels['localpart'] = 'Õ¬Õ¸Õ¯Õ¡Õ¬ Õ´Õ¡Õ½';
+$labels['user'] = 'Ö…Õ£Õ¿Õ¾Õ¸Õ²';
+$labels['detail'] = 'Õ´Õ¡Õ½';
+$labels['comparator'] = 'Õ°Õ¡Õ´Õ¥Õ´Õ¡Õ¿Õ«Õ¹`';
+$labels['default'] = 'Õ¬Õ¼Õ¡Õ¯ÕµÕ¡Ö';
+$labels['octet'] = 'Õ¡Õ¶ÖƒÕ¸ÖƒÕ¸Õ­ (Ö…Õ¯Õ¿Õ¥Õ¿)';
+$labels['asciicasemap'] = 'case insensitive (ascii-casemap)';
+$labels['asciinumeric'] = 'numeric (ascii-numeric)';
+$labels['filterunknownerror'] = 'ÕÕ¥Ö€Õ¾Õ¥Ö€Õ« Õ¡Õ¶Õ°Õ¡ÕµÕ¿ Õ½Õ­Õ¡Õ¬';
+$labels['filterconnerror'] = 'ÕÕ¥Ö€Õ¾Õ¥Ö€Õ« Õ°Õ¥Õ¿ Õ¯Õ¡ÕºÕ« Õ­Õ¶Õ¤Õ«Ö€Ö‰';
+$labels['filterdeleteerror'] = 'ÕÕ¥Ö€Õ¾Õ¥Ö€Õ« Õ½Õ­Õ¡Õ¬, Õ¦Õ¿Õ«Õ¹Õ« Õ»Õ¶Õ»Õ¸Ö‚Õ´Õ¶ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥ÖÖ‰';
+$labels['filterdeleted'] = 'Ô¶Õ¿Õ«Õ¹Õ¨ Õ»Õ¶Õ»Õ¾Õ¥ÖÖ‰';
+$labels['filtersaved'] = 'Ô¶Õ¿Õ«Õ¹Õ¨ ÕºÕ¡Õ°ÕºÕ¡Õ¶Õ¾Õ¥ÖÖ‰';
+$labels['filtersaveerror'] = 'ÕÕ¥Ö€Õ¾Õ¥Ö€Õ« Õ½Õ­Õ¡Õ¬, Õ¦Õ¿Õ«Õ¹Õ« ÕºÕ¡Õ°ÕºÕ¡Õ¶Õ´Õ¡Õ¶ Õ½Õ­Õ¡Õ¬Ö‰';
+$labels['filterdeleteconfirm'] = 'Ô´Õ¸Ö‚Ö„ Õ«Õ½Õ¯Õ¡ÕºÕ¥ÕžÕ½ ÖÕ¡Õ¶Õ¯Õ¡Õ¶Õ¸Ö‚Õ´ Õ¥Ö„ Õ»Õ¶Õ»Õ¥Õ¬ Õ¶Õ·Õ¾Õ¡Õ® Õ¦Õ¿Õ«Õ¹Õ¨Ö‰';
+$labels['ruledeleteconfirm'] = 'Ô´Õ¸Ö‚Ö„ Õ«Õ½Õ¯Õ¡ÕºÕ¥ÕžÕ½ ÖÕ¡Õ¶Õ¯Õ¡Õ¶Õ¸Ö‚Õ´ Õ¥Ö„ Õ»Õ¶Õ»Õ¥Õ¬ Õ¶Õ·Õ¾Õ¡Õ® ÕºÕ¡ÕµÕ´Õ¡Õ¶Õ¨Ö‰';
+$labels['actiondeleteconfirm'] = 'Ô´Õ¸Ö‚Ö„ Õ«Õ½Õ¯Õ¡ÕºÕ¥ÕžÕ½ ÖÕ¡Õ¶Õ¯Õ¡Õ¶Õ¸Ö‚Õ´ Õ¥Ö„ Õ»Õ¶Õ»Õ¥Õ¬ Õ¶Õ·Õ¾Õ¡Õ® Õ£Õ¸Ö€Õ®Õ¸Õ²Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨Ö‰';
+$labels['forbiddenchars'] = 'Ô´Õ¡Õ·Õ¿Õ¸Ö‚Õ´ Õ¡Õ¼Õ¯Õ¡ Õ¥Õ¶ Õ¡Ö€Õ£Õ¥Õ¬Õ¾Õ¡Õ® Õ¶Õ«Õ·Õ¥Ö€Ö‰';
+$labels['cannotbeempty'] = 'Ô´Õ¡Õ·Õ¿Õ¨ Õ¤Õ¡Õ¿Õ¡Ö€Õ¯ Õ¹Õ« Õ¯Õ¡Ö€Õ¸Õ² Õ¬Õ«Õ¶Õ¥Õ¬Ö‰';
+$labels['ruleexist'] = 'ÕÖ€Õ¾Õ¡Õ® Õ¡Õ¶Õ¸Ö‚Õ¶Õ¸Õ¾ Õ¦Õ¿Õ«Õ¹ Õ¡Ö€Õ¤Õ¥Õ¶ Õ£Õ¸ÕµÕ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶ Õ¸Ö‚Õ¶Õ«Ö‰';
+$labels['setactivateerror'] = 'ÕÕ¥Ö€Õ¾Õ¥Ö€Õ« Õ½Õ­Õ¡Õ¬Ö‰ Õ†Õ·Õ¾Õ¡Õ® Õ¦Õ¿Õ«Õ¹Õ¶Õ¥Ö€Õ« Õ°Õ¡Õ´Õ¡Õ¬Õ«Ö€Õ« Õ´Õ«Õ¡ÖÕ´Õ¡Õ¶ Õ±Õ¡Õ­Õ¸Õ²Õ¸Ö‚Õ´Ö‰';
+$labels['setdeactivateerror'] = 'ÕÕ¥Ö€Õ¾Õ¥Ö€Õ« Õ½Õ­Õ¡Õ¬Ö‰ Õ†Õ·Õ¾Õ¡Õ® Õ¦Õ¿Õ«Õ¹Õ¶Õ¥Ö€Õ« Õ°Õ¡Õ´Õ¡Õ¬Õ«Ö€Õ« Õ¡Õ¶Õ»Õ¡Õ¿Õ´Õ¡Õ¶ Õ±Õ¡Õ­Õ¸Õ²Õ¸Ö‚Õ´Ö‰';
+$labels['setdeleteerror'] = 'ÕÕ¥Ö€Õ¾Õ¥Ö€Õ« Õ½Õ­Õ¡Õ¬Ö‰ Õ†Õ·Õ¾Õ¡Õ® Õ¦Õ¿Õ«Õ¹Õ¶Õ¥Ö€Õ« Õ°Õ¡Õ´Õ¡Õ¬Õ«Ö€Õ« Õ»Õ¶Õ»Õ´Õ¡Õ¶ Õ±Õ¡Õ­Õ¸Õ²Õ¸Ö‚Õ´Ö‰';
+$labels['setactivated'] = 'Ô¶Õ¿Õ«Õ¹Õ¶Õ¥Ö€Õ« Õ°Õ¡Õ´Õ¡Õ¬Õ«Ö€Õ¨ Õ´Õ«Õ¡ÖÕ¾Õ¡Õ® Õ§Ö‰';
+$labels['setdeactivated'] = 'Ô¶Õ¿Õ«Õ¹Õ¶Õ¥Ö€Õ« Õ°Õ¡Õ´Õ¡Õ¬Õ«Ö€Õ¨ Õ¡Õ¶Õ»Õ¡Õ¿Õ¾Õ¡Õ® Õ§Ö‰';
+$labels['setdeleted'] = 'Ô¶Õ¿Õ«Õ¹Õ¶Õ¥Ö€Õ« Õ°Õ¡Õ´Õ¡Õ¬Õ«Ö€Õ¨ Õ»Õ¶Õ»Õ¾Õ¡Õ® Õ§Ö‰';
+$labels['setdeleteconfirm'] = 'Ô´Õ¸Ö‚Ö„ Õ«Õ½Õ¯Õ¡ÕºÕ¥ÕžÕ½ ÖÕ¡Õ¶Õ¯Õ¡Õ¶Õ¸Ö‚Õ´ Õ¥Ö„ Õ»Õ¶Õ»Õ¥Õ¬ Õ¶Õ·Õ¾Õ¡Õ® Õ¦Õ¿Õ«Õ¹Õ¶Õ¥Ö€Õ« Õ°Õ¡Õ´Õ¡Õ¬Õ«Ö€Õ¨Ö‰';
+$labels['setcreateerror'] = 'ÕÕ¥Ö€Õ¾Õ¥Ö€Õ« Õ½Õ­Õ¡Õ¬Ö‰ Ô¶Õ¿Õ«Õ¹Õ¶Õ¥Ö€Õ« Õ°Õ¡Õ´Õ¡Õ¬Õ«Ö€Õ« Õ½Õ¿Õ¥Õ²Õ®Õ¸Ö‚Õ´Õ¨ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥ÖÖ‰';
+$labels['setcreated'] = 'Ô¶Õ¿Õ«Õ¹Õ¶Õ¥Ö€Õ« Õ°Õ¡Õ´Õ¡Õ¬Õ«Ö€Õ¨ Õ½Õ¿Õ¥Õ²Õ®Õ¾Õ¡Õ® Õ§Ö‰';
+$labels['activateerror'] = 'ÕÕ¥Ö€Õ¾Õ¥Ö€Õ« Õ½Õ­Õ¡Õ¬Ö‰ Õ†Õ·Õ¾Õ¡Õ® Õ¦Õ¿Õ«Õ¹Õ« Õ´Õ«Õ¡ÖÕ´Õ¡Õ¶ Õ±Õ¡Õ­Õ¸Õ²Õ¸Ö‚Õ´Ö‰';
+$labels['deactivateerror'] = 'ÕÕ¥Ö€Õ¾Õ¥Ö€Õ« Õ½Õ­Õ¡Õ¬Ö‰ Õ†Õ·Õ¾Õ¡Õ® Õ¦Õ¿Õ«Õ¹Õ« Õ¡Õ¶Õ»Õ¡Õ¿Õ´Õ¡Õ¶ Õ±Õ¡Õ­Õ¸Õ²Õ¸Ö‚Õ´Ö‰';
+$labels['activated'] = 'Ô¶Õ¿Õ«Õ¹Õ« Õ¡Õ¶Õ»Õ¡Õ¿Õ¾Õ¡Õ® Õ§Ö‰';
+$labels['deactivated'] = 'Ô¶Õ¿Õ«Õ¹Õ« Õ´Õ«Õ¡ÖÕ¾Õ¡Õ® Õ§Ö‰';
+$labels['moved'] = 'Ô¶Õ¿Õ«Õ¹Õ« Õ¿Õ¥Õ²Õ¡ÖƒÕ¸Õ­Õ¾Õ¡Õ® Õ§Ö‰';
+$labels['moveerror'] = 'ÕÕ¥Ö€Õ¾Õ¥Ö€Õ« Õ½Õ­Õ¡Õ¬Ö‰ Õ†Õ·Õ¾Õ¡Õ® Õ¦Õ¿Õ«Õ¹Õ« Õ¿Õ¥Õ²Õ¡ÖƒÕ¸Õ­Õ´Õ¡Õ¶ Õ±Õ¡Õ­Õ¸Õ²Õ¸Ö‚Õ´Ö‰';
+$labels['nametoolong'] = 'Ô±Õ¶Õ¸Ö‚Õ¶Õ¨ Õ¹Õ¡ÖƒÕ¡Õ¦Õ¡Õ¶Ö Õ¥Ö€Õ¯Õ¡Ö€ Õ§Ö‰';
+$labels['namereserved'] = 'Ô±Õ¶Õ©Õ¸Ö‚ÕµÕ¬Õ¡Õ¿Ö€Õ¥Õ¬Õ« Õ¡Õ¶Õ¸Ö‚Õ¶Ö‰';
+$labels['setexist'] = 'Õ€Õ¡Õ´Õ¡Õ¬Õ«Ö€Õ¨ Õ¡Ö€Õ¤Õ¥Õ¶ Õ£Õ¸ÕµÕ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶ Õ¸Ö‚Õ¶Õ«Ö‰';
+$labels['nodata'] = 'ÕŠÕ¡Õ°Õ¡Õ¶Õ»Õ¾Õ¸Ö‚Õ´ Õ§ Õ¶Õ·Õ¥Õ¬ Õ£Õ¸Õ¶Õ¥ Õ´Õ¥Õ¯ Õ¤Õ«Ö€Ö„Ö‰';
+
diff --git a/plugins/managesieve/localization/ja_JP.inc b/plugins/managesieve/localization/ja_JP.inc
index 49675c4c4..f7b96b7d1 100644
--- a/plugins/managesieve/localization/ja_JP.inc
+++ b/plugins/managesieve/localization/ja_JP.inc
@@ -9,32 +9,31 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Takahiro Kambe <Unknown> |
+ | Author: Takahiro Kambe |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
$labels['filters'] = 'フィルター';
$labels['managefilters'] = 'å—信メールã®ãƒ•ã‚£ãƒ«ã‚¿ãƒ¼ã‚’管ç†';
-$labels['filtername'] = 'フィルターã®åå‰';
+$labels['filtername'] = 'フィルターå';
$labels['newfilter'] = 'æ–°ã—ã„フィルター';
$labels['filteradd'] = 'フィルターを追加';
$labels['filterdel'] = 'フィルターを削除';
$labels['moveup'] = '上ã«ç§»å‹•';
$labels['movedown'] = '下ã«ç§»å‹•';
-$labels['filterallof'] = '次ã®ãƒ«ãƒ¼ãƒ«ã™ã¹ã¦ã«ä¸€è‡´';
-$labels['filteranyof'] = '次ã®ãƒ«ãƒ¼ãƒ«ã®ã©ã‚Œã‹ã«ä¸€è‡´';
+$labels['filterallof'] = '次ã®ãƒ«ãƒ¼ãƒ«ã®ã™ã¹ã¦ã«ä¸€è‡´';
+$labels['filteranyof'] = '次ã®ãƒ«ãƒ¼ãƒ«ã®ã„ãšã‚Œã‹ã«ä¸€è‡´';
$labels['filterany'] = 'ã™ã¹ã¦ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸';
$labels['filtercontains'] = 'å«ã‚€';
$labels['filternotcontains'] = 'å«ã¾ãªã„';
-$labels['filteris'] = '次ã¨ç­‰ã—ã„';
-$labels['filterisnot'] = '次ã¨ç­‰ã—ããªã„';
+$labels['filteris'] = '次ã«ç­‰ã—ã„';
+$labels['filterisnot'] = '次ã«ç­‰ã—ããªã„';
$labels['filterexists'] = 'ãŒå­˜åœ¨';
$labels['filternotexists'] = 'ãŒå­˜åœ¨ã—ãªã„';
-$labels['filtermatches'] = '次ã®å¼ã¨ä¸€è‡´';
-$labels['filternotmatches'] = '次ã®å¼ã¨ä¸€è‡´ã—ãªã„';
-$labels['filterregex'] = '次ã®æ­£è¦è¡¨ç¾ã¨ä¸€è‡´';
+$labels['filtermatches'] = '次ã®å¼ã«ä¸€è‡´';
+$labels['filternotmatches'] = '次ã®å¼ã«ä¸€è‡´ã—ãªã„';
+$labels['filterregex'] = '次ã®æ­£è¦è¡¨ç¾ã«ä¸€è‡´';
$labels['filternotregex'] = '次ã®æ­£è¦è¡¨ç¾ã«ä¸€è‡´ã—ãªã„';
$labels['filterunder'] = 'より下';
$labels['filterover'] = 'より上';
@@ -48,7 +47,7 @@ $labels['messagereply'] = 'メッセージを返信';
$labels['messagedelete'] = 'メッセージを削除';
$labels['messagediscard'] = 'メッセージを破棄';
$labels['messagesrules'] = 'å—ä¿¡ã—ãŸãƒ¡ãƒ¼ãƒ«ã®å‡¦ç†:';
-$labels['messagesactions'] = '以下ã®å‹•ä½œã‚’実行:';
+$labels['messagesactions'] = '以下ã®æ“作を実行:';
$labels['add'] = '追加';
$labels['del'] = '削除';
$labels['sender'] = 'é€ä¿¡è€…';
diff --git a/plugins/managesieve/localization/ko_KR.inc b/plugins/managesieve/localization/ko_KR.inc
new file mode 100644
index 000000000..c3fff4115
--- /dev/null
+++ b/plugins/managesieve/localization/ko_KR.inc
@@ -0,0 +1,131 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ko_KR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Kim, Woohyun <woohyun.kim@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['filters'] = 'í•„í„°';
+$labels['managefilters'] = '수신 ë©”ì¼ í•„í„° 관리';
+$labels['filtername'] = 'í•„í„° ì´ë¦„';
+$labels['newfilter'] = '새 필터';
+$labels['filteradd'] = '필터 추가';
+$labels['filterdel'] = '필터 삭제';
+$labels['moveup'] = '위로 ì´ë™';
+$labels['movedown'] = '아래로 ì´ë™';
+$labels['filterallof'] = '다ìŒì— 오는 규칙들 전부와 ì¼ì¹˜';
+$labels['filteranyof'] = '다ìŒì— 오는 규칙들 중 ì–´ë– í•œ 것 ì´ë¼ë„ ì¼ì¹˜';
+$labels['filterany'] = '모든 메시지';
+$labels['filtercontains'] = 'í¬í•¨í•©ë‹ˆë‹¤';
+$labels['filternotcontains'] = 'í¬í•¨í•˜ì§€ 않습니다';
+$labels['filteris'] = '와 같습니다';
+$labels['filterisnot'] = '와 같지 않습니다';
+$labels['filterexists'] = '존재합니다';
+$labels['filternotexists'] = '존재하지 않습니다';
+$labels['filtermatches'] = '표현ì‹ê³¼ ì¼ì¹˜í•©ë‹ˆë‹¤';
+$labels['filternotmatches'] = '표현ì‹ê³¼ ì¼ì¹˜í•˜ì§€ 않습니다';
+$labels['filterregex'] = '정규표현ì‹ê³¼ ì¼ì¹˜í•©ë‹ˆë‹¤';
+$labels['filternotregex'] = 'ì •ê·œ 표현ì‹ê³¼ ì¼ì¹˜í•˜ì§€ 않습니다';
+$labels['addrule'] = '규칙 ë”하기';
+$labels['delrule'] = '규칙 삭제';
+$labels['messagemoveto'] = '메시지 ì´ë™';
+$labels['messageredirect'] = '메시지를 Redirect';
+$labels['messagecopyto'] = '메시지를 복사';
+$labels['messagesendcopy'] = 'ë©”ì‹œì§€ì˜ ë³µì‚¬ë³¸ 보내기';
+$labels['messagereply'] = 'ë©”ì‹œì§€ì— íšŒì‹ í•˜ê¸°';
+$labels['messagedelete'] = '메시지 삭제';
+$labels['add'] = '추가';
+$labels['del'] = '삭제';
+$labels['sender'] = '보낸 사람';
+$labels['recipient'] = '수신ìž';
+$labels['vacationaddresses'] = 'ë‚˜ì˜ ì¶”ê°€ e-mail 주소(들) (콤마로 구분 ë¨):';
+$labels['vacationreason'] = '메시지 본문 (휴가 사유):';
+$labels['vacationsubject'] = '메시지 제목:';
+$labels['rulestop'] = 'ê·œì¹™ì˜ ì‹¤í–‰ì„ ë©ˆì¶¤';
+$labels['enable'] = '사용/사용안함';
+$labels['filterset'] = 'í•„í„° 묶ìŒ';
+$labels['filtersets'] = 'í•„í„° 묶ìŒ';
+$labels['filtersetadd'] = 'í•„í„° ë¬¶ìŒ ì¶”ê°€';
+$labels['filtersetdel'] = '현재 í•„í„° 묶ìŒì„ ì‚­ì œ';
+$labels['filtersetact'] = '현재 필터 세트를 활성화';
+$labels['filtersetdeact'] = '현재 필터 세트를 비활성화';
+$labels['filterdef'] = 'í•„í„° ì •ì˜';
+$labels['filtersetname'] = 'í•„í„° 세트 ì´ë¦„';
+$labels['newfilterset'] = '새로운 필터 세트';
+$labels['active'] = '활성';
+$labels['none'] = 'ì—†ìŒ';
+$labels['fromset'] = '묶ìŒìœ¼ë¡œ 부터';
+$labels['fromfile'] = '파ì¼ë¡œ 부터';
+$labels['filterdisabled'] = 'í•„í„° 사용하지 ì•ŠìŒ';
+$labels['countisgreaterthan'] = '갯수가 í¼';
+$labels['countisgreaterthanequal'] = '갯수가 í¬ê±°ë‚˜ ê°™ìŒ';
+$labels['countislessthan'] = '갯수가 ìž‘ìŒ';
+$labels['countislessthanequal'] = '갯수가 작거나 ê°™ìŒ';
+$labels['countequals'] = '갯수가 ê°™ìŒ';
+$labels['countnotequals'] = '갯수가 같지 ì•ŠìŒ';
+$labels['valueisgreaterthan'] = 'ê°’ì´ í¼';
+$labels['valueisgreaterthanequal'] = 'ê°’ì´ í¬ê±°ë‚˜ ê°™ìŒ';
+$labels['valueislessthan'] = 'ê°’ì´ ìž‘ìŒ';
+$labels['valueislessthanequal'] = 'ê°’ì´ ìž‘ê±°ë‚˜ ê°™ìŒ';
+$labels['valueequals'] = 'ê°’ì´ ê°™ìŒ';
+$labels['valuenotequals'] = 'ê°’ì´ ê°™ì§€ ì•ŠìŒ';
+$labels['setflags'] = 'ë©”ì‹œì§€ì— í”Œëž˜ê·¸ë¥¼ 설정';
+$labels['addflags'] = 'ë©”ì‹œì§€ì— í”Œëž˜ê·¸ë¥¼ 추가';
+$labels['removeflags'] = '메시지ì—ì„œ 플래그를 제거';
+$labels['flagread'] = 'ì½ìŒ';
+$labels['flagdeleted'] = 'ì‚­ì œë¨';
+$labels['flaganswered'] = 'ì‘답함';
+$labels['flagflagged'] = '표시함';
+$labels['flagdraft'] = '임시 보관함';
+$labels['filtercreate'] = 'í•„í„° ìƒì„±';
+$labels['usedata'] = 'í•„í„°ì—ì„œ 다ìŒì— 오는 ë°ì´í„°ë¥¼ 사용';
+$labels['nextstep'] = 'ë‹¤ìŒ ë‹¨ê³„';
+$labels['...'] = '...';
+$labels['advancedopts'] = 'ìƒì„¸ 설정';
+$labels['body'] = '본문';
+$labels['address'] = '주소';
+$labels['text'] = 'í…스트';
+$labels['domain'] = 'ë„ë©”ì¸';
+$labels['user'] = '사용ìž';
+$labels['default'] = '기본값';
+$labels['filterunknownerror'] = '알수 없는 서버 ì—러.';
+$labels['filterconnerror'] = 'ì„œë²„ì— ì—°ê²°í•  수 없습니다.';
+$labels['filterdeleteerror'] = '필터를 삭제할 수 없습니다. 서버 ì—러 ë°œìƒ í•¨.';
+$labels['filterdeleted'] = '필터를 성공ì ìœ¼ë¡œ ì‚­ì œ 함.';
+$labels['filtersaved'] = '필터를 성공ì ìœ¼ë¡œ 저장 함.';
+$labels['filtersaveerror'] = '필터를 저장할 수 ì—†ìŒ. 서버 ì—러 ë°œìƒ í•¨.';
+$labels['filterdeleteconfirm'] = 'ì •ë§ë¡œ ì„ íƒí•œ í•„í„°ì˜ ì‚­ì œë¥¼ ì›í•˜ì‹­ë‹ˆê¹Œ?';
+$labels['ruledeleteconfirm'] = 'ì„ íƒí•œ ê·œì¹™ì„ ì‚­ì œí•˜ê³ ìž í•˜ëŠ” ê²ƒì´ í™•ì‹¤í•©ë‹ˆê¹Œ?';
+$labels['actiondeleteconfirm'] = 'ì„ íƒí•œ ë™ìž‘ì„ ì‚­ì œí•˜ê³ ìž í•˜ëŠ” ê²ƒì´ í™•ì‹¤í•©ë‹ˆê¹Œ?';
+$labels['forbiddenchars'] = 'í•„ë“œì— ê¸ˆì§€ëœ ë¬¸ìžê°€ 있ìŒ.';
+$labels['cannotbeempty'] = '필드는 ë¹„ì–´ìžˆì„ ìˆ˜ ì—†ìŒ.';
+$labels['ruleexist'] = '지정한 ì´ë¦„ì˜ í•„í„°ê°€ ì´ë¯¸ 존재 함.';
+$labels['setactivateerror'] = 'ì„ íƒí•œ í•„í„° 묶ìŒì„ 활성화 í•  수 ì—†ìŒ. 서버 ì—러 ë°œìƒ í•¨.';
+$labels['setdeactivateerror'] = 'ì„ íƒí•œ í•„í„° 묶ìŒì„ 비활성화 í•  수 ì—†ìŒ. 서버 ì—러 ë°œìƒ í•¨.';
+$labels['setdeleteerror'] = 'ì„ íƒí•œ í•„í„° 묶ìŒì„ 삭제할 수 ì—†ìŒ. 서버 ì—러 ë°œìƒ í•¨.';
+$labels['setactivated'] = 'í•„í„° 묶ìŒì„ 성공ì ìœ¼ë¡œ 활성화 하였ìŒ.';
+$labels['setdeactivated'] = 'í•„í„° 묶ìŒì„ 성공ì ìœ¼ë¡œ 비활성화 하였ìŒ.';
+$labels['setdeleted'] = 'í•„í„° 묶ìŒì„ 성공ì ìœ¼ë¡œ ì‚­ì œ 함.';
+$labels['setdeleteconfirm'] = 'ì„ íƒí•œ í•„í„° 묶ìŒì„ ì§€ìš°ê³ ìž í•˜ëŠ” ê²ƒì´ í™•ì‹¤í•©ë‹ˆê¹Œ?';
+$labels['setcreateerror'] = 'í•„í„° 묶ìŒì„ ìƒì„±í•  수 ì—†ìŒ. 서버 ì—러 ë°œìƒ í•¨.';
+$labels['setcreated'] = 'í•„í„° 묶ìŒì„ 성공ì ìœ¼ë¡œ ìƒì„± 함.';
+$labels['activateerror'] = 'ì„ íƒí•œ í•„í„°(들)ì„ ë™ìž‘하게 í•  수 ì—†ìŒ. 서버 ì—러 ë°œìƒ í•¨.';
+$labels['deactivateerror'] = 'ì„ íƒí•œ í•„í„°(들)ì„ ë™ìž‘하지 않게 í•  수 ì—†ìŒ. 서버 ì—러 ë°œìƒ í•¨.';
+$labels['activated'] = 'í•„í„°(들)ì„ ë™ìž‘하지 않게 í•˜ëŠ”ë° ì„±ê³µí•˜ì˜€ìŒ.';
+$labels['deactivated'] = 'í•„í„°(들)ì„ ë™ìž‘하게 í•˜ëŠ”ë° ì„±ê³µí•˜ì˜€ìŒ.';
+$labels['moved'] = '필터를 ì´ë™í•˜ëŠ” ë° ì„±ê³µí•˜ì˜€ìŒ.';
+$labels['moveerror'] = 'ì„ íƒí•œ 필터를 ì´ë™í•  수 ì—†ìŒ. 서버 ì—러 ë°œìƒ í•¨.';
+$labels['nametoolong'] = 'ì´ë¦„ì´ ë„ˆë¬´ ê¹€.';
+$labels['namereserved'] = 'ì˜ˆì•½ëœ ì´ë¦„.';
+$labels['setexist'] = '묶ìŒì´ ì´ë¯¸ 존재 함.';
+$labels['nodata'] = 'ì ì–´ë„ í•˜ë‚˜ì˜ ìœ„ì¹˜ê°€ ì„ íƒë˜ì–´ì•¼ 함!';
+
diff --git a/plugins/managesieve/localization/pl_PL.inc b/plugins/managesieve/localization/pl_PL.inc
index a4a1aeae6..0b4cb6073 100644
--- a/plugins/managesieve/localization/pl_PL.inc
+++ b/plugins/managesieve/localization/pl_PL.inc
@@ -93,6 +93,16 @@ $labels['flagdeleted'] = 'Usunięta';
$labels['flaganswered'] = 'Z odpowiedziÄ…';
$labels['flagflagged'] = 'Oflagowana';
$labels['flagdraft'] = 'Szkic';
+$labels['setvariable'] = 'Ustaw zmiennÄ…';
+$labels['setvarname'] = 'Nazwa zmiennej:';
+$labels['setvarvalue'] = 'Wartość zmiennej:';
+$labels['setvarmodifiers'] = 'Modyfikatory:';
+$labels['varlower'] = 'małe litery (:lower)';
+$labels['varupper'] = 'duże litery (:upper)';
+$labels['varlowerfirst'] = 'pierwsza litera mała (:lowerfirst)';
+$labels['varupperfirst'] = 'pierwsza litera duża (:upperfirst)';
+$labels['varquotewildcard'] = 'anulowane znaki specjalne (:quotewildcard)';
+$labels['varlength'] = 'długość (:length)';
$labels['filtercreate'] = 'Utwórz filtr';
$labels['usedata'] = 'Użyj następujących danych do utworzenia filtra:';
$labels['nextstep'] = 'Następny krok';
diff --git a/plugins/managesieve/localization/ru_RU.inc b/plugins/managesieve/localization/ru_RU.inc
index 79c55912e..cfc2ac1e4 100644
--- a/plugins/managesieve/localization/ru_RU.inc
+++ b/plugins/managesieve/localization/ru_RU.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Vyacheslav Sharmanov <Unknown> |
+ | Author: Vyacheslav Sharmanov |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -36,8 +35,8 @@ $labels['filtermatches'] = 'Ñовпадает Ñ Ð²Ñ‹Ñ€Ð°Ð¶ÐµÐ½Ð¸ÐµÐ¼';
$labels['filternotmatches'] = 'не Ñовпадает Ñ Ð²Ñ‹Ñ€Ð°Ð¶ÐµÐ½Ð¸ÐµÐ¼';
$labels['filterregex'] = 'Ñовпадает Ñ Ñ€ÐµÐ³ÑƒÐ»Ñрным выражением';
$labels['filternotregex'] = 'не Ñовпадает Ñ Ñ€ÐµÐ³ÑƒÐ»Ñрным выражением';
-$labels['filterunder'] = 'под';
-$labels['filterover'] = 'на';
+$labels['filterunder'] = 'меньше';
+$labels['filterover'] = 'больше';
$labels['addrule'] = 'Добавить правило';
$labels['delrule'] = 'Удалить правило';
$labels['messagemoveto'] = 'ПеремеÑтить Ñообщение в';
@@ -53,7 +52,7 @@ $labels['add'] = 'Добавить';
$labels['del'] = 'Удалить';
$labels['sender'] = 'Отправитель';
$labels['recipient'] = 'Получатель';
-$labels['vacationaddresses'] = 'СпиÑок дополнительных адреÑов Ð¿Ð¾Ð»ÑƒÑ‡Ð°Ñ‚ÐµÐ»Ñ (разделённых запÑтыми):';
+$labels['vacationaddresses'] = 'СпиÑок моих дополнительных адреÑов (разделённых запÑтыми):';
$labels['vacationdays'] = 'Как чаÑто отправлÑÑ‚ÑŒ ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ (в днÑÑ…):';
$labels['vacationreason'] = 'ТекÑÑ‚ ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ (причина отÑутÑтвиÑ):';
$labels['vacationsubject'] = 'Тема ÑообщениÑ:';
@@ -69,7 +68,7 @@ $labels['filterdef'] = 'ОпиÑание фильтра';
$labels['filtersetname'] = 'Ðазвание набора фильтров';
$labels['newfilterset'] = 'Ðовый набор фильтров';
$labels['active'] = 'иÑпользуетÑÑ';
-$labels['none'] = 'пуÑтой';
+$labels['none'] = 'нет';
$labels['fromset'] = 'из набора';
$labels['fromfile'] = 'из файла';
$labels['filterdisabled'] = 'Отключить фильтр';
@@ -85,8 +84,8 @@ $labels['valueislessthan'] = 'значение меньше, чем';
$labels['valueislessthanequal'] = 'значение меньше или равно';
$labels['valueequals'] = 'значение равно';
$labels['valuenotequals'] = 'значение не равно';
-$labels['setflags'] = 'УÑтановить флаг на Ñообщение';
-$labels['addflags'] = 'Добавить флаг к Ñообщению';
+$labels['setflags'] = 'УÑтановить флаги на Ñообщение';
+$labels['addflags'] = 'Добавить флаги к Ñообщению';
$labels['removeflags'] = 'Убрать флаги из ÑообщениÑ';
$labels['flagread'] = 'Прочитано';
$labels['flagdeleted'] = 'Удалено';
@@ -101,43 +100,49 @@ $labels['advancedopts'] = 'Дополнительные параметры';
$labels['body'] = 'Тело пиÑьма';
$labels['address'] = 'адреÑ';
$labels['envelope'] = 'конверт';
-$labels['modifier'] = 'модификатор:';
+$labels['modifier'] = 'модификатор облаÑти поиÑка:';
$labels['text'] = 'текÑÑ‚';
+$labels['undecoded'] = 'необработанный (Ñырой)';
$labels['contenttype'] = 'тип Ñодержимого';
-$labels['modtype'] = 'тип:';
-$labels['allparts'] = 'вÑе';
-$labels['domain'] = 'домен';
-$labels['localpart'] = 'Ð»Ð¾ÐºÐ°Ð»ÑŒÐ½Ð°Ñ Ñ‡Ð°ÑÑ‚ÑŒ';
-$labels['user'] = 'пользователь';
-$labels['detail'] = 'детали';
+$labels['modtype'] = 'поиÑк в адреÑах:';
+$labels['allparts'] = 'везде';
+$labels['domain'] = 'в имени домена';
+$labels['localpart'] = 'только в имени пользователÑ, без домена';
+$labels['user'] = 'в полном имени пользователÑ';
+$labels['detail'] = 'в дополнительных ÑведениÑÑ…';
+$labels['comparator'] = 'ÑпоÑоб ÑравнениÑ:';
$labels['default'] = 'по умолчанию';
+$labels['octet'] = 'Строгий (octet)';
+$labels['asciicasemap'] = 'РегиÑтронезавиÑимый (ascii-casemap)';
+$labels['asciinumeric'] = 'ЧиÑловой (ascii-numeric)';
$labels['filterunknownerror'] = 'ÐеизвеÑÑ‚Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ° Ñервера';
$labels['filterconnerror'] = 'Ðевозможно подÑоединитÑÑ Ðº Ñерверу фильтров';
-$labels['filterdeleteerror'] = 'Ðевозможно удалить фильтр. Ошибка Ñервера';
-$labels['filterdeleted'] = 'Фильтр уÑпешно удалён';
-$labels['filtersaved'] = 'Фильтр уÑпешно Ñохранён';
-$labels['filtersaveerror'] = 'Ðевозможно Ñохранить фильтр. Ошибка Ñервера';
+$labels['filterdeleteerror'] = 'Ðевозможно удалить фильтр. Ошибка Ñервера.';
+$labels['filterdeleted'] = 'Фильтр уÑпешно удалён.';
+$labels['filtersaved'] = 'Фильтр уÑпешно Ñохранён.';
+$labels['filtersaveerror'] = 'Ðевозможно Ñохранить фильтр. Ошибка Ñервера.';
$labels['filterdeleteconfirm'] = 'Ð’Ñ‹ дейÑтвительно хотите удалить фильтр?';
$labels['ruledeleteconfirm'] = 'Ð’Ñ‹ уверенны, что хотите удалить Ñто правило?';
$labels['actiondeleteconfirm'] = 'Ð’Ñ‹ уверенны, что хотите удалить Ñто дейÑтвие?';
-$labels['forbiddenchars'] = 'ÐедопуÑтимые Ñимволы в поле';
-$labels['cannotbeempty'] = 'Поле не может быть пуÑтым';
+$labels['forbiddenchars'] = 'ÐедопуÑтимые Ñимволы в поле.';
+$labels['cannotbeempty'] = 'Поле не может быть пуÑтым.';
$labels['ruleexist'] = 'Фильтр Ñ Ñ‚Ð°ÐºÐ¸Ð¼ именем уже ÑущеÑтвует.';
-$labels['setactivateerror'] = 'Ðевозможно включить выбранный набор фильтров. Ошибка Ñервера';
-$labels['setdeactivateerror'] = 'Ðевозможно отключить выбранный набор фильтров. Ошибка Ñервера';
-$labels['setdeleteerror'] = 'Ðевозможно удалить выбранный набор фильтров. Ошибка Ñервера';
-$labels['setactivated'] = 'Ðабор фильтров уÑпешно включён';
-$labels['setdeactivated'] = 'Ðабор фильтров уÑпешно отключён';
-$labels['setdeleted'] = 'Ðабор фильтров уÑпешно удалён';
+$labels['setactivateerror'] = 'Ðевозможно включить выбранный набор фильтров. Ошибка Ñервера.';
+$labels['setdeactivateerror'] = 'Ðевозможно отключить выбранный набор фильтров. Ошибка Ñервера.';
+$labels['setdeleteerror'] = 'Ðевозможно удалить выбранный набор фильтров. Ошибка Ñервера.';
+$labels['setactivated'] = 'Ðабор фильтров уÑпешно включён.';
+$labels['setdeactivated'] = 'Ðабор фильтров уÑпешно отключён.';
+$labels['setdeleted'] = 'Ðабор фильтров уÑпешно удалён.';
$labels['setdeleteconfirm'] = 'Вы уверены в том, что хотите удалить выбранный набор фильтров?';
-$labels['setcreateerror'] = 'Ðевозможно Ñоздать набор фильтров. Ошибка Ñервера';
-$labels['setcreated'] = 'Ðабор фильтров уÑпешно Ñоздан';
+$labels['setcreateerror'] = 'Ðевозможно Ñоздать набор фильтров. Ошибка Ñервера.';
+$labels['setcreated'] = 'Ðабор фильтров уÑпешно Ñоздан.';
$labels['activateerror'] = 'Ðевозможно включить выбранный(е) фильтр(Ñ‹). Ошибка Ñервера.';
$labels['deactivateerror'] = 'Ðевозможно выключить выбранный(е) фильтр(Ñ‹). Ошибка Ñервера.';
$labels['activated'] = 'Фильтр(Ñ‹) уÑпешно отключен(Ñ‹).';
$labels['deactivated'] = 'Фильтр(Ñ‹) уÑпешно включен(Ñ‹).';
$labels['moved'] = 'Фильтр уÑпешно перемещён.';
-$labels['nametoolong'] = 'Ðевозможно Ñоздать набор фильтров. Ðазвание Ñлишком длинное';
+$labels['moveerror'] = 'Ðевозможно перемеÑтить фильтр. Ошибка Ñервера.';
+$labels['nametoolong'] = 'Ðевозможно Ñоздать набор фильтров. Ðазвание Ñлишком длинное.';
$labels['namereserved'] = 'Зарезервированное имÑ.';
$labels['setexist'] = 'Ðабор уже ÑущеÑтвует.';
$labels['nodata'] = 'Ðужно выбрать Ñ…Ð¾Ñ‚Ñ Ð±Ñ‹ одну позицию!';
diff --git a/plugins/managesieve/localization/sl_SI.inc b/plugins/managesieve/localization/sl_SI.inc
index fd3690f18..a0b61e70e 100644
--- a/plugins/managesieve/localization/sl_SI.inc
+++ b/plugins/managesieve/localization/sl_SI.inc
@@ -9,18 +9,17 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Barbara Krasovec <barbarak@arnes.si> |
+ | Author: Teja Cetinski <teja.cetinski@gmail.com> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
-$labels['filters'] = 'Pravila';
-$labels['managefilters'] = 'Uredi sporoÄilna pravila';
-$labels['filtername'] = 'Ime pravila';
-$labels['newfilter'] = 'Novo pravilo';
-$labels['filteradd'] = 'Dodaj pravilo';
-$labels['filterdel'] = 'Izbriši pravilo';
+$labels['filters'] = 'Filtri';
+$labels['managefilters'] = 'Uredi filtre za dohodno pošto';
+$labels['filtername'] = 'Ime filtra';
+$labels['newfilter'] = 'Nov filter';
+$labels['filteradd'] = 'Dodaj filter';
+$labels['filterdel'] = 'Izbriši filter';
$labels['moveup'] = 'Pomakni se navzgor';
$labels['movedown'] = 'Pomakni se navzdol';
$labels['filterallof'] = 'izpolnjeni morajo biti vsi pogoji';
@@ -101,14 +100,19 @@ $labels['advancedopts'] = 'Dodatne možnosti';
$labels['body'] = 'Vsebina';
$labels['address'] = 'naslov';
$labels['envelope'] = 'ovojnica';
+$labels['modifier'] = 'modifikator';
$labels['text'] = 'besedilo';
+$labels['undecoded'] = 'neobdelano';
$labels['contenttype'] = 'tip vsebine';
$labels['modtype'] = 'tip';
$labels['allparts'] = 'vse';
$labels['domain'] = 'domena';
+$labels['localpart'] = 'lokalni del';
$labels['user'] = 'uporabnik';
$labels['detail'] = 'podrobnosti';
+$labels['comparator'] = 'primerjalnik';
$labels['default'] = 'privzeto';
+$labels['octet'] = 'strict (octet)';
$labels['asciicasemap'] = 'ni obÄutljiv na velike/male Ärke (ascii-casemap)';
$labels['asciinumeric'] = 'numeriÄno (ascii-numeric)';
$labels['filterunknownerror'] = 'Prišlo je do neznane napake.';
diff --git a/plugins/managesieve/localization/zh_CN.inc b/plugins/managesieve/localization/zh_CN.inc
index cacece8c7..31bdc1ecd 100644
--- a/plugins/managesieve/localization/zh_CN.inc
+++ b/plugins/managesieve/localization/zh_CN.inc
@@ -11,7 +11,6 @@
+-----------------------------------------------------------------------+
| Author: Christopher Meng <cickumqt@gmail.com> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -137,6 +136,8 @@ $labels['setdeleted'] = '过滤器æˆåŠŸåˆ é™¤ã€‚';
$labels['setdeleteconfirm'] = '你确定è¦åˆ é™¤æŒ‡å®šè¿‡æ»¤å™¨ï¼Ÿ';
$labels['setcreateerror'] = '无法创建过滤器,æœåŠ¡å™¨é”™è¯¯ã€‚';
$labels['setcreated'] = '过滤器æˆåŠŸåˆ›å»ºã€‚';
+$labels['activateerror'] = '无法å¯ç”¨é€‰ä¸­çš„过滤器,因为æœåŠ¡å™¨å‘生错误。';
+$labels['deactivateerror'] = '无法ç¦ç”¨é€‰ä¸­çš„过滤器,因为æœåŠ¡å™¨å‘生错误。';
$labels['activated'] = 'ç¦ç”¨è¿‡æ»¤å™¨æˆåŠŸã€‚';
$labels['deactivated'] = 'å¯ç”¨è¿‡æ»¤å™¨æˆåŠŸã€‚';
$labels['moved'] = '过滤器移动æˆåŠŸã€‚';
diff --git a/plugins/managesieve/localization/zh_TW.inc b/plugins/managesieve/localization/zh_TW.inc
index 10a547ad7..db2292b9a 100644
--- a/plugins/managesieve/localization/zh_TW.inc
+++ b/plugins/managesieve/localization/zh_TW.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Nansen <Unknown> |
+ | Author: Nansen |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -125,5 +124,11 @@ $labels['setdeleted'] = '篩é¸å™¨é›†åˆæˆåŠŸåˆªé™¤';
$labels['setdeleteconfirm'] = '你確定è¦åˆªé™¤é¸æ“‡çš„篩é¸å™¨é›†åˆå—Žï¼Ÿ';
$labels['setcreateerror'] = '無法建立篩é¸å™¨é›†åˆã€‚ 伺æœå™¨ç™¼ç”ŸéŒ¯èª¤';
$labels['setcreated'] = '篩é¸å™¨é›†åˆæˆåŠŸå»ºç«‹';
+$labels['activateerror'] = '無法啟用é¸æ“‡çš„篩é¸å™¨ã€‚伺æœå™¨éŒ¯èª¤';
+$labels['deactivateerror'] = '無法åœç”¨é¸æ“‡çš„篩é¸å™¨ã€‚伺æœå™¨éŒ¯èª¤';
+$labels['activated'] = '篩é¸å™¨å·²åœç”¨';
+$labels['deactivated'] = '篩é¸å™¨å·²å•Ÿç”¨';
+$labels['moved'] = '篩é¸å™¨å·²ç§»å‹•';
+$labels['moveerror'] = '無法移動é¸æ“‡çš„篩é¸å™¨ã€‚伺æœå™¨éŒ¯èª¤';
$labels['nametoolong'] = '無法建立篩é¸å™¨é›†åˆã€‚ å稱太長';
diff --git a/plugins/managesieve/managesieve.js b/plugins/managesieve/managesieve.js
index 61883f6d2..f447719a2 100644
--- a/plugins/managesieve/managesieve.js
+++ b/plugins/managesieve/managesieve.js
@@ -638,7 +638,8 @@ function action_type_select(id)
target: document.getElementById('action_target' + id),
target_area: document.getElementById('action_target_area' + id),
flags: document.getElementById('action_flags' + id),
- vacation: document.getElementById('action_vacation' + id)
+ vacation: document.getElementById('action_vacation' + id),
+ set: document.getElementById('action_set' + id)
};
if (obj.value == 'fileinto' || obj.value == 'fileinto_copy') {
@@ -656,6 +657,9 @@ function action_type_select(id)
else if (obj.value == 'vacation') {
enabled.vacation = 1;
}
+ else if (obj.value == 'set') {
+ enabled.set = 1;
+ }
for (var x in elems) {
elems[x].style.display = !enabled[x] ? 'none' : 'inline';
diff --git a/plugins/managesieve/managesieve.php b/plugins/managesieve/managesieve.php
index 486b3fb1d..e7828f1da 100644
--- a/plugins/managesieve/managesieve.php
+++ b/plugins/managesieve/managesieve.php
@@ -62,7 +62,7 @@ class managesieve extends rcube_plugin
"x-beenthere",
);
- const VERSION = '5.0';
+ const VERSION = '5.2';
const PROGNAME = 'Roundcube (Managesieve)';
@@ -109,16 +109,16 @@ class managesieve extends rcube_plugin
function mail_task_handler()
{
// use jQuery for popup window
- $this->require_plugin('jqueryui');
+ $this->require_plugin('jqueryui');
// include js script and localization
$this->init_ui();
// include styles
- $skin = $this->rc->config->get('skin');
- if (!file_exists($this->home."/skins/$skin/managesieve_mail.css"))
- $skin = 'default';
- $this->include_stylesheet("skins/$skin/managesieve_mail.css");
+ $skin_path = $this->local_skin_path();
+ if (is_file($this->home . "/$skin_path/managesieve_mail.css")) {
+ $this->include_stylesheet("$skin_path/managesieve_mail.css");
+ }
// add 'Create filter' item to message menu
$this->api->add_content(html::tag('li', null,
@@ -143,6 +143,13 @@ class managesieve extends rcube_plugin
*/
function mail_headers($args)
{
+ // this hook can be executed many times
+ if ($this->mail_headers_done) {
+ return $args;
+ }
+
+ $this->mail_headers_done = true;
+
$headers = $args['headers'];
$ret = array();
@@ -615,6 +622,9 @@ class managesieve extends rcube_plugin
$days = get_input_value('_action_days', RCUBE_INPUT_POST);
$subject = get_input_value('_action_subject', RCUBE_INPUT_POST, true);
$flags = get_input_value('_action_flags', RCUBE_INPUT_POST);
+ $varnames = get_input_value('_action_varname', RCUBE_INPUT_POST);
+ $varvalues = get_input_value('_action_varvalue', RCUBE_INPUT_POST);
+ $varmods = get_input_value('_action_varmods', RCUBE_INPUT_POST);
// we need a "hack" for radiobuttons
foreach ($sizeitems as $item)
@@ -707,9 +717,12 @@ class managesieve extends rcube_plugin
if (!count($headers))
$this->errors['tests'][$i]['header'] = $this->gettext('cannotbeempty');
else {
- foreach ($headers as $hr)
- if (!preg_match('/^[a-z0-9-]+$/i', $hr))
+ foreach ($headers as $hr) {
+ // RFC2822: printable ASCII except colon
+ if (!preg_match('/^[\x21-\x39\x41-\x7E]+$/i', $hr)) {
$this->errors['tests'][$i]['header'] = $this->gettext('forbiddenchars');
+ }
+ }
}
if (empty($this->errors['tests'][$i]['header']))
@@ -846,6 +859,25 @@ class managesieve extends rcube_plugin
if ($this->form['actions'][$i]['days'] && !preg_match('/^[0-9]+$/', $this->form['actions'][$i]['days']))
$this->errors['actions'][$i]['days'] = $this->gettext('forbiddenchars');
break;
+
+ case 'set':
+ $this->form['actions'][$i]['name'] = $varnames[$idx];
+ $this->form['actions'][$i]['value'] = $varvalues[$idx];
+ foreach ((array)$varmods[$idx] as $v_m) {
+ $this->form['actions'][$i][$v_m] = true;
+ }
+
+ if (empty($varnames[$idx])) {
+ $this->errors['actions'][$i]['name'] = $this->gettext('cannotbeempty');
+ }
+ else if (!preg_match('/^[0-9a-z_]+$/i', $varnames[$idx])) {
+ $this->errors['actions'][$i]['name'] = $this->gettext('forbiddenchars');
+ }
+
+ if (!isset($varvalues[$idx]) || $varvalues[$idx] === '') {
+ $this->errors['actions'][$i]['value'] = $this->gettext('cannotbeempty');
+ }
+ break;
}
$this->form['actions'][$i]['type'] = $type;
@@ -994,7 +1026,7 @@ class managesieve extends rcube_plugin
$this->rc->output->set_env('contentframe', $attrib['name']);
$this->rc->output->set_env('blankpage', $attrib['src'] ?
- $this->rc->output->abs_url($attrib['src']) : 'program/blank.gif');
+ $this->rc->output->abs_url($attrib['src']) : 'program/resources/blank.gif');
return html::tag('iframe', $attrib);
}
@@ -1444,6 +1476,9 @@ class managesieve extends rcube_plugin
$select_action->add(Q($this->gettext('addflags')), 'addflag');
$select_action->add(Q($this->gettext('removeflags')), 'removeflag');
}
+ if (in_array('variables', $this->exts)) {
+ $select_action->add(Q($this->gettext('setvariable')), 'set');
+ }
$select_action->add(Q($this->gettext('rulestop')), 'stop');
$select_type = $action['type'];
@@ -1507,6 +1542,35 @@ class managesieve extends rcube_plugin
}
$out .= '</div>';
+ // set variable
+ $set_modifiers = array(
+ 'lower',
+ 'upper',
+ 'lowerfirst',
+ 'upperfirst',
+ 'quotewildcard',
+ 'length'
+ );
+
+ $out .= '<div id="action_set' .$id.'" style="display:' .($action['type']=='set' ? 'inline' : 'none') .'">';
+ $out .= '<span class="label">' .Q($this->gettext('setvarname')) . '</span><br />'
+ .'<input type="text" name="_action_varname['.$id.']" id="action_varname'.$id.'" '
+ .'value="' . Q($action['name']) . '" size="35" '
+ . $this->error_class($id, 'action', 'name', 'action_varname') .' />';
+ $out .= '<br /><span class="label">' .Q($this->gettext('setvarvalue')) . '</span><br />'
+ .'<input type="text" name="_action_varvalue['.$id.']" id="action_varvalue'.$id.'" '
+ .'value="' . Q($action['value']) . '" size="35" '
+ . $this->error_class($id, 'action', 'value', 'action_varvalue') .' />';
+ $out .= '<br /><span class="label">' .Q($this->gettext('setvarmodifiers')) . '</span><br />';
+ foreach ($set_modifiers as $j => $s_m) {
+ $s_m_id = 'action_varmods' . $id . $s_m;
+ $out .= sprintf('<input type="checkbox" name="_action_varmods[%s][]" value="%s" id="%s"%s />%s<br>',
+ $id, $s_m, $s_m_id,
+ (array_key_exists($s_m, (array)$action) && $action[$s_m] ? ' checked="checked"' : ''),
+ Q($this->gettext('var' . $s_m)));
+ }
+ $out .= '</div>';
+
// mailbox select
if ($action['type'] == 'fileinto')
$mailbox = $this->mod_mailbox($action['target'], 'out');
diff --git a/plugins/managesieve/package.xml b/plugins/managesieve/package.xml
index 207793958..cde78c9a3 100644
--- a/plugins/managesieve/package.xml
+++ b/plugins/managesieve/package.xml
@@ -17,9 +17,9 @@
<email>alec@alec.pl</email>
<active>yes</active>
</lead>
- <date>2012-01-05</date>
+ <date>2012-06-21</date>
<version>
- <release>5.0</release>
+ <release>5.1</release>
<api>5.0</api>
</version>
<stability>
@@ -38,46 +38,63 @@
<tasks:replace from="@name@" to="name" type="package-info"/>
<tasks:replace from="@package_version@" to="version" type="package-info"/>
</file>
+ <file name="localization/be_BE.inc" role="data"></file>
<file name="localization/bg_BG.inc" role="data"></file>
+ <file name="localization/bs_BA.inc" role="data"></file>
+ <file name="localization/ca_ES_BA.inc" role="data"></file>
<file name="localization/cs_CZ.inc" role="data"></file>
+ <file name="localization/cy_GB.inc" role="data"></file>
+ <file name="localization/da_DK.inc" role="data"></file>
<file name="localization/de_CH.inc" role="data"></file>
<file name="localization/de_DE.inc" role="data"></file>
<file name="localization/el_GR.inc" role="data"></file>
<file name="localization/en_GB.inc" role="data"></file>
<file name="localization/en_US.inc" role="data"></file>
+ <file name="localization/eo.inc" role="data"></file>
<file name="localization/es_AR.inc" role="data"></file>
<file name="localization/es_ES.inc" role="data"></file>
<file name="localization/et_EE.inc" role="data"></file>
+ <file name="localization/fa_IR.inc" role="data"></file>
<file name="localization/fi_FI.inc" role="data"></file>
<file name="localization/fr_FR.inc" role="data"></file>
<file name="localization/gl_ES.inc" role="data"></file>
+ <file name="localization/he_IL.inc" role="data"></file>
<file name="localization/hr_HR.inc" role="data"></file>
<file name="localization/hu_HU.inc" role="data"></file>
+ <file name="localization/ia_IA.inc" role="data"></file>
+ <file name="localization/id_ID.inc" role="data"></file>
<file name="localization/it_IT.inc" role="data"></file>
<file name="localization/ja_JP.inc" role="data"></file>
+ <file name="localization/lt_LT.inc" role="data"></file>
<file name="localization/lv_LV.inc" role="data"></file>
+ <file name="localization/ml_ML.inc" role="data"></file>
+ <file name="localization/mr_IN.inc" role="data"></file>
<file name="localization/nb_NO.inc" role="data"></file>
<file name="localization/nl_NL.inc" role="data"></file>
<file name="localization/pl_PL.inc" role="data"></file>
<file name="localization/pt_BR.inc" role="data"></file>
<file name="localization/pt_PT.inc" role="data"></file>
+ <file name="localization/ro_RO.inc" role="data"></file>
<file name="localization/ru_RU.inc" role="data"></file>
+ <file name="localization/si_LK.inc" role="data"></file>
<file name="localization/sk_SK.inc" role="data"></file>
<file name="localization/sl_SI.inc" role="data"></file>
<file name="localization/sv_SE.inc" role="data"></file>
+ <file name="localization/tr_TR.inc" role="data"></file>
<file name="localization/uk_UA.inc" role="data"></file>
+ <file name="localization/vi_VN.inc" role="data"></file>
<file name="localization/zh_CN.inc" role="data"></file>
<file name="localization/zh_TW.inc" role="data"></file>
- <file name="skins/default/managesieve.css" role="data"></file>
- <file name="skins/default/managesieve_mail.css" role="data"></file>
- <file name="skins/default/templates/filteredit.html" role="data"></file>
- <file name="skins/default/templates/managesieve.html" role="data"></file>
- <file name="skins/default/templates/setedit.html" role="data"></file>
- <file name="skins/default/images/add.png" role="data"></file>
- <file name="skins/default/images/del.png" role="data"></file>
- <file name="skins/default/images/down_small.gif" role="data"></file>
- <file name="skins/default/images/filter.png" role="data"></file>
- <file name="skins/default/images/up_small.gif" role="data"></file>
+ <file name="skins/classic/managesieve.css" role="data"></file>
+ <file name="skins/classic/managesieve_mail.css" role="data"></file>
+ <file name="skins/classic/templates/filteredit.html" role="data"></file>
+ <file name="skins/classic/templates/managesieve.html" role="data"></file>
+ <file name="skins/classic/templates/setedit.html" role="data"></file>
+ <file name="skins/classic/images/add.png" role="data"></file>
+ <file name="skins/classic/images/del.png" role="data"></file>
+ <file name="skins/classic/images/down_small.gif" role="data"></file>
+ <file name="skins/classic/images/filter.png" role="data"></file>
+ <file name="skins/classic/images/up_small.gif" role="data"></file>
<file name="managesieve.php" role="php"></file>
<file name="lib/rcube_sieve.php" role="php"></file>
<file name="lib/rcube_sieve_script.php" role="php"></file>
diff --git a/plugins/managesieve/skins/default/images/add.png b/plugins/managesieve/skins/classic/images/add.png
index 97a6422fb..97a6422fb 100644
--- a/plugins/managesieve/skins/default/images/add.png
+++ b/plugins/managesieve/skins/classic/images/add.png
Binary files differ
diff --git a/plugins/managesieve/skins/default/images/del.png b/plugins/managesieve/skins/classic/images/del.png
index 518905bc4..518905bc4 100644
--- a/plugins/managesieve/skins/default/images/del.png
+++ b/plugins/managesieve/skins/classic/images/del.png
Binary files differ
diff --git a/plugins/managesieve/skins/default/images/down_small.gif b/plugins/managesieve/skins/classic/images/down_small.gif
index f865893f4..f865893f4 100644
--- a/plugins/managesieve/skins/default/images/down_small.gif
+++ b/plugins/managesieve/skins/classic/images/down_small.gif
Binary files differ
diff --git a/plugins/managesieve/skins/default/images/filter.png b/plugins/managesieve/skins/classic/images/filter.png
index a79ba1083..a79ba1083 100644
--- a/plugins/managesieve/skins/default/images/filter.png
+++ b/plugins/managesieve/skins/classic/images/filter.png
Binary files differ
diff --git a/plugins/managesieve/skins/default/images/up_small.gif b/plugins/managesieve/skins/classic/images/up_small.gif
index 40deb891f..40deb891f 100644
--- a/plugins/managesieve/skins/default/images/up_small.gif
+++ b/plugins/managesieve/skins/classic/images/up_small.gif
Binary files differ
diff --git a/plugins/managesieve/skins/default/managesieve.css b/plugins/managesieve/skins/classic/managesieve.css
index 9527b44e9..9527b44e9 100644
--- a/plugins/managesieve/skins/default/managesieve.css
+++ b/plugins/managesieve/skins/classic/managesieve.css
diff --git a/plugins/managesieve/skins/default/managesieve_mail.css b/plugins/managesieve/skins/classic/managesieve_mail.css
index 87a11cc92..87a11cc92 100644
--- a/plugins/managesieve/skins/default/managesieve_mail.css
+++ b/plugins/managesieve/skins/classic/managesieve_mail.css
diff --git a/plugins/managesieve/skins/default/templates/filteredit.html b/plugins/managesieve/skins/classic/templates/filteredit.html
index 6ecb03cae..6ecb03cae 100644
--- a/plugins/managesieve/skins/default/templates/filteredit.html
+++ b/plugins/managesieve/skins/classic/templates/filteredit.html
diff --git a/plugins/managesieve/skins/default/templates/managesieve.html b/plugins/managesieve/skins/classic/templates/managesieve.html
index 71eebe105..71eebe105 100644
--- a/plugins/managesieve/skins/default/templates/managesieve.html
+++ b/plugins/managesieve/skins/classic/templates/managesieve.html
diff --git a/plugins/managesieve/skins/default/templates/setedit.html b/plugins/managesieve/skins/classic/templates/setedit.html
index 26f7fece6..26f7fece6 100644
--- a/plugins/managesieve/skins/default/templates/setedit.html
+++ b/plugins/managesieve/skins/classic/templates/setedit.html
diff --git a/plugins/managesieve/skins/larry/managesieve.css b/plugins/managesieve/skins/larry/managesieve.css
index f252bd7d6..49ebe007f 100644
--- a/plugins/managesieve/skins/larry/managesieve.css
+++ b/plugins/managesieve/skins/larry/managesieve.css
@@ -216,19 +216,10 @@ span.label
width: 100%;
}
-#footer .footerleft
+#footer .footerleft label
{
- padding-left: 2px;
+ margin-left: 40px;
white-space: nowrap;
- float: left;
-}
-
-#footer .footerright
-{
- padding-right: 2px;
- white-space: nowrap;
- text-align: right;
- float: right;
}
.itemlist
diff --git a/plugins/managesieve/skins/larry/templates/filteredit.html b/plugins/managesieve/skins/larry/templates/filteredit.html
index 424bdbcd3..602816af7 100644
--- a/plugins/managesieve/skins/larry/templates/filteredit.html
+++ b/plugins/managesieve/skins/larry/templates/filteredit.html
@@ -5,7 +5,7 @@
<roundcube:include file="/includes/links.html" />
<link rel="stylesheet" type="text/css" href="/this/managesieve.css" />
</head>
-<body class="iframe<roundcube:exp expression="env:task != 'mail' ? '' : ' mail'" />">
+<body class="iframe<roundcube:exp expression="env:task != 'mail' ? ' floatingbuttons' : ' mail'" />">
<roundcube:if condition="env:task != 'mail'" />
<div id="filter-title" class="boxtitle"><roundcube:label name="managesieve.filterdef" /></div>
@@ -16,12 +16,12 @@
<roundcube:if condition="env:task != 'mail'" />
<div id="footer">
-<div class="footerleft">
+<div class="footerleft formbuttons floating">
<roundcube:button command="plugin.managesieve-save" type="input" class="button mainaction" label="save" />
-</div>
-<div class="footerright">
-<label for="disabled"><roundcube:label name="managesieve.filterdisabled" /></label>
+<label for="disabled">
<input type="checkbox" id="disabled" name="_disabled" value="1" />
+<roundcube:label name="managesieve.filterdisabled" />
+</label>
</div>
</div>
<roundcube:endif />
diff --git a/plugins/managesieve/skins/larry/templates/managesieve.html b/plugins/managesieve/skins/larry/templates/managesieve.html
index 740b41658..25bbbaf69 100644
--- a/plugins/managesieve/skins/larry/templates/managesieve.html
+++ b/plugins/managesieve/skins/larry/templates/managesieve.html
@@ -36,8 +36,10 @@
</div>
</div>
-<div id="filter-box" class="uibox">
- <roundcube:object name="filterframe" id="filter-frame" style="width:100%; height:96%" frameborder="0" src="/watermark.html" />
+<div id="filter-box" class="uibox contentbox">
+ <div class="iframebox">
+ <roundcube:object name="filterframe" id="filter-frame" style="width:100%; height:100%" frameborder="0" src="/watermark.html" />
+ </div>
<roundcube:object name="message" id="message" class="statusbar" />
</div>
diff --git a/plugins/managesieve/skins/larry/templates/setedit.html b/plugins/managesieve/skins/larry/templates/setedit.html
index 71de8ddf8..9fc115dc7 100644
--- a/plugins/managesieve/skins/larry/templates/setedit.html
+++ b/plugins/managesieve/skins/larry/templates/setedit.html
@@ -5,16 +5,18 @@
<roundcube:include file="/includes/links.html" />
<link rel="stylesheet" type="text/css" href="/this/managesieve.css" />
</head>
-<body class="iframe">
+<body class="iframe floatingbuttons">
<div id="filter-title" class="boxtitle"><roundcube:label name="managesieve.newfilterset" /></div>
<div id="filter-form" class="boxcontent">
<roundcube:object name="filtersetform" />
-<p>
+<div id="footer">
+<div class="footerleft formbuttons floating">
<roundcube:button command="plugin.managesieve-save" type="input" class="button mainaction" label="save" />
-</p>
+</div>
+</div>
</form>
</div>
diff --git a/plugins/markasjunk/localization/cs_CZ.inc b/plugins/markasjunk/localization/cs_CZ.inc
index 6fd1c3f3f..c353b2e1c 100644
--- a/plugins/markasjunk/localization/cs_CZ.inc
+++ b/plugins/markasjunk/localization/cs_CZ.inc
@@ -9,12 +9,12 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: Tomáš Kyzlink |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
+$labels['buttontext'] = 'Spam';
$labels['buttontitle'] = 'OznaÄit jako Spam';
$labels['reportedasjunk'] = 'Úspěšně nahlášeno jako Spam';
diff --git a/plugins/markasjunk/localization/da_DK.inc b/plugins/markasjunk/localization/da_DK.inc
index db1baf220..e50016e5f 100644
--- a/plugins/markasjunk/localization/da_DK.inc
+++ b/plugins/markasjunk/localization/da_DK.inc
@@ -11,10 +11,10 @@
+-----------------------------------------------------------------------+
| Author: Johannes Hessellund <osos@openeyes.dk> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
+$labels['buttontext'] = 'Spam';
$labels['buttontitle'] = 'Marker som spam mail';
$labels['reportedasjunk'] = 'Successfuldt rapporteret som spam mail';
diff --git a/plugins/markasjunk/localization/de_CH.inc b/plugins/markasjunk/localization/de_CH.inc
index 0268b5454..89285709e 100644
--- a/plugins/markasjunk/localization/de_CH.inc
+++ b/plugins/markasjunk/localization/de_CH.inc
@@ -9,12 +9,12 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: Thomas |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
+$labels['buttontext'] = 'Spam';
$labels['buttontitle'] = 'Als SPAM markieren';
$labels['reportedasjunk'] = 'Erfolgreich als SPAM gemeldet';
diff --git a/plugins/markasjunk/localization/de_DE.inc b/plugins/markasjunk/localization/de_DE.inc
index 311b317f6..2455911fa 100644
--- a/plugins/markasjunk/localization/de_DE.inc
+++ b/plugins/markasjunk/localization/de_DE.inc
@@ -9,12 +9,12 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: Thomas |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
+$labels['buttontext'] = 'Spam';
$labels['buttontitle'] = 'als SPAM markieren';
$labels['reportedasjunk'] = 'Erfolgreich als SPAM gemeldet';
diff --git a/plugins/markasjunk/localization/es_ES.inc b/plugins/markasjunk/localization/es_ES.inc
index 91557a19d..d018513ce 100644
--- a/plugins/markasjunk/localization/es_ES.inc
+++ b/plugins/markasjunk/localization/es_ES.inc
@@ -9,12 +9,12 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: pompilos <ciordia@gmail.com> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
+$labels['buttontext'] = 'SPAM';
$labels['buttontitle'] = 'Marcar como SPAM';
$labels['reportedasjunk'] = 'Mensaje informado como SPAM';
diff --git a/plugins/markasjunk/localization/hy_AM.inc b/plugins/markasjunk/localization/hy_AM.inc
new file mode 100644
index 000000000..b30707ef0
--- /dev/null
+++ b/plugins/markasjunk/localization/hy_AM.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/hy_AM/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Vahan Yerkanian <vahan@yerkanian.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['buttontext'] = 'Ô¹Õ¡ÖƒÕ¸Õ¶';
+$labels['buttontitle'] = 'Õ†Õ·Õ¥Õ¬ Õ¸Ö€ÕºÕ¥Õ½ Ô¹Õ¡ÖƒÕ¸Õ¶';
+$labels['reportedasjunk'] = 'Ô²Õ¡Ö€Õ¥Õ°Õ¡Õ»Õ¸Õ² Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¾Õ¥Ö Õ¸Ö€ÕºÕ¥Õ½ Ô¹Õ¡ÖƒÕ¸Õ¶';
+
diff --git a/plugins/markasjunk/localization/ja_JP.inc b/plugins/markasjunk/localization/ja_JP.inc
index d4fbaea41..fa17bd095 100644
--- a/plugins/markasjunk/localization/ja_JP.inc
+++ b/plugins/markasjunk/localization/ja_JP.inc
@@ -9,12 +9,12 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Takahiro Kambe <Unknown> |
+ | Author: Takahiro Kambe |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
+$labels['buttontext'] = '迷惑メール';
$labels['buttontitle'] = '迷惑メールã¨ã—ã¦è¨­å®š';
$labels['reportedasjunk'] = '迷惑メールã¨ã—ã¦å ±å‘Šã—ã¾ã—ãŸã€‚';
diff --git a/plugins/markasjunk/localization/ko_KR.inc b/plugins/markasjunk/localization/ko_KR.inc
new file mode 100644
index 000000000..bfc38d1d5
--- /dev/null
+++ b/plugins/markasjunk/localization/ko_KR.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ko_KR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Kim, Woohyun <woohyun.kim@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['buttontext'] = 'ì •í¬ë©”ì¼';
+$labels['buttontitle'] = 'ì •í¬ë©”ì¼ë¡œ 표시';
+$labels['reportedasjunk'] = '성공ì ìœ¼ë¡œ, ì •í¬ë©”ì¼ì´ë¼ ë³´ê³  ë¨';
+
diff --git a/plugins/markasjunk/localization/pl_PL.inc b/plugins/markasjunk/localization/pl_PL.inc
index cb6453458..cd3520ec7 100644
--- a/plugins/markasjunk/localization/pl_PL.inc
+++ b/plugins/markasjunk/localization/pl_PL.inc
@@ -9,12 +9,12 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: Aleksander Machniak <alec@alec.pl> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
+$labels['buttontext'] = 'Spam';
$labels['buttontitle'] = 'Oznacz jako SPAM';
$labels['reportedasjunk'] = 'Pomyślnie oznaczono jako SPAM';
diff --git a/plugins/markasjunk/localization/ru_RU.inc b/plugins/markasjunk/localization/ru_RU.inc
index d3547632a..acac7e180 100644
--- a/plugins/markasjunk/localization/ru_RU.inc
+++ b/plugins/markasjunk/localization/ru_RU.inc
@@ -9,12 +9,12 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: Thomas |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
+$labels['buttontext'] = 'СПÐÐœ';
$labels['buttontitle'] = 'ПеремеÑтить в "СПÐÐœ';
$labels['reportedasjunk'] = 'Перемещено в "СПÐÐœ';
diff --git a/plugins/markasjunk/localization/sk_SK.inc b/plugins/markasjunk/localization/sk_SK.inc
index e0827cdfd..ee208347d 100644
--- a/plugins/markasjunk/localization/sk_SK.inc
+++ b/plugins/markasjunk/localization/sk_SK.inc
@@ -9,12 +9,12 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: panda |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
+$labels['buttontext'] = 'Spam';
$labels['buttontitle'] = 'OznaÄiÅ¥ ako Spam';
$labels['reportedasjunk'] = 'Úspešne nahlásené ako Spam';
diff --git a/plugins/markasjunk/localization/sr_CS.inc b/plugins/markasjunk/localization/sr_CS.inc
new file mode 100644
index 000000000..aa26dddc7
--- /dev/null
+++ b/plugins/markasjunk/localization/sr_CS.inc
@@ -0,0 +1,20 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sr_CS/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Saša Zejnilović <zejnils@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['buttontext'] = 'Смеће';
+$labels['buttontitle'] = 'Означи као cмеће';
+$labels['reportedasjunk'] = 'УÑпешно пријављени као cмеће';
+
diff --git a/plugins/markasjunk/localization/sv_SE.inc b/plugins/markasjunk/localization/sv_SE.inc
index e9343169e..4ff14bec9 100644
--- a/plugins/markasjunk/localization/sv_SE.inc
+++ b/plugins/markasjunk/localization/sv_SE.inc
@@ -9,12 +9,12 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: Jonas Nasholm |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
+$labels['buttontext'] = 'Skräp';
$labels['buttontitle'] = 'Märk som skräp';
$labels['reportedasjunk'] = 'Framgångsrikt rapporterat som skräp';
diff --git a/plugins/markasjunk/localization/zh_TW.inc b/plugins/markasjunk/localization/zh_TW.inc
index aa00559b1..372d8d6c5 100644
--- a/plugins/markasjunk/localization/zh_TW.inc
+++ b/plugins/markasjunk/localization/zh_TW.inc
@@ -9,12 +9,12 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: Nansen |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
+$labels['buttontext'] = '垃圾郵件';
$labels['buttontitle'] = '標示為垃圾信';
$labels['reportedasjunk'] = 'æˆåŠŸå›žå ±åžƒåœ¾ä¿¡';
diff --git a/plugins/markasjunk/package.xml b/plugins/markasjunk/package.xml
index 95690eb9b..a5b4bf92c 100644
--- a/plugins/markasjunk/package.xml
+++ b/plugins/markasjunk/package.xml
@@ -50,8 +50,8 @@
<file name="localization/sk_SK.inc" role="data"></file>
<file name="localization/sv_SE.inc" role="data"></file>
<file name="localization/zh_TW.inc" role="data"></file>
- <file name="skins/default/junk_act.png" role="data"></file>
- <file name="skins/default/junk_pas.png" role="data"></file>
+ <file name="skins/classic/junk_act.png" role="data"></file>
+ <file name="skins/classic/junk_pas.png" role="data"></file>
</dir>
<!-- / -->
</contents>
diff --git a/plugins/markasjunk/skins/default/junk_act.png b/plugins/markasjunk/skins/classic/junk_act.png
index b5a84f604..b5a84f604 100644
--- a/plugins/markasjunk/skins/default/junk_act.png
+++ b/plugins/markasjunk/skins/classic/junk_act.png
Binary files differ
diff --git a/plugins/markasjunk/skins/default/junk_pas.png b/plugins/markasjunk/skins/classic/junk_pas.png
index b88a561a4..b88a561a4 100644
--- a/plugins/markasjunk/skins/default/junk_pas.png
+++ b/plugins/markasjunk/skins/classic/junk_pas.png
Binary files differ
diff --git a/plugins/markasjunk/skins/default/markasjunk.css b/plugins/markasjunk/skins/classic/markasjunk.css
index 89ea568f4..5b1d47b46 100644
--- a/plugins/markasjunk/skins/default/markasjunk.css
+++ b/plugins/markasjunk/skins/classic/markasjunk.css
@@ -1,6 +1,6 @@
#messagetoolbar a.button.junk {
- text-indent: -1000px;
+ text-indent: -5000px;
background: url(junk_act.png) 0 0 no-repeat;
}
diff --git a/plugins/new_user_dialog/localization/hy_AM.inc b/plugins/new_user_dialog/localization/hy_AM.inc
new file mode 100644
index 000000000..46c7c0853
--- /dev/null
+++ b/plugins/new_user_dialog/localization/hy_AM.inc
@@ -0,0 +1,19 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/hy_AM/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Vahan Yerkanian <vahan@yerkanian.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['identitydialogtitle'] = 'Ô¼Ö€Õ¡ÖÖ€Õ¥Ö„ ÕÕ¥Ö€ Õ«Õ¶Ö„Õ¶Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨';
+$labels['identitydialoghint'] = 'Ô±ÕµÕ½ Õ¶Õ·Õ¸Ö‚Õ´Õ¨ Õ¥Ö€Ö‡Õ¸Ö‚Õ´ Õ§ Õ´Õ«Õ¡ÕµÕ¶ Õ¡Õ¼Õ¡Õ»Õ«Õ¶ Õ´Õ¸Ö‚Õ¿Ö„Õ« ÕªÕ¡Õ´Õ¡Õ¶Õ¡Õ¯ Õ´Õ¥Õ¯ Õ¡Õ¶Õ£Õ¡Õ´';
+
diff --git a/plugins/new_user_dialog/localization/ko_KR.inc b/plugins/new_user_dialog/localization/ko_KR.inc
new file mode 100644
index 000000000..99483819c
--- /dev/null
+++ b/plugins/new_user_dialog/localization/ko_KR.inc
@@ -0,0 +1,19 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ko_KR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Kim, Woohyun <woohyun.kim@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['identitydialogtitle'] = '수신ìžì˜ ì‹ ì›ì„ 채우기 ë°”ëžë‹ˆë‹¤.';
+$labels['identitydialoghint'] = 'ì´ ë°•ìŠ¤ëŠ” 최초로 로그ì¸í•  때만 나타납니다.';
+
diff --git a/plugins/new_user_dialog/localization/pt_BR.inc b/plugins/new_user_dialog/localization/pt_BR.inc
index 98c70d590..f53fa44ac 100644
--- a/plugins/new_user_dialog/localization/pt_BR.inc
+++ b/plugins/new_user_dialog/localization/pt_BR.inc
@@ -9,12 +9,11 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: Victor Benincasa <vbenincasa@gmail.com> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
$labels['identitydialogtitle'] = 'Por favor complete a sua identidade';
-$labels['identitydialoghint'] = 'Esta caixa aparece apenas uma vez no primeiro login.';
+$labels['identitydialoghint'] = 'Esta tela aparece somente no primeiro acesso.';
diff --git a/plugins/new_user_dialog/localization/sr_CS.inc b/plugins/new_user_dialog/localization/sr_CS.inc
new file mode 100644
index 000000000..9042b5795
--- /dev/null
+++ b/plugins/new_user_dialog/localization/sr_CS.inc
@@ -0,0 +1,19 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sr_CS/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Saša Zejnilović <zejnils@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['identitydialogtitle'] = 'Молимо Ð²Ð°Ñ Ð´Ð° попуните Ñвој идентитет пошиљаоца';
+$labels['identitydialoghint'] = 'Ово поље Ñе појављује Ñамо једном у првом логовању';
+
diff --git a/plugins/new_user_identity/new_user_identity.php b/plugins/new_user_identity/new_user_identity.php
index 7b67578bf..f3dae20a3 100644
--- a/plugins/new_user_identity/new_user_identity.php
+++ b/plugins/new_user_identity/new_user_identity.php
@@ -19,10 +19,6 @@
* // When automatically setting a new users's full name in their
* // new identity, match the user's login name against this field.
* $rcmail_config['new_user_identity_match'] = 'uid';
- *
- * // Use this field (from fieldmap configuration) to fill alias col of
- * // the new user record.
- * $rcmail_config['new_user_identity_alias'] = 'alias';
*/
class new_user_identity extends rcube_plugin
{
@@ -38,7 +34,7 @@ class new_user_identity extends rcube_plugin
function lookup_user_name($args)
{
$rcmail = rcmail::get_instance();
-
+
if ($this->init_ldap($args['host'])) {
$results = $this->ldap->search('*', $args['user'], TRUE);
if (count($results->records) == 1) {
@@ -46,9 +42,6 @@ class new_user_identity extends rcube_plugin
if (!$args['user_email'] && strpos($results->records[0]['email'], '@')) {
$args['user_email'] = rcube_idn_to_ascii($results->records[0]['email']);
}
- if (($alias_col = $rcmail->config->get('new_user_identity_alias')) && $results->records[0][$alias_col]) {
- $args['alias'] = $results->records[0][$alias_col];
- }
}
}
return $args;
diff --git a/plugins/new_user_identity/package.xml b/plugins/new_user_identity/package.xml
index 95f1dc0dc..7d9d20d39 100644
--- a/plugins/new_user_identity/package.xml
+++ b/plugins/new_user_identity/package.xml
@@ -15,10 +15,10 @@
<email>alec@alec.pl</email>
<active>yes</active>
</lead>
- <date>2011-11-21</date>
+ <date>2012-08-07</date>
<version>
- <release>1.0.5</release>
- <api>1.0</api>
+ <release>1.0.6</release>
+ <api>1.1</api>
</version>
<stability>
<release>stable</release>
diff --git a/plugins/newmail_notifier/localization/hy_AM.inc b/plugins/newmail_notifier/localization/hy_AM.inc
new file mode 100644
index 000000000..0cbf4122f
--- /dev/null
+++ b/plugins/newmail_notifier/localization/hy_AM.inc
@@ -0,0 +1,26 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/hy_AM/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Vahan Yerkanian <vahan@yerkanian.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['basic'] = 'Õ‘Õ¸Ö‚ÖÕ¡Õ¤Ö€Õ¥Õ¬ Õ¦Õ¶Õ¶Õ¡Ö€Õ¯Õ¹Õ« Õ®Õ¡Õ¶Õ¸Ö‚ÖÕ¸Ö‚Õ´ Õ¶Õ¸Ö€ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶ Õ½Õ¿Õ¡Õ¶Õ¡Õ¬Õ«Õ½';
+$labels['desktop'] = 'Õ‘Õ¸Ö‚ÖÕ¡Õ¤Ö€Õ¥Õ¬ Õ½Õ¥Õ²Õ¡Õ¶Õ¡Õ¤Ö€Õ« Õ®Õ¡Õ¶Õ¸Ö‚ÖÕ¸Ö‚Õ´ Õ¶Õ¸Ö€ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶ Õ½Õ¿Õ¡Õ¶Õ¡Õ¬Õ«Õ½';
+$labels['sound'] = 'ÕÕ¡ÕµÕ¶ Õ°Õ¡Õ¶Õ¥Õ¬ Õ¶Õ¸Ö€ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶ Õ½Õ¿Õ¡Õ¶Õ¡Õ¬Õ«Õ½';
+$labels['test'] = 'ÖƒÕ¸Ö€Õ±Õ¡Ö€Õ¯Õ¸Ö‚Õ´';
+$labels['title'] = 'Õ†Õ¸Ö€ Õ§Õ¬ÖƒÕ¸Õ½Õ¿';
+$labels['body'] = 'Ô´Õ¸Ö‚Ö„ Õ½Õ¿Õ¡ÖÕ¡Ö„ Õ¶Õ¸Ö€ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶';
+$labels['testbody'] = 'ÕÕ¡ ÖƒÕ¸Ö€Õ±Õ¶Õ¡Õ¯Õ¡Õ¶ Õ®Õ¡Õ¶Õ¸Ö‚ÖÕ¸Ö‚Õ´ Õ§';
+$labels['desktopdisabled'] = 'ÕÕ¥Õ²Õ¡Õ¶Õ¡Õ¤Ö€Õ« Õ®Õ¡Õ¶Õ¸Ö‚ÖÕ¸Ö‚Õ´Õ¶Õ¥Ö€Õ¨ ÕÕ¥Ö€ Õ¦Õ¶Õ¶Õ¡Ö€Õ¯Õ¹Õ¸Ö‚Õ´ Õ¡Õ¶Õ»Õ¡Õ¿Õ¾Õ¡Õ® Õ¥Õ¶';
+$labels['desktopunsupported'] = 'ÕÕ¥Ö€ Õ¦Õ¶Õ¶Õ¡Ö€Õ¯Õ«Õ¹Õ¨ Õ¹Õ¸Ö‚Õ¶Õ« Õ½Õ¥Õ²Õ¡Õ¶Õ¡Õ¤Ö€Õ« Õ®Õ¡Õ¶Õ¸Ö‚ÖÕ¸Ö‚Õ´Õ¶Õ¥Ö€Õ« Õ°Õ¶Õ¡Ö€Õ¡Õ¾Õ¸Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Ö‰';
+
diff --git a/plugins/newmail_notifier/localization/ko_KR.inc b/plugins/newmail_notifier/localization/ko_KR.inc
new file mode 100644
index 000000000..c9641fbf1
--- /dev/null
+++ b/plugins/newmail_notifier/localization/ko_KR.inc
@@ -0,0 +1,26 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ko_KR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Kim, Woohyun <woohyun.kim@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['basic'] = '새로운 메시지가 ë„ì°© ì‹œì— ë¸Œë¼ìš°ì €ì˜ ì•Œë¦¼ì— í‘œì‹œ';
+$labels['desktop'] = '새로운 메시지가 ë„ì°© ì‹œì— ë°ìŠ¤í¬íƒ‘ì˜ ì•Œë¦¼ì— í‘œì‹œ';
+$labels['sound'] = '새로운 메시지가 ë„ì°© ì‹œì— ì†Œë¦¬ 재ìƒ';
+$labels['test'] = '테스트';
+$labels['title'] = '새로운 ë©”ì¼ ë„ì°©!';
+$labels['body'] = '새로운 메시지를 수신하였습니다.';
+$labels['testbody'] = 'ì´ ê²ƒì€ ì‹œí—˜ìš© 알림입니다.';
+$labels['desktopdisabled'] = 'ë‹¹ì‹ ì˜ ë¸Œë¼ìš°ì ¸ì—서는 ë°ìŠ¤í¬íƒ‘ì˜ ì•Œë¦¼ì´ ë¶ˆê°€ëŠ¥í•˜ë„ë¡ ë˜ì–´ìžˆìŠµë‹ˆë‹¤.';
+$labels['desktopunsupported'] = 'ë‹¹ì‹ ì˜ ë¸Œë¼ìš°ì ¸ì—서는 ë°ìŠ¤í¬íƒ‘ì˜ ì•Œë¦¼ì„ ì§€ì›í•˜ì§€ 않습니다.';
+
diff --git a/plugins/newmail_notifier/localization/sr_CS.inc b/plugins/newmail_notifier/localization/sr_CS.inc
new file mode 100644
index 000000000..818f9b60c
--- /dev/null
+++ b/plugins/newmail_notifier/localization/sr_CS.inc
@@ -0,0 +1,21 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sr_CS/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Saša Zejnilović <zejnils@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['test'] = 'ИÑпробај';
+$labels['title'] = 'Ðови маил!';
+$labels['body'] = 'Примили Ñте нову поруку.';
+$labels['testbody'] = 'Ово је теÑÑ‚ обавештење.';
+
diff --git a/plugins/newmail_notifier/newmail_notifier.php b/plugins/newmail_notifier/newmail_notifier.php
index 20ffac8ce..942421166 100644
--- a/plugins/newmail_notifier/newmail_notifier.php
+++ b/plugins/newmail_notifier/newmail_notifier.php
@@ -51,7 +51,7 @@ class newmail_notifier extends rcube_plugin
else { // if ($this->rc->task == 'mail') {
$this->add_hook('new_messages', array($this, 'notify'));
// add script when not in ajax and not in frame
- if (is_a($this->rc->output, 'rcube_template') && empty($_REQUEST['_framed'])) {
+ if (is_a($this->rc->output, 'rcube_output_html') && empty($_REQUEST['_framed'])) {
$this->add_texts('localization/');
$this->rc->output->add_label('newmail_notifier.title', 'newmail_notifier.body');
$this->include_script('newmail_notifier.js');
diff --git a/plugins/password/drivers/virtualmin.php b/plugins/password/drivers/virtualmin.php
index f6b9bd412..b2547e07f 100644
--- a/plugins/password/drivers/virtualmin.php
+++ b/plugins/password/drivers/virtualmin.php
@@ -48,10 +48,6 @@ class rcube_virtualmin_password
$pieces = explode("_", $username);
$domain = $pieces[0];
break;
- case 8: // domain taken from alias, username left as it was
- $email = $rcmail->user->data['alias'];
- $domain = substr(strrchr($email, "@"), 1);
- break
default: // username@domain
$domain = substr(strrchr($username, "@"), 1);
}
diff --git a/plugins/password/localization/az_AZ.inc b/plugins/password/localization/az_AZ.inc
index 62df01ba8..4d0760da8 100644
--- a/plugins/password/localization/az_AZ.inc
+++ b/plugins/password/localization/az_AZ.inc
@@ -1,24 +1,31 @@
<?php
-/* Azerbaijani translate for password plugin */
-/* Translated by Nadir Aliyev, nadir at ultel dot net */
+/*
+ +-----------------------------------------------------------------------+
+ | localization/az_AZ/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
$labels = array();
-$labels['changepasswd'] = 'Şifrəni dəyiş';
-$labels['curpasswd'] = 'Hal-hazırki şifrə:';
-$labels['newpasswd'] = 'Yeni ÅŸifrÉ™:';
-$labels['confpasswd'] = 'Yeni şifrə: (təkrar)';
+$labels['changepasswd'] = 'Şifrəni dəyiş';
+$labels['curpasswd'] = 'Hal-hazırki şifrə:';
+$labels['newpasswd'] = 'Yeni ÅŸifrÉ™:';
+$labels['confpasswd'] = 'Yeni şifrə: (təkrar)';
+$labels['nopassword'] = 'Yeni şifrəni daxil edin.';
+$labels['nocurpassword'] = 'Hal-hazırda istifadə etdiyiniz şifrəni daxil edin.';
+$labels['passwordincorrect'] = 'Yalnış şifrə daxil etdiniz.';
+$labels['passwordinconsistency'] = 'Yeni daxil etdiyiniz şifrələr bir-birinə uyğun deyildir.';
+$labels['crypterror'] = 'Yeni şifrənin saxlanılması mümkün olmadı. Şifrələmə metodu tapılmadı.';
+$labels['connecterror'] = 'Yeni şifrənin saxlanılması mümkün olmadı. Qoşulma səhvi.';
+$labels['internalerror'] = 'Yeni şifrənin saxlanılması mümkün olmadı.';
+$labels['passwordshort'] = 'Yeni şifrə $length simvoldan uzun olmalıdır.';
+$labels['passwordweak'] = 'Şifrədə heç olmasa minimum bir rəqəm və simvol olmalıdır.';
+$labels['passwordforbidden'] = 'Şifrədə icazə verilməyən simvollar vardır.';
-$messages = array();
-$messages['nopassword'] = 'Yeni şifrəni daxil edin.';
-$messages['nocurpassword'] = 'Hal-hazırda istifadə etdiyiniz şifrəni daxil edin.';
-$messages['passwordincorrect'] = 'Yalnış şifrə daxil etdiniz.';
-$messages['passwordinconsistency'] = 'Yeni daxil etdiyiniz şifrələr bir-birinə uyğun deyildir.';
-$messages['crypterror'] = 'Yeni şifrənin saxlanılması mümkün olmadı. Şifrələmə metodu tapılmadı.';
-$messages['connecterror'] = 'Yeni şifrənin saxlanılması mümkün olmadı. Qoşulma səhvi.';
-$messages['internalerror'] = 'Yeni şifrənin saxlanılması mümkün olmadı.';
-$messages['passwordshort'] = 'Yeni şifrə $length simvoldan uzun olmalıdır.';
-$messages['passwordweak'] = 'Şifrədə heç olmasa minimum bir rəqəm və simvol olmalıdır.';
-$messages['passwordforbidden'] = 'Şifrədə icazə verilməyən simvollar vardır.';
-
-?>
diff --git a/plugins/password/localization/bg_BG.inc b/plugins/password/localization/bg_BG.inc
index b4576a0dc..884cb9ec6 100644
--- a/plugins/password/localization/bg_BG.inc
+++ b/plugins/password/localization/bg_BG.inc
@@ -1,18 +1,28 @@
<?php
-$labels = array();
-$labels['changepasswd'] = 'СмÑна на парола';
-$labels['curpasswd'] = 'Текуща парола:';
-$labels['newpasswd'] = 'Ðова парола:';
-$labels['confpasswd'] = 'Повторете:';
+/*
+ +-----------------------------------------------------------------------+
+ | localization/bg_BG/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
-$messages = array();
-$messages['nopassword'] = 'ÐœÐ¾Ð»Ñ Ð²ÑŠÐ²ÐµÐ´ÐµÑ‚Ðµ нова парола.';
-$messages['nocurpassword'] = 'ÐœÐ¾Ð»Ñ Ð²ÑŠÐ²ÐµÐ´ÐµÑ‚Ðµ текущата .';
-$messages['passwordincorrect'] = 'Ðевалидна текуща парола.';
-$messages['passwordinconsistency'] = 'Паролите не Ñъвпадат, опитайте пак.';
-$messages['crypterror'] = 'Паролата не може да бъде Ñменена. Грешка в криптирането.';
-$messages['connecterror'] = 'Паролата не може да бъде Ñменена. Грешка в Ñвързването.';
-$messages['internalerror'] = 'Паролата не може да бъде Ñменена.';
+$labels = array();
+$labels['changepasswd'] = 'СмÑна на парола';
+$labels['curpasswd'] = 'Текуща парола:';
+$labels['newpasswd'] = 'Ðова парола:';
+$labels['confpasswd'] = 'Повторете:';
+$labels['nopassword'] = 'ÐœÐ¾Ð»Ñ Ð²ÑŠÐ²ÐµÐ´ÐµÑ‚Ðµ нова парола.';
+$labels['nocurpassword'] = 'ÐœÐ¾Ð»Ñ Ð²ÑŠÐ²ÐµÐ´ÐµÑ‚Ðµ текущата .';
+$labels['passwordincorrect'] = 'Ðевалидна текуща парола.';
+$labels['passwordinconsistency'] = 'Паролите не Ñъвпадат, опитайте пак.';
+$labels['crypterror'] = 'Паролата не може да бъде Ñменена. Грешка в криптирането.';
+$labels['connecterror'] = 'Паролата не може да бъде Ñменена. Грешка в Ñвързването.';
+$labels['internalerror'] = 'Паролата не може да бъде Ñменена.';
-?>
diff --git a/plugins/password/localization/bs_BA.inc b/plugins/password/localization/bs_BA.inc
new file mode 100644
index 000000000..3ec0d552a
--- /dev/null
+++ b/plugins/password/localization/bs_BA.inc
@@ -0,0 +1,31 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/bs_BA/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Kenan Dervišević <kenan3008@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['changepasswd'] = 'Promijeni Å¡ifru';
+$labels['curpasswd'] = 'Trenutna Å¡ifra:';
+$labels['newpasswd'] = 'Nova Å¡ifra:';
+$labels['confpasswd'] = 'Potvrdite novu Å¡ifru:';
+$labels['nopassword'] = 'Molimo vas da upišete novu šifru.';
+$labels['nocurpassword'] = 'Molimo vas da upišete trenutnu šifru.';
+$labels['passwordincorrect'] = 'Trenutna Å¡ifra je netaÄna.';
+$labels['passwordinconsistency'] = 'Šifre se ne podudaraju, molimo vas da pokušate ponovo.';
+$labels['crypterror'] = 'Nije moguće saÄuvati Å¡ifre. Nedostaje funkcija za enkripciju.';
+$labels['connecterror'] = 'Nije moguće saÄuvati Å¡ifre. GreÅ¡ka u povezivanju.';
+$labels['internalerror'] = 'Nije moguće saÄuvati novu Å¡ifru.';
+$labels['passwordshort'] = 'Šifra mora sadržavati barem $length znakova.';
+$labels['passwordweak'] = 'Å ifra mora imati barem jedan broj i jedan interpunkcijski znak.';
+$labels['passwordforbidden'] = 'Šifra sadrži nedozvoljene znakove.';
+
diff --git a/plugins/password/localization/ca_ES.inc b/plugins/password/localization/ca_ES.inc
index 18c10c80e..8832f3f6d 100644
--- a/plugins/password/localization/ca_ES.inc
+++ b/plugins/password/localization/ca_ES.inc
@@ -1,20 +1,31 @@
<?php
-$labels = array();
-$labels['changepasswd'] = 'Canviar contrasenya';
-$labels['curpasswd'] = 'Contrasenya actual:';
-$labels['newpasswd'] = 'Nova contrasenya:';
-$labels['confpasswd'] = 'Confirmar nova contrasenya:';
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ca_ES/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Jordi Sanfeliu <jordi@fibranet.cat> |
+ +-----------------------------------------------------------------------+
+*/
-$messages = array();
-$messages['nopassword'] = 'Si us plau, introdueix la nova contrasenya.';
-$messages['nocurpassword'] = 'Si us plau, introdueix la contrasenya actual.';
-$messages['passwordincorrect'] = 'Contrasenya actual incorrecte.';
-$messages['passwordinconsistency'] = 'La contrasenya nova no coincideix!.';
-$messages['crypterror'] = 'No es pot desar la nova contrasenya. No existeix la funció d\'encriptació.';
-$messages['connecterror'] = 'No es pot desar la nova contrasenya. Error de connexió.';
-$messages['internalerror'] = 'No es pot desar la nova contrasenya.';
-$messages['passwordshort'] = 'La nova contrasenya ha de tenir com a mínim $length caràcters de llarg.';
-$messages['passwordweak'] = 'La nova contrasenya ha d\'incloure com a mínim un nombre i un caràcter de puntuació.';
+$labels = array();
+$labels['changepasswd'] = 'Canvia la contrasenya';
+$labels['curpasswd'] = 'Contrasenya actual:';
+$labels['newpasswd'] = 'Nova contrasenya:';
+$labels['confpasswd'] = 'Confirmeu la nova contrasenya:';
+$labels['nopassword'] = 'Si us plau, introduïu la nova contrasenya.';
+$labels['nocurpassword'] = 'Si us plau, introduïu la contrasenya actual.';
+$labels['passwordincorrect'] = 'Contrasenya actual incorrecta.';
+$labels['passwordinconsistency'] = 'La contrasenya nova no coincideix, torneu-ho a provar.';
+$labels['crypterror'] = 'No es pot desar la nova contrasenya. No existeix la funció d\'encriptació.';
+$labels['connecterror'] = 'No es pot desar la nova contrasenya. Error de connexió.';
+$labels['internalerror'] = 'No es pot desar la nova contrasenya.';
+$labels['passwordshort'] = 'La nova contrasenya ha de tenir com a mínim $length caràcters de llarg.';
+$labels['passwordweak'] = 'La nova contrasenya ha d\'incloure com a mínim un nombre i un caràcter de puntuació.';
+$labels['passwordforbidden'] = 'La contrasenya conté caràcters no permesos.';
-?>
diff --git a/plugins/password/localization/cs_CZ.inc b/plugins/password/localization/cs_CZ.inc
index b4b7b29f9..2ed792376 100644
--- a/plugins/password/localization/cs_CZ.inc
+++ b/plugins/password/localization/cs_CZ.inc
@@ -1,30 +1,31 @@
<?php
-/**
- * Czech translation for Roundcube password plugin
- *
- * @version 1.0 (2009-08-29)
- * @author Milan Kozak <hodza@hodza.net>
- * @author Tomáš Šafařík <safarik@server.cz>
- *
- */
+/*
+ +-----------------------------------------------------------------------+
+ | localization/cs_CZ/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
$labels = array();
-$labels['changepasswd'] = 'Změna hesla';
-$labels['curpasswd'] = 'Aktuální heslo:';
-$labels['newpasswd'] = 'Nové heslo:';
-$labels['confpasswd'] = 'Nové heslo (pro kontrolu):';
+$labels['changepasswd'] = 'Změna hesla';
+$labels['curpasswd'] = 'Aktuální heslo:';
+$labels['newpasswd'] = 'Nové heslo:';
+$labels['confpasswd'] = 'Nové heslo (pro kontrolu):';
+$labels['nopassword'] = 'Prosím zadejte nové heslo.';
+$labels['nocurpassword'] = 'Prosím zadejte aktuální heslo.';
+$labels['passwordincorrect'] = 'Zadané aktuální heslo není správné.';
+$labels['passwordinconsistency'] = 'Zadaná hesla se neshodují. Prosím zkuste to znovu.';
+$labels['crypterror'] = 'Heslo se nepodařilo uložit. Chybí šifrovací funkce.';
+$labels['connecterror'] = 'Heslo se nepodařilo uložit. Problém s připojením.';
+$labels['internalerror'] = 'Heslo se nepodařilo uložit.';
+$labels['passwordshort'] = 'Heslo musí mít alespoň $length znaků.';
+$labels['passwordweak'] = 'Heslo musí obsahovat alespoň jedno Äíslo a jedno interpuknÄní znaménko.';
+$labels['passwordforbidden'] = 'Heslo obsahuje nepovolené znaky.';
-$messages = array();
-$messages['nopassword'] = 'Prosím zadejte nové heslo.';
-$messages['nocurpassword'] = 'Prosím zadejte aktuální heslo.';
-$messages['passwordincorrect'] = 'Zadané aktuální heslo není správné.';
-$messages['passwordinconsistency'] = 'Zadaná hesla se neshodují. Prosím zkuste to znovu.';
-$messages['crypterror'] = 'Heslo se nepodařilo uložit. Chybí šifrovací funkce.';
-$messages['connecterror'] = 'Heslo se nepodařilo uložit. Problém s připojením.';
-$messages['internalerror'] = 'Heslo se nepodařilo uložit.';
-$messages['passwordshort'] = 'Heslo musí mít alespoň $length znaků.';
-$messages['passwordweak'] = 'Heslo musí obsahovat alespoň jedno Äíslo a jedno interpuknÄní znaménko.';
-$messages['passwordforbidden'] = 'Heslo obsahuje nepovolené znaky.';
-
-?>
diff --git a/plugins/password/localization/cy_GB.inc b/plugins/password/localization/cy_GB.inc
new file mode 100644
index 000000000..0cdad07d5
--- /dev/null
+++ b/plugins/password/localization/cy_GB.inc
@@ -0,0 +1,31 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/cy_GB/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Dafydd Tomos |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['changepasswd'] = 'Newid Cyfrinair';
+$labels['curpasswd'] = 'Cyfrinair Presennol:';
+$labels['newpasswd'] = 'Cyfrinair Newydd:';
+$labels['confpasswd'] = 'Cadarnhau Cyfrinair Newydd:';
+$labels['nopassword'] = 'Rhowch eich cyfrinair newydd.';
+$labels['nocurpassword'] = 'Rhowch eich cyfrinair presennol.';
+$labels['passwordincorrect'] = 'Roedd y cyfrinair presennol yn anghywir.';
+$labels['passwordinconsistency'] = 'Nid yw\'r cyfrineiriau yn cymharu, ceisiwch eto.';
+$labels['crypterror'] = 'Methwyd cadw\'r cyfrinair newydd. Ffwythiant amgodi ar goll.';
+$labels['connecterror'] = 'Methwyd cadw\'r cyfrinair newydd. Gwall cysylltiad.';
+$labels['internalerror'] = 'Methwyd cadw\'r cyfrinair newydd.';
+$labels['passwordshort'] = 'Rhaid i\'r cyfrinair fod o leia $length llythyren o hyd.';
+$labels['passwordweak'] = 'Rhaid i\'r cyfrinair gynnwys o leia un rhif a un cymeriad atalnodi.';
+$labels['passwordforbidden'] = 'Mae\'r cyfrinair yn cynnwys llythrennau wedi gwahardd.';
+
diff --git a/plugins/password/localization/da_DK.inc b/plugins/password/localization/da_DK.inc
index 5d1d0c9cc..8c411265d 100644
--- a/plugins/password/localization/da_DK.inc
+++ b/plugins/password/localization/da_DK.inc
@@ -1,18 +1,31 @@
<?php
-$labels = array();
-$labels['changepasswd'] = 'Skift adgangskode';
-$labels['curpasswd'] = 'Nuværende adgangskode:';
-$labels['newpasswd'] = 'Ny adgangskode:';
-$labels['confpasswd'] = 'Bekræft ny adgangskode:';
+/*
+ +-----------------------------------------------------------------------+
+ | localization/da_DK/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Johannes Hessellund <osos@openeyes.dk> |
+ +-----------------------------------------------------------------------+
+*/
-$messages = array();
-$messages['nopassword'] = 'Indtast venligst en ny adgangskode.';
-$messages['nocurpassword'] = 'Indtast venligst nyværende adgangskode.';
-$messages['passwordincorrect'] = 'Nyværende adgangskode er forkert.';
-$messages['passwordinconsistency'] = 'Adgangskoderne er ikke ens, prøv igen.';
-$messages['crypterror'] = 'Kunne ikke gemme den nye adgangskode. Krypteringsfunktion mangler.';
-$messages['connecterror'] = 'Kunne ikke gemme den nye adgangskode. Fejl ved forbindelsen.';
-$messages['internalerror'] = 'Kunne ikke gemme den nye adgangskode.';
+$labels = array();
+$labels['changepasswd'] = 'Skift adgangskode';
+$labels['curpasswd'] = 'Nuværende adgangskode:';
+$labels['newpasswd'] = 'Ny adgangskode:';
+$labels['confpasswd'] = 'Bekræft ny adgangskode:';
+$labels['nopassword'] = 'Indtast venligst en ny adgangskode.';
+$labels['nocurpassword'] = 'Indtast venligst nuværende adgangskode.';
+$labels['passwordincorrect'] = 'Nuværende adgangskode er forkert.';
+$labels['passwordinconsistency'] = 'Adgangskoderne er ikke ens, prøv igen.';
+$labels['crypterror'] = 'Kunne ikke gemme den nye adgangskode. Krypteringsfunktion mangler.';
+$labels['connecterror'] = 'Kunne ikke gemme den nye adgangskode. Fejl ved forbindelsen.';
+$labels['internalerror'] = 'Kunne ikke gemme den nye adgangskode.';
+$labels['passwordshort'] = 'Adgangskoden skal være mindst $length tegn lang.';
+$labels['passwordweak'] = 'Adgangskoden skal indeholde mindst et tal og et tegnsætningstegn (-.,)';
+$labels['passwordforbidden'] = 'Adgangskoden indeholder forbudte tegn.';
-?>
diff --git a/plugins/password/localization/de_CH.inc b/plugins/password/localization/de_CH.inc
index a28990d67..492a48df0 100644
--- a/plugins/password/localization/de_CH.inc
+++ b/plugins/password/localization/de_CH.inc
@@ -1,19 +1,31 @@
<?php
-$labels = array();
-$labels['changepasswd'] = 'Passwort ändern';
-$labels['curpasswd'] = 'Aktuelles Passwort';
-$labels['newpasswd'] = 'Neues Passwort';
-$labels['confpasswd'] = 'Passwort Wiederholung';
-
-$messages = array();
-$messages['nopassword'] = "Bitte geben Sie ein neues Passwort ein";
-$messages['nocurpassword'] = "Bitte geben Sie Ihr aktuelles Passwort an";
-$messages['passwordincorrect'] = "Das aktuelle Passwort ist nicht korrekt";
-$messages['passwordinconsistency'] = "Das neue Passwort und dessen Wiederholung stimmen nicht überein";
-$messages['crypterror'] = "Neues Passwort nicht gespeichert: Verschlüsselungsfunktion fehlt";
-$messages['connecterror'] = "Neues Passwort nicht gespeichert: Verbindungsfehler";
-$messages['internalerror'] = "Neues Passwort nicht gespeichert";
+/*
+ +-----------------------------------------------------------------------+
+ | localization/de_CH/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+$labels = array();
+$labels['changepasswd'] = 'Passwort ändern';
+$labels['curpasswd'] = 'Aktuelles Passwort';
+$labels['newpasswd'] = 'Neues Passwort';
+$labels['confpasswd'] = 'Passwort Wiederholung';
+$labels['nopassword'] = 'Bitte geben Sie ein neues Passwort ein';
+$labels['nocurpassword'] = 'Bitte geben Sie Ihr aktuelles Passwort an';
+$labels['passwordincorrect'] = 'Das aktuelle Passwort ist nicht korrekt';
+$labels['passwordinconsistency'] = 'Das neue Passwort und dessen Wiederholung stimmen nicht überein';
+$labels['crypterror'] = 'Neues Passwort nicht gespeichert: Verschlüsselungsfunktion fehlt';
+$labels['connecterror'] = 'Neues Passwort nicht gespeichert: Verbindungsfehler';
+$labels['internalerror'] = 'Neues Passwort nicht gespeichert';
+$labels['passwordshort'] = 'Passwort muss mindestens $length Zeichen lang sein.';
+$labels['passwordweak'] = 'Passwort muss mindestens eine Zahl und ein Sonderzeichen enthalten.';
+$labels['passwordforbidden'] = 'Passwort enthält unzulässige Zeichen.';
-?> \ No newline at end of file
diff --git a/plugins/password/localization/de_DE.inc b/plugins/password/localization/de_DE.inc
index a28990d67..6a188e175 100644
--- a/plugins/password/localization/de_DE.inc
+++ b/plugins/password/localization/de_DE.inc
@@ -1,19 +1,31 @@
<?php
-$labels = array();
-$labels['changepasswd'] = 'Passwort ändern';
-$labels['curpasswd'] = 'Aktuelles Passwort';
-$labels['newpasswd'] = 'Neues Passwort';
-$labels['confpasswd'] = 'Passwort Wiederholung';
-
-$messages = array();
-$messages['nopassword'] = "Bitte geben Sie ein neues Passwort ein";
-$messages['nocurpassword'] = "Bitte geben Sie Ihr aktuelles Passwort an";
-$messages['passwordincorrect'] = "Das aktuelle Passwort ist nicht korrekt";
-$messages['passwordinconsistency'] = "Das neue Passwort und dessen Wiederholung stimmen nicht überein";
-$messages['crypterror'] = "Neues Passwort nicht gespeichert: Verschlüsselungsfunktion fehlt";
-$messages['connecterror'] = "Neues Passwort nicht gespeichert: Verbindungsfehler";
-$messages['internalerror'] = "Neues Passwort nicht gespeichert";
+/*
+ +-----------------------------------------------------------------------+
+ | localization/de_DE/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Moritz Höwer <moritzhoewermail@gmx.de> |
+ +-----------------------------------------------------------------------+
+*/
+$labels = array();
+$labels['changepasswd'] = 'Kennwort ändern';
+$labels['curpasswd'] = 'Aktuelles Kennwort:';
+$labels['newpasswd'] = 'Neues Kennwort:';
+$labels['confpasswd'] = 'Neues Kennwort bestätigen:';
+$labels['nopassword'] = 'Bitte geben Sie ein neues Kennwort ein.';
+$labels['nocurpassword'] = 'Bitte geben Sie ihr aktuelles Kennwort ein.';
+$labels['passwordincorrect'] = 'Das aktuelle Kennwort ist falsch.';
+$labels['passwordinconsistency'] = 'Das neue Passwort und dessen Wiederholung stimmen nicht überein';
+$labels['crypterror'] = 'Neues Passwort nicht gespeichert: Verschlüsselungsfunktion fehlt';
+$labels['connecterror'] = 'Neues Passwort nicht gespeichert: Verbindungsfehler';
+$labels['internalerror'] = 'Neues Passwort nicht gespeichert';
+$labels['passwordshort'] = 'Passwort muss mindestens $length Zeichen lang sein.';
+$labels['passwordweak'] = 'Passwort muss mindestens eine Zahl und ein Sonderzeichen enthalten.';
+$labels['passwordforbidden'] = 'Passwort enthält unzulässige Zeichen.';
-?> \ No newline at end of file
diff --git a/plugins/password/localization/en_GB.inc b/plugins/password/localization/en_GB.inc
new file mode 100644
index 000000000..57f0d83e9
--- /dev/null
+++ b/plugins/password/localization/en_GB.inc
@@ -0,0 +1,31 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/en_GB/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Kevin Beynon |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['changepasswd'] = 'Change Password';
+$labels['curpasswd'] = 'Current Password:';
+$labels['newpasswd'] = 'New Password:';
+$labels['confpasswd'] = 'Confirm New Password:';
+$labels['nopassword'] = 'Please enter a new password.';
+$labels['nocurpassword'] = 'Please enter the current password.';
+$labels['passwordincorrect'] = 'Current password is incorrect.';
+$labels['passwordinconsistency'] = 'Passwords do not match. Please try again.';
+$labels['crypterror'] = 'New password could not be saved. The encryption function is missing.';
+$labels['connecterror'] = 'New password could not be saved. There is a connection error.';
+$labels['internalerror'] = 'New password could not be saved.';
+$labels['passwordshort'] = 'Password must be at least $length characters long.';
+$labels['passwordweak'] = 'Password must include at least one number and one symbol.';
+$labels['passwordforbidden'] = 'Password contains forbidden characters.';
+
diff --git a/plugins/password/localization/eo.inc b/plugins/password/localization/eo.inc
new file mode 100644
index 000000000..fe6ef933b
--- /dev/null
+++ b/plugins/password/localization/eo.inc
@@ -0,0 +1,31 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/eo/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Baptiste Darthenay <bapdarth@yahoo.fr> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['changepasswd'] = 'ÅœanÄi pasvorton';
+$labels['curpasswd'] = 'Nuna pasvorto:';
+$labels['newpasswd'] = 'Nova pasvorto:';
+$labels['confpasswd'] = 'Konfirmi novan pasvorton:';
+$labels['nopassword'] = 'Bonvolu tajpi novan pasvorton.';
+$labels['nocurpassword'] = 'Bonvolu tajpi nunan pasvorton.';
+$labels['passwordincorrect'] = 'Nuna pasvorto nekorakta.';
+$labels['passwordinconsistency'] = 'Pasvortoj ne taÅ­gas, bonvolu provi denove.';
+$labels['crypterror'] = 'Ne povis konservi la pasvorton: ĉifrada funkcio maltrovita.';
+$labels['connecterror'] = 'Ne povis konservi la pasvorton: konekta eraro.';
+$labels['internalerror'] = 'Ne povis konservi novan pasvorton.';
+$labels['passwordshort'] = 'Pasvorto devas havi almanaÅ­ $length signojn.';
+$labels['passwordweak'] = 'La pasvorto devus havi almenaÅ­ unu ciferon kaj unu interpunktan signon.';
+$labels['passwordforbidden'] = 'La pasvorto enhavas malpermesajn signojn.';
+
diff --git a/plugins/password/localization/es_AR.inc b/plugins/password/localization/es_AR.inc
index 40c74e673..d8c5ad336 100644
--- a/plugins/password/localization/es_AR.inc
+++ b/plugins/password/localization/es_AR.inc
@@ -1,21 +1,31 @@
<?php
-$labels = array();
-$labels['changepasswd'] = 'Cambiar Contraseña';
-$labels['curpasswd'] = 'Contraseña Actual:';
-$labels['newpasswd'] = 'Contraseña Nueva:';
-$labels['confpasswd'] = 'Confirmar Contraseña:';
+/*
+ +-----------------------------------------------------------------------+
+ | localization/es_AR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
-$messages = array();
-$messages['nopassword'] = 'Por favor introduce una nueva contraseña.';
-$messages['nocurpassword'] = 'Por favor introduce la contraseña actual.';
-$messages['passwordincorrect'] = 'Contraseña actual incorrecta.';
-$messages['passwordinconsistency'] = 'Las contraseñas no coinciden, por favor inténtalo de nuevo.';
-$messages['crypterror'] = 'No se pudo guardar la contraseña nueva. Falta la función de cifrado.';
-$messages['connecterror'] = 'No se pudo guardar la contraseña nueva. Error de conexión';
-$messages['internalerror'] = 'No se pudo guardar la contraseña nueva.';
-$messages['passwordshort'] = 'Tu contraseña debe tener una longitud mínima de $length.';
-$messages['passwordweak'] = 'Tu nueva contraseña debe incluir al menos un número y un signo de puntuación.';
-$messages['passwordforbidden'] = 'La contraseña contiene caracteres inválidos.';
+$labels = array();
+$labels['changepasswd'] = 'Cambiar Contraseña';
+$labels['curpasswd'] = 'Contraseña Actual:';
+$labels['newpasswd'] = 'Contraseña Nueva:';
+$labels['confpasswd'] = 'Confirmar Contraseña:';
+$labels['nopassword'] = 'Por favor introduce una nueva contraseña.';
+$labels['nocurpassword'] = 'Por favor introduce la contraseña actual.';
+$labels['passwordincorrect'] = 'Contraseña actual incorrecta.';
+$labels['passwordinconsistency'] = 'Las contraseñas no coinciden, por favor inténtalo de nuevo.';
+$labels['crypterror'] = 'No se pudo guardar la contraseña nueva. Falta la función de cifrado.';
+$labels['connecterror'] = 'No se pudo guardar la contraseña nueva. Error de conexión';
+$labels['internalerror'] = 'No se pudo guardar la contraseña nueva.';
+$labels['passwordshort'] = 'Tu contraseña debe tener una longitud mínima de $length.';
+$labels['passwordweak'] = 'Tu nueva contraseña debe incluir al menos un número y un signo de puntuación.';
+$labels['passwordforbidden'] = 'La contraseña contiene caracteres inválidos.';
-?>
diff --git a/plugins/password/localization/es_ES.inc b/plugins/password/localization/es_ES.inc
index 32879b4aa..f61e25e99 100644
--- a/plugins/password/localization/es_ES.inc
+++ b/plugins/password/localization/es_ES.inc
@@ -1,21 +1,31 @@
<?php
-$labels = array();
-$labels['changepasswd'] = 'Cambiar contraseña';
-$labels['curpasswd'] = 'Contraseña actual:';
-$labels['newpasswd'] = 'Contraseña nueva:';
-$labels['confpasswd'] = 'Confirmar contraseña:';
+/*
+ +-----------------------------------------------------------------------+
+ | localization/es_ES/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
-$messages = array();
-$messages['nopassword'] = 'Por favor introduzca una contraseña nueva.';
-$messages['nocurpassword'] = 'Por favor introduzca la contraseña actual.';
-$messages['passwordincorrect'] = 'La contraseña actual es incorrecta.';
-$messages['passwordinconsistency'] = 'Las contraseñas no coinciden. Por favor, inténtelo de nuevo.';
-$messages['crypterror'] = 'No se pudo guardar la contraseña nueva. Falta la función de cifrado.';
-$messages['connecterror'] = 'No se pudo guardar la contraseña nueva. Error de conexión';
-$messages['internalerror'] = 'No se pudo guardar la contraseña nueva.';
-$messages['passwordshort'] = 'La contraseña debe tener por lo menos $length caracteres.';
-$messages['passwordweak'] = 'La contraseña debe incluir al menos un número y un signo de puntuación.';
-$messages['passwordforbidden'] = 'La contraseña introducida contiene caracteres no permitidos.';
+$labels = array();
+$labels['changepasswd'] = 'Cambiar contraseña';
+$labels['curpasswd'] = 'Contraseña actual:';
+$labels['newpasswd'] = 'Contraseña nueva:';
+$labels['confpasswd'] = 'Confirmar contraseña:';
+$labels['nopassword'] = 'Por favor introduzca una contraseña nueva.';
+$labels['nocurpassword'] = 'Por favor introduzca la contraseña actual.';
+$labels['passwordincorrect'] = 'La contraseña actual es incorrecta.';
+$labels['passwordinconsistency'] = 'Las contraseñas no coinciden. Por favor, inténtelo de nuevo.';
+$labels['crypterror'] = 'No se pudo guardar la contraseña nueva. Falta la función de cifrado.';
+$labels['connecterror'] = 'No se pudo guardar la contraseña nueva. Error de conexión';
+$labels['internalerror'] = 'No se pudo guardar la contraseña nueva.';
+$labels['passwordshort'] = 'La contraseña debe tener por lo menos $length caracteres.';
+$labels['passwordweak'] = 'La contraseña debe incluir al menos un número y un signo de puntuación.';
+$labels['passwordforbidden'] = 'La contraseña introducida contiene caracteres no permitidos.';
-?>
diff --git a/plugins/password/localization/et_EE.inc b/plugins/password/localization/et_EE.inc
index 0f351d77b..8ae7bd4a1 100644
--- a/plugins/password/localization/et_EE.inc
+++ b/plugins/password/localization/et_EE.inc
@@ -1,17 +1,27 @@
<?php
-$labels = array();
-$labels['changepasswd'] = 'Muuda parooli';
-$labels['curpasswd'] = 'Vana parool:';
-$labels['newpasswd'] = 'Uus parool:';
-$labels['confpasswd'] = 'Uus parool uuesti:';
+/*
+ +-----------------------------------------------------------------------+
+ | localization/et_EE/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
-$messages = array();
-$messages['nopassword'] = 'Palun sisesta uus parool.';
-$messages['nocurpassword'] = 'Palun sisesta vana parool.';
-$messages['passwordincorrect'] = 'Vana parool on vale.';
-$messages['passwordinconsistency'] = 'Paroolid ei kattu, palun proovi uuesti.';
-$messages['crypterror'] = 'Serveris ei ole parooli krüpteerimiseks vajalikku funktsiooni.';
-$messages['internalerror'] = 'Uue parooli andmebaasi salvestamine nurjus.';
+$labels = array();
+$labels['changepasswd'] = 'Muuda parooli';
+$labels['curpasswd'] = 'Vana parool:';
+$labels['newpasswd'] = 'Uus parool:';
+$labels['confpasswd'] = 'Uus parool uuesti:';
+$labels['nopassword'] = 'Palun sisesta uus parool.';
+$labels['nocurpassword'] = 'Palun sisesta vana parool.';
+$labels['passwordincorrect'] = 'Vana parool on vale.';
+$labels['passwordinconsistency'] = 'Paroolid ei kattu, palun proovi uuesti.';
+$labels['crypterror'] = 'Serveris ei ole parooli krüpteerimiseks vajalikku funktsiooni.';
+$labels['internalerror'] = 'Uue parooli andmebaasi salvestamine nurjus.';
-?>
diff --git a/plugins/password/localization/fa_IR.inc b/plugins/password/localization/fa_IR.inc
new file mode 100644
index 000000000..6e016f992
--- /dev/null
+++ b/plugins/password/localization/fa_IR.inc
@@ -0,0 +1,26 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/fa_IR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Hamid <abbaszadeh.h@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['changepasswd'] = 'تغییر رمزعبور';
+$labels['curpasswd'] = 'رمزعبور Ùعلی';
+$labels['newpasswd'] = 'رمزعبور جدید';
+$labels['confpasswd'] = 'تایید رمزعبور جدید';
+$labels['nopassword'] = 'رمزعبور جدید را وارد نمایید';
+$labels['nocurpassword'] = 'رمزعبور Ùعلی را وارد نمایید';
+$labels['passwordincorrect'] = 'رمزعبور Ùعلی اشتباه است';
+$labels['passwordinconsistency'] = 'رمزعبورها با هم مطابقت ندارند، دوباره سعی نمایید.';
+$labels['internalerror'] = 'رمزعبور جدید ذخیره نشد';
+
diff --git a/plugins/password/localization/fi_FI.inc b/plugins/password/localization/fi_FI.inc
index a2108a524..5e4608017 100644
--- a/plugins/password/localization/fi_FI.inc
+++ b/plugins/password/localization/fi_FI.inc
@@ -1,22 +1,31 @@
<?php
-// Translation by Tapio Salonsaari <take@nerd.fi>
+/*
+ +-----------------------------------------------------------------------+
+ | localization/fi_FI/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Jiri Grönroos |
+ +-----------------------------------------------------------------------+
+*/
$labels = array();
-$labels['changepasswd'] = 'Vaihda salasana';
-$labels['curpasswd'] = 'Nykyinen salasana:';
-$labels['newpasswd'] = 'Uusi salasana:';
-$labels['confpasswd'] = 'Uusi salasana uudestaan:';
+$labels['changepasswd'] = 'Vaihda salasana';
+$labels['curpasswd'] = 'Nykyinen salasana:';
+$labels['newpasswd'] = 'Uusi salasana:';
+$labels['confpasswd'] = 'Uusi salasana uudestaan:';
+$labels['nopassword'] = 'Syötä uusi salasana.';
+$labels['nocurpassword'] = 'Syötä nykyinen salasana.';
+$labels['passwordincorrect'] = 'Syöttämäsi nykyinen salasana on väärin.';
+$labels['passwordinconsistency'] = 'Syöttämäsi salasanat eivät täsmää, yritä uudelleen.';
+$labels['crypterror'] = 'Salasanaa ei voitu vaihtaa. Kryptausfunktio puuttuu.';
+$labels['connecterror'] = 'Salasanaa ei voitu vaihtaa. Yhteysongelma.';
+$labels['internalerror'] = 'Salasanaa ei voitu vaihtaa.';
+$labels['passwordshort'] = 'Salasanan täytyy olla vähintään $length merkkiä pitkä.';
+$labels['passwordweak'] = 'Salasanan täytyy sisältää vähintään yksi numero ja yksi välimerkki.';
+$labels['passwordforbidden'] = 'Salasana sisältää kiellettyjä merkkejä.';
-$messages = array();
-$messages['nopassword'] = 'Syötä uusi salasana.';
-$messages['nocurpassword'] = 'Syötä nykyinen salasana.';
-$messages['passwordincorrect'] = 'Syöttämäsi nykyinen salasana on väärin.';
-$messages['passwordinconsistency'] = 'Syöttämäsi salasanat eivät täsmää, yritä uudelleen.';
-$messages['crypterror'] = 'Salasanaa ei voitu vaihtaa. Kryptausfunktio puuttuu.';
-$messages['connecterror'] = 'Salasanaa ei voitu vaihtaa. Yhteysongelma.';
-$messages['internalerror'] = 'Salasanaa ei voitu vaihtaa.';
-$messages['passwordshort'] = 'Salasanan täytyy olla vähintään $length merkkiä pitkä.';
-$messages['passwordweak'] = 'Salasanan täytyy sisältää vähintään yksi numero ja yksi välimerkki.';
-
-?>
diff --git a/plugins/password/localization/fr_FR.inc b/plugins/password/localization/fr_FR.inc
index 8ba37b148..f90c32b3c 100644
--- a/plugins/password/localization/fr_FR.inc
+++ b/plugins/password/localization/fr_FR.inc
@@ -1,18 +1,31 @@
<?php
-$labels = array();
-$labels['changepasswd'] = 'Changer le mot de passe';
-$labels['curpasswd'] = 'Mot de passe actuel:';
-$labels['newpasswd'] = 'Nouveau mot de passe:';
-$labels['confpasswd'] = 'Confirmez le nouveau mot de passe:';
+/*
+ +-----------------------------------------------------------------------+
+ | localization/fr_FR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Nicolas Delvaux |
+ +-----------------------------------------------------------------------+
+*/
-$messages = array();
-$messages['nopassword'] = 'Veuillez saisir le nouveau mot de passe.';
-$messages['nocurpassword'] = 'Veuillez saisir le mot de passe actuel.';
-$messages['passwordincorrect'] = 'Mot de passe actuel incorrect.';
-$messages['passwordinconsistency'] = 'Les nouveaux mots de passe ne correspondent pas, veuillez réessayer.';
-$messages['crypterror'] = 'Impossible d\'enregistrer le nouveau mot de passe. Fonction de cryptage manquante.';
-$messages['connecterror'] = 'Impossible d\'enregistrer le nouveau mot de passe. Erreur de connexion au serveur.';
-$messages['internalerror'] = 'Impossible d\'enregistrer le nouveau mot de passe.';
+$labels = array();
+$labels['changepasswd'] = 'Changer le mot de passe';
+$labels['curpasswd'] = 'Mot de passe actuel:';
+$labels['newpasswd'] = 'Nouveau mot de passe:';
+$labels['confpasswd'] = 'Confirmez le nouveau mot de passe:';
+$labels['nopassword'] = 'Veuillez saisir le nouveau mot de passe.';
+$labels['nocurpassword'] = 'Veuillez saisir le mot de passe actuel.';
+$labels['passwordincorrect'] = 'Mot de passe actuel incorrect.';
+$labels['passwordinconsistency'] = 'Les nouveaux mots de passe ne correspondent pas, veuillez réessayer.';
+$labels['crypterror'] = 'Impossible d\'enregistrer le nouveau mot de passe. Fonction de cryptage manquante.';
+$labels['connecterror'] = 'Impossible d\'enregistrer le nouveau mot de passe. Erreur de connexion au serveur.';
+$labels['internalerror'] = 'Impossible d\'enregistrer le nouveau mot de passe.';
+$labels['passwordshort'] = 'Le mot de passe doit être composé d\'au moins $length caractères.';
+$labels['passwordweak'] = 'Le mot de passe doit contenir au moins un chiffre et un signe de ponctuation.';
+$labels['passwordforbidden'] = 'Le mot de passe contient des caractères interdits.';
-?>
diff --git a/plugins/password/localization/gl_ES.inc b/plugins/password/localization/gl_ES.inc
index b7dc7bbee..90c940e59 100644
--- a/plugins/password/localization/gl_ES.inc
+++ b/plugins/password/localization/gl_ES.inc
@@ -1,21 +1,31 @@
<?php
-$labels = array();
-$labels['changepasswd'] = 'Cambiar contrasinal';
-$labels['curpasswd'] = 'Contrasinal actual:';
-$labels['newpasswd'] = 'Contrasinal novo:';
-$labels['confpasswd'] = 'Confirmar contrasinal:';
+/*
+ +-----------------------------------------------------------------------+
+ | localization/gl_ES/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
-$messages = array();
-$messages['nopassword'] = 'Por favor, introduza un contrasinal novo.';
-$messages['nocurpassword'] = 'Por favor, introduza o contrasinal actual.';
-$messages['passwordincorrect'] = 'O contrasinal actual é incorrecto.';
-$messages['passwordinconsistency'] = 'Os contrasinals non coinciden. Por favor, inténteo de novo.';
-$messages['crypterror'] = 'Non foi posible gardar o contrasinal novo. Falta a función de cifrado.';
-$messages['connecterror'] = 'Non foi posible gardar o contrasinal novo. Erro de conexión';
-$messages['internalerror'] = 'Non foi posible gardar o contrasinal novo.';
-$messages['passwordshort'] = 'O contrasinal debe ter polo menos $length caracteres.';
-$messages['passwordweak'] = 'O contrasinal debe incluir polo menos un número e un signo de puntuación.';
-$messages['passwordforbidden'] = 'O contrasinal contén caracteres non permitidos.';
+$labels = array();
+$labels['changepasswd'] = 'Cambiar contrasinal';
+$labels['curpasswd'] = 'Contrasinal actual:';
+$labels['newpasswd'] = 'Contrasinal novo:';
+$labels['confpasswd'] = 'Confirmar contrasinal:';
+$labels['nopassword'] = 'Por favor, introduza un contrasinal novo.';
+$labels['nocurpassword'] = 'Por favor, introduza o contrasinal actual.';
+$labels['passwordincorrect'] = 'O contrasinal actual é incorrecto.';
+$labels['passwordinconsistency'] = 'Os contrasinals non coinciden. Por favor, inténteo de novo.';
+$labels['crypterror'] = 'Non foi posible gardar o contrasinal novo. Falta a función de cifrado.';
+$labels['connecterror'] = 'Non foi posible gardar o contrasinal novo. Erro de conexión';
+$labels['internalerror'] = 'Non foi posible gardar o contrasinal novo.';
+$labels['passwordshort'] = 'O contrasinal debe ter polo menos $length caracteres.';
+$labels['passwordweak'] = 'O contrasinal debe incluir polo menos un número e un signo de puntuación.';
+$labels['passwordforbidden'] = 'O contrasinal contén caracteres non permitidos.';
-?>
diff --git a/plugins/password/localization/he_IL.inc b/plugins/password/localization/he_IL.inc
new file mode 100644
index 000000000..143e2c5af
--- /dev/null
+++ b/plugins/password/localization/he_IL.inc
@@ -0,0 +1,31 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/he_IL/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Moshe Leibovitch <moish@mln.co.il> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['changepasswd'] = 'שינוי סיסמה';
+$labels['curpasswd'] = 'סיסמה נוכחית:';
+$labels['newpasswd'] = 'סיסמה חדשה:';
+$labels['confpasswd'] = '×ימות הסיסמה החדשה:';
+$labels['nopassword'] = '× × ×œ×”×§×œ×™×“ סיסמה חדשה';
+$labels['nocurpassword'] = '× × ×œ×”×§×™×© הסיסמה הנוכחית';
+$labels['passwordincorrect'] = 'הוקשה סיסמה נוכחית שגויה';
+$labels['passwordinconsistency'] = 'הסיסמ×ות שהוקשו ×ינן תו×מות, × × ×œ× ×¡×•×ª שנית.';
+$labels['crypterror'] = '×œ× × ×©×ž×¨×” הסיסמה החדשה. חסר מנגנון הצפנה.';
+$labels['connecterror'] = '×œ× × ×©×ž×¨×” הסיסמה החדשה. שגי×ת תקשורת.';
+$labels['internalerror'] = '×œ× × ×™×ª×Ÿ לשמור על הסיסמה החדשה.';
+$labels['passwordshort'] = 'הסיסמה צריכה להיות לפחות בעלת $length תווי×';
+$labels['passwordweak'] = 'הסיסמה חייבת לכלול לפחות סיפרה ×חת ולפחות סימן פיסוק ×חד.';
+$labels['passwordforbidden'] = 'הסיסמה מכילה ×ª×•×•×™× ×סורי×.';
+
diff --git a/plugins/password/localization/hr_HR.inc b/plugins/password/localization/hr_HR.inc
index 0e35129c0..ece203d3c 100644
--- a/plugins/password/localization/hr_HR.inc
+++ b/plugins/password/localization/hr_HR.inc
@@ -1,21 +1,31 @@
<?php
-$labels = array();
-$labels['changepasswd'] = 'Promijeni zaporku';
-$labels['curpasswd'] = 'Važeća zaporka:';
-$labels['newpasswd'] = 'Nova zaporka:';
-$labels['confpasswd'] = 'Potvrda nove zaporke:';
+/*
+ +-----------------------------------------------------------------------+
+ | localization/hr_HR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
-$messages = array();
-$messages['nopassword'] = 'Molimo unesite novu zaporku.';
-$messages['nocurpassword'] = 'Molimo unesite trenutnu zaporku.';
-$messages['passwordincorrect'] = 'Trenutna zaporka je nevažeća.';
-$messages['passwordinconsistency'] = 'Zaporke su razliÄite, pokuÅ¡ajte ponovo.';
-$messages['crypterror'] = 'Nemoguće promijeniti zaporku. Nedostaje enkripcijska funkcija.';
-$messages['connecterror'] = 'Nemoguće promijeniti zaporku. Greška prilikom spajanja.';
-$messages['internalerror'] = 'Nemoguće promijeniti zaporku.';
-$messages['passwordshort'] = 'Zaporka mora sadržavati barem $length znakova.';
-$messages['passwordweak'] = 'Zaporka mora sadržavati barem jedanu znamenku i jedan interpunkcijski znak.';
-$messages['passwordforbidden'] = 'Zaporka sadrži nedozvoljene znakove.';
+$labels = array();
+$labels['changepasswd'] = 'Promijeni zaporku';
+$labels['curpasswd'] = 'Važeća zaporka:';
+$labels['newpasswd'] = 'Nova zaporka:';
+$labels['confpasswd'] = 'Potvrda nove zaporke:';
+$labels['nopassword'] = 'Molimo unesite novu zaporku.';
+$labels['nocurpassword'] = 'Molimo unesite trenutnu zaporku.';
+$labels['passwordincorrect'] = 'Trenutna zaporka je nevažeća.';
+$labels['passwordinconsistency'] = 'Zaporke su razliÄite, pokuÅ¡ajte ponovo.';
+$labels['crypterror'] = 'Nemoguće promijeniti zaporku. Nedostaje enkripcijska funkcija.';
+$labels['connecterror'] = 'Nemoguće promijeniti zaporku. Greška prilikom spajanja.';
+$labels['internalerror'] = 'Nemoguće promijeniti zaporku.';
+$labels['passwordshort'] = 'Zaporka mora sadržavati barem $length znakova.';
+$labels['passwordweak'] = 'Zaporka mora sadržavati barem jedanu znamenku i jedan interpunkcijski znak.';
+$labels['passwordforbidden'] = 'Zaporka sadrži nedozvoljene znakove.';
-?>
diff --git a/plugins/password/localization/hu_HU.inc b/plugins/password/localization/hu_HU.inc
index c8c3015a1..3fb9a93d6 100644
--- a/plugins/password/localization/hu_HU.inc
+++ b/plugins/password/localization/hu_HU.inc
@@ -1,17 +1,31 @@
<?php
-$labels = array();
-$labels['changepasswd'] = 'Jelszóváltás';
-$labels['curpasswd'] = 'Jelenlegi jelszó:';
-$labels['newpasswd'] = 'Új jelszó:';
-$labels['confpasswd'] = 'Új jelszó mégegyszer:';
+/*
+ +-----------------------------------------------------------------------+
+ | localization/hu_HU/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: bela |
+ +-----------------------------------------------------------------------+
+*/
-$messages = array();
-$messages['nopassword'] = 'Kérjük adja meg az új jelszót.';
-$messages['nocurpassword'] = 'Kérjük adja meg a jelenlegi jelszót.';
-$messages['passwordincorrect'] = 'Érvénytelen a jelenlegi jelszó.';
-$messages['passwordinconsistency'] = 'A két új jelszó nem egyezik.';
-$messages['crypterror'] = 'Hiba történt a kérés feldolgozása során.';
-$messages['internalerror'] = 'Hiba történt a kérés feldolgozása során.';
+$labels = array();
+$labels['changepasswd'] = 'Jelszó módosítás';
+$labels['curpasswd'] = 'Jelenlegi jelszó:';
+$labels['newpasswd'] = 'Új jelszó:';
+$labels['confpasswd'] = 'Új jelszó mégegyszer:';
+$labels['nopassword'] = 'Kérjük adja meg az új jelszót.';
+$labels['nocurpassword'] = 'Kérjük adja meg a jelenlegi jelszót.';
+$labels['passwordincorrect'] = 'Érvénytelen a jelenlegi jelszó.';
+$labels['passwordinconsistency'] = 'A beírt jelszavak nem azonosak. Próbálja újra.';
+$labels['crypterror'] = 'Hiba történt a kérés feldolgozása során.';
+$labels['connecterror'] = 'Az új jelszó mentése nem sikerült. Hiba a kapcsolatban';
+$labels['internalerror'] = 'Hiba történt a kérés feldolgozása során.';
+$labels['passwordshort'] = 'A jelszónak legalább $length karakter hosszunak kell lennie.';
+$labels['passwordweak'] = 'A jelszónak mindenképpen kell tartalmaznia egy számot és egy írásjelet.';
+$labels['passwordforbidden'] = 'A jelszó tiltott karaktert is tartalmaz.';
-?>
diff --git a/plugins/password/localization/hy_AM.inc b/plugins/password/localization/hy_AM.inc
new file mode 100644
index 000000000..7d6ea3df7
--- /dev/null
+++ b/plugins/password/localization/hy_AM.inc
@@ -0,0 +1,31 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/hy_AM/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Vahan Yerkanian <vahan@yerkanian.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['changepasswd'] = 'Ô³Õ¡Õ²Õ¿Õ¶Õ¡Õ¢Õ¡Õ¼Õ« ÖƒÕ¸ÖƒÕ¸Õ­Õ¸Ö‚Õ´';
+$labels['curpasswd'] = 'Ô±Õ¼Õ¯Õ¡ Õ£Õ¡Õ²Õ¿Õ¶Õ¡Õ¢Õ¡Õ¼Õ¨`';
+$labels['newpasswd'] = 'Õ†Õ¸Ö€ Õ£Õ¡Õ²Õ¿Õ¶Õ¡Õ¢Õ¡Õ¼Õ¨`';
+$labels['confpasswd'] = 'Ô¿Ö€Õ¯Õ¶Õ¥Ö„ Õ¶Õ¸Ö€ Õ£Õ¡Õ²Õ¿Õ¶Õ¡Õ¢Õ¡Õ¼Õ¨`';
+$labels['nopassword'] = 'Õ†Õ¥Ö€Õ´Õ¸Ö‚ÖÕ¥Ö„ Õ¶Õ¸Ö€ Õ£Õ¡Õ²Õ¿Õ¶Õ¡Õ¢Õ¡Õ¼Õ¨Ö‰';
+$labels['nocurpassword'] = 'Õ†Õ¥Ö€Õ´Õ¸Ö‚ÖÕ¥Ö„ Õ¡Õ¼Õ¯Õ¡ Õ£Õ¡Õ²Õ¿Õ¶Õ¡Õ¢Õ¡Õ¼Õ¨Ö‰';
+$labels['passwordincorrect'] = 'Ô±Õ¼Õ¯Õ¡ Õ£Õ¡Õ²Õ¿Õ¶Õ¡Õ¢Õ¡Õ¼Õ¨ Õ½Õ­Õ¡Õ¬ Õ§Ö‰';
+$labels['passwordinconsistency'] = 'Õ†Õ¸Ö€ Õ£Õ¡Õ²Õ¿Õ¶Õ¡Õ¢Õ¡Õ¼Õ¥Ö€Õ¨ Õ¹Õ¥Õ¶ Õ°Õ¡Õ´Õ¨Õ¶Õ¯Õ¶Õ¸Ö‚Õ´, Õ¯Ö€Õ¯Õ«Õ¶ ÖƒÕ¸Ö€Õ±Õ¥Ö„Ö‰';
+$labels['crypterror'] = 'Õ†Õ¸Ö€ Õ£Õ¡Õ²Õ¿Õ¶Õ¡Õ¢Õ¡Õ¼Õ« ÕºÕ¡Õ°ÕºÕ¡Õ¶Õ¸Ö‚Õ´Õ¨ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥ÖÖ‰ Ô²Õ¡ÖÕ¡Õ¯Õ¡ÕµÕ¸Ö‚Õ´ Õ§ Õ£Õ¡Õ²Õ¿Õ¶Õ¡Õ£Ö€Õ´Õ¡Õ¶ Ö†Õ¸Ö‚Õ¶Õ¯ÖÕ«Õ¡Õ¶Ö‰';
+$labels['connecterror'] = 'Õ†Õ¸Ö€ Õ£Õ¡Õ²Õ¿Õ¶Õ¡Õ¢Õ¡Õ¼Õ« ÕºÕ¡Õ°ÕºÕ¡Õ¶Õ¸Ö‚Õ´Õ¨ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥ÖÖ‰ Ô¿Õ¡ÕºÕ« Õ½Õ­Õ¡Õ¬Ö‰';
+$labels['internalerror'] = 'Õ†Õ¸Ö€ Õ£Õ¡Õ²Õ¿Õ¶Õ¡Õ¢Õ¡Õ¼Õ« ÕºÕ¡Õ°ÕºÕ¡Õ¶Õ¸Ö‚Õ´Õ¨ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥ÖÖ‰';
+$labels['passwordshort'] = 'Ô³Õ¡Õ²Õ¿Õ¶Õ¡Õ¢Õ¡Õ¼Õ¥Ö€Õ¨ ÕºÕ¥Õ¿Ö„ Õ§ Õ¬Õ«Õ¶Õ¥Õ¶ Õ¡Õ¼Õ¶Õ¾Õ¡Õ¦Õ¶ $length Õ¶Õ«Õ· Õ¥Ö€Õ¯Õ¡Ö€Õ¸Ö‚Õ©ÕµÕ¡Õ´Õ¢Ö‰';
+$labels['passwordweak'] = 'Ô³Õ¡Õ²Õ¿Õ¶Õ¡Õ¢Õ¡Õ¼Õ¥Ö€Õ¨ ÕºÕ¥Õ¿Ö„ Õ§ ÕºÕ¡Ö€Õ¸Ö‚Õ¶Õ¡Õ¯Õ¥Õ¶ Õ¡Õ¼Õ¶Õ¾Õ¡Õ¦Õ¶ Õ´Õ¥Õ¯ Õ©Õ«Õ¾ Ö‡ Õ´Õ¥Õ¯ Õ¯Õ¥Õ¿Õ¡Õ¤Ö€Õ¡Õ¯Õ¡Õ¶ Õ¶Õ«Õ·Ö‰';
+$labels['passwordforbidden'] = 'Ô³Õ¡Õ²Õ¿Õ¶Õ¡Õ¢Õ¡Õ¼Õ¨ ÕºÕ¡Ö€Õ¸Ö‚Õ¶Õ¡Õ¯Õ¸Ö‚Õ´ Õ§ Õ¡Ö€Õ£Õ¥Õ¬Õ¾Õ¡Õ® Õ¶Õ«Õ·Ö‰';
+
diff --git a/plugins/password/localization/ja_JP.inc b/plugins/password/localization/ja_JP.inc
index 47cac0430..32377f01f 100644
--- a/plugins/password/localization/ja_JP.inc
+++ b/plugins/password/localization/ja_JP.inc
@@ -1,23 +1,31 @@
<?php
-// EN-Revision: 3891
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ja_JP/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Takahiro Kambe |
+ +-----------------------------------------------------------------------+
+*/
$labels = array();
-$labels['changepasswd'] = 'パスワードã®å¤‰æ›´';
-$labels['curpasswd'] = 'ç¾åœ¨ã®ãƒ‘スワード:';
-$labels['newpasswd'] = 'æ–°ã—ã„パスワード:';
-$labels['confpasswd'] = 'æ–°ã—ã„パスワード (確èª):';
+$labels['changepasswd'] = 'パスワードã®å¤‰æ›´';
+$labels['curpasswd'] = 'ç¾åœ¨ã®ãƒ‘スワード:';
+$labels['newpasswd'] = 'æ–°ã—ã„パスワード:';
+$labels['confpasswd'] = 'æ–°ã—ã„パスワード (確èª):';
+$labels['nopassword'] = 'æ–°ã—ã„パスワードを入力ã—ã¦ãã ã•ã„。';
+$labels['nocurpassword'] = 'ç¾åœ¨ã®ãƒ‘スワードを入力ã—ã¦ãã ã•ã„。';
+$labels['passwordincorrect'] = 'ç¾åœ¨ã®ãƒ‘スワードãŒé–“é•ã£ã¦ã„ã¾ã™ã€‚';
+$labels['passwordinconsistency'] = 'パスワードãŒä¸€è‡´ã—ã¾ã›ã‚“。もã†ä¸€åº¦ã‚„ã‚Šç›´ã—ã¦ãã ã•ã„。';
+$labels['crypterror'] = 'パスワードをä¿å­˜ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚æš—å·åŒ–関数ãŒã¿ã‚ãŸã‚Šã¾ã›ã‚“。';
+$labels['connecterror'] = 'æ–°ã—ã„パスワードをä¿å­˜ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚接続エラーã§ã™ã€‚';
+$labels['internalerror'] = 'æ–°ã—ã„パスワードをä¿å­˜ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚';
+$labels['passwordshort'] = 'パスワードã¯å°‘ãªãã¨ã‚‚ $length 文字ã®é•·ã•ãŒå¿…è¦ã§ã™ã€‚';
+$labels['passwordweak'] = 'パスワードã¯å°‘ãªãã¨ã‚‚æ•°å­—ã® 1 文字ã¨è¨˜å·ã® 1 文字をå«ã‚“ã§ã„ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。';
+$labels['passwordforbidden'] = 'パスワードã«ç¦æ­¢ã•ã‚ŒãŸæ–‡å­—ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚';
-$messages = array();
-$messages['nopassword'] = 'æ–°ã—ã„パスワードを入力ã—ã¦ãã ã•ã„。';
-$messages['nocurpassword'] = 'ç¾åœ¨ã®ãƒ‘スワードを入力ã—ã¦ãã ã•ã„。';
-$messages['passwordincorrect'] = 'ç¾åœ¨ã®ãƒ‘スワードãŒé–“é•ã£ã¦ã„ã¾ã™ã€‚';
-$messages['passwordinconsistency'] = 'パスワードãŒä¸€è‡´ã—ã¾ã›ã‚“。もã†ä¸€åº¦ã‚„ã‚Šç›´ã—ã¦ãã ã•ã„。';
-$messages['crypterror'] = 'パスワードをä¿å­˜ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚æš—å·åŒ–関数ãŒã¿ã‚ãŸã‚Šã¾ã›ã‚“。';
-$messages['connecterror'] = 'æ–°ã—ã„パスワードをä¿å­˜ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚接続エラーã§ã™ã€‚';
-$messages['internalerror'] = 'æ–°ã—ã„パスワードをä¿å­˜ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚';
-$messages['passwordshort'] = 'パスワードã¯å°‘ãªãã¨ã‚‚ $length 文字ã®é•·ã•ãŒå¿…è¦ã§ã™ã€‚';
-$messages['passwordweak'] = 'パスワードã¯å°‘ãªãã¨ã‚‚æ•°å­—ã‚’ 1 文字ã¨è¨˜å·ãŒ 1 文字å«ã‚“ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。';
-$messages['passwordforbidden'] = 'パスワードã«ç¦æ­¢ã•ã‚ŒãŸæ–‡å­—ãŒå«ã¾ã‚Œã¦ã„ã¾ã™ã€‚';
-
-?>
diff --git a/plugins/password/localization/ko_KR.inc b/plugins/password/localization/ko_KR.inc
new file mode 100644
index 000000000..9bbe4cc79
--- /dev/null
+++ b/plugins/password/localization/ko_KR.inc
@@ -0,0 +1,31 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ko_KR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Kim, Woohyun <woohyun.kim@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['changepasswd'] = '암호 변경';
+$labels['curpasswd'] = '현재 암호:';
+$labels['newpasswd'] = '새 암호:';
+$labels['confpasswd'] = '새로운 비밀번호 í™•ì¸ :';
+$labels['nopassword'] = '새 암호를 입력하시오.';
+$labels['nocurpassword'] = '현재 ì‚¬ìš©ì¤‘ì¸ ì•”í˜¸ë¥¼ 입력하세요.';
+$labels['passwordincorrect'] = '현재 ì‚¬ìš©ì¤‘ì¸ ì•”í˜¸ê°€ 올바르지 않습니다.';
+$labels['passwordinconsistency'] = '암호가 ì¼ì¹˜í•˜ì§€ 않습니다. 다시 ì‹œë„하기 ë°”ëžë‹ˆë‹¤.';
+$labels['crypterror'] = '새로운 암호를 저장할 수 없습니다. 암호화 실패.';
+$labels['connecterror'] = '새로운 암호를 저장할 수 없습니다. 연결 오류.';
+$labels['internalerror'] = '새로운 암호를 저장할 수 없습니다.';
+$labels['passwordshort'] = '암호는 ì ì–´ë„ $length ê¸€ìž ì´ìƒì´ì–´ì•¼ 합니다.';
+$labels['passwordweak'] = '암호는 ì ì–´ë„ ìˆ«ìž í•˜ë‚˜ì™€ 특수 ë¬¸ìž í•˜ë‚˜ë¥¼ í¬í•¨í•˜ì—¬ì•¼ 합니다.';
+$labels['passwordforbidden'] = '암호가 í—ˆë½ë˜ì§€ ì•Šì€ ë¬¸ìžë“¤ì„ í¬í•¨í•˜ê³  있습니다.';
+
diff --git a/plugins/password/localization/lt_LT.inc b/plugins/password/localization/lt_LT.inc
index b4563cc42..86e7a3db0 100644
--- a/plugins/password/localization/lt_LT.inc
+++ b/plugins/password/localization/lt_LT.inc
@@ -1,21 +1,31 @@
<?php
-$labels = array();
-$labels['changepasswd'] = 'Slaptažodžio keitimas';
-$labels['curpasswd'] = 'Dabartinis slaptažodis:';
-$labels['newpasswd'] = 'Naujasis slaptažodis:';
-$labels['confpasswd'] = 'Pakartokite naująjį slaptažodį:';
+/*
+ +-----------------------------------------------------------------------+
+ | localization/lt_LT/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Rimas Kudelis <rq@akl.lt> |
+ +-----------------------------------------------------------------------+
+*/
-$messages = array();
-$messages['nopassword'] = 'Prašom įvesti naująjį slaptažodį.';
-$messages['nocurpassword'] = 'Prašom įvesti dabartinį slaptažodį.';
-$messages['passwordincorrect'] = 'Dabartinis slaptažodis neteisingas.';
-$messages['passwordinconsistency'] = 'Slaptažodžiai nesutapo. Bandykite dar kartą.';
-$messages['crypterror'] = 'Nepavyko įrašyti naujojo slaptažodžio. Trūksta šifravimo funkcijos.';
-$messages['connecterror'] = 'Nepavyko įrašyti naujojo slaptažodžio. Prisijungimo klaida.';
-$messages['internalerror'] = 'Nepavyko įrašyti naujojo slaptažodžio.';
-$messages['passwordshort'] = 'Slaptažodis turi būti sudarytas iš bent $length simbolių.';
-$messages['passwordweak'] = 'Slaptažodyje turi būti bent vienas skaitmuo ir vienas skyrybos ženklas.';
-$messages['passwordforbidden'] = 'Slaptažodyje rasta neleistinų simbolių.';
+$labels = array();
+$labels['changepasswd'] = 'Slaptažodžio keitimas';
+$labels['curpasswd'] = 'Dabartinis slaptažodis:';
+$labels['newpasswd'] = 'Naujasis slaptažodis:';
+$labels['confpasswd'] = 'Pakartokite naująjį slaptažodį:';
+$labels['nopassword'] = 'Prašom įvesti naująjį slaptažodį.';
+$labels['nocurpassword'] = 'Prašom įvesti dabartinį slaptažodį.';
+$labels['passwordincorrect'] = 'Dabartinis slaptažodis neteisingas.';
+$labels['passwordinconsistency'] = 'Slaptažodžiai nesutapo. Bandykite dar kartą.';
+$labels['crypterror'] = 'Nepavyko įrašyti naujojo slaptažodžio. Trūksta šifravimo funkcijos.';
+$labels['connecterror'] = 'Nepavyko įrašyti naujojo slaptažodžio. Ryšio klaida.';
+$labels['internalerror'] = 'Nepavyko įrašyti naujojo slaptažodžio.';
+$labels['passwordshort'] = 'Slaptažodis turi būti sudarytas bent iš $length simbolių.';
+$labels['passwordweak'] = 'Slaptažodyje turi būti bent vienas skaitmuo ir vienas skyrybos ženklas.';
+$labels['passwordforbidden'] = 'Slaptažodyje rasta neleistinų simbolių.';
-?>
diff --git a/plugins/password/localization/lv_LV.inc b/plugins/password/localization/lv_LV.inc
index 8f5f4c2c2..0dbbdba28 100644
--- a/plugins/password/localization/lv_LV.inc
+++ b/plugins/password/localization/lv_LV.inc
@@ -1,20 +1,30 @@
<?php
-$labels = array();
-$labels['changepasswd'] = 'Nomainīt paroli';
-$labels['curpasswd'] = 'PaÅ¡reizÄ“jÄ parole:';
-$labels['newpasswd'] = 'JaunÄ parole:';
-$labels['confpasswd'] = 'VÄ“lreiz jauno paroli:';
+/*
+ +-----------------------------------------------------------------------+
+ | localization/lv_LV/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
-$messages = array();
-$messages['nopassword'] = 'LÅ«dzu, ievadiet jauno paroli.';
-$messages['nocurpassword'] = 'Lūdzu, ievadiet pašreizējo paroli.';
-$messages['passwordincorrect'] = 'PaÅ¡reizÄ“jÄ parole nepareiza.';
-$messages['passwordinconsistency'] = 'Paroles nesakrīt. Lūdzu, ievadiet vēlreiz.';
-$messages['crypterror'] = 'NevarÄ“ja saglabÄt jauno paroli. TrÅ«kst kriptÄ“Å¡anas funkcija.';
-$messages['connecterror'] = 'NevarÄ“ja saglabÄt jauno paroli. Savienojuma kļūda.';
-$messages['internalerror'] = 'NevarÄ“ja saglabÄt jauno paroli.';
-$messages['passwordshort'] = 'Jaunajai parolei jÄbÅ«t vismaz $length simbola garai.';
-$messages['passwordweak'] = 'Jaunajai parolei jÄsatur vismaz viens cipars un punktuÄcijas simbols.';
+$labels = array();
+$labels['changepasswd'] = 'Nomainīt paroli';
+$labels['curpasswd'] = 'PaÅ¡reizÄ“jÄ parole:';
+$labels['newpasswd'] = 'JaunÄ parole:';
+$labels['confpasswd'] = 'VÄ“lreiz jauno paroli:';
+$labels['nopassword'] = 'LÅ«dzu, ievadiet jauno paroli.';
+$labels['nocurpassword'] = 'Lūdzu, ievadiet pašreizējo paroli.';
+$labels['passwordincorrect'] = 'PaÅ¡reizÄ“jÄ parole nepareiza.';
+$labels['passwordinconsistency'] = 'Paroles nesakrīt. Lūdzu, ievadiet vēlreiz.';
+$labels['crypterror'] = 'NevarÄ“ja saglabÄt jauno paroli. TrÅ«kst kriptÄ“Å¡anas funkcija.';
+$labels['connecterror'] = 'NevarÄ“ja saglabÄt jauno paroli. Savienojuma kļūda.';
+$labels['internalerror'] = 'NevarÄ“ja saglabÄt jauno paroli.';
+$labels['passwordshort'] = 'Jaunajai parolei jÄbÅ«t vismaz $length simbola garai.';
+$labels['passwordweak'] = 'Jaunajai parolei jÄsatur vismaz viens cipars un punktuÄcijas simbols.';
-?>
diff --git a/plugins/password/localization/nl_NL.inc b/plugins/password/localization/nl_NL.inc
index 6d7c401ac..5429cb52e 100644
--- a/plugins/password/localization/nl_NL.inc
+++ b/plugins/password/localization/nl_NL.inc
@@ -1,17 +1,31 @@
<?php
-$labels = array();
-$labels['changepasswd'] = 'Wijzig Wachtwoord';
-$labels['curpasswd'] = 'Huidig Wachtwoord:';
-$labels['newpasswd'] = 'Nieuw Wachtwoord:';
-$labels['confpasswd'] = 'Bevestig Nieuw Wachtwoord:';
+/*
+ +-----------------------------------------------------------------------+
+ | localization/nl_NL/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Geert Wirken |
+ +-----------------------------------------------------------------------+
+*/
-$messages = array();
-$messages['nopassword'] = 'Vul een wachtwoord in.';
-$messages['nocurpassword'] = 'vul het huidige wachtwoord in.';
-$messages['passwordincorrect'] = 'Huidig wachtwoord is onjuist.';
-$messages['passwordinconsistency'] = 'Wachtwoorden komen niet overeen, probeer het opnieuw.';
-$messages['crypterror'] = 'De server mist een functie om uw wachtwoord et beveiligen.';
-$messages['internalerror'] = 'Uw wachtwoord kan niet worden opgeslagen.';
+$labels = array();
+$labels['changepasswd'] = 'Wijzig Wachtwoord';
+$labels['curpasswd'] = 'Huidig Wachtwoord:';
+$labels['newpasswd'] = 'Nieuw Wachtwoord:';
+$labels['confpasswd'] = 'Bevestig Nieuw Wachtwoord:';
+$labels['nopassword'] = 'Vul een wachtwoord in.';
+$labels['nocurpassword'] = 'vul het huidige wachtwoord in.';
+$labels['passwordincorrect'] = 'Huidig wachtwoord is onjuist.';
+$labels['passwordinconsistency'] = 'Wachtwoorden komen niet overeen, probeer het opnieuw.';
+$labels['crypterror'] = 'De server mist een functie om uw wachtwoord et beveiligen.';
+$labels['connecterror'] = 'Kan het nieuwe wachtwoord niet opslaan. Verbindingsfout.';
+$labels['internalerror'] = 'Uw wachtwoord kan niet worden opgeslagen.';
+$labels['passwordshort'] = 'Het wachtwoord moet minimaal $length tekens lang zijn.';
+$labels['passwordweak'] = 'Het wachtwoord moet minimaal één nummer en één leesteken bevatten.';
+$labels['passwordforbidden'] = 'Het wachtwoord bevat tekens die niet toegestaan zijn.';
-?>
diff --git a/plugins/password/localization/pl_PL.inc b/plugins/password/localization/pl_PL.inc
index 687ca9383..6edbf3fb1 100644
--- a/plugins/password/localization/pl_PL.inc
+++ b/plugins/password/localization/pl_PL.inc
@@ -1,21 +1,31 @@
<?php
-$labels = array();
-$labels['changepasswd'] = 'Zmiana hasła';
-$labels['curpasswd'] = 'Aktualne hasło:';
-$labels['newpasswd'] = 'Nowe hasło:';
-$labels['confpasswd'] = 'Potwierdź hasło:';
+/*
+ +-----------------------------------------------------------------------+
+ | localization/pl_PL/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
-$messages = array();
-$messages['nopassword'] = 'Wprowadź nowe hasło.';
-$messages['nocurpassword'] = 'Wprowadź aktualne hasło.';
-$messages['passwordincorrect'] = 'Błędne aktualne hasło, spróbuj ponownie.';
-$messages['passwordinconsistency'] = 'Hasła nie pasują, spróbuj ponownie.';
-$messages['crypterror'] = 'Nie udało się zapisać nowego hasła. Brak funkcji kodującej.';
-$messages['connecterror'] = 'Nie udało się zapisać nowego hasła. Błąd połączenia.';
-$messages['internalerror'] = 'Nie udało się zapisać nowego hasła.';
-$messages['passwordshort'] = 'Hasło musi posiadać co najmniej $length znaków.';
-$messages['passwordweak'] = 'Hasło musi zawierać co najmniej jedną cyfrę i znak interpunkcyjny.';
-$messages['passwordforbidden'] = 'Hasło zawiera niedozwolone znaki.';
+$labels = array();
+$labels['changepasswd'] = 'Zmiana hasła';
+$labels['curpasswd'] = 'Aktualne hasło:';
+$labels['newpasswd'] = 'Nowe hasło:';
+$labels['confpasswd'] = 'Potwierdź hasło:';
+$labels['nopassword'] = 'Wprowadź nowe hasło.';
+$labels['nocurpassword'] = 'Wprowadź aktualne hasło.';
+$labels['passwordincorrect'] = 'Błędne aktualne hasło, spróbuj ponownie.';
+$labels['passwordinconsistency'] = 'Hasła nie pasują, spróbuj ponownie.';
+$labels['crypterror'] = 'Nie udało się zapisać nowego hasła. Brak funkcji kodującej.';
+$labels['connecterror'] = 'Nie udało się zapisać nowego hasła. Błąd połączenia.';
+$labels['internalerror'] = 'Nie udało się zapisać nowego hasła.';
+$labels['passwordshort'] = 'Hasło musi posiadać co najmniej $length znaków.';
+$labels['passwordweak'] = 'Hasło musi zawierać co najmniej jedną cyfrę i znak interpunkcyjny.';
+$labels['passwordforbidden'] = 'Hasło zawiera niedozwolone znaki.';
-?>
diff --git a/plugins/password/localization/pt_BR.inc b/plugins/password/localization/pt_BR.inc
index f3626e834..cd6b19902 100644
--- a/plugins/password/localization/pt_BR.inc
+++ b/plugins/password/localization/pt_BR.inc
@@ -1,21 +1,31 @@
<?php
-$labels = array();
-$labels['changepasswd'] = 'Alterar senha';
-$labels['curpasswd'] = 'Senha atual:';
-$labels['newpasswd'] = 'Nova senha:';
-$labels['confpasswd'] = 'Confirmar nova senha:';
+/*
+ +-----------------------------------------------------------------------+
+ | localization/pt_BR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
-$messages = array();
-$messages['nopassword'] = 'Por favor, informe a nova senha.';
-$messages['nocurpassword'] = 'Por favor, informe a senha atual.';
-$messages['passwordincorrect'] = 'Senha atual incorreta.';
-$messages['passwordinconsistency'] = 'Senhas não combinam, por favor tente novamente.';
-$messages['crypterror'] = 'Não foi possível gravar a nova senha. Função de criptografia ausente.';
-$messages['connecterror'] = 'Não foi possível gravar a nova senha. Erro de conexão.';
-$messages['internalerror'] = 'Não foi possível gravar a nova senha.';
-$messages['passwordshort'] = 'A senha precisa ter ao menos $length caracteres.';
-$messages['passwordweak'] = 'A senha precisa conter ao menos um número e um caractere de pontuação.';
-$messages['passwordforbidden'] = 'A senha contém caracteres proibidos.';
+$labels = array();
+$labels['changepasswd'] = 'Alterar senha';
+$labels['curpasswd'] = 'Senha atual:';
+$labels['newpasswd'] = 'Nova senha:';
+$labels['confpasswd'] = 'Confirmar nova senha:';
+$labels['nopassword'] = 'Por favor, informe a nova senha.';
+$labels['nocurpassword'] = 'Por favor, informe a senha atual.';
+$labels['passwordincorrect'] = 'Senha atual incorreta.';
+$labels['passwordinconsistency'] = 'Senhas não combinam, por favor tente novamente.';
+$labels['crypterror'] = 'Não foi possível gravar a nova senha. Função de criptografia ausente.';
+$labels['connecterror'] = 'Não foi possível gravar a nova senha. Erro de conexão.';
+$labels['internalerror'] = 'Não foi possível gravar a nova senha.';
+$labels['passwordshort'] = 'A senha precisa ter ao menos $length caracteres.';
+$labels['passwordweak'] = 'A senha precisa conter ao menos um número e um caractere de pontuação.';
+$labels['passwordforbidden'] = 'A senha contém caracteres proibidos.';
-?>
diff --git a/plugins/password/localization/pt_PT.inc b/plugins/password/localization/pt_PT.inc
index 5307ad69f..004e9b207 100644
--- a/plugins/password/localization/pt_PT.inc
+++ b/plugins/password/localization/pt_PT.inc
@@ -1,18 +1,31 @@
<?php
-$labels = array();
-$labels['changepasswd'] = 'Alterar password';
-$labels['curpasswd'] = 'Password atual:';
-$labels['newpasswd'] = 'Nova password:';
-$labels['confpasswd'] = 'Confirmar password:';
+/*
+ +-----------------------------------------------------------------------+
+ | localization/pt_PT/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: David |
+ +-----------------------------------------------------------------------+
+*/
-$messages = array();
-$messages['nopassword'] = 'Introduza a nova password.';
-$messages['nocurpassword'] = 'Introduza a password actual.';
-$messages['passwordincorrect'] = 'Password actual errada.';
-$messages['passwordinconsistency'] = 'Password\'s não combinam, tente novamente..';
-$messages['crypterror'] = 'Não foi possível gravar a nova password. Função de criptografica inexistente.';
-$messages['connecterror'] = 'Não foi possível gravar a nova password. Erro de ligação.';
-$messages['internalerror'] = 'Não foi possível gravar a nova password.';
+$labels = array();
+$labels['changepasswd'] = 'Alterar password';
+$labels['curpasswd'] = 'Password atual:';
+$labels['newpasswd'] = 'Nova password:';
+$labels['confpasswd'] = 'Confirmar password:';
+$labels['nopassword'] = 'Introduza a nova password.';
+$labels['nocurpassword'] = 'Introduza a password actual.';
+$labels['passwordincorrect'] = 'Password actual errada.';
+$labels['passwordinconsistency'] = 'Password\'s não combinam, tente novamente..';
+$labels['crypterror'] = 'Não foi possível gravar a nova password. Função de criptografica inexistente.';
+$labels['connecterror'] = 'Não foi possível gravar a nova password. Erro de ligação.';
+$labels['internalerror'] = 'Não foi possível gravar a nova password.';
+$labels['passwordshort'] = 'A palavra-passe deve ter pelo menos $length caracteres';
+$labels['passwordweak'] = 'A palavra-passe deve incluir pelo menos um numero e um sinal de pontuação.';
+$labels['passwordforbidden'] = 'A palavra-passe contém caracteres não suportados.';
-?>
diff --git a/plugins/password/localization/ru_RU.inc b/plugins/password/localization/ru_RU.inc
index 3776b4598..e21f82020 100644
--- a/plugins/password/localization/ru_RU.inc
+++ b/plugins/password/localization/ru_RU.inc
@@ -1,35 +1,31 @@
<?php
-/*
-
-+-----------------------------------------------------------------------+
-| plugins/password/localization/ru_RU.inc |
-| |
-| Language file of the Roundcube help plugin |
-| Copyright (C) 2005-2010, The Roundcube Dev Team |
-| Licensed under the GNU GPL |
-| |
-+-----------------------------------------------------------------------+
-| Author: Sergey Dukachev <iam@dukess.ru> |
-+-----------------------------------------------------------------------+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ru_RU/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
*/
$labels = array();
-$labels['changepasswd'] = 'Изменить пароль';
-$labels['curpasswd'] = 'Текущий пароль:';
-$labels['newpasswd'] = 'Ðовый пароль:';
-$labels['confpasswd'] = 'Подтвердите новый пароль:';
-
-$messages = array();
-$messages['nopassword'] = 'ПожалуйÑта, введите новый пароль.';
-$messages['nocurpassword'] = 'ПожалуйÑта, введите текущий пароль.';
-$messages['passwordincorrect'] = 'Текущий пароль неверен.';
-$messages['passwordinconsistency'] = 'Пароли не Ñовпадают, попробуйте, пожалуйÑта, ещё.';
-$messages['crypterror'] = 'Ðе могу Ñохранить новый пароль. ОтÑутÑтвует криптографичеÑÐºÐ°Ñ Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ.';
-$messages['connecterror'] = 'Ðе могу Ñохранить новый пароль. Ошибка ÑоединениÑ.';
-$messages['internalerror'] = 'Ðе могу Ñохранить новый пароль.';
-$messages['passwordshort'] = 'Пароль должен быть длиной как минимум $length Ñимволов.';
-$messages['passwordweak'] = 'Пароль должен включать в ÑÐµÐ±Ñ ÐºÐ°Ðº минимум одну цифру и один знак пунктуации.';
-$messages['passwordforbidden'] = 'Пароль Ñодержит недопуÑтимые Ñимволы.';
+$labels['changepasswd'] = 'Изменить пароль';
+$labels['curpasswd'] = 'Текущий пароль:';
+$labels['newpasswd'] = 'Ðовый пароль:';
+$labels['confpasswd'] = 'Подтвердите новый пароль:';
+$labels['nopassword'] = 'ПожалуйÑта, введите новый пароль.';
+$labels['nocurpassword'] = 'ПожалуйÑта, введите текущий пароль.';
+$labels['passwordincorrect'] = 'Текущий пароль неверен.';
+$labels['passwordinconsistency'] = 'Пароли не Ñовпадают, попробуйте, пожалуйÑта, ещё.';
+$labels['crypterror'] = 'Ðе могу Ñохранить новый пароль. ОтÑутÑтвует криптографичеÑÐºÐ°Ñ Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ.';
+$labels['connecterror'] = 'Ðе могу Ñохранить новый пароль. Ошибка ÑоединениÑ.';
+$labels['internalerror'] = 'Ðе могу Ñохранить новый пароль.';
+$labels['passwordshort'] = 'Пароль должен быть длиной как минимум $length Ñимволов.';
+$labels['passwordweak'] = 'Пароль должен включать в ÑÐµÐ±Ñ ÐºÐ°Ðº минимум одну цифру и один знак пунктуации.';
+$labels['passwordforbidden'] = 'Пароль Ñодержит недопуÑтимые Ñимволы.';
-?>
diff --git a/plugins/password/localization/sk_SK.inc b/plugins/password/localization/sk_SK.inc
index 6def2f914..9767cb443 100644
--- a/plugins/password/localization/sk_SK.inc
+++ b/plugins/password/localization/sk_SK.inc
@@ -1,29 +1,31 @@
<?php
-/**
- * Slovak translation for Roundcube password plugin
- *
- * @version 1.0 (2010-10-18)
- * @author panda <admin@whistler.sk>
- *
- */
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sk_SK/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
$labels = array();
-$labels['changepasswd'] = 'Zmeniť heslo';
-$labels['curpasswd'] = 'SúÄasné heslo:';
-$labels['newpasswd'] = 'Nové heslo:';
-$labels['confpasswd'] = 'PotvrÄ nové heslo:';
+$labels['changepasswd'] = 'Zmeniť heslo';
+$labels['curpasswd'] = 'SúÄasné heslo:';
+$labels['newpasswd'] = 'Nové heslo:';
+$labels['confpasswd'] = 'PotvrÄ nové heslo:';
+$labels['nopassword'] = 'Prosím zadaj nové heslo.';
+$labels['nocurpassword'] = 'Prosím zadaj súÄasné heslo.';
+$labels['passwordincorrect'] = 'SúÄasné heslo je nesprávne.';
+$labels['passwordinconsistency'] = 'Heslá nie sú rovnaké, skús znova.';
+$labels['crypterror'] = 'Nemôžem uložiť nové heslo. Chýba šifrovacia funkcia.';
+$labels['connecterror'] = 'Nemôžem uložiť nové heslo. Chyba spojenia.';
+$labels['internalerror'] = 'Nemôžem uložiť nové heslo.';
+$labels['passwordshort'] = 'Heslo musí mať najmenej $length znakov.';
+$labels['passwordweak'] = 'Heslo musí obsahovaÅ¥ aspoň jedno Äíslo a jedno interpunkÄné znamienko.';
+$labels['passwordforbidden'] = 'Heslo obsahuje nepovolené znaky.';
-$messages = array();
-$messages['nopassword'] = 'Prosím zadaj nové heslo.';
-$messages['nocurpassword'] = 'Prosím zadaj súÄasné heslo.';
-$messages['passwordincorrect'] = 'SúÄasné heslo je nesprávne.';
-$messages['passwordinconsistency'] = 'Heslá nie sú rovnaké, skús znova.';
-$messages['crypterror'] = 'Nemôžem uložiť nové heslo. Chýba šifrovacia funkcia.';
-$messages['connecterror'] = 'Nemôžem uložiť nové heslo. Chyba spojenia.';
-$messages['internalerror'] = 'Nemôžem uložiť nové heslo.';
-$messages['passwordshort'] = 'Heslo musí mať najmenej $length znakov.';
-$messages['passwordweak'] = 'Heslo musí obsahovaÅ¥ aspoň jedno Äíslo a jedno interpunkÄné znamienko.';
-$messages['passwordforbidden'] = 'Heslo obsahuje nepovolené znaky.';
-
-?>
diff --git a/plugins/password/localization/sl_SI.inc b/plugins/password/localization/sl_SI.inc
index df17583be..30525415f 100644
--- a/plugins/password/localization/sl_SI.inc
+++ b/plugins/password/localization/sl_SI.inc
@@ -1,18 +1,31 @@
<?php
-
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sl_SI/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Barbara Krasovec <barbarak@arnes.si> |
+ +-----------------------------------------------------------------------+
+*/
+
$labels = array();
-$labels['changepasswd'] = 'Spremeni geslo';
-$labels['curpasswd'] = 'ObstojeÄe geslo:';
-$labels['newpasswd'] = 'Novo geslo:';
-$labels['confpasswd'] = 'Potrdi novo geslo:';
-
-$messages = array();
-$messages['nopassword'] = 'Vnesite novo geslo.';
-$messages['nocurpassword'] = 'Vnesite obstojeÄe geslo.';
-$messages['passwordincorrect'] = 'ObstojeÄe geslo ni veljavno.';
-$messages['passwordinconsistency'] = 'Gesli se ne ujemata, poskusite znova.';
-$messages['crypterror'] = 'Novega gesla ni bilo mogoÄe shraniti. PriÅ¡lo je do napake pri Å¡ifriranju.';
-$messages['connecterror'] = 'Novega gesla ni bilo mogoÄe shraniti. PriÅ¡lo je do napake v povezavi.';
-$messages['internalerror'] = 'Novega gesla ni bilo mogoÄe shraniti.';
+$labels['changepasswd'] = 'Spremeni geslo';
+$labels['curpasswd'] = 'ObstojeÄe geslo:';
+$labels['newpasswd'] = 'Novo geslo:';
+$labels['confpasswd'] = 'Potrdi novo geslo:';
+$labels['nopassword'] = 'Vnesite novo geslo.';
+$labels['nocurpassword'] = 'Vnesite obstojeÄe geslo.';
+$labels['passwordincorrect'] = 'ObstojeÄe geslo ni veljavno.';
+$labels['passwordinconsistency'] = 'Gesli se ne ujemata, poskusite znova.';
+$labels['crypterror'] = 'Novega gesla ni bilo mogoÄe shraniti. PriÅ¡lo je do napake pri Å¡ifriranju.';
+$labels['connecterror'] = 'Novega gesla ni bilo mogoÄe shraniti. PriÅ¡lo je do napake v povezavi.';
+$labels['internalerror'] = 'Novega gesla ni bilo mogoÄe shraniti.';
+$labels['passwordshort'] = 'Geslo mora vsebovati vsaj $length znakov';
+$labels['passwordweak'] = 'Geslo mora vkljuÄevati vsaj eno Å¡tevilko in loÄilo.';
+$labels['passwordforbidden'] = 'Geslo vsebuje neveljavne znake.';
-?>
diff --git a/plugins/password/localization/sr_CS.inc b/plugins/password/localization/sr_CS.inc
new file mode 100644
index 000000000..4224f492f
--- /dev/null
+++ b/plugins/password/localization/sr_CS.inc
@@ -0,0 +1,31 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sr_CS/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Saša Zejnilović <zejnils@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['changepasswd'] = 'Промијени лозинку';
+$labels['curpasswd'] = 'Тренутна лозинка:';
+$labels['newpasswd'] = 'Ðова лозинка:';
+$labels['confpasswd'] = 'Поновите лозинку:';
+$labels['nopassword'] = 'Молимо унеÑите нову лозинку.';
+$labels['nocurpassword'] = 'Молимо унеÑите тренутну лозинку.';
+$labels['passwordincorrect'] = 'Тренутна лозинка је нетачна.';
+$labels['passwordinconsistency'] = 'Лозинке Ñе не поклапају, молимо покушајте поново.';
+$labels['crypterror'] = 'Ðије могуће Ñачувати нову лозинку. ÐедоÑтаје функција за кодирање.';
+$labels['connecterror'] = 'Ðије могуће Ñачувати нову лозинку. Грешка у Вези.';
+$labels['internalerror'] = 'Ðије могуће Ñачувати нову лозинку.';
+$labels['passwordshort'] = 'Лозинка мора имати најмање $lenght знакова.';
+$labels['passwordweak'] = 'Лозинка мора да Ñадржи најмање један број и један интерпункцијÑки знак.';
+$labels['passwordforbidden'] = 'Лозинка Ñадржи недозвољене знакове.';
+
diff --git a/plugins/password/localization/sv_SE.inc b/plugins/password/localization/sv_SE.inc
index d649bbd9a..67e71a424 100644
--- a/plugins/password/localization/sv_SE.inc
+++ b/plugins/password/localization/sv_SE.inc
@@ -1,21 +1,31 @@
<?php
-$labels = array();
-$labels['changepasswd'] = 'Ändra lösenord';
-$labels['curpasswd'] = 'Nuvarande lösenord:';
-$labels['newpasswd'] = 'Nytt lösenord:';
-$labels['confpasswd'] = 'Bekräfta nytt lösenord:';
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sv_SE/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
-$messages = array();
-$messages['nopassword'] = 'Vänligen ange nytt lösenord.';
-$messages['nocurpassword'] = 'Vänligen ange nuvarande lösenord.';
-$messages['passwordincorrect'] = 'Felaktigt nuvarande lösenord.';
-$messages['passwordinconsistency'] = 'Nya lösenordet och bekräftelsen överensstämmer inte, försök igen.';
-$messages['crypterror'] = 'Lösenordet kunde inte ändras. Krypteringsfunktionen saknas.';
-$messages['connecterror'] = 'Lösenordet kunde inte ändras. Anslutningen misslyckades.';
-$messages['internalerror'] = 'Lösenordet kunde inte ändras.';
-$messages['passwordshort'] = 'Lösenordet måste vara minst $length tecken långt.';
-$messages['passwordweak'] = 'Lösenordet måste innehålla minst en siffra och ett specialtecken.';
-$messages['passwordforbidden'] = 'Lösenordet innehåller otillåtna tecken.';
+$labels = array();
+$labels['changepasswd'] = 'Ändra lösenord';
+$labels['curpasswd'] = 'Nuvarande lösenord:';
+$labels['newpasswd'] = 'Nytt lösenord:';
+$labels['confpasswd'] = 'Bekräfta nytt lösenord:';
+$labels['nopassword'] = 'Vänligen ange nytt lösenord.';
+$labels['nocurpassword'] = 'Vänligen ange nuvarande lösenord.';
+$labels['passwordincorrect'] = 'Felaktigt nuvarande lösenord.';
+$labels['passwordinconsistency'] = 'Nya lösenordet och bekräftelsen överensstämmer inte, försök igen.';
+$labels['crypterror'] = 'Lösenordet kunde inte ändras. Krypteringsfunktionen saknas.';
+$labels['connecterror'] = 'Lösenordet kunde inte ändras. Anslutningen misslyckades.';
+$labels['internalerror'] = 'Lösenordet kunde inte ändras.';
+$labels['passwordshort'] = 'Lösenordet måste vara minst $length tecken långt.';
+$labels['passwordweak'] = 'Lösenordet måste innehålla minst en siffra och ett specialtecken.';
+$labels['passwordforbidden'] = 'Lösenordet innehåller otillåtna tecken.';
-?> \ No newline at end of file
diff --git a/plugins/password/localization/tr_TR.inc b/plugins/password/localization/tr_TR.inc
index 4f2322a2e..a2c94c102 100644
--- a/plugins/password/localization/tr_TR.inc
+++ b/plugins/password/localization/tr_TR.inc
@@ -1,21 +1,31 @@
<?php
-$labels = array();
-$labels['changepasswd'] = 'Parolayı Değiştir';
-$labels['curpasswd'] = 'Åžu anki Parola:';
-$labels['newpasswd'] = 'Yeni Parola:';
-$labels['confpasswd'] = 'Yeni Parolayı Onaylayın:';
+/*
+ +-----------------------------------------------------------------------+
+ | localization/tr_TR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Gökdeniz Karadağ |
+ +-----------------------------------------------------------------------+
+*/
-$messages = array();
-$messages['nopassword'] = 'Lütfen yeni şifreyi girin.';
-$messages['nocurpassword'] = 'Lütfen şu anki şifrenizi girin.';
-$messages['passwordincorrect'] = 'Parolanızı yanlış girdiniz.';
-$messages['passwordinconsistency'] = 'Girdiğiniz parolalar uyuşmuyor. Lütfen tekrar deneyin..';
-$messages['crypterror'] = 'Yeni ÅŸifre kaydedilemedi. Gerekli fonksiyon eksik.';
-$messages['connecterror'] = 'Yeni şifre kaydedilemedi. Bağlantı hatası.';
-$messages['internalerror'] = 'Yeni ÅŸifre kaydedilemedi.';
-$messages['passwordshort'] = 'Parola en az $length karakterden oluşmalı.';
-$messages['passwordweak'] = 'Parola en az bir sayı ve bir noktalama işareti içermeli.';
-$messages['passwordforbidden'] = 'Parola uygunsuz karakter(ler) içeriyor.';
+$labels = array();
+$labels['changepasswd'] = 'Parolayı Değiştir';
+$labels['curpasswd'] = 'Åžimdiki Parola:';
+$labels['newpasswd'] = 'Yeni Parola:';
+$labels['confpasswd'] = 'Yeni Parolayı Onaylayın:';
+$labels['nopassword'] = 'Lütfen yeni parolayı girin.';
+$labels['nocurpassword'] = 'Lütfen şimdiki parolayı girin.';
+$labels['passwordincorrect'] = 'Şimdiki parolayı yanlış girdiniz.';
+$labels['passwordinconsistency'] = 'Girdiğiniz parolalar uyuşmuyor. Lütfen tekrar deneyin.';
+$labels['crypterror'] = 'Yeni parola kaydedilemedi. Åžifreleme fonksiyonu mevcut deÄŸil.';
+$labels['connecterror'] = 'Yeni parola kaydedilemedi. Bağlantı hatası.';
+$labels['internalerror'] = 'Yeni parola kaydedilemedi.';
+$labels['passwordshort'] = 'Parola en az $length karakterden oluşmalı.';
+$labels['passwordweak'] = 'Parola en az bir sayı ve bir noktalama işareti içermeli.';
+$labels['passwordforbidden'] = 'Parola uygunsuz karakter(ler) içeriyor.';
-?>
diff --git a/plugins/password/localization/vi_VN.inc b/plugins/password/localization/vi_VN.inc
new file mode 100644
index 000000000..5fd266e27
--- /dev/null
+++ b/plugins/password/localization/vi_VN.inc
@@ -0,0 +1,31 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/vi_VN/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Hung Pham <phamhung77@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['changepasswd'] = 'Äổi mật khẩu';
+$labels['curpasswd'] = 'Mật khẩu hiện tại:';
+$labels['newpasswd'] = 'Mật khẩu mới:';
+$labels['confpasswd'] = 'XaÌc nhận mật khẩu mÆ¡Ìi';
+$labels['nopassword'] = 'MÆ¡Ì€i nhập mật khẩu mÆ¡Ìi';
+$labels['nocurpassword'] = 'Mời nhập mật khẩu hiện tại';
+$labels['passwordincorrect'] = 'Mật khẩu hiện thÆ¡Ì€i không Ä‘uÌng';
+$labels['passwordinconsistency'] = 'Mật khẩu không khÆ¡Ìp, hãy thử laÌ£i';
+$labels['crypterror'] = 'Không thể lÆ°u mật khẩu mÆ¡Ìi. ThiêÌu chÆ°Ìc năng mã hoÌa';
+$labels['connecterror'] = 'Không thể lÆ°u mật mã mÆ¡Ìi. Lỗi kêÌt nôÌi';
+$labels['internalerror'] = 'Không thể lÆ°u mật khẩu mÆ¡Ìi';
+$labels['passwordshort'] = 'Mật khẩu phải daÌ€i iÌt nhâÌt $ kyÌ tÆ°Ì£';
+$labels['passwordweak'] = 'Mật khẩu phải chÆ°Ìa iÌt nhâÌt 1 con sÃ´Ì vaÌ€ 1 kyÌ tÆ°Ì£ dâÌu câu';
+$labels['passwordforbidden'] = 'Mật khẩu chÆ°Ìa kyÌ biÌ£ không hÆ¡Ì£p lệ';
+
diff --git a/plugins/password/localization/zh_TW.inc b/plugins/password/localization/zh_TW.inc
index 7d162274a..49fa48e7f 100644
--- a/plugins/password/localization/zh_TW.inc
+++ b/plugins/password/localization/zh_TW.inc
@@ -1,21 +1,31 @@
<?php
-$labels = array();
-$labels['changepasswd'] = '更改密碼';
-$labels['curpasswd'] = 'ç›®å‰çš„密碼';
-$labels['newpasswd'] = '新密碼';
-$labels['confpasswd'] = '確èªæ–°å¯†ç¢¼';
+/*
+ +-----------------------------------------------------------------------+
+ | localization/zh_TW/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
-$messages = array();
-$messages['nopassword'] = '請輸入新密碼';
-$messages['nocurpassword'] = '請輸入目å‰çš„密碼';
-$messages['passwordincorrect'] = 'ç›®å‰çš„密碼錯誤';
-$messages['passwordinconsistency'] = '密碼ä¸ç›¸ç¬¦ï¼Œè«‹é‡æ–°è¼¸å…¥';
-$messages['crypterror'] = '無法更新密碼:無加密機制';
-$messages['connecterror'] = '無法更新密碼:連線失敗';
-$messages['internalerror'] = '無法更新密碼';
-$messages['passwordshort'] = '您的密碼至少需 $length 個字元長';
-$messages['passwordweak'] = '您的新密碼至少需å«æœ‰ä¸€å€‹æ•¸å­—與一個標點符號';
-$messages['passwordforbidden'] = '您的密碼å«æœ‰ç¦ç”¨å­—å…ƒ';
+$labels = array();
+$labels['changepasswd'] = '更改密碼';
+$labels['curpasswd'] = 'ç›®å‰çš„密碼';
+$labels['newpasswd'] = '新密碼';
+$labels['confpasswd'] = '確èªæ–°å¯†ç¢¼';
+$labels['nopassword'] = '請輸入新密碼';
+$labels['nocurpassword'] = '請輸入目å‰çš„密碼';
+$labels['passwordincorrect'] = 'ç›®å‰çš„密碼錯誤';
+$labels['passwordinconsistency'] = '密碼ä¸ç›¸ç¬¦ï¼Œè«‹é‡æ–°è¼¸å…¥';
+$labels['crypterror'] = '無法更新密碼:無加密機制';
+$labels['connecterror'] = '無法更新密碼:連線失敗';
+$labels['internalerror'] = '無法更新密碼';
+$labels['passwordshort'] = '您的密碼至少需 $length 個字元長';
+$labels['passwordweak'] = '您的新密碼至少需å«æœ‰ä¸€å€‹æ•¸å­—與一個標點符號';
+$labels['passwordforbidden'] = '您的密碼å«æœ‰ç¦ç”¨å­—å…ƒ';
-?>
diff --git a/plugins/squirrelmail_usercopy/config.inc.php.dist b/plugins/squirrelmail_usercopy/config.inc.php.dist
index 0dc0abb02..cb62b1b86 100644
--- a/plugins/squirrelmail_usercopy/config.inc.php.dist
+++ b/plugins/squirrelmail_usercopy/config.inc.php.dist
@@ -22,4 +22,4 @@ $rcmail_config['squirrelmail_identities_level'] = null;
// Set to false if you don't want the email address of the default identity
// (squirrelmail preference "email_address") to be saved as alias.
// Recommended: set to false if your squirrelmail config setting $edit_identity has been true.
-$rcmail_config['squirrelmail_set_alias'] = true;
+$rcmail_config['squirrelmail_set_alias'] = true; \ No newline at end of file
diff --git a/plugins/subscriptions_option/localization/bs_BA.inc b/plugins/subscriptions_option/localization/bs_BA.inc
new file mode 100644
index 000000000..3da2eaa95
--- /dev/null
+++ b/plugins/subscriptions_option/localization/bs_BA.inc
@@ -0,0 +1,18 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/bs_BA/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Kenan Dervišević <kenan3008@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['useimapsubscriptions'] = 'Koristi IMAP pretplate';
+
diff --git a/plugins/subscriptions_option/localization/ca_ES.inc b/plugins/subscriptions_option/localization/ca_ES.inc
new file mode 100644
index 000000000..28e67e844
--- /dev/null
+++ b/plugins/subscriptions_option/localization/ca_ES.inc
@@ -0,0 +1,18 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ca_ES/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Jordi Sanfeliu <jordi@fibranet.cat> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['useimapsubscriptions'] = 'Fes servir subscripcions IMAP';
+
diff --git a/plugins/subscriptions_option/localization/cs_CZ.inc b/plugins/subscriptions_option/localization/cs_CZ.inc
index 0d9c1fc73..0c4142523 100644
--- a/plugins/subscriptions_option/localization/cs_CZ.inc
+++ b/plugins/subscriptions_option/localization/cs_CZ.inc
@@ -1,23 +1,18 @@
<?php
/*
-
-+-----------------------------------------------------------------------+
-| language/cs_CZ/labels.inc |
-| |
-| Language file of the Roundcube subscriptions option plugin |
-| Copyright (C) 2005-2009, The Roundcube Dev Team |
-| Licensed under the GNU GPL |
-| |
-+-----------------------------------------------------------------------+
-| Author: Milan Kozak <hodza@hodza.net> |
-+-----------------------------------------------------------------------+
-
-@version $Id: labels.inc 2993 2009-09-26 18:32:07Z alec $
-
+ +-----------------------------------------------------------------------+
+ | localization/cs_CZ/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
*/
$labels = array();
-$labels['useimapsubscriptions'] = 'Používat odebírání IMAP složek';
+$labels['useimapsubscriptions'] = 'Používat odebírání IMAP složek';
-?>
diff --git a/plugins/subscriptions_option/localization/cy_GB.inc b/plugins/subscriptions_option/localization/cy_GB.inc
new file mode 100644
index 000000000..54cc72b8b
--- /dev/null
+++ b/plugins/subscriptions_option/localization/cy_GB.inc
@@ -0,0 +1,18 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/cy_GB/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Dafydd Tomos |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['useimapsubscriptions'] = 'Defnyddio tanysgrifiadau IMAP';
+
diff --git a/plugins/subscriptions_option/localization/da_DK.inc b/plugins/subscriptions_option/localization/da_DK.inc
new file mode 100644
index 000000000..bcefdcc23
--- /dev/null
+++ b/plugins/subscriptions_option/localization/da_DK.inc
@@ -0,0 +1,18 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/da_DK/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Johannes Hessellund <osos@openeyes.dk> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['useimapsubscriptions'] = 'Brug IMAP abonnementer';
+
diff --git a/plugins/subscriptions_option/localization/de_CH.inc b/plugins/subscriptions_option/localization/de_CH.inc
index b4affe0c8..5a3e6908e 100644
--- a/plugins/subscriptions_option/localization/de_CH.inc
+++ b/plugins/subscriptions_option/localization/de_CH.inc
@@ -1,6 +1,18 @@
<?php
+/*
+ +-----------------------------------------------------------------------+
+ | localization/de_CH/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+
$labels = array();
-$labels['useimapsubscriptions'] = 'Nur abonnierte Ordner anzeigen';
+$labels['useimapsubscriptions'] = 'Nur abonnierte Ordner anzeigen';
-?>
diff --git a/plugins/subscriptions_option/localization/de_DE.inc b/plugins/subscriptions_option/localization/de_DE.inc
index b4affe0c8..25a8d4bde 100644
--- a/plugins/subscriptions_option/localization/de_DE.inc
+++ b/plugins/subscriptions_option/localization/de_DE.inc
@@ -1,6 +1,18 @@
<?php
+/*
+ +-----------------------------------------------------------------------+
+ | localization/de_DE/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+
$labels = array();
-$labels['useimapsubscriptions'] = 'Nur abonnierte Ordner anzeigen';
+$labels['useimapsubscriptions'] = 'Nur abonnierte Ordner anzeigen';
-?>
diff --git a/plugins/subscriptions_option/localization/en_GB.inc b/plugins/subscriptions_option/localization/en_GB.inc
new file mode 100644
index 000000000..3c88be72c
--- /dev/null
+++ b/plugins/subscriptions_option/localization/en_GB.inc
@@ -0,0 +1,18 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/en_GB/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Aleksander Machniak <alec@alec.pl> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['useimapsubscriptions'] = 'Use IMAP Subscriptions';
+
diff --git a/plugins/subscriptions_option/localization/es_ES.inc b/plugins/subscriptions_option/localization/es_ES.inc
index ca9a42126..dfc4c2f0a 100644
--- a/plugins/subscriptions_option/localization/es_ES.inc
+++ b/plugins/subscriptions_option/localization/es_ES.inc
@@ -1,6 +1,18 @@
<?php
+/*
+ +-----------------------------------------------------------------------+
+ | localization/es_ES/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+
$labels = array();
-$labels['useimapsubscriptions'] = 'Usar suscripciones IMAP';
+$labels['useimapsubscriptions'] = 'Usar suscripciones IMAP';
-?>
diff --git a/plugins/subscriptions_option/localization/et_EE.inc b/plugins/subscriptions_option/localization/et_EE.inc
index 6c5f6f435..11ebacc39 100644
--- a/plugins/subscriptions_option/localization/et_EE.inc
+++ b/plugins/subscriptions_option/localization/et_EE.inc
@@ -1,6 +1,18 @@
<?php
+/*
+ +-----------------------------------------------------------------------+
+ | localization/et_EE/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+
$labels = array();
-$labels['useimapsubscriptions'] = 'Kasuta IMAP tellimusi';
+$labels['useimapsubscriptions'] = 'Kasuta IMAP tellimusi';
-?>
diff --git a/plugins/subscriptions_option/localization/fa_IR.inc b/plugins/subscriptions_option/localization/fa_IR.inc
new file mode 100644
index 000000000..a2cdec71d
--- /dev/null
+++ b/plugins/subscriptions_option/localization/fa_IR.inc
@@ -0,0 +1,18 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/fa_IR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Hamid <abbaszadeh.h@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['useimapsubscriptions'] = 'استÙاده از عضویت IMAP';
+
diff --git a/plugins/subscriptions_option/localization/fi_FI.inc b/plugins/subscriptions_option/localization/fi_FI.inc
new file mode 100644
index 000000000..196804228
--- /dev/null
+++ b/plugins/subscriptions_option/localization/fi_FI.inc
@@ -0,0 +1,18 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/fi_FI/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Jiri Grönroos |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['useimapsubscriptions'] = 'Käytä IMAP-tilauksia';
+
diff --git a/plugins/subscriptions_option/localization/fr_FR.inc b/plugins/subscriptions_option/localization/fr_FR.inc
new file mode 100644
index 000000000..fc928d8ed
--- /dev/null
+++ b/plugins/subscriptions_option/localization/fr_FR.inc
@@ -0,0 +1,18 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/fr_FR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Nicolas Delvaux |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['useimapsubscriptions'] = 'Utiliser les abonnements IMAP';
+
diff --git a/plugins/subscriptions_option/localization/gl_ES.inc b/plugins/subscriptions_option/localization/gl_ES.inc
index d7db28d2e..c085c263a 100644
--- a/plugins/subscriptions_option/localization/gl_ES.inc
+++ b/plugins/subscriptions_option/localization/gl_ES.inc
@@ -1,6 +1,18 @@
<?php
+/*
+ +-----------------------------------------------------------------------+
+ | localization/gl_ES/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+
$labels = array();
-$labels['useimapsubscriptions'] = 'Usar suscripcións IMAP';
+$labels['useimapsubscriptions'] = 'Usar suscripcións IMAP';
-?>
diff --git a/plugins/subscriptions_option/localization/he_IL.inc b/plugins/subscriptions_option/localization/he_IL.inc
new file mode 100644
index 000000000..e91960a7e
--- /dev/null
+++ b/plugins/subscriptions_option/localization/he_IL.inc
@@ -0,0 +1,18 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/he_IL/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Moshe Leibovitch <moish@mln.co.il> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['useimapsubscriptions'] = 'שימוש ×‘×¨×™×©×•× ×œ×ª×™×§×™×•×ª IMAP';
+
diff --git a/plugins/subscriptions_option/localization/hu_HU.inc b/plugins/subscriptions_option/localization/hu_HU.inc
new file mode 100644
index 000000000..767364870
--- /dev/null
+++ b/plugins/subscriptions_option/localization/hu_HU.inc
@@ -0,0 +1,18 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/hu_HU/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: bela |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['useimapsubscriptions'] = 'IMAP előfizetések használata.';
+
diff --git a/plugins/subscriptions_option/localization/hy_AM.inc b/plugins/subscriptions_option/localization/hy_AM.inc
new file mode 100644
index 000000000..0769fe0a4
--- /dev/null
+++ b/plugins/subscriptions_option/localization/hy_AM.inc
@@ -0,0 +1,18 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/hy_AM/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Vahan Yerkanian <vahan@yerkanian.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['useimapsubscriptions'] = 'Õ•Õ£Õ¿Õ¡Õ£Õ¸Ö€Õ®Õ¥Õ¬ IMAP-Õ« Õ¢Õ¡ÕªÕ¡Õ¶Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¨';
+
diff --git a/plugins/subscriptions_option/localization/ja_JP.inc b/plugins/subscriptions_option/localization/ja_JP.inc
index dacea2956..206bf92a3 100644
--- a/plugins/subscriptions_option/localization/ja_JP.inc
+++ b/plugins/subscriptions_option/localization/ja_JP.inc
@@ -1,8 +1,18 @@
<?php
-// EN-Revision: 3891
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ja_JP/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
$labels = array();
-$labels['useimapsubscriptions'] = 'IMAP 購読リストを使ã†';
+$labels['useimapsubscriptions'] = 'IMAP 購読リストを使ã†';
-?>
diff --git a/plugins/subscriptions_option/localization/ko_KR.inc b/plugins/subscriptions_option/localization/ko_KR.inc
new file mode 100644
index 000000000..c391b2f73
--- /dev/null
+++ b/plugins/subscriptions_option/localization/ko_KR.inc
@@ -0,0 +1,18 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ko_KR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Kim, Woohyun <woohyun.kim@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['useimapsubscriptions'] = 'IMAP êµ¬ë… ì‚¬ìš©';
+
diff --git a/plugins/subscriptions_option/localization/lt_LT.inc b/plugins/subscriptions_option/localization/lt_LT.inc
new file mode 100644
index 000000000..30d73b8da
--- /dev/null
+++ b/plugins/subscriptions_option/localization/lt_LT.inc
@@ -0,0 +1,18 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/lt_LT/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Rimas Kudelis <rq@akl.lt> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['useimapsubscriptions'] = 'Naudoti IMAP prenumeratas';
+
diff --git a/plugins/subscriptions_option/localization/nl_NL.inc b/plugins/subscriptions_option/localization/nl_NL.inc
new file mode 100644
index 000000000..3664f5c18
--- /dev/null
+++ b/plugins/subscriptions_option/localization/nl_NL.inc
@@ -0,0 +1,18 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/nl_NL/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Geert Wirken |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['useimapsubscriptions'] = 'Gebruik IMAP-abonneringen';
+
diff --git a/plugins/subscriptions_option/localization/pl_PL.inc b/plugins/subscriptions_option/localization/pl_PL.inc
index 8544c7d30..15513d559 100644
--- a/plugins/subscriptions_option/localization/pl_PL.inc
+++ b/plugins/subscriptions_option/localization/pl_PL.inc
@@ -1,6 +1,18 @@
<?php
+/*
+ +-----------------------------------------------------------------------+
+ | localization/pl_PL/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+
$labels = array();
-$labels['useimapsubscriptions'] = 'Używaj subskrypcji IMAP';
+$labels['useimapsubscriptions'] = 'Używaj subskrypcji IMAP';
-?>
diff --git a/plugins/subscriptions_option/localization/pt_BR.inc b/plugins/subscriptions_option/localization/pt_BR.inc
new file mode 100644
index 000000000..b7480db6a
--- /dev/null
+++ b/plugins/subscriptions_option/localization/pt_BR.inc
@@ -0,0 +1,18 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/pt_BR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Victor Benincasa <vbenincasa@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['useimapsubscriptions'] = 'Usar função de inscrição em pastas IMAP';
+
diff --git a/plugins/subscriptions_option/localization/pt_PT.inc b/plugins/subscriptions_option/localization/pt_PT.inc
new file mode 100644
index 000000000..13ea3a4ad
--- /dev/null
+++ b/plugins/subscriptions_option/localization/pt_PT.inc
@@ -0,0 +1,18 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/pt_PT/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: David |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['useimapsubscriptions'] = 'Use subscrições IMAP';
+
diff --git a/plugins/subscriptions_option/localization/ru_RU.inc b/plugins/subscriptions_option/localization/ru_RU.inc
index 5deb84e0d..0d6b1d274 100644
--- a/plugins/subscriptions_option/localization/ru_RU.inc
+++ b/plugins/subscriptions_option/localization/ru_RU.inc
@@ -1,6 +1,18 @@
<?php
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ru_RU/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+
$labels = array();
-$labels['useimapsubscriptions'] = 'ИÑпользовать IMAP подпиÑку';
+$labels['useimapsubscriptions'] = 'ИÑпользовать IMAP подпиÑку';
-?>
diff --git a/plugins/subscriptions_option/localization/sk_SK.inc b/plugins/subscriptions_option/localization/sk_SK.inc
new file mode 100644
index 000000000..667264af2
--- /dev/null
+++ b/plugins/subscriptions_option/localization/sk_SK.inc
@@ -0,0 +1,18 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sk_SK/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: panda |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['useimapsubscriptions'] = 'Použi IMAP nastavenia';
+
diff --git a/plugins/subscriptions_option/localization/sl_SI.inc b/plugins/subscriptions_option/localization/sl_SI.inc
new file mode 100644
index 000000000..3c3943482
--- /dev/null
+++ b/plugins/subscriptions_option/localization/sl_SI.inc
@@ -0,0 +1,18 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sl_SI/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Barbara Krasovec <barbarak@arnes.si> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['useimapsubscriptions'] = 'Uporabi IMAP-naroÄnino';
+
diff --git a/plugins/subscriptions_option/localization/sr_CS.inc b/plugins/subscriptions_option/localization/sr_CS.inc
new file mode 100644
index 000000000..c582eccd5
--- /dev/null
+++ b/plugins/subscriptions_option/localization/sr_CS.inc
@@ -0,0 +1,18 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sr_CS/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Saša Zejnilović <zejnils@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['useimapsubscriptions'] = 'КориÑтите ИМÐП УпиÑивање';
+
diff --git a/plugins/subscriptions_option/localization/sv_SE.inc b/plugins/subscriptions_option/localization/sv_SE.inc
index 05b7006f4..bf0ee581a 100644
--- a/plugins/subscriptions_option/localization/sv_SE.inc
+++ b/plugins/subscriptions_option/localization/sv_SE.inc
@@ -1,6 +1,18 @@
<?php
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sv_SE/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+
$labels = array();
-$labels['useimapsubscriptions'] = 'Använd IMAP-prenumerationer';
+$labels['useimapsubscriptions'] = 'Använd IMAP-prenumerationer';
-?>
diff --git a/plugins/subscriptions_option/localization/tr_TR.inc b/plugins/subscriptions_option/localization/tr_TR.inc
new file mode 100644
index 000000000..0ebd48db3
--- /dev/null
+++ b/plugins/subscriptions_option/localization/tr_TR.inc
@@ -0,0 +1,18 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/tr_TR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: ismail yenigul |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['useimapsubscriptions'] = 'IMAP Aboneliklerini kullan';
+
diff --git a/plugins/subscriptions_option/localization/zh_TW.inc b/plugins/subscriptions_option/localization/zh_TW.inc
index f310b51b7..18b4bf2b1 100644
--- a/plugins/subscriptions_option/localization/zh_TW.inc
+++ b/plugins/subscriptions_option/localization/zh_TW.inc
@@ -1,6 +1,18 @@
<?php
+/*
+ +-----------------------------------------------------------------------+
+ | localization/zh_TW/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Thomas |
+ +-----------------------------------------------------------------------+
+*/
+
$labels = array();
-$labels['useimapsubscriptions'] = '使用IMAP訂閱';
+$labels['useimapsubscriptions'] = '使用IMAP訂閱';
-?>
diff --git a/plugins/userinfo/localization/hy_AM.inc b/plugins/userinfo/localization/hy_AM.inc
new file mode 100644
index 000000000..76146bec3
--- /dev/null
+++ b/plugins/userinfo/localization/hy_AM.inc
@@ -0,0 +1,21 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/hy_AM/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Vahan Yerkanian <vahan@yerkanian.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['userinfo'] = 'Õ•Õ£Õ¿Õ¾Õ¸Õ²Õ« Õ¿Õ¾ÕµÕ¡Õ¬Õ¶Õ¥Ö€';
+$labels['created'] = 'ÕÕ¿Õ¥Õ²Õ®Õ¾Õ¡Õ®';
+$labels['lastlogin'] = 'ÕŽÕ¥Ö€Õ»Õ«Õ¶ Õ´Õ¸Ö‚Õ¿Ö„Õ¨`';
+$labels['defaultidentity'] = 'Ô¼Õ¼Õ¥Õ¬ÕµÕ¡Õ¬ Õ«Õ¶Ö„Õ¶Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶';
+
diff --git a/plugins/userinfo/localization/ko_KR.inc b/plugins/userinfo/localization/ko_KR.inc
new file mode 100644
index 000000000..c409b6858
--- /dev/null
+++ b/plugins/userinfo/localization/ko_KR.inc
@@ -0,0 +1,21 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ko_KR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Kim, Woohyun <woohyun.kim@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['userinfo'] = 'ì‚¬ìš©ìž ì •ë³´';
+$labels['created'] = 'ìƒì„±ë¨';
+$labels['lastlogin'] = '마지막 로그ì¸';
+$labels['defaultidentity'] = '기본 신분ì¦';
+
diff --git a/plugins/userinfo/localization/sr_CS.inc b/plugins/userinfo/localization/sr_CS.inc
new file mode 100644
index 000000000..fb32af46b
--- /dev/null
+++ b/plugins/userinfo/localization/sr_CS.inc
@@ -0,0 +1,21 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sr_CS/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Saša Zejnilović <zejnils@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['userinfo'] = 'Подаци о кориÑнику';
+$labels['created'] = 'Ðаправљено';
+$labels['lastlogin'] = 'ПоÑледњи Логин';
+$labels['defaultidentity'] = 'подразумевани идентитет';
+
diff --git a/plugins/vcard_attachments/localization/hy_AM.inc b/plugins/vcard_attachments/localization/hy_AM.inc
new file mode 100644
index 000000000..5799b1cb5
--- /dev/null
+++ b/plugins/vcard_attachments/localization/hy_AM.inc
@@ -0,0 +1,19 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/hy_AM/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Vahan Yerkanian <vahan@yerkanian.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['addvcardmsg'] = 'Ô±Õ¾Õ¥Õ¬Õ¡ÖÕ¶Õ¥Õ¬ vCard-Õ¨ Õ°Õ¡Õ½ÖÕ¥Õ¡Õ£Ö€Ö„Õ¸Ö‚Õ´';
+$labels['vcardsavefailed'] = 'vCard-Õ« ÕºÕ¡Õ°ÕºÕ¡Õ¶Õ¸Ö‚Õ´Õ¨ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥Ö';
+
diff --git a/plugins/vcard_attachments/localization/ko_KR.inc b/plugins/vcard_attachments/localization/ko_KR.inc
new file mode 100644
index 000000000..d617efbe6
--- /dev/null
+++ b/plugins/vcard_attachments/localization/ko_KR.inc
@@ -0,0 +1,19 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/ko_KR/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Kim, Woohyun <woohyun.kim@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['addvcardmsg'] = '주소ë¡ì— vCard를 추가';
+$labels['vcardsavefailed'] = 'vCard ì €ìž¥ì´ ë¶ˆê°€ëŠ¥í•¨';
+
diff --git a/plugins/vcard_attachments/localization/sr_CS.inc b/plugins/vcard_attachments/localization/sr_CS.inc
new file mode 100644
index 000000000..e5b66ed5a
--- /dev/null
+++ b/plugins/vcard_attachments/localization/sr_CS.inc
@@ -0,0 +1,19 @@
+<?php
+
+/*
+ +-----------------------------------------------------------------------+
+ | localization/sr_CS/labels.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Saša Zejnilović <zejnils@gmail.com> |
+ +-----------------------------------------------------------------------+
+*/
+
+$labels = array();
+$labels['addvcardmsg'] = 'Додај вЦард у ÐдреÑар';
+$labels['vcardsavefailed'] = 'немоћан Ñачувати вчард';
+
diff --git a/plugins/vcard_attachments/package.xml b/plugins/vcard_attachments/package.xml
index cf94ef378..82b750ad5 100644
--- a/plugins/vcard_attachments/package.xml
+++ b/plugins/vcard_attachments/package.xml
@@ -61,9 +61,9 @@
<file name="localization/ru_RU.inc" role="data"></file>
<file name="localization/sv_SE.inc" role="data"></file>
<file name="localization/zh_TW.inc" role="data"></file>
- <file name="skins/default/style.css" role="data"></file>
- <file name="skins/default/vcard_add_contact.png" role="data"></file>
- <file name="skins/default/vcard.png" role="data"></file>
+ <file name="skins/classic/style.css" role="data"></file>
+ <file name="skins/classic/vcard_add_contact.png" role="data"></file>
+ <file name="skins/classic/vcard.png" role="data"></file>
<file name="skins/larry/style.css" role="data"></file>
<file name="skins/larry/vcard_add_contact.png" role="data"></file>
<file name="skins/larry/vcard.png" role="data"></file>
diff --git a/plugins/vcard_attachments/skins/default/style.css b/plugins/vcard_attachments/skins/classic/style.css
index 044d3983e..044d3983e 100644
--- a/plugins/vcard_attachments/skins/default/style.css
+++ b/plugins/vcard_attachments/skins/classic/style.css
diff --git a/plugins/vcard_attachments/skins/default/vcard.png b/plugins/vcard_attachments/skins/classic/vcard.png
index 8bf6b1b72..8bf6b1b72 100644
--- a/plugins/vcard_attachments/skins/default/vcard.png
+++ b/plugins/vcard_attachments/skins/classic/vcard.png
Binary files differ
diff --git a/plugins/vcard_attachments/skins/default/vcard_add_contact.png b/plugins/vcard_attachments/skins/classic/vcard_add_contact.png
index 478c1f3f2..478c1f3f2 100644
--- a/plugins/vcard_attachments/skins/default/vcard_add_contact.png
+++ b/plugins/vcard_attachments/skins/classic/vcard_add_contact.png
Binary files differ
diff --git a/program/.htaccess b/program/.htaccess
index 8114af685..be9e7e25a 100644
--- a/program/.htaccess
+++ b/program/.htaccess
@@ -1,4 +1,4 @@
<IfModule mod_rewrite.c>
RewriteEngine On
-RewriteRule !^js|.*\.[gt]if$ - [F]
+RewriteRule !^(js|resources) - [F]
</IfModule>
diff --git a/program/blank.gif b/program/blank.gif
deleted file mode 100644
index ea83374c1..000000000
--- a/program/blank.gif
+++ /dev/null
Binary files differ
diff --git a/program/include/rcmail.php b/program/include/rcmail.php
index 8ec8cfe47..a6b0bcd57 100644
--- a/program/include/rcmail.php
+++ b/program/include/rcmail.php
@@ -58,6 +58,12 @@ class rcmail extends rcube
const JS_OBJECT_NAME = 'rcmail';
+ const ERROR_STORAGE = -2;
+ const ERROR_INVALID_REQUEST = 1;
+ const ERROR_INVALID_HOST = 2;
+ const ERROR_COOKIES_DISABLED = 3;
+
+
/**
* This implements the 'singleton' design pattern
*
@@ -165,7 +171,7 @@ class rcmail extends rcube
/**
* Return instance of the internal address book class
*
- * @param string Address book identifier
+ * @param string Address book identifier (-1 for default addressbook)
* @param boolean True if the address book needs to be writeable
*
* @return rcube_contacts Address book object
@@ -174,17 +180,17 @@ class rcmail extends rcube
{
$contacts = null;
$ldap_config = (array)$this->config->get('ldap_public');
- $abook_type = strtolower($this->config->get('address_book_type'));
// 'sql' is the alias for '0' used by autocomplete
if ($id == 'sql')
- $id = '0';
+ $id = '0';
+ else if ($id == -1) {
+ $id = $this->config->get('default_addressbook');
+ $default = true;
+ }
// use existing instance
- if (isset($this->address_books[$id]) && is_object($this->address_books[$id])
- && is_a($this->address_books[$id], 'rcube_addressbook')
- && (!$writeable || !$this->address_books[$id]->readonly)
- ) {
+ if (isset($this->address_books[$id]) && ($this->address_books[$id] instanceof rcube_addressbook)) {
$contacts = $this->address_books[$id];
}
else if ($id && $ldap_config[$id]) {
@@ -200,14 +206,16 @@ class rcmail extends rcube
if ($plugin['instance'] instanceof rcube_addressbook) {
$contacts = $plugin['instance'];
}
- // get first source from the list
- else if (!$id) {
- $source = reset($this->get_address_sources($writeable));
- if (!empty($source)) {
- $contacts = $this->get_address_book($source['id']);
- if ($contacts)
- $id = $source['id'];
- }
+ }
+
+ // Get first addressbook from the list if configured default doesn't exist
+ // This can happen when user deleted the addressbook (e.g. Kolab folder)
+ if (!$contacts && (!$id || $default)) {
+ $source = reset($this->get_address_sources($writeable));
+ if (!empty($source)) {
+ $contacts = $this->get_address_book($source['id']);
+ if ($contacts)
+ $id = $source['id'];
}
}
@@ -219,6 +227,10 @@ class rcmail extends rcube
true, true);
}
+ if ($writeable && $contacts->readonly) {
+ return null;
+ }
+
// set configured sort order
if ($sort_col = $this->config->get('addressbook_sort_col'))
$contacts->set_sort_order($sort_col);
@@ -366,15 +378,23 @@ class rcmail extends rcube
* @param string Mail storage (IMAP) user name
* @param string Mail storage (IMAP) password
* @param string Mail storage (IMAP) host
+ * @param bool Enables cookie check
*
* @return boolean True on success, False on failure
*/
- function login($username, $pass, $host=NULL)
+ function login($username, $pass, $host = null, $cookiecheck = false)
{
+ $this->login_error = null;
+
if (empty($username)) {
return false;
}
+ if ($cookiecheck && empty($_COOKIE)) {
+ $this->login_error = self::ERROR_COOKIES_DISABLED;
+ return false;
+ }
+
$config = $this->config->all();
if (!$host)
@@ -391,11 +411,18 @@ class rcmail extends rcube
break;
}
}
- if (!$allowed)
- return false;
+ if (!$allowed) {
+ $host = null;
}
- else if (!empty($config['default_host']) && $host != rcube_utils::parse_host($config['default_host']))
+ }
+ else if (!empty($config['default_host']) && $host != rcube_utils::parse_host($config['default_host'])) {
+ $host = null;
+ }
+
+ if (!$host) {
+ $this->login_error = self::ERROR_INVALID_HOST;
return false;
+ }
// parse $host URL
$a_host = parse_url($host);
@@ -534,6 +561,23 @@ class rcmail extends rcube
}
+ /**
+ * Returns error code of last login operation
+ *
+ * @return int Error code
+ */
+ public function login_error()
+ {
+ if ($this->login_error) {
+ return $this->login_error;
+ }
+
+ if ($this->storage && $this->storage->get_error_code() < -1) {
+ return self::ERROR_STORAGE;
+ }
+ }
+
+
/**
* Auto-select IMAP host based on the posted login information
*
@@ -682,8 +726,12 @@ class rcmail extends rcube
*/
public function url($p)
{
- if (!is_array($p))
+ if (!is_array($p)) {
+ if (strpos($p, 'http') === 0)
+ return $p;
+
$p = array('_action' => @func_get_arg(0));
+ }
$task = $p['_task'] ? $p['_task'] : ($p['task'] ? $p['task'] : $this->task);
$p['_task'] = $task;
diff --git a/program/include/rcube.php b/program/include/rcube.php
index 3e43ace96..494b5c3dd 100644
--- a/program/include/rcube.php
+++ b/program/include/rcube.php
@@ -106,12 +106,14 @@ class rcube
/**
* This implements the 'singleton' design pattern
*
+ * @param integer Options to initialize with this instance. See rcube::INIT_WITH_* constants
* @return rcube The one and only instance
*/
- static function get_instance()
+ static function get_instance($mode = 0)
{
if (!self::$instance) {
self::$instance = new rcube();
+ self::$instance->init($mode);
}
return self::$instance;
@@ -189,11 +191,17 @@ class rcube
$this->memcache = new Memcache;
$this->mc_available = 0;
- // add alll configured hosts to pool
+ // add all configured hosts to pool
$pconnect = $this->config->get('memcache_pconnect', true);
foreach ($this->config->get('memcache_hosts', array()) as $host) {
- list($host, $port) = explode(':', $host);
- if (!$port) $port = 11211;
+ if (substr($host, 0, 7) != 'unix://') {
+ list($host, $port) = explode(':', $host);
+ if (!$port) $port = 11211;
+ }
+ else {
+ $port = 0;
+ }
+
$this->mc_available += intval($this->memcache->addServer($host, $port, $pconnect, 1, 1, 15, false, array($this, 'memcache_failure')));
}
@@ -238,8 +246,7 @@ class rcube
*/
public function get_cache($name, $type='db', $ttl=0, $packed=true)
{
- if (!isset($this->caches[$name])) {
- $userid = $this->get_user_id();
+ if (!isset($this->caches[$name]) && ($userid = $this->get_user_id())) {
$this->caches[$name] = new rcube_cache($type, $userid, $name, $ttl, $packed);
}
@@ -406,6 +413,7 @@ class rcube
ini_set('session.use_cookies', 1);
ini_set('session.use_only_cookies', 1);
ini_set('session.serialize_handler', 'php');
+ ini_set('session.cookie_httponly', 1);
// use database for storing session data
$this->session = new rcube_session($this->get_dbh(), $this->config);
diff --git a/program/include/rcube_addressbook.php b/program/include/rcube_addressbook.php
index f5b32cd52..069ea5715 100644
--- a/program/include/rcube_addressbook.php
+++ b/program/include/rcube_addressbook.php
@@ -422,7 +422,7 @@ abstract class rcube_addressbook
function get_col_values($col, $data, $flat = false)
{
$out = array();
- foreach ($data as $c => $values) {
+ foreach ((array)$data as $c => $values) {
if ($c === $col || strpos($c, $col.':') === 0) {
if ($flat) {
$out = array_merge($out, (array)$values);
diff --git a/program/include/rcube_browser.php b/program/include/rcube_browser.php
index 609ddb842..06033e036 100644
--- a/program/include/rcube_browser.php
+++ b/program/include/rcube_browser.php
@@ -42,9 +42,9 @@ class rcube_browser
$this->ns4 = strpos($HTTP_USER_AGENT, 'mozilla/4') !== false && strpos($HTTP_USER_AGENT, 'msie') === false;
$this->ns = ($this->ns4 || strpos($HTTP_USER_AGENT, 'netscape') !== false);
$this->ie = !$this->opera && strpos($HTTP_USER_AGENT, 'compatible; msie') !== false;
- $this->mz = !$this->ie && strpos($HTTP_USER_AGENT, 'mozilla/5') !== false;
- $this->chrome = strpos($HTTP_USER_AGENT, 'chrome') !== false;
$this->khtml = strpos($HTTP_USER_AGENT, 'khtml') !== false;
+ $this->mz = !$this->ie && !$this->khtml && strpos($HTTP_USER_AGENT, 'mozilla/5') !== false;
+ $this->chrome = strpos($HTTP_USER_AGENT, 'chrome') !== false;
$this->safari = !$this->chrome && ($this->khtml || strpos($HTTP_USER_AGENT, 'safari') !== false);
if ($this->ns || $this->chrome) {
diff --git a/program/include/rcube_cache.php b/program/include/rcube_cache.php
index 73c5eacea..17a8859d8 100644
--- a/program/include/rcube_cache.php
+++ b/program/include/rcube_cache.php
@@ -45,7 +45,6 @@ class rcube_cache
private $packed;
private $index;
private $cache = array();
- private $cache_keys = array();
private $cache_changes = array();
private $cache_sums = array();
@@ -167,7 +166,7 @@ class rcube_cache
$this->cache = array();
$this->cache_changed = false;
$this->cache_changes = array();
- $this->cache_keys = array();
+ $this->cache_sums = array();
}
// Remove keys by name prefix
else if ($prefix_mode) {
@@ -175,7 +174,7 @@ class rcube_cache
if (strpos($k, $key) === 0) {
$this->cache[$k] = null;
$this->cache_changes[$k] = false;
- unset($this->cache_keys[$k]);
+ unset($this->cache_sums[$k]);
}
}
}
@@ -183,7 +182,7 @@ class rcube_cache
else {
$this->cache[$key] = null;
$this->cache_changes[$key] = false;
- unset($this->cache_keys[$key]);
+ unset($this->cache_sums[$key]);
}
// Remove record(s) from the backend
@@ -274,7 +273,7 @@ class rcube_cache
}
else {
$sql_result = $this->db->limitquery(
- "SELECT cache_id, data, cache_key".
+ "SELECT data, cache_key".
" FROM ".$this->db->table_name('cache').
" WHERE user_id = ?".
" AND cache_key = ?".
@@ -296,7 +295,6 @@ class rcube_cache
$this->cache[$key] = $data;
$this->cache_sums[$key] = $md5sum;
- $this->cache_keys[$key] = $sql_arr['cache_id'];
}
else {
$this->cache[$key] = null;
@@ -325,7 +323,7 @@ class rcube_cache
return $this->add_record($this->ckey($key), $data);
}
- $key_exists = $this->cache_keys[$key];
+ $key_exists = array_key_exists($key, $this->cache_sums);
$key = $this->prefix . '.' . $key;
// Remove NULL rows (here we don't need to check if the record exist)
diff --git a/program/include/rcube_config.php b/program/include/rcube_config.php
index 1b621e0fc..aae3656a1 100644
--- a/program/include/rcube_config.php
+++ b/program/include/rcube_config.php
@@ -49,6 +49,11 @@ class rcube_config
public function __construct()
{
$this->load();
+
+ // Defaults, that we do not require you to configure,
+ // but contain information that is used in various
+ // locations in the code:
+ $this->set('contactlist_fields', array('name', 'firstname', 'surname', 'email'));
}
@@ -76,10 +81,14 @@ class rcube_config
$this->prop['skin'] = str_replace('skins/', '', unslashify($this->prop['skin_path']));
}
else {
- $this->prop['skin'] = 'default';
+ $this->prop['skin'] = 'larry';
}
}
+ // larry is the new default skin :-)
+ if ($this->prop['skin'] == 'default')
+ $this->prop['skin'] = 'larry';
+
// fix paths
$this->prop['log_dir'] = $this->prop['log_dir'] ? realpath(unslashify($this->prop['log_dir'])) : INSTALL_PATH . 'logs';
$this->prop['temp_dir'] = $this->prop['temp_dir'] ? realpath(unslashify($this->prop['temp_dir'])) : INSTALL_PATH . 'temp';
@@ -233,10 +242,8 @@ class rcube_config
// Honor the dont_override setting for any existing user preferences
$dont_override = $this->get('dont_override');
if (is_array($dont_override) && !empty($dont_override)) {
- foreach ($prefs as $key => $pref) {
- if (in_array($key, $dont_override)) {
- unset($prefs[$key]);
- }
+ foreach ($dont_override as $key) {
+ unset($prefs[$key]);
}
}
@@ -245,6 +252,11 @@ class rcube_config
$prefs['timezone'] = timezone_name_from_abbr('', $prefs['timezone'] * 3600, 0);
}
+ // larry is the new default skin :-)
+ if ($prefs['skin'] == 'default') {
+ $prefs['skin'] = 'larry';
+ }
+
$this->userprefs = $prefs;
$this->prop = array_merge($this->prop, $prefs);
diff --git a/program/include/rcube_imap.php b/program/include/rcube_imap.php
index 00a4158fe..94200b7da 100644
--- a/program/include/rcube_imap.php
+++ b/program/include/rcube_imap.php
@@ -3229,8 +3229,9 @@ class rcube_imap extends rcube_storage
$cache_key = 'mailboxes.folder-info.' . $folder;
$cached = $this->get_cache($cache_key);
- if (is_array($cached))
+ if (is_array($cached)) {
return $cached;
+ }
$acl = $this->get_capability('ACL');
$namespace = $this->get_namespace();
@@ -3267,10 +3268,9 @@ class rcube_imap extends rcube_storage
$options['name'] = $folder;
$options['attributes'] = $this->folder_attributes($folder, true);
$options['namespace'] = $this->folder_namespace($folder);
- $options['rights'] = $acl && !$options['is_root'] ? (array)$this->my_rights($folder) : array();
$options['special'] = in_array($folder, $this->default_folders);
- // Set 'noselect' and 'norename' flags
+ // Set 'noselect' flag
if (is_array($options['attributes'])) {
foreach ($options['attributes'] as $attrib) {
$attrib = strtolower($attrib);
@@ -3283,6 +3283,15 @@ class rcube_imap extends rcube_storage
$options['noselect'] = true;
}
+ // Get folder rights (MYRIGHTS)
+ if ($acl && !$options['noselect']) {
+ // skip shared roots
+ if (!$options['is_root'] || $options['namespace'] == 'personal') {
+ $options['rights'] = (array)$this->my_rights($folder);
+ }
+ }
+
+ // Set 'norename' flag
if (!empty($options['rights'])) {
$options['norename'] = !in_array('x', $options['rights']) && !in_array('d', $options['rights']);
@@ -3742,9 +3751,9 @@ class rcube_imap extends rcube_storage
{
if ($this->messages_caching && !$this->mcache) {
$rcube = rcube::get_instance();
- if ($dbh = $rcube->get_dbh()) {
+ if (($dbh = $rcube->get_dbh()) && ($userid = $rcube->get_user_id())) {
$this->mcache = new rcube_imap_cache(
- $dbh, $this, $rcube->get_user_id(), $this->options['skip_deleted']);
+ $dbh, $this, $userid, $this->options['skip_deleted']);
}
}
diff --git a/program/include/rcube_imap_cache.php b/program/include/rcube_imap_cache.php
index f6f53127d..a061a1f6e 100644
--- a/program/include/rcube_imap_cache.php
+++ b/program/include/rcube_imap_cache.php
@@ -516,7 +516,6 @@ class rcube_imap_cache
.($uids !== null ? " AND uid IN (".$this->db->array2list((array)$uids, 'integer').")" : ""),
$this->userid, $mailbox);
}
-
}
@@ -917,18 +916,17 @@ class rcube_imap_cache
return;
}
- // NOTE: make sure the mailbox isn't selected, before
- // enabling QRESYNC and invoking SELECT
- if ($this->imap->conn->selected !== null) {
- $this->imap->conn->close();
- }
-
// Enable QRESYNC
$res = $this->imap->conn->enable($qresync ? 'QRESYNC' : 'CONDSTORE');
- if (!is_array($res)) {
+ if ($res === false) {
return;
}
+ // Close mailbox if already selected to get most recent data
+ if ($this->imap->conn->selected == $mailbox) {
+ $this->imap->conn->close();
+ }
+
// Get mailbox data (UIDVALIDITY, HIGHESTMODSEQ, counters, etc.)
$mbox_data = $this->imap->folder_data($mailbox);
@@ -952,8 +950,10 @@ class rcube_imap_cache
return;
}
- // Get known uids
- $uids = array();
+ $uids = array();
+ $removed = array();
+
+ // Get known UIDs
$sql_result = $this->db->query(
"SELECT uid"
." FROM ".$this->db->table_name('cache_messages')
@@ -962,74 +962,69 @@ class rcube_imap_cache
$this->userid, $mailbox);
while ($sql_arr = $this->db->fetch_assoc($sql_result)) {
- $uids[] = $sql_arr['uid'];
- }
-
- // No messages in database, nothing to sync
- if (empty($uids)) {
- return;
- }
-
- // Get modified flags and vanished messages
- // UID FETCH 1:* (FLAGS) (CHANGEDSINCE 0123456789 VANISHED)
- $result = $this->imap->conn->fetch($mailbox,
- !empty($uids) ? $uids : '1:*', true, array('FLAGS'),
- $index['modseq'], $qresync);
-
- $invalidated = false;
-
- if (!empty($result)) {
- foreach ($result as $id => $msg) {
- $uid = $msg->uid;
- // Remove deleted message
- if ($this->skip_deleted && !empty($msg->flags['DELETED'])) {
- $this->remove_message($mailbox, $uid);
-
- if (!$invalidated) {
- $invalidated = true;
- // Invalidate thread indexes (?)
- $this->remove_thread($mailbox);
+ $uids[] = $sql_arr['uid'];
+ }
+
+ // Synchronize messages data
+ if (!empty($uids)) {
+ // Get modified flags and vanished messages
+ // UID FETCH 1:* (FLAGS) (CHANGEDSINCE 0123456789 VANISHED)
+ $result = $this->imap->conn->fetch($mailbox,
+ $uids, true, array('FLAGS'), $index['modseq'], $qresync);
+
+ if (!empty($result)) {
+ foreach ($result as $id => $msg) {
+ $uid = $msg->uid;
+ // Remove deleted message
+ if ($this->skip_deleted && !empty($msg->flags['DELETED'])) {
+ $removed[] = $uid;
// Invalidate index
$index['valid'] = false;
+ continue;
}
- continue;
- }
- $flags = 0;
- if (!empty($msg->flags)) {
- foreach ($this->flags as $idx => $flag)
- if (!empty($msg->flags[$flag]))
- $flags += $idx;
- }
+ $flags = 0;
+ if (!empty($msg->flags)) {
+ foreach ($this->flags as $idx => $flag) {
+ if (!empty($msg->flags[$flag])) {
+ $flags += $idx;
+ }
+ }
+ }
- $this->db->query(
- "UPDATE ".$this->db->table_name('cache_messages')
- ." SET flags = ?, changed = ".$this->db->now()
- ." WHERE user_id = ?"
- ." AND mailbox = ?"
- ." AND uid = ?"
- ." AND flags <> ?",
- $flags, $this->userid, $mailbox, $uid, $flags);
+ $this->db->query(
+ "UPDATE ".$this->db->table_name('cache_messages')
+ ." SET flags = ?, changed = ".$this->db->now()
+ ." WHERE user_id = ?"
+ ." AND mailbox = ?"
+ ." AND uid = ?"
+ ." AND flags <> ?",
+ $flags, $this->userid, $mailbox, $uid, $flags);
+ }
}
- }
- // Get VANISHED
- if ($qresync) {
- $mbox_data = $this->imap->folder_data($mailbox);
+ // VANISHED found?
+ if ($qresync) {
+ $mbox_data = $this->imap->folder_data($mailbox);
- // Removed messages
- if (!empty($mbox_data['VANISHED'])) {
+ // Removed messages found
$uids = rcube_imap_generic::uncompressMessageSet($mbox_data['VANISHED']);
if (!empty($uids)) {
- // remove messages from database
- $this->remove_message($mailbox, $uids);
-
- // Invalidate thread indexes (?)
- $this->remove_thread($mailbox);
+ $removed = array_merge($removed, $uids);
// Invalidate index
$index['valid'] = false;
}
}
+
+ // remove messages from database
+ if (!empty($removed)) {
+ $this->remove_message($mailbox, $removed);
+ }
+ }
+
+ // Invalidate thread index (?)
+ if (!$index['valid']) {
+ $this->remove_thread($mailbox);
}
$sort_field = $index['sort_field'];
diff --git a/program/include/rcube_imap_generic.php b/program/include/rcube_imap_generic.php
index 959dd9fd0..8d956f2b9 100644
--- a/program/include/rcube_imap_generic.php
+++ b/program/include/rcube_imap_generic.php
@@ -313,9 +313,13 @@ class rcube_imap_generic
else {
$this->resultcode = null;
// parse response for [APPENDUID 1204196876 3456]
- if (preg_match("/^\[APPENDUID [0-9]+ ([0-9,:*]+)\]/i", $str, $m)) {
+ if (preg_match("/^\[APPENDUID [0-9]+ ([0-9]+)\]/i", $str, $m)) {
$this->data['APPENDUID'] = $m[1];
}
+ // parse response for [COPYUID 1204196876 3456:3457 123:124]
+ else if (preg_match("/^\[COPYUID [0-9]+ ([0-9,:]+) ([0-9,:]+)\]/i", $str, $m)) {
+ $this->data['COPYUID'] = array($m[1], $m[2]);
+ }
}
$this->result = $str;
@@ -1472,14 +1476,31 @@ class rcube_imap_generic
*/
function enable($extension)
{
- if (empty($extension))
+ if (empty($extension)) {
return false;
+ }
- if (!$this->hasCapability('ENABLE'))
+ if (!$this->hasCapability('ENABLE')) {
return false;
+ }
- if (!is_array($extension))
+ if (!is_array($extension)) {
$extension = array($extension);
+ }
+
+ if (!empty($this->extensions_enabled)) {
+ // check if all extensions are already enabled
+ $diff = array_diff($extension, $this->extensions_enabled);
+
+ if (empty($diff)) {
+ return $extension;
+ }
+
+ // Make sure the mailbox isn't selected, before enabling extension(s)
+ if ($this->selected !== null) {
+ $this->close();
+ }
+ }
list($code, $response) = $this->execute('ENABLE', $extension);
@@ -1487,7 +1508,9 @@ class rcube_imap_generic
$response = substr($response, 10); // remove prefix "* ENABLED "
$result = (array) $this->tokenizeResponse($response);
- return $result;
+ $this->extensions_enabled = array_unique(array_merge((array)$this->extensions_enabled, $result));
+
+ return $this->extensions_enabled;
}
return false;
@@ -1931,6 +1954,9 @@ class rcube_imap_generic
*/
function copy($messages, $from, $to)
{
+ // Clear last COPYUID data
+ unset($this->data['COPYUID']);
+
if (!$this->select($from)) {
return false;
}
@@ -3176,10 +3202,10 @@ class rcube_imap_generic
*/
static function getStructurePartData($structure, $part)
{
- $part_a = self::getStructurePartArray($structure, $part);
- $data = array();
+ $part_a = self::getStructurePartArray($structure, $part);
+ $data = array();
- if (empty($part_a)) {
+ if (empty($part_a)) {
return $data;
}
@@ -3212,13 +3238,13 @@ class rcube_imap_generic
static function getStructurePartArray($a, $part)
{
- if (!is_array($a)) {
+ if (!is_array($a)) {
return false;
}
if (empty($part)) {
- return $a;
- }
+ return $a;
+ }
$ctype = is_string($a[0]) && is_string($a[1]) ? $a[0] . '/' . $a[1] : '';
@@ -3226,20 +3252,17 @@ class rcube_imap_generic
$a = $a[8];
}
- if (strpos($part, '.') > 0) {
- $orig_part = $part;
- $pos = strpos($part, '.');
- $rest = substr($orig_part, $pos+1);
- $part = substr($orig_part, 0, $pos);
+ if (strpos($part, '.') > 0) {
+ $orig_part = $part;
+ $pos = strpos($part, '.');
+ $rest = substr($orig_part, $pos+1);
+ $part = substr($orig_part, 0, $pos);
- return self::getStructurePartArray($a[$part-1], $rest);
- }
+ return self::getStructurePartArray($a[$part-1], $rest);
+ }
else if ($part > 0) {
- if (is_array($a[$part-1]))
- return $a[$part-1];
- else
- return $a;
- }
+ return (is_array($a[$part-1])) ? $a[$part-1] : $a;
+ }
}
/**
diff --git a/program/include/rcube_ldap.php b/program/include/rcube_ldap.php
index 8f23a406b..3a7fc1805 100644
--- a/program/include/rcube_ldap.php
+++ b/program/include/rcube_ldap.php
@@ -767,7 +767,9 @@ class rcube_ldap extends rcube_addressbook
}
// use VLV pseudo-search for autocompletion
- if ($this->prop['vlv_search'] && $this->conn && join(',', (array)$fields) == 'email,name')
+ $rcmail = rcmail::get_instance();
+
+ if ($this->prop['vlv_search'] && $this->conn && join(',', (array)$fields) == join(',', $rcmail->config->get('contactlist_fields')))
{
// add general filter to query
if (!empty($this->prop['filter']) && empty($this->filter))
diff --git a/program/include/rcube_message.php b/program/include/rcube_message.php
index a140b86c6..9d36acf38 100644
--- a/program/include/rcube_message.php
+++ b/program/include/rcube_message.php
@@ -277,6 +277,32 @@ class rcube_message
/**
+ * Checks if part of the message is an attachment (or part of it)
+ *
+ * @param rcube_message_part $part Message part
+ *
+ * @return bool True if the part is an attachment part
+ */
+ public function is_attachment($part)
+ {
+ foreach ($this->attachments as $att_part) {
+ if ($att_part->mime_id == $part->mime_id) {
+ return true;
+ }
+
+ // check if the part is a subpart of another attachment part (message/rfc822)
+ if ($att_part->mimetype == 'message/rfc822') {
+ if (in_array($part, (array)$att_part->parts)) {
+ return true;
+ }
+ }
+ }
+
+ return false;
+ }
+
+
+ /**
* Read the message structure returend by the IMAP server
* and build flat lists of content parts and attachments
*
diff --git a/program/include/rcube_output_html.php b/program/include/rcube_output_html.php
index 7ceea1839..3bc93db53 100644
--- a/program/include/rcube_output_html.php
+++ b/program/include/rcube_output_html.php
@@ -696,10 +696,31 @@ class rcube_output_html extends rcube_output
// show a label
case 'label':
if ($attrib['name'] || $attrib['command']) {
+ // @FIXME: 'noshow' is useless, remove?
+ if ($attrib['noshow']) {
+ return '';
+ }
+
$vars = $attrib + array('product' => $this->config->get('product_name'));
unset($vars['name'], $vars['command']);
- $label = $this->app->gettext($attrib + array('vars' => $vars));
- return !$attrib['noshow'] ? (get_boolean((string)$attrib['html']) ? $label : html::quote($label)) : '';
+
+ $label = $this->app->gettext($attrib + array('vars' => $vars));
+ $quoting = !empty($attrib['quoting']) ? strtolower($attrib['quoting']) : (get_boolean((string)$attrib['html']) ? 'no' : '');
+
+ switch ($quoting) {
+ case 'no':
+ case 'raw':
+ break;
+ case 'javascript':
+ case 'js':
+ $label = rcmail::JQ($label);
+ break;
+ default:
+ $label = html::quote($label);
+ break;
+ }
+
+ return $label;
}
break;
diff --git a/program/include/rcube_output_json.php b/program/include/rcube_output_json.php
index 7b5510dfe..eb1a9380d 100644
--- a/program/include/rcube_output_json.php
+++ b/program/include/rcube_output_json.php
@@ -37,18 +37,6 @@ class rcube_output_json extends rcube_output
/**
- * Set environment variable
- *
- * @param string $name Property name
- * @param mixed $value Property value
- */
- public function set_env($name, $value)
- {
- $this->env[$name] = $value;
- }
-
-
- /**
* Issue command to set page title
*
* @param string $title New page title
diff --git a/program/include/rcube_plugin.php b/program/include/rcube_plugin.php
index b91355c98..b1ec32a8a 100644
--- a/program/include/rcube_plugin.php
+++ b/program/include/rcube_plugin.php
@@ -336,9 +336,12 @@ abstract class rcube_plugin
public function local_skin_path()
{
$rcmail = rcube::get_instance();
- $skin_path = 'skins/' . $rcmail->config->get('skin');
- if (!is_dir(realpath(slashify($this->home) . $skin_path)))
- $skin_path = 'skins/default';
+ foreach (array($rcmail->config->get('skin'),'default') as $skin) {
+ $skin_path = 'skins/' . $skin;
+ if (is_dir(realpath(slashify($this->home) . $skin_path)))
+ break;
+ }
+
return $skin_path;
}
diff --git a/program/include/rcube_session.php b/program/include/rcube_session.php
index 09a07d644..e3b5600ca 100644
--- a/program/include/rcube_session.php
+++ b/program/include/rcube_session.php
@@ -218,13 +218,14 @@ class rcube_session
* Handler for session_destroy()
*
* @param string Session ID
+ *
* @return boolean True on success
*/
public function db_destroy($key)
{
- $this->db->query(
- sprintf("DELETE FROM %s WHERE sess_id = ?", $this->db->table_name('session')),
- $key);
+ if ($key) {
+ $this->db->query(sprintf("DELETE FROM %s WHERE sess_id = ?", $this->db->table_name('session')), $key);
+ }
return true;
}
@@ -305,11 +306,16 @@ class rcube_session
* Handler for session_destroy() with memcache backend
*
* @param string Session ID
+ *
* @return boolean True on success
*/
public function mc_destroy($key)
{
- return $this->memcache->delete($key);
+ if ($key) {
+ $this->memcache->delete($key);
+ }
+
+ return true;
}
diff --git a/program/include/rcube_spellchecker.php b/program/include/rcube_spellchecker.php
index f38720bc8..a2d1f7c61 100644
--- a/program/include/rcube_spellchecker.php
+++ b/program/include/rcube_spellchecker.php
@@ -57,13 +57,6 @@ class rcube_spellchecker
$this->engine = $this->rc->config->get('spellcheck_engine', 'googie');
$this->lang = $lang ? $lang : 'en';
- if ($this->engine == 'pspell' && !extension_loaded('pspell')) {
- rcube::raise_error(array(
- 'code' => 500, 'type' => 'php',
- 'file' => __FILE__, 'line' => __LINE__,
- 'message' => "Pspell extension not available"), true, true);
- }
-
$this->options = array(
'ignore_syms' => $this->rc->config->get('spellcheck_ignore_syms'),
'ignore_nums' => $this->rc->config->get('spellcheck_ignore_nums'),
@@ -235,8 +228,9 @@ class rcube_spellchecker
else if (!pspell_check($this->plink, $word)) {
$suggestions = pspell_suggest($this->plink, $word);
- if (sizeof($suggestions) > self::MAX_SUGGESTIONS)
- $suggestions = array_slice($suggestions, 0, self::MAX_SUGGESTIONS);
+ if (sizeof($suggestions) > self::MAX_SUGGESTIONS) {
+ $suggestions = array_slice($suggestions, 0, self::MAX_SUGGESTIONS);
+ }
$matches[] = array($word, $pos, $len, null, $suggestions);
}
@@ -321,6 +315,16 @@ class rcube_spellchecker
private function _pspell_init()
{
if (!$this->plink) {
+ if (!extension_loaded('pspell')) {
+ $this->error = "Pspell extension not available";
+ rcube::raise_error(array(
+ 'code' => 500, 'type' => 'php',
+ 'file' => __FILE__, 'line' => __LINE__,
+ 'message' => $this->error), true, false);
+
+ return;
+ }
+
$this->plink = pspell_new($this->lang, null, null, RCMAIL_CHARSET, PSPELL_FAST);
}
diff --git a/program/include/rcube_user.php b/program/include/rcube_user.php
index 1a54b91a2..644d24bd9 100644
--- a/program/include/rcube_user.php
+++ b/program/include/rcube_user.php
@@ -397,15 +397,22 @@ class rcube_user
*/
static function query($user, $host)
{
- $dbh = rcube::get_instance()->get_dbh();
+ $dbh = rcube::get_instance()->get_dbh();
+ $config = rcube::get_instance()->config;
// query for matching user name
- $query = "SELECT * FROM ".$dbh->table_name('users')." WHERE mail_host = ? AND %s = ?";
- $sql_result = $dbh->query(sprintf($query, 'username'), $host, $user);
+ $sql_result = $dbh->query("SELECT * FROM " . $dbh->table_name('users')
+ ." WHERE mail_host = ? AND username = ?", $host, $user);
+
+ $sql_arr = $dbh->fetch_assoc($sql_result);
+
+ // username not found, try aliases from identities
+ if (empty($sql_arr) && $config->get('user_aliases') && strpos($user, '@')) {
+ $sql_result = $dbh->limitquery("SELECT u.*"
+ ." FROM " . $dbh->table_name('users') . " u"
+ ." JOIN " . $dbh->table_name('identities') . " i ON (i.user_id = u.user_id)"
+ ." WHERE email = ? AND del <> 1", 0, 1, $user);
- // query for matching alias
- if (!($sql_arr = $dbh->fetch_assoc($sql_result))) {
- $sql_result = $dbh->query(sprintf($query, 'alias'), $host, $user);
$sql_arr = $dbh->fetch_assoc($sql_result);
}
@@ -449,11 +456,10 @@ class rcube_user
$dbh->query(
"INSERT INTO ".$dbh->table_name('users').
- " (created, last_login, username, mail_host, alias, language)".
- " VALUES (".$dbh->now().", ".$dbh->now().", ?, ?, ?, ?)",
+ " (created, last_login, username, mail_host, language)".
+ " VALUES (".$dbh->now().", ".$dbh->now().", ?, ?, ?)",
strip_newlines($user),
strip_newlines($host),
- strip_newlines($data['alias'] ? $data['alias'] : $user_email),
strip_newlines($data['language'] ? $data['language'] : $_SESSION['language']));
if ($user_id = $dbh->insert_id('users')) {
@@ -479,23 +485,23 @@ class rcube_user
// create new identities records
$standard = 1;
foreach ($email_list as $row) {
- $record = array();
+ $record = array();
if (is_array($row)) {
- $record = $row;
+ $record = $row;
}
else {
$record['email'] = $row;
}
- if (empty($record['name']))
- $record['name'] = $user_name;
+ if (empty($record['name']))
+ $record['name'] = $user_name;
$record['name'] = strip_newlines($record['name']);
$record['user_id'] = $user_id;
$record['standard'] = $standard;
$plugin = $rcube->plugins->exec_hook('identity_create',
- array('login' => true, 'record' => $record));
+ array('login' => true, 'record' => $record));
if (!$plugin['abort'] && $plugin['record']['email']) {
$rcube->user->insert_identity($plugin['record']);
diff --git a/program/include/rcube_utils.php b/program/include/rcube_utils.php
index 7f20dbb1a..9344a929b 100644
--- a/program/include/rcube_utils.php
+++ b/program/include/rcube_utils.php
@@ -47,7 +47,7 @@ class rcube_utils
}
$cookie = session_get_cookie_params();
- $secure = self::https_check();
+ $secure = $cookie['secure'] || self::https_check();
setcookie($name, $value, $exp, $cookie['path'], $cookie['domain'], $secure, true);
}
@@ -616,8 +616,10 @@ class rcube_utils
{
// %n - host
$n = preg_replace('/:\d+$/', '', $_SERVER['SERVER_NAME']);
- // %d - domain name without first part, e.g. %n=mail.domain.tld, %d=domain.tld
- $d = preg_replace('/^[^\.]+\./', '', $n);
+ // %t - host name without first part, e.g. %n=mail.domain.tld, %t=domain.tld
+ $t = preg_replace('/^[^\.]+\./', '', $n);
+ // %d - domain name without first part
+ $d = preg_replace('/^[^\.]+\./', '', $_SERVER['HTTP_HOST']);
// %h - IMAP host
$h = $_SESSION['storage_host'] ? $_SESSION['storage_host'] : $host;
// %z - IMAP domain without first part, e.g. %h=imap.domain.tld, %z=domain.tld
@@ -632,7 +634,7 @@ class rcube_utils
}
}
- $name = str_replace(array('%n', '%d', '%h', '%z', '%s'), array($n, $d, $h, $z, $s[2]), $name);
+ $name = str_replace(array('%n', '%t', '%d', '%h', '%z', '%s'), array($n, $t, $d, $h, $z, $s[2]), $name);
return $name;
}
diff --git a/program/js/app.js b/program/js/app.js
index ce7570468..afaebec9c 100644
--- a/program/js/app.js
+++ b/program/js/app.js
@@ -48,7 +48,7 @@ function rcube_webmail()
this.env.request_timeout = 180; // seconds
this.env.draft_autosave = 0; // seconds
this.env.comm_path = './';
- this.env.blankpage = 'program/blank.gif';
+ this.env.blankpage = 'program/resources/blank.gif';
// set jQuery ajax options
$.ajaxSetup({
@@ -58,6 +58,8 @@ function rcube_webmail()
beforeSend: function(xmlhttp){ xmlhttp.setRequestHeader('X-Roundcube-Request', ref.env.request_token); }
});
+ $(window).bind('beforeunload', function() { rcmail.unload = true; });
+
// set environment variable(s)
this.set_env = function(p, value)
{
@@ -459,7 +461,7 @@ function rcube_webmail()
this.gui_containers.foldertray = $(this.gui_objects.folderlist);
// activate html5 file drop feature (if browser supports it and if configured)
- if (this.gui_objects.filedrop && this.env.filedrop && ((XMLHttpRequest && XMLHttpRequest.prototype.sendAsBinary) || window.FormData)) {
+ if (this.gui_objects.filedrop && this.env.filedrop && ((window.XMLHttpRequest && XMLHttpRequest.prototype && XMLHttpRequest.prototype.sendAsBinary) || window.FormData)) {
$(document.body).bind('dragover dragleave drop', function(e){ return ref.document_drag_hover(e, e.type == 'dragover'); });
$(this.gui_objects.filedrop).addClass('droptarget')
.bind('dragover dragleave', function(e){ return ref.file_drag_hover(e, e.type == 'dragover'); })
@@ -920,15 +922,9 @@ function rcube_webmail()
break;
case 'savedraft':
- var form = this.gui_objects.messageform, msgid;
-
// Reset the auto-save timer
clearTimeout(this.save_timer);
- // saving Drafts is disabled
- if (!form)
- break;
-
// compose form did not change
if (this.cmp_hash == this.compose_field_hash()) {
this.auto_save_start();
@@ -938,35 +934,17 @@ function rcube_webmail()
// re-set keep-alive timeout
this.start_keepalive();
- msgid = this.set_busy(true, 'savingmessage');
-
- form.target = "savetarget";
- form._draft.value = '1';
- form.action = this.add_url(form.action, '_unlock', msgid);
- form.submit();
+ this.submit_messageform(true);
break;
case 'send':
- if (!this.gui_objects.messageform)
- break;
-
if (!props.nocheck && !this.check_compose_input(command))
break;
// Reset the auto-save timer
clearTimeout(this.save_timer);
- // all checks passed, send message
- var lang = this.spellcheck_lang(),
- form = this.gui_objects.messageform,
- msgid = this.set_busy(true, 'sendingmessage');
-
- form.target = 'savetarget';
- form._draft.value = '';
- form.action = this.add_url(form.action, '_unlock', msgid);
- form.action = this.add_url(form.action, '_lang', lang);
- form.submit();
-
+ this.submit_messageform();
break;
case 'send-attachment':
@@ -3031,6 +3009,29 @@ function rcube_webmail()
.attr('autocomplete', 'off');
};
+ this.submit_messageform = function(draft)
+ {
+ var form = this.gui_objects.messageform;
+
+ if (!form)
+ return;
+
+ // all checks passed, send message
+ var msgid = this.set_busy(true, draft ? 'savingmessage' : 'sendingmessage'),
+ lang = this.spellcheck_lang(),
+ files = [];
+
+ // send files list
+ $('li', this.gui_objects.attachmentlist).each(function() { files.push(this.id.replace(/^rcmfile/, '')); });
+ $('input[name="_attachments"]', form).val(files.join());
+
+ form.target = 'savetarget';
+ form._draft.value = draft ? '1' : '';
+ form.action = this.add_url(form.action, '_unlock', msgid);
+ form.action = this.add_url(form.action, '_lang', lang);
+ form.submit();
+ };
+
this.compose_recipient_select = function(list)
{
this.enable_command('add-recipient', list.selection.length > 0);
@@ -4275,7 +4276,7 @@ function rcube_webmail()
if (!this.gui_objects.contactslist)
return false;
- var c, list = this.contact_list,
+ var c, col, list = this.contact_list,
row = document.createElement('tr');
row.id = 'rcmrow'+this.html_identifier(cid);
@@ -4715,11 +4716,11 @@ function rcube_webmail()
{
if (form && form.elements._photo.value) {
this.async_upload_form(form, 'upload-photo', function(e) {
- rcmail.set_busy(false, null, rcmail.photo_upload_id);
+ rcmail.set_busy(false, null, rcmail.file_upload_id);
});
// display upload indicator
- this.photo_upload_id = this.set_busy(true, 'uploading');
+ this.file_upload_id = this.set_busy(true, 'uploading');
}
};
@@ -4734,8 +4735,8 @@ function rcube_webmail()
this.photo_upload_end = function()
{
- this.set_busy(false, null, this.photo_upload_id);
- delete this.photo_upload_id;
+ this.set_busy(false, null, this.file_upload_id);
+ delete this.file_upload_id;
};
this.set_photo_actions = function(id)
@@ -5358,13 +5359,6 @@ function rcube_webmail()
}
};
- // enable/disable buttons for page shifting
- this.set_page_buttons = function()
- {
- this.enable_command('nextpage', 'lastpage', (this.env.pagecount > this.env.current_page));
- this.enable_command('previouspage', 'firstpage', (this.env.current_page > 1));
- };
-
// set event handlers on registered buttons
this.init_buttons = function()
{
@@ -5372,7 +5366,7 @@ function rcube_webmail()
if (typeof cmd !== 'string')
continue;
- for (var i=0; i< this.buttons[cmd].length; i++) {
+ for (var i=0; i<this.buttons[cmd].length; i++) {
init_button(cmd, this.buttons[cmd][i]);
}
}
@@ -5391,28 +5385,31 @@ function rcube_webmail()
button = a_buttons[n];
obj = document.getElementById(button.id);
+ if (!obj)
+ continue;
+
// get default/passive setting of the button
- if (obj && button.type == 'image' && !button.status) {
+ if (button.type == 'image' && !button.status) {
button.pas = obj._original_src ? obj._original_src : obj.src;
// respect PNG fix on IE browsers
if (obj.runtimeStyle && obj.runtimeStyle.filter && obj.runtimeStyle.filter.match(/src=['"]([^'"]+)['"]/))
button.pas = RegExp.$1;
}
- else if (obj && !button.status)
+ else if (!button.status)
button.pas = String(obj.className);
// set image according to button state
- if (obj && button.type == 'image' && button[state]) {
+ if (button.type == 'image' && button[state]) {
button.status = state;
obj.src = button[state];
}
// set class name according to button state
- else if (obj && button[state] !== undefined) {
+ else if (button[state] !== undefined) {
button.status = state;
obj.className = button[state];
}
// disable/enable input buttons
- if (obj && button.type=='input') {
+ if (button.type == 'input') {
button.status = state;
obj.disabled = !state;
}
@@ -5635,6 +5632,13 @@ function rcube_webmail()
this.messages = {};
};
+ // enable/disable buttons for page shifting
+ this.set_page_buttons = function()
+ {
+ this.enable_command('nextpage', 'lastpage', (this.env.pagecount > this.env.current_page));
+ this.enable_command('previouspage', 'firstpage', (this.env.current_page > 1));
+ };
+
// mark a mailbox as selected and set environment variable
this.select_folder = function(name, prefix, encode)
{
@@ -6168,6 +6172,10 @@ function rcube_webmail()
this.set_busy(false, null, lock);
request.abort();
+ // don't display error message on page unload (#1488547)
+ if (this.unload)
+ return;
+
if (request.status && errmsg)
this.display_message(this.get_label('servererror') + ' (' + errmsg + ')', 'error');
else if (status == 'timeout')
@@ -6204,7 +6212,7 @@ function rcube_webmail()
// have to do it this way for IE
// otherwise the form will be posted to a new window
if (document.all) {
- var html = '<iframe name="'+frame_name+'" src="program/blank.gif" style="width:0;height:0;visibility:hidden;"></iframe>';
+ var html = '<iframe name="'+frame_name+'" src="program/resources/blank.gif" style="width:0;height:0;visibility:hidden;"></iframe>';
document.body.insertAdjacentHTML('BeforeEnd', html);
}
else { // for standards-compilant browsers
@@ -6254,7 +6262,7 @@ function rcube_webmail()
// prepare multipart form data composition
var files = e.target.files || e.dataTransfer.files,
formdata = window.FormData ? new FormData() : null,
- fieldname = this.env.filedrop.fieldname || '_file',
+ fieldname = (this.env.filedrop.fieldname || '_file') + (this.env.filedrop.single ? '' : '[]'),
boundary = '------multipartformboundary' + (new Date).getTime(),
dashdash = '--', crlf = '\r\n',
multipart = dashdash + boundary + crlf;
@@ -6269,7 +6277,8 @@ function rcube_webmail()
content = '<span>' + (multiple ? ref.get_label('uploadingmany') : files[0].name) + '</span>';
// add to attachments list
- ref.add2attachment_list(ts, { name:'', html:content, classname:'uploading', complete:false });
+ if (!ref.add2attachment_list(ts, { name:'', html:content, classname:'uploading', complete:false }))
+ ref.file_upload_id = ref.set_busy(true, 'uploading');
// complete multipart content and post request
multipart += dashdash + boundary + dashdash + crlf;
@@ -6277,10 +6286,11 @@ function rcube_webmail()
$.ajax({
type: 'POST',
dataType: 'json',
- url: ref.url(ref.env.filedrop.action||'upload', { _id:ref.env.compose_id||'', _uploadid:ts, _remote:1 }),
+ url: ref.url(ref.env.filedrop.action||'upload', { _id:ref.env.compose_id||ref.env.cid||'', _uploadid:ts, _remote:1 }),
contentType: formdata ? false : 'multipart/form-data; boundary=' + boundary,
processData: false,
data: formdata || multipart,
+ headers: {'X-Roundcube-Request': ref.env.request_token},
beforeSend: function(xhr, s) { if (!formdata && xhr.sendAsBinary) xhr.send = xhr.sendAsBinary; },
success: function(data){ ref.http_response(data); },
error: function(o, status, err) { ref.http_error(o, status, err, null, 'attachment'); }
@@ -6289,7 +6299,7 @@ function rcube_webmail()
// get contents of all dropped files
var last = this.env.filedrop.single ? 0 : files.length - 1;
- for (var i=0, f; i <= last && (f = files[i]); i++) {
+ for (var j=0, i=0, f; j <= last && (f = files[i]); i++) {
if (!f.name) f.name = f.fileName;
if (!f.size) f.size = f.fileSize;
if (!f.type) f.type = 'application/octet-stream';
@@ -6306,8 +6316,8 @@ function rcube_webmail()
// do it the easy way with FormData (FF 4+, Chrome 5+, Safari 5+)
if (formdata) {
- formdata.append(fieldname + '[]', f);
- if (i == last)
+ formdata.append(fieldname, f);
+ if (j == last)
return submit_data();
}
// use FileReader supporetd by Firefox 3.6
@@ -6315,33 +6325,35 @@ function rcube_webmail()
var reader = new FileReader();
// closure to pass file properties to async callback function
- reader.onload = (function(file, i) {
+ reader.onload = (function(file, j) {
return function(e) {
- multipart += 'Content-Disposition: form-data; name="' + fieldname + '[]"';
+ multipart += 'Content-Disposition: form-data; name="' + fieldname + '"';
multipart += '; filename="' + (f.name_bin || file.name) + '"' + crlf;
multipart += 'Content-Length: ' + file.size + crlf;
multipart += 'Content-Type: ' + file.type + crlf + crlf;
multipart += e.target.result + crlf;
multipart += dashdash + boundary + crlf;
- if (i == last) // we're done, submit the data
+ if (j == last) // we're done, submit the data
return submit_data();
}
- })(f,i);
+ })(f,j);
reader.readAsBinaryString(f);
}
// Firefox 3
else if (f.getAsBinary) {
- multipart += 'Content-Disposition: form-data; name="' + fieldname + '[]"';
+ multipart += 'Content-Disposition: form-data; name="' + fieldname + '"';
multipart += '; filename="' + (f.name_bin || f.name) + '"' + crlf;
multipart += 'Content-Length: ' + f.size + crlf;
multipart += 'Content-Type: ' + f.type + crlf + crlf;
multipart += f.getAsBinary() + crlf;
multipart += dashdash + boundary +crlf;
- if (i == last)
+ if (j == last)
return submit_data();
}
+
+ j++;
}
};
@@ -6538,7 +6550,7 @@ function rcube_webmail()
img.onload = function() { rcmail.env.browser_capabilities.tif = 1; };
img.onerror = function() { rcmail.env.browser_capabilities.tif = 0; };
- img.src = 'program/blank.tif';
+ img.src = 'program/resources/blank.tif';
};
this.pdf_support_check = function()
diff --git a/program/js/common.js b/program/js/common.js
index b6407c5f3..fdef3453e 100644
--- a/program/js/common.js
+++ b/program/js/common.js
@@ -60,8 +60,8 @@ function roundcube_browser()
this.ns = ((this.ver < 5 && this.name == 'Netscape') || (this.ver >= 5 && this.vendor.indexOf('Netscape') >= 0));
this.chrome = (this.agent_lc.indexOf('chrome') > 0);
this.safari = (!this.chrome && (this.agent_lc.indexOf('safari') > 0 || this.agent_lc.indexOf('applewebkit') > 0));
- this.mz = (this.dom && !this.ie && !this.ns && !this.chrome && !this.safari && this.agent.indexOf('Mozilla') >= 0);
- this.konq = (this.agent_lc.indexOf('konqueror') > 0);
+ this.konq = (this.agent_lc.indexOf('konqueror') > 0);
+ this.mz = (this.dom && !this.ie && !this.ns && !this.chrome && !this.safari && !this.konq && this.agent.indexOf('Mozilla') >= 0);
this.iphone = (this.safari && this.agent_lc.indexOf('iphone') > 0);
this.ipad = (this.safari && this.agent_lc.indexOf('ipad') > 0);
this.opera = window.opera ? true : false;
@@ -83,6 +83,7 @@ function roundcube_browser()
if (this.safari && (/;\s+([a-z]{2})-[a-z]{2}\)/.test(this.agent_lc)))
this.lang = RegExp.$1;
+ this.mobile = this.agent_lc.match(/iphone|ipad|ipod|android|blackberry|iemobile|opera mini|opera mobi/);
this.dhtml = ((this.ie4 && this.win) || this.ie5 || this.ie6 || this.ns4 || this.mz);
this.vml = (this.win && this.ie && this.dom && !this.opera);
this.pngalpha = (this.mz || (this.opera && this.vendver >= 6) || (this.ie && this.mac && this.vendver >= 5) ||
@@ -124,6 +125,9 @@ function roundcube_browser()
else if (this.safari || this.chrome)
classname += ' webkit';
+ if (this.mobile)
+ classname += ' mobile';
+
if (document.documentElement)
document.documentElement.className += classname;
};
diff --git a/program/js/editor.js b/program/js/editor.js
index 702ca1cd4..bc36e9a39 100644
--- a/program/js/editor.js
+++ b/program/js/editor.js
@@ -45,11 +45,11 @@ function rcmail_editor_init(config)
});
else { // mail compose
$.extend(conf, {
- plugins: 'paste,emotions,media,nonbreaking,table,searchreplace,visualchars,directionality,tabfocus' + (config.spellcheck ? ',spellchecker' : ''),
+ plugins: 'paste,emotions,media,nonbreaking,table,searchreplace,visualchars,directionality,inlinepopups,tabfocus' + (config.spellcheck ? ',spellchecker' : ''),
theme_advanced_buttons1: 'bold,italic,underline,|,justifyleft,justifycenter,justifyright,justifyfull,|,bullist,numlist,outdent,indent,ltr,rtl,blockquote,|,forecolor,backcolor,fontselect,fontsizeselect',
theme_advanced_buttons2: 'link,unlink,table,|,emotions,charmap,image,media,|,code,search,undo,redo',
spellchecker_languages: (rcmail.env.spellcheck_langs ? rcmail.env.spellcheck_langs : 'Dansk=da,Deutsch=de,+English=en,Espanol=es,Francais=fr,Italiano=it,Nederlands=nl,Polski=pl,Portugues=pt,Suomi=fi,Svenska=sv'),
- spellchecker_rpc_url: '?_task=utils&_action=spell_html',
+ spellchecker_rpc_url: '?_task=utils&_action=spell_html&_remote=1',
spellchecker_enable_learn_rpc: config.spelldict,
accessibility_focus: false,
oninit: 'rcmail_editor_callback'
@@ -84,8 +84,11 @@ function rcmail_editor_callback()
rcmail.change_identity(elem);
// Focus previously focused element
if (fe && fe.id != rcmail.env.composebody) {
- window.focus(); // for WebKit (#1486674)
- fe.focus();
+ // use setTimeout() for IE9 (#1488541)
+ window.setTimeout(function() {
+ window.focus(); // for WebKit (#1486674)
+ fe.focus();
+ }, 10);
}
}
diff --git a/program/js/list.js b/program/js/list.js
index e3be9a050..b194721f4 100644
--- a/program/js/list.js
+++ b/program/js/list.js
@@ -112,7 +112,7 @@ init_row: function(row)
row.onmousedown = function(e){ return self.drag_row(e, this.uid); };
row.onmouseup = function(e){ return self.click_row(e, this.uid); };
- if (bw.iphone || bw.ipad) {
+ if (bw.mobile) {
row.addEventListener('touchstart', function(e) {
if (e.touches.length == 1) {
if (!self.drag_row(rcube_event.touchevent(e.touches[0]), this.uid))
@@ -313,7 +313,7 @@ drag_row: function(e, id)
this.drag_mouse_start = rcube_event.get_mouse_pos(e);
rcube_event.add_listener({event:'mousemove', object:this, method:'drag_mouse_move'});
rcube_event.add_listener({event:'mouseup', object:this, method:'drag_mouse_up'});
- if (bw.iphone || bw.ipad) {
+ if (bw.mobile) {
rcube_event.add_listener({event:'touchmove', object:this, method:'drag_mouse_move'});
rcube_event.add_listener({event:'touchend', object:this, method:'drag_mouse_up'});
}
@@ -1220,7 +1220,7 @@ drag_mouse_move: function(e)
drag_mouse_up: function(e)
{
document.onmousemove = null;
-
+
if (e.type == 'touchend') {
if (e.changedTouches.length != 1)
return rcube_event.cancel(e);
@@ -1239,8 +1239,8 @@ drag_mouse_up: function(e)
rcube_event.remove_listener({event:'mousemove', object:this, method:'drag_mouse_move'});
rcube_event.remove_listener({event:'mouseup', object:this, method:'drag_mouse_up'});
-
- if (bw.iphone || bw.ipad) {
+
+ if (bw.mobile) {
rcube_event.remove_listener({event:'touchmove', object:this, method:'drag_mouse_move'});
rcube_event.remove_listener({event:'touchend', object:this, method:'drag_mouse_up'});
}
diff --git a/program/js/tiny_mce/langs/nl.js b/program/js/tiny_mce/langs/nl.js
index c5fa704a7..a8cdad2e5 100644
--- a/program/js/tiny_mce/langs/nl.js
+++ b/program/js/tiny_mce/langs/nl.js
@@ -1 +1 @@
-tinyMCE.addI18n({nl:{common:{"more_colors":"Meer kleuren","invalid_data":"Fout: Er zijn ongeldige waardes ingevoerd, deze zijn rood gemarkeerd.","popup_blocked":"U zult uw popup-blocker tijdelijk moeten uitschakelen voor deze website om gebruik te kunnen maken van alle functies van deze teksteditor.","clipboard_no_support":"Kopi\u00ebren/knippen/plakken wordt niet ondersteund door uw browser, gebruik hiervoor de sneltoetsen.","clipboard_msg":"Kopi\u00ebren/knippen/plakken is niet beschikbaar in Mozilla en Firefox.\nWilt u meer informatie over deze beperking?","not_set":"- Standaard -","class_name":"Klasse",browse:"Bladeren",close:"Sluiten",cancel:"Annuleren",update:"Bijwerken",insert:"Invoegen",apply:"Toepassen","edit_confirm":"Weet u zeker dat u tekst in WYSIWYG mode wilt bewerken in dit tekstveld?","invalid_data_number":"{#field} moet een nummer zijn","invalid_data_min":"{#field} moet groter zijn dan {#min}","invalid_data_size":"{#field} moet een nummer of percentage zijn",value:"(waarde aanpassen)"},contextmenu:{full:"Uitvullen",right:"Rechts",center:"Centreren",left:"Links",align:"Uitlijning"},insertdatetime:{"day_short":"zo,ma,di,wo,do,vr,za,zo","day_long":"Zondag,Maandag,Dinsdag,Woensdag,Donderdag,Vrijdag,Zaterdag,Zondag","months_short":"Jan,Feb,Mar,Apr,Mei,Jun,Jul,Aug,Sep,Okt,Nov,Dec","months_long":"Januari,Februari,Maart,April,Mei,Juni,Juli,Augustus,September,Oktober,November,December","inserttime_desc":"Tijd invoegen","insertdate_desc":"Datum invoegen","time_fmt":"%H:%M:%S","date_fmt":"%d-%m-%Y"},print:{"print_desc":"Afdrukken"},preview:{"preview_desc":"Voorbeeld"},directionality:{"rtl_desc":"Van rechts naar links","ltr_desc":"Van links naar rechts"},layer:{content:"Nieuwe laag...","absolute_desc":"Absoluut positioneren inschakelen","backward_desc":"Vorige laag","forward_desc":"Volgende laag","insertlayer_desc":"Nieuwe laag invoegen"},save:{"save_desc":"Opslaan","cancel_desc":"Alle wijzigingen annuleren"},nonbreaking:{"nonbreaking_desc":"Open ruimte invoegen"},iespell:{download:"ieSpell niet gevonden. Wilt u deze nu installeren?","iespell_desc":"Spellingcontrole"},advhr:{"advhr_desc":"Scheidingslijn","delta_height":"","delta_width":""},emotions:{"emotions_desc":"Emoties","delta_height":"","delta_width":""},searchreplace:{"replace_desc":"Zoeken/Vervangen","search_desc":"Zoeken","delta_width":"","delta_height":""},advimage:{"image_desc":"Afbeelding invoegen/bewerken","delta_width":"","delta_height":""},advlink:{"link_desc":"Link invoegen/bewerken","delta_height":"","delta_width":""},xhtmlxtras:{"attribs_desc":"Attributen invoegen/bewerken","ins_desc":"Ingevoegd","del_desc":"Verwijderd","acronym_desc":"Synoniem","abbr_desc":"Afkorting","cite_desc":"Citaat","attribs_delta_height":"","attribs_delta_width":"","ins_delta_height":"","ins_delta_width":"","del_delta_height":"","del_delta_width":"","acronym_delta_height":"","acronym_delta_width":"","abbr_delta_height":"","abbr_delta_width":"","cite_delta_height":"","cite_delta_width":""},style:{desc:"CSS Stijl bewerken","delta_height":"","delta_width":""},paste:{"plaintext_mode":"Plakken is nu in plattetekstmodus. Klik nog een keer om terug te gaan naar normaal plakken.","plaintext_mode_sticky":"Plakken is nu in plattetekstmodus. Klik nog een keer om terug te gaan naar normaal plakken. Nadat u iets plakt, keert u terug naar normaal plakken.","selectall_desc":"Alles selecteren","paste_word_desc":"Vanuit Word plakken","paste_text_desc":"Als platte tekst plakken"},"paste_dlg":{"word_title":"Gebruik Ctrl+V om tekst in het venster te plakken.","text_linebreaks":"Regelafbreking bewaren","text_title":"Gebruik Ctrl+V om tekst in het venster te plakken."},table:{cell:"Cel",col:"Kolom",row:"Rij",del:"Tabel verwijderen","copy_row_desc":"Rij kopi\u00ebren","cut_row_desc":"Rij knippen","paste_row_after_desc":"Rij onder plakken","paste_row_before_desc":"Rij boven plakken","props_desc":"Tabeleigenschappen","cell_desc":"Cel-eigenschappen","row_desc":"Rij-eigenschappen","merge_cells_desc":"Cellen samenvoegen","split_cells_desc":"Cellen splitsen","delete_col_desc":"Kolom verwijderen","col_after_desc":"Kolom rechts invoegen","col_before_desc":"Kolom links invoegen","delete_row_desc":"Rij verwijderen","row_after_desc":"Rij onder invoegen","row_before_desc":"Rij boven invoegen",desc:"Tabel invoegen/bewerken","merge_cells_delta_height":"","merge_cells_delta_width":"","table_delta_height":"","table_delta_width":"","cellprops_delta_height":"","cellprops_delta_width":"","rowprops_delta_height":"","rowprops_delta_width":""},autosave:{"warning_message":"Als u de opgeslagen inhoud laadt, verliest u de inhoud die zich momenteel in de editor bevindt.\n\nWeet u zeker dat u de opgeslagen inhoud wilt laden?","restore_content":"Automatisch opgeslagen inhoud laden.","unload_msg":"De wijzigingen zullen verloren gaan als u nu deze pagina verlaat."},fullscreen:{desc:"Volledig scherm"},media:{edit:"Media bewerken",desc:"Media invoegen/bewerken","delta_height":"","delta_width":""},fullpage:{desc:"Documenteigenschappen","delta_width":"","delta_height":""},template:{desc:"Voorgedefinieerd sjabloon invoegen"},visualchars:{desc:"Zichtbare symbolen"},spellchecker:{desc:"Spellingcontrole",menu:"Instellingen spellingcontrole","ignore_word":"Woord negeren","ignore_words":"Alles negeren",langs:"Talen",wait:"Een ogenblik geduld\u2026",sug:"Suggesties","no_sug":"Geen suggesties","no_mpell":"Geen spelfouten gevonden.","learn_word":"Woord toevoegen aan spellingscontrole"},pagebreak:{desc:"Pagina-einde invoegen"},advlist:{types:"Types",def:"Standaard","lower_alpha":"Alfa (klein)","lower_greek":"Griekse letters (klein)","lower_roman":"Romeinse letters (klein)","upper_alpha":"Alfa (groot)","upper_roman":"Romeinse letters (groot)",circle:"Cirkel",disc:"Schijf",square:"Vierkant"},colors:{"333300":"Donkerolijf","993300":"Gebrand oranje","000000":"Zwart","003300":"Donkergroen","003366":"Donkerazuur","000080":"Marineblauw","333399":"Indigo","333333":"Heel donkergrijs","800000":"Kastanjebruin",FF6600:"Oranje","808000":"Olijf","008000":"Groen","008080":"Teal","0000FF":"Blauw","666699":"Grijsblauw","808080":"Grijs",FF0000:"Rood",FF9900:"Amber","99CC00":"Geelgroen","339966":"Zeegroen","33CCCC":"Turkoois","3366FF":"Koningsblauw","800080":"Paars","999999":"Middengrijs",FF00FF:"Magenta",FFCC00:"Goud",FFFF00:"Geel","00FF00":"Limoen","00FFFF":"Aqua","00CCFF":"Hemelsblauw","993366":"Bruin",C0C0C0:"Zilver",FF99CC:"Roze",FFCC99:"Perzik",FFFF99:"Lichtgeel",CCFFCC:"Bleekgroen",CCFFFF:"Bleekcyaan","99CCFF":"Licht hemelsblauw",CC99FF:"Pruim",FFFFFF:"Wit"},aria:{"rich_text_area":"Tekst met opmaak"},wordcount:{words:"Aantal woorden:"}}}); \ No newline at end of file
+tinyMCE.addI18n({nl:{common:{"more_colors":"Meer kleuren","invalid_data":"Fout: Er zijn ongeldige waardes ingevoerd, deze zijn rood gemarkeerd.","popup_blocked":"U zult uw popup-blocker tijdelijk moeten uitschakelen voor deze website om gebruik te kunnen maken van alle functies van deze teksteditor.","clipboard_no_support":"Kopi\u00ebren/knippen/plakken wordt niet ondersteund door uw browser, gebruik hiervoor de sneltoetsen.","clipboard_msg":"Kopi\u00ebren/knippen/plakken is niet beschikbaar in Mozilla en Firefox.\nWilt u meer informatie over deze beperking?","not_set":"- Standaard -","class_name":"Klasse",browse:"Bladeren",close:"Sluiten",cancel:"Annuleren",update:"Bijwerken",insert:"Invoegen",apply:"Toepassen","edit_confirm":"Weet u zeker dat u tekst in WYSIWYG mode wilt bewerken in dit tekstveld?","invalid_data_number":"{#field} moet een nummer zijn","invalid_data_min":"{#field} moet groter zijn dan {#min}","invalid_data_size":"{#field} moet een nummer of percentage zijn",value:"(waarde aanpassen)"},contextmenu:{full:"Uitvullen",right:"Rechts",center:"Centreren",left:"Links",align:"Uitlijning"},insertdatetime:{"day_short":"zo,ma,di,wo,do,vr,za,zo","day_long":"Zondag,Maandag,Dinsdag,Woensdag,Donderdag,Vrijdag,Zaterdag,Zondag","months_short":"Jan,Feb,Mar,Apr,Mei,Jun,Jul,Aug,Sep,Okt,Nov,Dec","months_long":"Januari,Februari,Maart,April,Mei,Juni,Juli,Augustus,September,Oktober,November,December","inserttime_desc":"Tijd invoegen","insertdate_desc":"Datum invoegen","time_fmt":"%H:%M:%S","date_fmt":"%d-%m-%Y"},print:{"print_desc":"Afdrukken"},preview:{"preview_desc":"Voorbeeld"},directionality:{"rtl_desc":"Van rechts naar links","ltr_desc":"Van links naar rechts"},layer:{content:"Nieuwe laag...","absolute_desc":"Absoluut positioneren inschakelen","backward_desc":"Vorige laag","forward_desc":"Volgende laag","insertlayer_desc":"Nieuwe laag invoegen"},save:{"save_desc":"Opslaan","cancel_desc":"Alle wijzigingen annuleren"},nonbreaking:{"nonbreaking_desc":"Harde spatie invoegen"},iespell:{download:"ieSpell niet gevonden. Wilt u deze nu installeren?","iespell_desc":"Spellingcontrole"},advhr:{"advhr_desc":"Scheidingslijn","delta_height":"","delta_width":""},emotions:{"emotions_desc":"Emoties","delta_height":"","delta_width":""},searchreplace:{"replace_desc":"Zoeken/Vervangen","search_desc":"Zoeken","delta_width":"","delta_height":""},advimage:{"image_desc":"Afbeelding invoegen/bewerken","delta_width":"","delta_height":""},advlink:{"link_desc":"Link invoegen/bewerken","delta_height":"","delta_width":""},xhtmlxtras:{"attribs_desc":"Attributen invoegen/bewerken","ins_desc":"Ingevoegd","del_desc":"Verwijderd","acronym_desc":"Synoniem","abbr_desc":"Afkorting","cite_desc":"Citaat","attribs_delta_height":"","attribs_delta_width":"","ins_delta_height":"","ins_delta_width":"","del_delta_height":"","del_delta_width":"","acronym_delta_height":"","acronym_delta_width":"","abbr_delta_height":"","abbr_delta_width":"","cite_delta_height":"","cite_delta_width":""},style:{desc:"CSS Stijl bewerken","delta_height":"","delta_width":""},paste:{"plaintext_mode":"Plakken is nu in plattetekstmodus. Klik nog een keer om terug te gaan naar normaal plakken.","plaintext_mode_sticky":"Plakken is nu in plattetekstmodus. Klik nog een keer om terug te gaan naar normaal plakken. Nadat u iets plakt, keert u terug naar normaal plakken.","selectall_desc":"Alles selecteren","paste_word_desc":"Vanuit Word plakken","paste_text_desc":"Als platte tekst plakken"},"paste_dlg":{"word_title":"Gebruik Ctrl+V om tekst in het venster te plakken.","text_linebreaks":"Regelafbreking bewaren","text_title":"Gebruik Ctrl+V om tekst in het venster te plakken."},table:{cell:"Cel",col:"Kolom",row:"Rij",del:"Tabel verwijderen","copy_row_desc":"Rij kopi\u00ebren","cut_row_desc":"Rij knippen","paste_row_after_desc":"Rij onder plakken","paste_row_before_desc":"Rij boven plakken","props_desc":"Tabeleigenschappen","cell_desc":"Cel-eigenschappen","row_desc":"Rij-eigenschappen","merge_cells_desc":"Cellen samenvoegen","split_cells_desc":"Cellen splitsen","delete_col_desc":"Kolom verwijderen","col_after_desc":"Kolom rechts invoegen","col_before_desc":"Kolom links invoegen","delete_row_desc":"Rij verwijderen","row_after_desc":"Rij onder invoegen","row_before_desc":"Rij boven invoegen",desc:"Tabel invoegen/bewerken","merge_cells_delta_height":"","merge_cells_delta_width":"","table_delta_height":"","table_delta_width":"","cellprops_delta_height":"","cellprops_delta_width":"","rowprops_delta_height":"","rowprops_delta_width":""},autosave:{"warning_message":"Als u de opgeslagen inhoud laadt, verliest u de inhoud die zich momenteel in de editor bevindt.\n\nWeet u zeker dat u de opgeslagen inhoud wilt laden?","restore_content":"Automatisch opgeslagen inhoud laden.","unload_msg":"De wijzigingen zullen verloren gaan als u nu deze pagina verlaat."},fullscreen:{desc:"Volledig scherm"},media:{edit:"Media bewerken",desc:"Media invoegen/bewerken","delta_height":"","delta_width":""},fullpage:{desc:"Documenteigenschappen","delta_width":"","delta_height":""},template:{desc:"Voorgedefinieerd sjabloon invoegen"},visualchars:{desc:"Zichtbare symbolen"},spellchecker:{desc:"Spellingcontrole",menu:"Instellingen spellingcontrole","ignore_word":"Woord negeren","ignore_words":"Alles negeren",langs:"Talen",wait:"Een ogenblik geduld\u2026",sug:"Suggesties","no_sug":"Geen suggesties","no_mpell":"Geen spelfouten gevonden.","learn_word":"Woord toevoegen aan spellingscontrole"},pagebreak:{desc:"Pagina-einde invoegen"},advlist:{types:"Types",def:"Standaard","lower_alpha":"Alfa (klein)","lower_greek":"Griekse letters (klein)","lower_roman":"Romeinse letters (klein)","upper_alpha":"Alfa (groot)","upper_roman":"Romeinse letters (groot)",circle:"Cirkel",disc:"Schijf",square:"Vierkant"},colors:{"333300":"Donkerolijf","993300":"Gebrand oranje","000000":"Zwart","003300":"Donkergroen","003366":"Donkerazuur","000080":"Marineblauw","333399":"Indigo","333333":"Heel donkergrijs","800000":"Kastanjebruin",FF6600:"Oranje","808000":"Olijf","008000":"Groen","008080":"Teal","0000FF":"Blauw","666699":"Grijsblauw","808080":"Grijs",FF0000:"Rood",FF9900:"Amber","99CC00":"Geelgroen","339966":"Zeegroen","33CCCC":"Turkoois","3366FF":"Koningsblauw","800080":"Paars","999999":"Middengrijs",FF00FF:"Magenta",FFCC00:"Goud",FFFF00:"Geel","00FF00":"Limoen","00FFFF":"Aqua","00CCFF":"Hemelsblauw","993366":"Bruin",C0C0C0:"Zilver",FF99CC:"Roze",FFCC99:"Perzik",FFFF99:"Lichtgeel",CCFFCC:"Bleekgroen",CCFFFF:"Bleekcyaan","99CCFF":"Licht hemelsblauw",CC99FF:"Pruim",FFFFFF:"Wit"},aria:{"rich_text_area":"Tekst met opmaak"},wordcount:{words:"Aantal woorden:"}}}); \ No newline at end of file
diff --git a/program/js/tiny_mce/langs/ru.js b/program/js/tiny_mce/langs/ru.js
index cac49e17d..290aee239 100644
--- a/program/js/tiny_mce/langs/ru.js
+++ b/program/js/tiny_mce/langs/ru.js
@@ -1 +1 @@
-tinyMCE.addI18n({ru:{common:{"more_colors":"\u0414\u0440\u0443\u0433\u0438\u0435 \u0446\u0432\u0435\u0442\u0430...","invalid_data":"\u041e\u0448\u0438\u0431\u043a\u0430: \u0412\u0432\u0435\u0434\u0435\u043d\u043e \u043d\u0435\u0432\u0435\u0440\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435, \u043e\u043d\u043e \u043e\u0442\u043c\u0435\u0447\u0435\u043d\u043e \u043a\u0440\u0430\u0441\u043d\u044b\u043c.","popup_blocked":"\u0411\u043b\u043e\u043a\u0438\u0440\u0430\u0442\u043e\u0440 \u0432\u0441\u043f\u043b\u044b\u0432\u0430\u044e\u0449\u0438\u0445 \u043e\u043a\u043e\u043d \u0437\u0430\u043a\u0440\u044b\u043b \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0435 \u043e\u043a\u043d\u043e. \u0414\u043b\u044f \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b, \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u0435 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0443 \u043d\u0430 \u044d\u0442\u043e\u043c \u0441\u0430\u0439\u0442\u0435.","clipboard_no_support":"\u041d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0412\u0430\u0448\u0438\u043c \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u043e\u043c, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0433\u043e\u0440\u044f\u0447\u0438\u0435 \u043a\u043b\u0430\u0432\u0438\u0448\u0438.","clipboard_msg":"\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435, \u0432\u044b\u0440\u0435\u0437\u043a\u0430 \u0438 \u0432\u0441\u0442\u0430\u0432\u043a\u0430 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u0432 Firefox.\\r\n\u0425\u043e\u0442\u0438\u0442\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e?","not_set":"- \u041d\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e -","class_name":"\u041a\u043b\u0430\u0441\u0441",browse:"\u041e\u0431\u0437\u043e\u0440",close:"\u0417\u0430\u043a\u0440\u044b\u0442\u044c",cancel:"\u041e\u0442\u043c\u0435\u043d\u0438\u0442\u044c",update:"\u041e\u0431\u043d\u043e\u0432\u0438\u0442\u044c",insert:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c",apply:"\u041f\u0440\u0438\u043c\u0435\u043d\u0438\u0442\u044c","edit_confirm":"\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c WYSIWYG \u0440\u0435\u0436\u0438\u043c \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043f\u043e\u043b\u044f?","invalid_data_number":"{#field} - \u0443\u043a\u0430\u0436\u0438\u0442\u0435 \u0447\u0438\u0441\u043b\u043e","invalid_data_min":"{#field} - \u0443\u043a\u0430\u0436\u0438\u0442\u0435 \u0447\u0438\u0441\u043b\u043e \u0431\u043e\u043b\u044c\u0448\u0435 {#min}","invalid_data_size":"{#field} - \u0443\u043a\u0430\u0436\u0438\u0442\u0435 \u0447\u0438\u0441\u043b\u043e \u0438\u043b\u0438 \u043f\u0440\u043e\u0446\u0435\u043d\u0442",value:"(\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435)"},contextmenu:{full:"\u041f\u043e \u0448\u0438\u0440\u0438\u043d\u0435",right:"\u041f\u043e \u043f\u0440\u0430\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e",center:"\u041f\u043e \u0446\u0435\u043d\u0442\u0440\u0443",left:"\u041f\u043e \u043b\u0435\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e",align:"\u0412\u044b\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u043d\u0438\u0435"},insertdatetime:{"day_short":"\u0432\u0441,\u043f\u043d,\u0432\u0442,\u0441\u0440,\u0447\u0442,\u043f\u0442,\u0441\u0431,\u0432\u0441","day_long":"\u0432\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435,\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a,\u0432\u0442\u043e\u0440\u043d\u0438\u043a,\u0441\u0440\u0435\u0434\u0430,\u0447\u0435\u0442\u0432\u0435\u0440\u0433,\u043f\u044f\u0442\u043d\u0438\u0446\u0430,\u0441\u0443\u0431\u0431\u043e\u0442\u0430,\u0432\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435","months_short":"\u044f\u043d\u0432,\u0444\u0435\u0432,\u043c\u0430\u0440\u0442,\u0430\u043f\u0440,\u043c\u0430\u0439,\u0438\u044e\u043d\u044c,\u0438\u044e\u043b\u044c,\u0430\u0432\u0433,\u0441\u0435\u043d,\u043e\u043a\u0442,\u043d\u043e\u044f,\u0434\u0435\u043a","months_long":"\u044f\u043d\u0432\u0430\u0440\u044c,\u0444\u0435\u0432\u0440\u0430\u043b\u044c,\u043c\u0430\u0440\u0442,\u0430\u043f\u0440\u0435\u043b\u044c,\u043c\u0430\u0439,\u0438\u044e\u043d\u044c,\u0438\u044e\u043b\u044c,\u0430\u0432\u0433\u0443\u0441\u0442,\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044c,\u043e\u043a\u0442\u044f\u0431\u0440\u044c,\u043d\u043e\u044f\u0431\u0440\u044c,\u0434\u0435\u043a\u0430\u0431\u0440\u044c","inserttime_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432\u0440\u0435\u043c\u044f","insertdate_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0434\u0430\u0442\u0443","time_fmt":"%H:%M:%S","date_fmt":"%d.%m.%Y"},print:{"print_desc":"\u041f\u0435\u0447\u0430\u0442\u044c"},preview:{"preview_desc":"\u041f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440"},directionality:{"rtl_desc":"\u041d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u043f\u0440\u0430\u0432\u0430 \u043d\u0430\u043b\u0435\u0432\u043e","ltr_desc":"\u041d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u043b\u0435\u0432\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u043e"},layer:{content:"\u041d\u043e\u0432\u044b\u0439 \u0441\u043b\u043e\u0439","absolute_desc":"\u0410\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u043e\u0435 \u043f\u043e\u0437\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435","backward_desc":"\u041d\u0430 \u0437\u0430\u0434\u043d\u0438\u0439 \u043f\u043b\u0430\u043d","forward_desc":"\u041d\u0430 \u043f\u0435\u0440\u0435\u0434\u043d\u0438\u0439 \u043f\u043b\u0430\u043d","insertlayer_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u043b\u043e\u0439"},save:{"save_desc":"\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c","cancel_desc":"\u041e\u0442\u043c\u0435\u043d\u0438\u0442\u044c \u0432\u0441\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f"},nonbreaking:{"nonbreaking_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043d\u0435\u0440\u0430\u0437\u0440\u044b\u0432\u043d\u044b\u0439 \u043f\u0440\u043e\u0431\u0435\u043b"},iespell:{download:"ieSpell \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d. \u0416\u0435\u043b\u0430\u0435\u0442\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c?","iespell_desc":"\u041f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u043e\u0440\u0444\u043e\u0433\u0440\u0430\u0444\u0438\u044e"},advhr:{"advhr_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c","delta_height":"","delta_width":""},emotions:{"emotions_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u043c\u0430\u0439\u043b","delta_height":"","delta_width":""},searchreplace:{"replace_desc":"\u0417\u0430\u043c\u0435\u043d\u0438\u0442\u044c","search_desc":"\u041d\u0430\u0439\u0442\u0438","delta_width":"","delta_height":""},advimage:{"delta_width":"200","image_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c/\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435","delta_height":""},advlink:{"delta_width":"200","link_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c/\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0441\u0441\u044b\u043b\u043a\u0443","delta_height":""},xhtmlxtras:{"attribs_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c/\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u044d\u043b\u0435\u043c\u0435\u043d\u0442","ins_desc":"\u0417\u0430\u043c\u0435\u043d\u0430","del_desc":"\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435","acronym_desc":"\u0410\u0431\u0431\u0440\u0435\u0432\u0438\u0430\u0446\u0438\u044f","abbr_desc":"\u0421\u043e\u043a\u0440\u0430\u0449\u0435\u043d\u0438\u0435","cite_desc":"\u0426\u0438\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435","attribs_delta_height":"","attribs_delta_width":"","ins_delta_height":"","ins_delta_width":"","del_delta_height":"","del_delta_width":"","acronym_delta_height":"","acronym_delta_width":"","abbr_delta_height":"","abbr_delta_width":"","cite_delta_height":"","cite_delta_width":""},style:{desc:"\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c CSS \u0441\u0442\u0438\u043b\u044c","delta_height":"","delta_width":""},paste:{"plaintext_mode":"Paste is now in plain text mode. Click again to toggle back to regular paste mode.","plaintext_mode_sticky":"Paste is now in plain text mode. Click again to toggle back to regular paste mode. After you paste something you will be returned to regular paste mode.","selectall_desc":"\u0412\u044b\u0434\u0435\u043b\u0438\u0442\u044c \u0432\u0441\u0435","paste_word_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0438\u0437 Word","paste_text_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043a\u0430\u043a \u0442\u0435\u043a\u0441\u0442"},"paste_dlg":{"word_title":"\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 CTRL+V \u0434\u043b\u044f \u0432\u0441\u0442\u0430\u0432\u043a\u0438 \u0442\u0435\u043a\u0441\u0442\u0430 \u0432 \u043e\u043a\u043d\u043e.","text_linebreaks":"\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u044b \u0441\u0442\u0440\u043e\u043a","text_title":"\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 CTRL+V \u0434\u043b\u044f \u0432\u0441\u0442\u0430\u0432\u043a\u0438 \u0442\u0435\u043a\u0441\u0442\u0430 \u0432 \u043e\u043a\u043d\u043e."},table:{"cellprops_delta_width":"30",cell:"\u042f\u0447\u0435\u0439\u043a\u0430",col:"\u0421\u0442\u043e\u043b\u0431\u0435\u0446",row:"\u0421\u0442\u0440\u043e\u043a\u0430",del:"\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0442\u0430\u0431\u043b\u0438\u0446\u0443","copy_row_desc":"\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443","cut_row_desc":"\u0412\u044b\u0440\u0435\u0437\u0430\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443","paste_row_after_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443 \u0441\u043d\u0438\u0437\u0443","paste_row_before_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443 \u0441\u0432\u0435\u0440\u0445\u0443","props_desc":"\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0442\u0430\u0431\u043b\u0438\u0446\u044b","cell_desc":"\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u044f\u0447\u0435\u0439\u043a\u0438","row_desc":"\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0441\u0442\u0440\u043e\u043a\u0438","merge_cells_desc":"\u041e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u044f\u0447\u0435\u0439\u043a\u0438","split_cells_desc":"\u0420\u0430\u0437\u0431\u0438\u0442\u044c \u044f\u0447\u0435\u0439\u043a\u0443","delete_col_desc":"\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0441\u0442\u043e\u043b\u0431\u0435\u0446","col_after_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u043e\u043b\u0431\u0435\u0446 \u0441\u043f\u0440\u0430\u0432\u0430","col_before_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u043e\u043b\u0431\u0435\u0446 \u0441\u043b\u0435\u0432\u0430","delete_row_desc":"\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443","row_after_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443 \u0441\u043d\u0438\u0437\u0443","row_before_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443 \u0441\u0432\u0435\u0440\u0445\u0443",desc:"\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435/\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0442\u0430\u0431\u043b\u0438\u0446\u044b","merge_cells_delta_height":"","merge_cells_delta_width":"","table_delta_height":"","table_delta_width":"","cellprops_delta_height":"","rowprops_delta_height":"","rowprops_delta_width":""},autosave:{"warning_message":"\u0412\u0441\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u043d\u044b\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0431\u0443\u0434\u0443\u0442 \u0443\u0442\u0435\u0440\u044f\u043d\u044b.\n\n\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f?","restore_content":"\u0412\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435","unload_msg":"\u041f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u043d\u044b\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0431\u0443\u0434\u0443\u0442 \u0443\u0442\u0435\u0440\u044f\u043d\u044b, \u0435\u0441\u043b\u0438 \u0412\u044b \u0443\u0439\u0434\u0435\u0442\u0435 \u0441 \u044d\u0442\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b."},fullscreen:{desc:"\u041f\u043e\u043b\u043d\u043e\u044d\u043a\u0440\u0430\u043d\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c"},media:{"delta_height":"",edit:"\u0421\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u043a\u043b\u0438\u043f\u0430",desc:"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c/\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u043a\u043b\u0438\u043f","delta_width":""},fullpage:{desc:"\u0421\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430","delta_width":"","delta_height":""},template:{desc:"\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0448\u0430\u0431\u043b\u043e\u043d"},visualchars:{desc:"\u0412\u0441\u0435 \u0437\u043d\u0430\u043a\u0438"},spellchecker:{desc:"\u041f\u0440\u0430\u0432\u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435",menu:"\u0421\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043f\u0440\u0430\u0432\u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f","ignore_word":"\u041f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u0442\u044c","ignore_words":"\u041f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0432\u0441\u0435",langs:"\u042f\u0437\u044b\u043a\u0438",wait:"\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u043e\u0434\u043e\u0436\u0434\u0438\u0442\u0435...",sug:"\u0412\u0430\u0440\u0438\u0430\u043d\u0442\u044b","no_sug":"\u041d\u0435\u0442 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432","no_mpell":"\u041e\u0448\u0438\u0431\u043e\u043a \u043d\u0435 \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u043e.","learn_word":"\u0417\u0430\u043f\u043e\u043c\u043d\u0438\u0442\u044c \u0441\u043b\u043e\u0432\u043e"},pagebreak:{desc:"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0440\u0430\u0437\u0440\u044b\u0432 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b"},advlist:{types:"\u0421\u0438\u043c\u0432\u043e\u043b\u044b",def:"\u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0435","lower_alpha":"\u0421\u0442\u0440\u043e\u0447\u043d\u044b\u0435 \u043b\u0430\u0442\u0438\u043d\u0441\u043a\u0438\u0435 \u0431\u0443\u043a\u0432\u044b","lower_greek":"\u0421\u0442\u0440\u043e\u0447\u043d\u044b\u0435 \u0433\u0440\u0435\u0447\u0435\u0441\u043a\u0438\u0435 \u0431\u0443\u043a\u0432\u044b","lower_roman":"\u0421\u0442\u0440\u043e\u0447\u043d\u044b\u0435 \u0440\u0438\u043c\u0441\u043a\u0438\u0435 \u0446\u0438\u0444\u0440\u044b","upper_alpha":"\u0417\u0430\u0433\u043b\u0430\u0432\u043d\u044b\u0435 \u043b\u0430\u0442\u0438\u043d\u0441\u043a\u0438\u0435 \u0431\u0443\u043a\u0432\u044b","upper_roman":"\u0417\u0430\u0433\u043b\u0430\u0432\u043d\u044b\u0435 \u0440\u0438\u043c\u0441\u043a\u0438\u0435 \u0446\u0438\u0444\u0440\u044b",circle:"\u041e\u043a\u0440\u0443\u0436\u043d\u043e\u0441\u0442\u0438",disc:"\u041a\u0440\u0443\u0433\u0438",square:"\u041a\u0432\u0430\u0434\u0440\u0430\u0442\u044b"},colors:{"333300":"\u0422\u0451\u043c\u043d\u043e-\u043e\u043b\u0438\u0432\u043a\u043e\u0432\u044b\u0439","993300":"\u0411\u0438\u0441\u043c\u0430\u0440\u043a-\u0444\u0443\u0440\u0438\u043e\u0437\u043e","000000":"\u0427\u0435\u0440\u043d\u044b\u0439","003300":"\u0422\u0435\u043c\u043d\u043e-\u0437\u0435\u043b\u0435\u043d\u044b\u0439","003366":"\u0422\u0451\u043c\u043d\u0430\u044f \u043b\u0430\u0437\u0443\u0440\u044c","000080":"\u0422\u0451\u043c\u043d\u043e-\u0441\u0438\u043d\u0438\u0439","333399":"\u0418\u043d\u0434\u0438\u0433\u043e","333333":"\u041e\u0447\u0435\u043d\u044c \u0442\u0451\u043c\u043d\u043e-\u0441\u0435\u0440\u044b\u0439","800000":"\u0422\u0451\u043c\u043d\u043e-\u0431\u043e\u0440\u0434\u043e\u0432\u044b\u0439",FF6600:"\u041e\u0440\u0430\u043d\u0436\u0435\u0432\u044b\u0439","808000":"\u041e\u043b\u0438\u0432\u043a\u043e\u0432\u044b\u0439","008000":"\u0412\u043b\u044e\u0431\u043b\u0435\u043d\u043d\u043e\u0439 \u0436\u0430\u0431\u044b","008080":"C\u0438\u043d\u0435-\u0437\u0435\u043b\u0435\u043d\u044b\u0439","0000FF":"\u0421\u0438\u043d\u0438\u0439","666699":"\u0421\u0435\u0440\u043e-\u0433\u043e\u043b\u0443\u0431\u043e\u0439","808080":"\u0421\u0435\u0440\u044b\u0439",FF0000:"\u041a\u0440\u0430\u0441\u043d\u044b\u0439",FF9900:"\u042f\u043d\u0442\u0430\u0440\u043d\u044b\u0439","99CC00":"\u0416\u0451\u043b\u0442\u043e-\u0437\u0435\u043b\u0451\u043d\u044b\u0439","339966":"\u0411\u0438\u0440\u044e\u0437\u043e\u0432\u044b\u0439","33CCCC":"\u042f\u0439\u0446\u0430 \u0434\u0440\u043e\u0437\u0434\u0430","3366FF":"\u041a\u043e\u0440\u043e\u043b\u0435\u0432\u0441\u043a\u0438\u0439 \u0441\u0438\u043d\u0438\u0439","800080":"\u0424\u0438\u043e\u043b\u0435\u0442\u043e\u0432\u043e-\u0431\u0430\u043a\u043b\u0430\u0436\u0430\u043d\u043d\u044b\u0439","999999":"\u041a\u0432\u0430\u0440\u0446\u0435\u0432\u044b\u0439",FF00FF:"\u041f\u0443\u0440\u043f\u0443\u0440\u043d\u044b\u0439",FFCC00:"\u0417\u043e\u043b\u043e\u0442\u043e\u0439",FFFF00:"\u0416\u0435\u043b\u0442\u044b\u0439","00FF00":"\u0417\u0435\u043b\u0435\u043d\u044b\u0439","00FFFF":"\u0426\u0438\u0430\u043d","00CCFF":"\u041d\u0435\u0431\u0435\u0441\u043d\u044b\u0439","993366":"\u0420\u043e\u0437\u043e\u0432\u0430\u0442\u043e-\u043b\u0438\u043b\u043e\u0432\u044b\u0439",C0C0C0:"\u0421\u0435\u0440\u0435\u0431\u0440\u0438\u0441\u0442\u044b\u0439",FF99CC:"\u0420\u043e\u0437\u043e\u0432\u044b\u0439",FFCC99:"\u041e\u0440\u0430\u043d\u0436\u0435\u0432\u043e-\u043f\u0435\u0440\u0441\u0438\u043a\u043e\u0432\u044b\u0439",FFFF99:"\u0412\u0435\u0440\u0434\u0435\u043f\u0435\u0448\u0435\u0432\u044b\u0439",CCFFCC:"\u0417\u0435\u043b\u0435\u043d\u043e\u0433\u043e \u0447\u0430\u044f",CCFFFF:"\u0411\u043b\u0435\u0434\u043d\u043e-\u0441\u0438\u043d\u0438\u0439","99CCFF":"\u0421\u0432\u0435\u0442\u043b\u043e-\u043d\u0435\u0431\u0435\u0441\u043d\u044b\u0439",CC99FF:"\u0424\u0438\u0430\u043b\u043a\u043e\u0432\u044b\u0439",FFFFFF:"\u0411\u0435\u043b\u044b\u0439"},aria:{"rich_text_area":"\u0412\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440"},wordcount:{words:"\u0421\u043b\u043e\u0432:"}}}); \ No newline at end of file
+tinyMCE.addI18n({ru:{common:{"more_colors":"\u0414\u0440\u0443\u0433\u0438\u0435 \u0446\u0432\u0435\u0442\u0430...","invalid_data":"\u041e\u0448\u0438\u0431\u043a\u0430: \u0412\u0432\u0435\u0434\u0435\u043d\u043e \u043d\u0435\u0432\u0435\u0440\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435, \u043e\u043d\u043e \u043e\u0442\u043c\u0435\u0447\u0435\u043d\u043e \u043a\u0440\u0430\u0441\u043d\u044b\u043c.","popup_blocked":"\u0411\u043b\u043e\u043a\u0438\u0440\u0430\u0442\u043e\u0440 \u0432\u0441\u043f\u043b\u044b\u0432\u0430\u044e\u0449\u0438\u0445 \u043e\u043a\u043e\u043d \u0437\u0430\u043a\u0440\u044b\u043b \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0435 \u043e\u043a\u043d\u043e. \u0414\u043b\u044f \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b, \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u0435 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0443 \u043d\u0430 \u044d\u0442\u043e\u043c \u0441\u0430\u0439\u0442\u0435.","clipboard_no_support":"\u041d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0412\u0430\u0448\u0438\u043c \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u043e\u043c, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0433\u043e\u0440\u044f\u0447\u0438\u0435 \u043a\u043b\u0430\u0432\u0438\u0448\u0438.","clipboard_msg":"\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435, \u0432\u044b\u0440\u0435\u0437\u043a\u0430 \u0438 \u0432\u0441\u0442\u0430\u0432\u043a\u0430 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u0432 Firefox. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u043a\u043b\u0430\u0432\u0438\u0448\u0438: Ctrl C \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c, Ctrl V \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u044c. \u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e?","not_set":"- \u041d\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e -","class_name":"\u041a\u043b\u0430\u0441\u0441",browse:"\u041e\u0431\u0437\u043e\u0440",close:"\u0417\u0430\u043a\u0440\u044b\u0442\u044c",cancel:"\u041e\u0442\u043c\u0435\u043d\u0438\u0442\u044c",update:"\u041e\u0431\u043d\u043e\u0432\u0438\u0442\u044c",insert:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c",apply:"\u041f\u0440\u0438\u043c\u0435\u043d\u0438\u0442\u044c","edit_confirm":"\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c WYSIWYG \u0440\u0435\u0436\u0438\u043c \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043f\u043e\u043b\u044f?","invalid_data_number":"{#field} - \u0443\u043a\u0430\u0436\u0438\u0442\u0435 \u0447\u0438\u0441\u043b\u043e","invalid_data_min":"{#field} - \u0443\u043a\u0430\u0436\u0438\u0442\u0435 \u0447\u0438\u0441\u043b\u043e \u0431\u043e\u043b\u044c\u0448\u0435 {#min}","invalid_data_size":"{#field} - \u0443\u043a\u0430\u0436\u0438\u0442\u0435 \u0447\u0438\u0441\u043b\u043e \u0438\u043b\u0438 \u043f\u0440\u043e\u0446\u0435\u043d\u0442",value:"(\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435)"},contextmenu:{full:"\u041f\u043e \u0448\u0438\u0440\u0438\u043d\u0435",right:"\u041f\u043e \u043f\u0440\u0430\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e",center:"\u041f\u043e \u0446\u0435\u043d\u0442\u0440\u0443",left:"\u041f\u043e \u043b\u0435\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e",align:"\u0412\u044b\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u043d\u0438\u0435"},insertdatetime:{"day_short":"\u0432\u0441,\u043f\u043d,\u0432\u0442,\u0441\u0440,\u0447\u0442,\u043f\u0442,\u0441\u0431,\u0432\u0441","day_long":"\u0432\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435,\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a,\u0432\u0442\u043e\u0440\u043d\u0438\u043a,\u0441\u0440\u0435\u0434\u0430,\u0447\u0435\u0442\u0432\u0435\u0440\u0433,\u043f\u044f\u0442\u043d\u0438\u0446\u0430,\u0441\u0443\u0431\u0431\u043e\u0442\u0430,\u0432\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435","months_short":"\u044f\u043d\u0432,\u0444\u0435\u0432,\u043c\u0430\u0440\u0442,\u0430\u043f\u0440,\u043c\u0430\u0439,\u0438\u044e\u043d\u044c,\u0438\u044e\u043b\u044c,\u0430\u0432\u0433,\u0441\u0435\u043d,\u043e\u043a\u0442,\u043d\u043e\u044f,\u0434\u0435\u043a","months_long":"\u044f\u043d\u0432\u0430\u0440\u044c,\u0444\u0435\u0432\u0440\u0430\u043b\u044c,\u043c\u0430\u0440\u0442,\u0430\u043f\u0440\u0435\u043b\u044c,\u043c\u0430\u0439,\u0438\u044e\u043d\u044c,\u0438\u044e\u043b\u044c,\u0430\u0432\u0433\u0443\u0441\u0442,\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044c,\u043e\u043a\u0442\u044f\u0431\u0440\u044c,\u043d\u043e\u044f\u0431\u0440\u044c,\u0434\u0435\u043a\u0430\u0431\u0440\u044c","inserttime_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432\u0440\u0435\u043c\u044f","insertdate_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0434\u0430\u0442\u0443","time_fmt":"%H:%M:%S","date_fmt":"%d.%m.%Y"},print:{"print_desc":"\u041f\u0435\u0447\u0430\u0442\u044c"},preview:{"preview_desc":"\u041f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440"},directionality:{"rtl_desc":"\u041d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u043f\u0440\u0430\u0432\u0430 \u043d\u0430\u043b\u0435\u0432\u043e","ltr_desc":"\u041d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u043b\u0435\u0432\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u043e"},layer:{content:"\u041d\u043e\u0432\u044b\u0439 \u0441\u043b\u043e\u0439","absolute_desc":"\u0410\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u043e\u0435 \u043f\u043e\u0437\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435","backward_desc":"\u041d\u0430 \u0437\u0430\u0434\u043d\u0438\u0439 \u043f\u043b\u0430\u043d","forward_desc":"\u041d\u0430 \u043f\u0435\u0440\u0435\u0434\u043d\u0438\u0439 \u043f\u043b\u0430\u043d","insertlayer_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u043b\u043e\u0439"},save:{"save_desc":"\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c","cancel_desc":"\u041e\u0442\u043c\u0435\u043d\u0438\u0442\u044c \u0432\u0441\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f"},nonbreaking:{"nonbreaking_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043d\u0435\u0440\u0430\u0437\u0440\u044b\u0432\u043d\u044b\u0439 \u043f\u0440\u043e\u0431\u0435\u043b"},iespell:{download:"ieSpell \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d. \u0416\u0435\u043b\u0430\u0435\u0442\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c?","iespell_desc":"\u041f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u043e\u0440\u0444\u043e\u0433\u0440\u0430\u0444\u0438\u044e"},advhr:{"advhr_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c","delta_height":"","delta_width":""},emotions:{"emotions_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u043c\u0430\u0439\u043b","delta_height":"","delta_width":""},searchreplace:{"replace_desc":"\u0417\u0430\u043c\u0435\u043d\u0438\u0442\u044c","search_desc":"\u041d\u0430\u0439\u0442\u0438","delta_width":"","delta_height":""},advimage:{"delta_width":"200","image_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c/\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435","delta_height":""},advlink:{"delta_width":"200","link_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c/\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0441\u0441\u044b\u043b\u043a\u0443","delta_height":""},xhtmlxtras:{"attribs_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c/\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u044d\u043b\u0435\u043c\u0435\u043d\u0442","ins_desc":"\u0417\u0430\u043c\u0435\u043d\u0430","del_desc":"\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435","acronym_desc":"\u0410\u0431\u0431\u0440\u0435\u0432\u0438\u0430\u0446\u0438\u044f","abbr_desc":"\u0421\u043e\u043a\u0440\u0430\u0449\u0435\u043d\u0438\u0435","cite_desc":"\u0426\u0438\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435","attribs_delta_height":"","attribs_delta_width":"","ins_delta_height":"","ins_delta_width":"","del_delta_height":"","del_delta_width":"","acronym_delta_height":"","acronym_delta_width":"","abbr_delta_height":"","abbr_delta_width":"","cite_delta_height":"","cite_delta_width":""},style:{desc:"\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c CSS \u0441\u0442\u0438\u043b\u044c","delta_height":"","delta_width":""},paste:{"plaintext_mode":"Paste is now in plain text mode. Click again to toggle back to regular paste mode.","plaintext_mode_sticky":"Paste is now in plain text mode. Click again to toggle back to regular paste mode. After you paste something you will be returned to regular paste mode.","selectall_desc":"\u0412\u044b\u0434\u0435\u043b\u0438\u0442\u044c \u0432\u0441\u0435","paste_word_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0438\u0437 Word","paste_text_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043a\u0430\u043a \u0442\u0435\u043a\u0441\u0442"},"paste_dlg":{"word_title":"\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 CTRL+V \u0434\u043b\u044f \u0432\u0441\u0442\u0430\u0432\u043a\u0438 \u0442\u0435\u043a\u0441\u0442\u0430 \u0432 \u043e\u043a\u043d\u043e.","text_linebreaks":"\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u044b \u0441\u0442\u0440\u043e\u043a","text_title":"\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 CTRL+V \u0434\u043b\u044f \u0432\u0441\u0442\u0430\u0432\u043a\u0438 \u0442\u0435\u043a\u0441\u0442\u0430 \u0432 \u043e\u043a\u043d\u043e."},table:{"cellprops_delta_width":"30",cell:"\u042f\u0447\u0435\u0439\u043a\u0430",col:"\u0421\u0442\u043e\u043b\u0431\u0435\u0446",row:"\u0421\u0442\u0440\u043e\u043a\u0430",del:"\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0442\u0430\u0431\u043b\u0438\u0446\u0443","copy_row_desc":"\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443","cut_row_desc":"\u0412\u044b\u0440\u0435\u0437\u0430\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443","paste_row_after_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443 \u0441\u043d\u0438\u0437\u0443","paste_row_before_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443 \u0441\u0432\u0435\u0440\u0445\u0443","props_desc":"\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0442\u0430\u0431\u043b\u0438\u0446\u044b","cell_desc":"\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u044f\u0447\u0435\u0439\u043a\u0438","row_desc":"\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0441\u0442\u0440\u043e\u043a\u0438","merge_cells_desc":"\u041e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u044f\u0447\u0435\u0439\u043a\u0438","split_cells_desc":"\u0420\u0430\u0437\u0431\u0438\u0442\u044c \u044f\u0447\u0435\u0439\u043a\u0443","delete_col_desc":"\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0441\u0442\u043e\u043b\u0431\u0435\u0446","col_after_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u043e\u043b\u0431\u0435\u0446 \u0441\u043f\u0440\u0430\u0432\u0430","col_before_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u043e\u043b\u0431\u0435\u0446 \u0441\u043b\u0435\u0432\u0430","delete_row_desc":"\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443","row_after_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443 \u0441\u043d\u0438\u0437\u0443","row_before_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0442\u0440\u043e\u043a\u0443 \u0441\u0432\u0435\u0440\u0445\u0443",desc:"\u0414\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435/\u0418\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0442\u0430\u0431\u043b\u0438\u0446\u044b","merge_cells_delta_height":"","merge_cells_delta_width":"","table_delta_height":"","table_delta_width":"","cellprops_delta_height":"","rowprops_delta_height":"","rowprops_delta_width":""},autosave:{"warning_message":"\u0412\u0441\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u043d\u044b\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0431\u0443\u0434\u0443\u0442 \u0443\u0442\u0435\u0440\u044f\u043d\u044b.\n\n\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u044c \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f?","restore_content":"\u0412\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435","unload_msg":"\u041f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u043d\u044b\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0431\u0443\u0434\u0443\u0442 \u0443\u0442\u0435\u0440\u044f\u043d\u044b, \u0435\u0441\u043b\u0438 \u0412\u044b \u0443\u0439\u0434\u0435\u0442\u0435 \u0441 \u044d\u0442\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b."},fullscreen:{desc:"\u041f\u043e\u043b\u043d\u043e\u044d\u043a\u0440\u0430\u043d\u043d\u044b\u0439 \u0440\u0435\u0436\u0438\u043c"},media:{"delta_height":"",edit:"\u0421\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u043a\u043b\u0438\u043f\u0430",desc:"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c/\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u043a\u043b\u0438\u043f","delta_width":""},fullpage:{desc:"\u0421\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430","delta_width":"","delta_height":""},template:{desc:"\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0448\u0430\u0431\u043b\u043e\u043d"},visualchars:{desc:"\u0412\u0441\u0435 \u0437\u043d\u0430\u043a\u0438"},spellchecker:{desc:"\u041f\u0440\u0430\u0432\u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435",menu:"\u0421\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043f\u0440\u0430\u0432\u043e\u043f\u0438\u0441\u0430\u043d\u0438\u044f","ignore_word":"\u041f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u0442\u044c","ignore_words":"\u041f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0432\u0441\u0435",langs:"\u042f\u0437\u044b\u043a\u0438",wait:"\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u043f\u043e\u0434\u043e\u0436\u0434\u0438\u0442\u0435...",sug:"\u0412\u0430\u0440\u0438\u0430\u043d\u0442\u044b","no_sug":"\u041d\u0435\u0442 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432","no_mpell":"\u041e\u0448\u0438\u0431\u043e\u043a \u043d\u0435 \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u043e.","learn_word":"\u0417\u0430\u043f\u043e\u043c\u043d\u0438\u0442\u044c \u0441\u043b\u043e\u0432\u043e"},pagebreak:{desc:"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0440\u0430\u0437\u0440\u044b\u0432 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b"},advlist:{types:"\u0421\u0438\u043c\u0432\u043e\u043b\u044b",def:"\u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0435","lower_alpha":"\u0421\u0442\u0440\u043e\u0447\u043d\u044b\u0435 \u043b\u0430\u0442\u0438\u043d\u0441\u043a\u0438\u0435 \u0431\u0443\u043a\u0432\u044b","lower_greek":"\u0421\u0442\u0440\u043e\u0447\u043d\u044b\u0435 \u0433\u0440\u0435\u0447\u0435\u0441\u043a\u0438\u0435 \u0431\u0443\u043a\u0432\u044b","lower_roman":"\u0421\u0442\u0440\u043e\u0447\u043d\u044b\u0435 \u0440\u0438\u043c\u0441\u043a\u0438\u0435 \u0446\u0438\u0444\u0440\u044b","upper_alpha":"\u0417\u0430\u0433\u043b\u0430\u0432\u043d\u044b\u0435 \u043b\u0430\u0442\u0438\u043d\u0441\u043a\u0438\u0435 \u0431\u0443\u043a\u0432\u044b","upper_roman":"\u0417\u0430\u0433\u043b\u0430\u0432\u043d\u044b\u0435 \u0440\u0438\u043c\u0441\u043a\u0438\u0435 \u0446\u0438\u0444\u0440\u044b",circle:"\u041e\u043a\u0440\u0443\u0436\u043d\u043e\u0441\u0442\u0438",disc:"\u041a\u0440\u0443\u0433\u0438",square:"\u041a\u0432\u0430\u0434\u0440\u0430\u0442\u044b"},colors:{"333300":"\u0422\u0451\u043c\u043d\u043e-\u043e\u043b\u0438\u0432\u043a\u043e\u0432\u044b\u0439","993300":"\u0411\u0438\u0441\u043c\u0430\u0440\u043a-\u0444\u0443\u0440\u0438\u043e\u0437\u043e","000000":"\u0427\u0435\u0440\u043d\u044b\u0439","003300":"\u0422\u0435\u043c\u043d\u043e-\u0437\u0435\u043b\u0435\u043d\u044b\u0439","003366":"\u0422\u0451\u043c\u043d\u0430\u044f \u043b\u0430\u0437\u0443\u0440\u044c","000080":"\u0422\u0451\u043c\u043d\u043e-\u0441\u0438\u043d\u0438\u0439","333399":"\u0418\u043d\u0434\u0438\u0433\u043e","333333":"\u041e\u0447\u0435\u043d\u044c \u0442\u0451\u043c\u043d\u043e-\u0441\u0435\u0440\u044b\u0439","800000":"\u0422\u0451\u043c\u043d\u043e-\u0431\u043e\u0440\u0434\u043e\u0432\u044b\u0439",FF6600:"\u041e\u0440\u0430\u043d\u0436\u0435\u0432\u044b\u0439","808000":"\u041e\u043b\u0438\u0432\u043a\u043e\u0432\u044b\u0439","008000":"\u0412\u043b\u044e\u0431\u043b\u0435\u043d\u043d\u043e\u0439 \u0436\u0430\u0431\u044b","008080":"C\u0438\u043d\u0435-\u0437\u0435\u043b\u0435\u043d\u044b\u0439","0000FF":"\u0421\u0438\u043d\u0438\u0439","666699":"\u0421\u0435\u0440\u043e-\u0433\u043e\u043b\u0443\u0431\u043e\u0439","808080":"\u0421\u0435\u0440\u044b\u0439",FF0000:"\u041a\u0440\u0430\u0441\u043d\u044b\u0439",FF9900:"\u042f\u043d\u0442\u0430\u0440\u043d\u044b\u0439","99CC00":"\u0416\u0451\u043b\u0442\u043e-\u0437\u0435\u043b\u0451\u043d\u044b\u0439","339966":"\u0411\u0438\u0440\u044e\u0437\u043e\u0432\u044b\u0439","33CCCC":"\u042f\u0439\u0446\u0430 \u0434\u0440\u043e\u0437\u0434\u0430","3366FF":"\u041a\u043e\u0440\u043e\u043b\u0435\u0432\u0441\u043a\u0438\u0439 \u0441\u0438\u043d\u0438\u0439","800080":"\u0424\u0438\u043e\u043b\u0435\u0442\u043e\u0432\u043e-\u0431\u0430\u043a\u043b\u0430\u0436\u0430\u043d\u043d\u044b\u0439","999999":"\u041a\u0432\u0430\u0440\u0446\u0435\u0432\u044b\u0439",FF00FF:"\u041f\u0443\u0440\u043f\u0443\u0440\u043d\u044b\u0439",FFCC00:"\u0417\u043e\u043b\u043e\u0442\u043e\u0439",FFFF00:"\u0416\u0435\u043b\u0442\u044b\u0439","00FF00":"\u0417\u0435\u043b\u0435\u043d\u044b\u0439","00FFFF":"\u0426\u0438\u0430\u043d","00CCFF":"\u041d\u0435\u0431\u0435\u0441\u043d\u044b\u0439","993366":"\u0420\u043e\u0437\u043e\u0432\u0430\u0442\u043e-\u043b\u0438\u043b\u043e\u0432\u044b\u0439",C0C0C0:"\u0421\u0435\u0440\u0435\u0431\u0440\u0438\u0441\u0442\u044b\u0439",FF99CC:"\u0420\u043e\u0437\u043e\u0432\u044b\u0439",FFCC99:"\u041e\u0440\u0430\u043d\u0436\u0435\u0432\u043e-\u043f\u0435\u0440\u0441\u0438\u043a\u043e\u0432\u044b\u0439",FFFF99:"\u0412\u0435\u0440\u0434\u0435\u043f\u0435\u0448\u0435\u0432\u044b\u0439",CCFFCC:"\u0417\u0435\u043b\u0435\u043d\u043e\u0433\u043e \u0447\u0430\u044f",CCFFFF:"\u0411\u043b\u0435\u0434\u043d\u043e-\u0441\u0438\u043d\u0438\u0439","99CCFF":"\u0421\u0432\u0435\u0442\u043b\u043e-\u043d\u0435\u0431\u0435\u0441\u043d\u044b\u0439",CC99FF:"\u0424\u0438\u0430\u043b\u043a\u043e\u0432\u044b\u0439",FFFFFF:"\u0411\u0435\u043b\u044b\u0439"},aria:{"rich_text_area":"\u0412\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440"},wordcount:{words:"\u0421\u043b\u043e\u0432:"}}}); \ No newline at end of file
diff --git a/program/js/tiny_mce/langs/sk.js b/program/js/tiny_mce/langs/sk.js
index d3398ba1a..f25f268ac 100644
--- a/program/js/tiny_mce/langs/sk.js
+++ b/program/js/tiny_mce/langs/sk.js
@@ -1 +1 @@
-tinyMCE.addI18n({sk:{common:{"more_colors":"Viac farieb...","invalid_data":"Chyba: Boli zadan\u00e9 neplatn\u00e9 hodnoty a tieto boli ozna\u010den\u00e9 \u010dervenou farbou.","popup_blocked":"Blokovanie vyskakovac\u00edch okien neumo\u017enilo otvori\u0165 okno, ktor\u00e9 poskytuje funk\u010dnos\u0165 aplik\u00e1cie. Pre pln\u00e9 vyu\u017eitie mo\u017enost\u00ed aplik\u00e1cie mus\u00edte vypn\u00fa\u0165 blokovanie vyskakovac\u00edch okien pre tento web.","clipboard_no_support":"T\u00e1to funkcia nie je va\u0161\u00edm prehliada\u010dom podporovan\u00e1. Pou\u017eite namiesto toho kl\u00e1vesov\u00fa skratku.","clipboard_msg":"Funkcie kop\u00edrova\u0165/vystrihn\u00fa\u0165/vlo\u017ei\u0165 nie s\u00fa prehliada\u010dom Mozilla Firefox podporovan\u00e9.\nChcete viac inform\u00e1ci\u00ed o tomto probl\u00e9me?","not_set":"-- Nezadan\u00e9 --","class_name":"Trieda",browse:"Prech\u00e1dza\u0165",close:"Zavrie\u0165",cancel:"Storno",update:"Aktualizova\u0165",insert:"Vlo\u017ei\u0165",apply:"Pou\u017ei\u0165","edit_confirm":"Chcete pou\u017ei\u0165 WYSIWYG re\u017eim pre tento text?","invalid_data_number":"{#field} mus\u00ed by\u0165 \u010d\u00edslo","invalid_data_min":"{#field} mus\u00ed by\u0165 \u010d\u00edslo v\u00e4\u010d\u0161ie ako {#min}","invalid_data_size":"{#field} mus\u00ed by\u0165 \u010d\u00edslo lebo percento",value:"(hodnota)"},contextmenu:{full:"Do bloku",right:"Doprava",center:"Na stred",left:"Do\u013eava",align:"Zarovnanie"},insertdatetime:{"day_short":"Ne,Po,Ut,St,\u0160t,Pi,So,Ne","day_long":"Nede\u013ea,Pondelok,Utorok,Streda,\u0160tvrtok,Piatok,Sobota,Nede\u013ea","months_short":"Jan,Feb,Mar,Apr,M\u00e1j,J\u00fan,J\u00fal,Aug,Sep,Okt,Nov,Dec","months_long":"Janu\u00e1r,Febru\u00e1r,Marec,Apr\u00edl,M\u00e1j,J\u00fan,J\u00fal,August,September,Okt\u00f3ber,November,December","inserttime_desc":"Vlo\u017ei\u0165 \u010das","insertdate_desc":"Vlo\u017ei\u0165 d\u00e1tum","time_fmt":"%H:%M:%S","date_fmt":"%d.%m.%Y"},print:{"print_desc":"Tla\u010d"},preview:{"preview_desc":"N\u00e1h\u013ead"},directionality:{"rtl_desc":"Smer sprava do\u013eava","ltr_desc":"Smer z\u013eava doprava"},layer:{content:"Nov\u00e1 vrstva...","absolute_desc":"Prepn\u00fa\u0165 na absol\u00fatne poz\u00edciovanie","backward_desc":"Presun\u00fa\u0165 dozadu","forward_desc":"Presun\u00fa\u0165 dopredu","insertlayer_desc":"Vlo\u017ei\u0165 nov\u00fa vrstvu"},save:{"save_desc":"Ulo\u017ei\u0165","cancel_desc":"Zru\u0161i\u0165 v\u0161etky zmeny"},nonbreaking:{"nonbreaking_desc":"Vlo\u017ei\u0165 nerozdelite\u013en\u00fa medzeru"},iespell:{download:"Pr\u00edtomnos\u0165 slovn\u00edkaieSpell nebola zisten\u00e1. Chcete slovn\u00edk nain\u0161talova\u0165?","iespell_desc":"Spusti\u0165 kontrolu pravopisu"},advhr:{"advhr_desc":"Vodorovn\u00fd odde\u013eova\u010d","delta_height":"","delta_width":""},emotions:{"emotions_desc":"Emotikony","delta_height":"","delta_width":""},searchreplace:{"replace_desc":"H\u013eada\u0165 a nahradi\u0165","search_desc":"H\u013eada\u0165","delta_width":"","delta_height":""},advimage:{"delta_width":"40","image_desc":"Vlo\u017ei\u0165/upravi\u0165 obr\u00e1zok","delta_height":""},advlink:{"link_desc":"Vlo\u017ei\u0165/upravi\u0165 odkaz","delta_height":"","delta_width":""},xhtmlxtras:{"attribs_desc":"Vlo\u017ei\u0165/upravi\u0165 atrib\u00faty","ins_desc":"Pridan\u00fd text","del_desc":"Odstr\u00e1nen\u00fd text","acronym_desc":"Akronym","abbr_desc":"Skratka","cite_desc":"Cit\u00e1cia","attribs_delta_height":"","attribs_delta_width":"","ins_delta_height":"","ins_delta_width":"","del_delta_height":"","del_delta_width":"","acronym_delta_height":"","acronym_delta_width":"","abbr_delta_height":"","abbr_delta_width":"","cite_delta_height":"","cite_delta_width":""},style:{"delta_width":"35",desc:"Upravi\u0165 CSS \u0161t\u00fdl","delta_height":""},paste:{"plaintext_mode":"Funkcia vlo\u017ei\u0165 je teraz v re\u017eime prost\u00fd text. Op\u00e4tovn\u00e9 kliknutie prepne t\u00fato funkciu nasp\u00e4\u0165 do norm\u00e1lneho re\u017eimu.","plaintext_mode_sticky":"Funkcia vlo\u017ei\u0165 je teraz v re\u017eime prost\u00fd text. Op\u00e4tovn\u00e9 kliknutie prepne t\u00fato funkciu nasp\u00e4\u0165 do norm\u00e1lneho re\u017eimu. Po vlo\u017een\u00ed \u010dohoko\u013evek bude t\u00e1to funkcia navr\u00e1ten\u00e1 sp\u00e4\u0165 do norm\u00e1lneho re\u017eimu.","selectall_desc":"Ozna\u010di\u0165 v\u0161etko","paste_word_desc":"Vlo\u017ei\u0165 z MS Word","paste_text_desc":"Vlo\u017ei\u0165 ako prost\u00fd text"},"paste_dlg":{"word_title":"Pou\u017eite CTRL+V pre vlo\u017eenie textu do okna.","text_linebreaks":"Zachova\u0165 zalamovanie riadkov","text_title":"Pou\u017eite CTRL+V pre vlo\u017eenie textu do okna."},table:{"table_delta_width":"50","cellprops_delta_width":"105",cell:"Bunka",col:"St\u013apec",row:"Riadok",del:"Odstr\u00e1ni\u0165 tabu\u013eku","copy_row_desc":"Kop\u00edrova\u0165 riadok tabu\u013eky","cut_row_desc":"Vystrihn\u00fa\u0165 riadok tabu\u013eky","paste_row_after_desc":"Vlo\u017ei\u0165 riadok za","paste_row_before_desc":"Vlo\u017ei\u0165 riadok pred","props_desc":"Vlastnosti tabu\u013eky","cell_desc":"Vlastnosti bunky","row_desc":"Vlastnosti riadky tabu\u013eky","merge_cells_desc":"Zl\u00fa\u010di\u0165 bunky","split_cells_desc":"Rozdeli\u0165 bunky","delete_col_desc":"Odstr\u00e1ni\u0165 st\u013apec tabu\u013eky","col_after_desc":"Vlo\u017ei\u0165 st\u013apec za","col_before_desc":"Vlo\u017ei\u0165 st\u013apec pred","delete_row_desc":"Odstr\u00e1ni\u0165 riadok tabu\u013eky","row_after_desc":"Vlo\u017ei\u0165 riadok za","row_before_desc":"Vlo\u017ei\u0165 riadok pred",desc:"Vlo\u017ei\u0165 nov\u00fa tabu\u013eku","merge_cells_delta_height":"","merge_cells_delta_width":"","table_delta_height":"","cellprops_delta_height":"","rowprops_delta_height":"","rowprops_delta_width":""},autosave:{"warning_message":"Pokia\u013e obnov\u00edte ulo\u017een\u00fd obsah, strat\u00edte t\u00fdm v\u0161etok obsah, ktor\u00fd je pr\u00e1ve v okne editora.\n\nSkuto\u010dne chcete obnovi\u0165 ulo\u017een\u00fd obsah?","restore_content":"Obnovi\u0165 automaticky ulo\u017een\u00fd obsah.","unload_msg":"Preveden\u00e9 zmeny m\u00f4\u017eu by\u0165 straten\u00e9, ak opust\u00edte t\u00fato str\u00e1nku."},fullscreen:{desc:"Prepn\u00fa\u0165 na celostr\u00e1nkov\u00e9 zobrazenie"},media:{"delta_width":"180",edit:"Upravi\u0165 m\u00e9di\u00e1",desc:"Vlo\u017ei\u0165/upravi\u0165 m\u00e9di\u00e1","delta_height":""},fullpage:{desc:"Vlastnosti dokumentu","delta_width":"","delta_height":""},template:{desc:"Vlo\u017ei\u0165 preddefinovan\u00fd obsah zo \u0161abl\u00f3ny"},visualchars:{desc:"Zobrazenie skryt\u00fdch znakov zap/vyp"},spellchecker:{desc:"Prepn\u00fa\u0165 kontrolu pravopisu",menu:"Nastavenie kontroly pravopisu","ignore_word":"Vynecha\u0165 slovo","ignore_words":"Vynecha\u0165 v\u0161etky",langs:"Jazyky",wait:"\u010cakajte pros\u00edm...",sug:"Ponuky","no_sug":"\u017diadne ponuky","no_mpell":"Bez pravopisn\u00fdch ch\u00fdb.","learn_word":"Nau\u010di\u0165 slovo"},pagebreak:{desc:"Vlo\u017ei\u0165 zalomenie str\u00e1nky."},advlist:{types:"Typ",def:"Predvolen\u00fd","lower_alpha":"Mal\u00e9 p\u00edsmen\u00e1","lower_greek":"Mal\u00e9 gr\u00e9cke p\u00edsmen\u00e1","lower_roman":"Mal\u00e9 r\u00edmske \u010d\u00edslice","upper_alpha":"Ve\u013ek\u00e9 p\u00edsmen\u00e1","upper_roman":"Ve\u013ek\u00e9 r\u00edmske \u010d\u00edslice",circle:"Kr\u00fa\u017eok",disc:"Pln\u00e9 koliesko",square:"\u0160tvor\u010dek"},colors:{"333300":"Tmavo olivov\u00e1","993300":"Tmavo oran\u017eov\u00e1","000000":"\u010cierna","003300":"Tmavo zelen\u00e1","003366":"Tmavo az\u00farov\u00e1","000080":"N\u00e1morn\u00edcka modr\u00e1","333399":"Indigo modr\u00e1","333333":"Tmavo siv\u00e1","800000":"Tmavo \u010derven\u00e1",FF6600:"Oran\u017eov\u00e1","808000":"Olivov\u00e1","008000":"Zelen\u00e1","008080":"Modrozelen\u00e1","0000FF":"Modr\u00e1","666699":"\u0160edomodr\u00e1","808080":"Siv\u00e1",FF0000:"\u010cerven\u00e1",FF9900:"Jant\u00e1rov\u00e1","99CC00":"\u017dltozelen\u00e1","339966":"Morsky zelen\u00e1","33CCCC":"Tyrkysov\u00e1","3366FF":"Kr\u00e1\u013eovsk\u00e1 modr\u00e1","800080":"Nachov\u00e1","999999":"Svetlo siv\u00e1",FF00FF:"Purpurov\u00e1",FFCC00:"Zlat\u00e1",FFFF00:"\u017dlt\u00e1","00FF00":"Limetkov\u00e1","00FFFF":"Vodov\u00e1","00CCFF":"Nebesk\u00e1 modr\u00e1","993366":"Hned\u00e1",C0C0C0:"Strieborn\u00e1",FF99CC:"Ru\u017eov\u00e1",FFCC99:"Brosky\u0148ov\u00e1",FFFF99:"Svetlo\u017elt\u00e1",CCFFCC:"Svetlo zelen\u00e1",CCFFFF:"Svetlo az\u00farov\u00e1","99CCFF":"Svetl\u00e1 nebesk\u00e1 modr\u00e1",CC99FF:"Slivkov\u00e1",FFFFFF:"Biela"},aria:{"rich_text_area":"Oblas\u0165 s form\u00e1tovan\u00fdm textom"},wordcount:{words:"Po\u010det slov: "}}}); \ No newline at end of file
+tinyMCE.addI18n({sk:{common:{"more_colors":"Viac farieb...","invalid_data":"Chyba: Boli zadan\u00e9 neplatn\u00e9 hodnoty a tieto boli ozna\u010den\u00e9 \u010dervenou farbou.","popup_blocked":"Blokovanie vyskakovac\u00edch okien neumo\u017enilo otvori\u0165 okno, ktor\u00e9 poskytuje funk\u010dnos\u0165 aplik\u00e1cie. Pre pln\u00e9 vyu\u017eitie mo\u017enost\u00ed aplik\u00e1cie mus\u00edte vypn\u00fa\u0165 blokovanie vyskakovac\u00edch okien pre tento web.","clipboard_no_support":"T\u00e1to funkcia nie je va\u0161\u00edm prehliada\u010dom podporovan\u00e1. Pou\u017eite namiesto toho kl\u00e1vesov\u00fa skratku.","clipboard_msg":"Funkcie kop\u00edrova\u0165/vystrihn\u00fa\u0165/vlo\u017ei\u0165 nie s\u00fa prehliada\u010dom Mozilla Firefox podporovan\u00e9.\nChcete viac inform\u00e1ci\u00ed o tomto probl\u00e9me?","not_set":"-- Nezadan\u00e9 --","class_name":"Trieda",browse:"Prech\u00e1dza\u0165",close:"Zavrie\u0165",cancel:"Storno",update:"Aktualizova\u0165",insert:"Vlo\u017ei\u0165",apply:"Pou\u017ei\u0165","edit_confirm":"Chcete pou\u017ei\u0165 WYSIWYG re\u017eim pre tento text?","invalid_data_number":"{#field} mus\u00ed by\u0165 \u010d\u00edslo","invalid_data_min":"{#field} mus\u00ed by\u0165 \u010d\u00edslo v\u00e4\u010d\u0161ie ako {#min}","invalid_data_size":"{#field} mus\u00ed by\u0165 \u010d\u00edslo lebo percento",value:"(hodnota)"},contextmenu:{full:"Do bloku",right:"Doprava",center:"Na stred",left:"Do\u013eava",align:"Zarovnanie"},insertdatetime:{"day_short":"Ne,Po,Ut,St,\u0160t,Pi,So,Ne","day_long":"Nede\u013ea,Pondelok,Utorok,Streda,\u0160tvrtok,Piatok,Sobota,Nede\u013ea","months_short":"Jan,Feb,Mar,Apr,M\u00e1j,J\u00fan,J\u00fal,Aug,Sep,Okt,Nov,Dec","months_long":"Janu\u00e1r,Febru\u00e1r,Marec,Apr\u00edl,M\u00e1j,J\u00fan,J\u00fal,August,September,Okt\u00f3ber,November,December","inserttime_desc":"Vlo\u017ei\u0165 \u010das","insertdate_desc":"Vlo\u017ei\u0165 d\u00e1tum","time_fmt":"%H:%M:%S","date_fmt":"%d.%m.%Y"},print:{"print_desc":"Tla\u010d"},preview:{"preview_desc":"N\u00e1h\u013ead"},directionality:{"rtl_desc":"Smer sprava do\u013eava","ltr_desc":"Smer z\u013eava doprava"},layer:{content:"Nov\u00e1 vrstva...","absolute_desc":"Prepn\u00fa\u0165 na absol\u00fatne poz\u00edciovanie","backward_desc":"Presun\u00fa\u0165 dozadu","forward_desc":"Presun\u00fa\u0165 dopredu","insertlayer_desc":"Vlo\u017ei\u0165 nov\u00fa vrstvu"},save:{"save_desc":"Ulo\u017ei\u0165","cancel_desc":"Zru\u0161i\u0165 v\u0161etky zmeny"},nonbreaking:{"nonbreaking_desc":"Vlo\u017ei\u0165 nerozdelite\u013en\u00fa medzeru"},iespell:{download:"Pr\u00edtomnos\u0165 slovn\u00edkaieSpell nebola zisten\u00e1. Chcete slovn\u00edk nain\u0161talova\u0165?","iespell_desc":"Spusti\u0165 kontrolu pravopisu"},advhr:{"advhr_desc":"Vodorovn\u00fd odde\u013eova\u010d","delta_height":"","delta_width":""},emotions:{"emotions_desc":"Emotikony","delta_height":"","delta_width":""},searchreplace:{"replace_desc":"H\u013eada\u0165 a nahradi\u0165","search_desc":"H\u013eada\u0165","delta_width":"","delta_height":""},advimage:{"delta_width":"40","image_desc":"Vlo\u017ei\u0165/upravi\u0165 obr\u00e1zok","delta_height":""},advlink:{"link_desc":"Vlo\u017ei\u0165/upravi\u0165 odkaz","delta_height":"","delta_width":""},xhtmlxtras:{"attribs_desc":"Vlo\u017ei\u0165/upravi\u0165 atrib\u00faty","ins_desc":"Pridan\u00fd text","del_desc":"Odstr\u00e1nen\u00fd text","acronym_desc":"Akronym","abbr_desc":"Skratka","cite_desc":"Cit\u00e1cia","attribs_delta_height":"","attribs_delta_width":"","ins_delta_height":"","ins_delta_width":"","del_delta_height":"","del_delta_width":"","acronym_delta_height":"","acronym_delta_width":"","abbr_delta_height":"","abbr_delta_width":"","cite_delta_height":"","cite_delta_width":""},style:{"delta_width":"35",desc:"Upravi\u0165 CSS \u0161t\u00fdl","delta_height":""},paste:{"plaintext_mode":"Funkcia vlo\u017ei\u0165 je teraz v re\u017eime prost\u00fd text. Op\u00e4tovn\u00e9 kliknutie prepne t\u00fato funkciu nasp\u00e4\u0165 do norm\u00e1lneho re\u017eimu.","plaintext_mode_sticky":"Funkcia vlo\u017ei\u0165 je teraz v re\u017eime prost\u00fd text. Op\u00e4tovn\u00e9 kliknutie prepne t\u00fato funkciu nasp\u00e4\u0165 do norm\u00e1lneho re\u017eimu. Po vlo\u017een\u00ed \u010dohoko\u013evek bude t\u00e1to funkcia navr\u00e1ten\u00e1 sp\u00e4\u0165 do norm\u00e1lneho re\u017eimu.","selectall_desc":"Ozna\u010di\u0165 v\u0161etko","paste_word_desc":"Vlo\u017ei\u0165 z MS Word","paste_text_desc":"Vlo\u017ei\u0165 ako prost\u00fd text"},"paste_dlg":{"word_title":"Pou\u017eite CTRL+V pre vlo\u017eenie textu do okna.","text_linebreaks":"Zachova\u0165 zalamovanie riadkov","text_title":"Pou\u017eite CTRL+V pre vlo\u017eenie textu do okna."},table:{"table_delta_width":"50","cellprops_delta_width":"105",cell:"Bunka",col:"St\u013apec",row:"Riadok",del:"Odstr\u00e1ni\u0165 tabu\u013eku","copy_row_desc":"Kop\u00edrova\u0165 riadok tabu\u013eky","cut_row_desc":"Vystrihn\u00fa\u0165 riadok tabu\u013eky","paste_row_after_desc":"Vlo\u017ei\u0165 riadok za","paste_row_before_desc":"Vlo\u017ei\u0165 riadok pred","props_desc":"Vlastnosti tabu\u013eky","cell_desc":"Vlastnosti bunky","row_desc":"Vlastnosti riadky tabu\u013eky","merge_cells_desc":"Zl\u00fa\u010di\u0165 bunky","split_cells_desc":"Rozdeli\u0165 bunky","delete_col_desc":"Odstr\u00e1ni\u0165 st\u013apec tabu\u013eky","col_after_desc":"Vlo\u017ei\u0165 st\u013apec za","col_before_desc":"Vlo\u017ei\u0165 st\u013apec pred","delete_row_desc":"Odstr\u00e1ni\u0165 riadok tabu\u013eky","row_after_desc":"Vlo\u017ei\u0165 riadok za","row_before_desc":"Vlo\u017ei\u0165 riadok pred",desc:"Vlo\u017ei\u0165 nov\u00fa tabu\u013eku","merge_cells_delta_height":"","merge_cells_delta_width":"","table_delta_height":"","cellprops_delta_height":"","rowprops_delta_height":"","rowprops_delta_width":""},autosave:{"warning_message":"Pokia\u013e obnov\u00edte ulo\u017een\u00fd obsah, strat\u00edte t\u00fdm v\u0161etok obsah, ktor\u00fd je pr\u00e1ve v okne editora.\n\nSkuto\u010dne chcete obnovi\u0165 ulo\u017een\u00fd obsah?","restore_content":"Obnovi\u0165 automaticky ulo\u017een\u00fd obsah.","unload_msg":"Preveden\u00e9 zmeny m\u00f4\u017eu by\u0165 straten\u00e9, ak opust\u00edte t\u00fato str\u00e1nku."},fullscreen:{desc:"Prepn\u00fa\u0165 na celostr\u00e1nkov\u00e9 zobrazenie"},media:{"delta_width":"180",edit:"Upravi\u0165 pripojen\u00e9 m\u00e9di\u00e1",desc:"Vlo\u017ei\u0165/upravi\u0165 m\u00e9di\u00e1","delta_height":""},fullpage:{desc:"Vlastnosti dokumentu","delta_width":"","delta_height":""},template:{desc:"Vlo\u017ei\u0165 preddefinovan\u00fd obsah zo \u0161abl\u00f3ny"},visualchars:{desc:"Zobrazenie skryt\u00fdch znakov zap/vyp"},spellchecker:{desc:"Prepn\u00fa\u0165 kontrolu pravopisu",menu:"Nastavenie kontroly pravopisu","ignore_word":"Vynecha\u0165 slovo","ignore_words":"Vynecha\u0165 v\u0161etky",langs:"Jazyky",wait:"\u010cakajte pros\u00edm...",sug:"Ponuky","no_sug":"\u017diadne ponuky","no_mpell":"Bez pravopisn\u00fdch ch\u00fdb.","learn_word":"Nau\u010di\u0165 slovo"},pagebreak:{desc:"Vlo\u017ei\u0165 zalomenie str\u00e1nky."},advlist:{types:"Typ",def:"Predvolen\u00fd","lower_alpha":"Mal\u00e9 p\u00edsmen\u00e1","lower_greek":"Mal\u00e9 gr\u00e9cke p\u00edsmen\u00e1","lower_roman":"Mal\u00e9 r\u00edmske \u010d\u00edslice","upper_alpha":"Ve\u013ek\u00e9 p\u00edsmen\u00e1","upper_roman":"Ve\u013ek\u00e9 r\u00edmske \u010d\u00edslice",circle:"Kr\u00fa\u017eok",disc:"Pln\u00e9 koliesko",square:"\u0160tvor\u010dek"},colors:{"333300":"Tmavo olivov\u00e1","993300":"Tmavo oran\u017eov\u00e1","000000":"\u010cierna","003300":"Tmavo zelen\u00e1","003366":"Tmavo az\u00farov\u00e1","000080":"N\u00e1morn\u00edcka modr\u00e1","333399":"Indigo modr\u00e1","333333":"Tmavo siv\u00e1","800000":"Tmavo \u010derven\u00e1",FF6600:"Oran\u017eov\u00e1","808000":"Olivov\u00e1","008000":"Zelen\u00e1","008080":"Modrozelen\u00e1","0000FF":"Modr\u00e1","666699":"\u0160edomodr\u00e1","808080":"Siv\u00e1",FF0000:"\u010cerven\u00e1",FF9900:"Jant\u00e1rov\u00e1","99CC00":"\u017dltozelen\u00e1","339966":"Morsky zelen\u00e1","33CCCC":"Tyrkysov\u00e1","3366FF":"Kr\u00e1\u013eovsk\u00e1 modr\u00e1","800080":"Nachov\u00e1","999999":"Svetlo siv\u00e1",FF00FF:"Purpurov\u00e1",FFCC00:"Zlat\u00e1",FFFF00:"\u017dlt\u00e1","00FF00":"Limetkov\u00e1","00FFFF":"Vodov\u00e1","00CCFF":"Nebesk\u00e1 modr\u00e1","993366":"Hned\u00e1",C0C0C0:"Strieborn\u00e1",FF99CC:"Ru\u017eov\u00e1",FFCC99:"Brosky\u0148ov\u00e1",FFFF99:"Svetlo\u017elt\u00e1",CCFFCC:"Svetlo zelen\u00e1",CCFFFF:"Svetlo az\u00farov\u00e1","99CCFF":"Svetl\u00e1 nebesk\u00e1 modr\u00e1",CC99FF:"Slivkov\u00e1",FFFFFF:"Biela"},aria:{"rich_text_area":"Oblas\u0165 s form\u00e1tovan\u00fdm textom"},wordcount:{words:"Po\u010det slov: "}}}); \ No newline at end of file
diff --git a/program/js/tiny_mce/langs/uk.js b/program/js/tiny_mce/langs/uk.js
index be34868f6..514b66be9 100644
--- a/program/js/tiny_mce/langs/uk.js
+++ b/program/js/tiny_mce/langs/uk.js
@@ -1 +1 @@
-tinyMCE.addI18n({uk:{common:{"more_colors":"\u0411\u0456\u043b\u044c\u0448\u0435 \u043a\u043e\u043b\u044c\u043e\u0440\u0456\u0432","invalid_data":"\u041f\u043e\u043c\u0438\u043b\u043a\u0430: \u0412\u0432\u0435\u0434\u0435\u043d\u043e \u043f\u043e\u043c\u0438\u043b\u043a\u043e\u0432\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044f, \u0432\u0456\u0434\u043c\u0456\u0447\u0435\u043d\u0435 \u0447\u0435\u0440\u0432\u043e\u043d\u0438\u043c.","popup_blocked":"\u0414\u0443\u0436\u0435 \u043f\u0440\u0438\u043a\u0440\u043e, \u0430\u043b\u0435 \u0432\u0430\u0448 \u0431\u0440\u0430\u0443\u0437\u0435\u0440 \u0437\u0430\u0431\u043b\u043e\u043a\u0443\u0432\u0430\u0432 \u0432\u0438\u0440\u0438\u043d\u0430\u044e\u0447\u0435 \u0432\u0456\u043a\u043d\u043e. \u0411\u0443\u0434\u044c \u043b\u0430\u0441\u043a\u0430, \u043d\u0430\u043b\u0430\u0448\u0442\u0443\u0439\u0442\u0435 \u0431\u0440\u0430\u0443\u0437\u0435\u0440 \u0442\u0430\u043a, \u0449\u043e\u0431 \u0432\u0456\u043d \u0434\u043e\u0437\u0432\u043e\u043b\u044f\u0432 \u0432\u0438\u0440\u0438\u043d\u0430\u044e\u0447\u0456 \u0432\u0456\u043a\u043d\u0430 \u0437 \u0446\u044c\u043e\u0433\u043e \u0441\u0430\u0439\u0442\u0443.","clipboard_no_support":"\u041d\u0430\u0440\u0430\u0437\u0456 \u0446\u044f \u0444\u0443\u043d\u043a\u0446\u0456\u044f \u043d\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0432 \u0432\u0430\u0448\u043e\u043c\u0443 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0456, \u0430\u043b\u0435 \u0432\u0438 \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0432\u0430\u0442\u0438 \u043a\u043b\u0430\u0432\u0456\u0430\u0442\u0443\u0440\u0443 \u0437\u0430\u043c\u0456\u0441\u0442\u044c \u0446\u044c\u043e\u0433\u043e.","clipboard_msg":"\u041a\u043e\u043f\u0456\u044e\u0432\u0430\u0442\u0438/\u0412\u0438\u0440\u0456\u0437\u0430\u0442\u0438/\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u043d\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e \u0432 Mozilla \u0442\u0430 Firefox.\n\u0412\u0430\u043c \u0446\u0456\u043a\u0430\u0432\u0430 \u0456\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0456\u044f \u043f\u0440\u043e \u0446\u0435?","not_set":"-- \u043d\u0435 \u0432\u0438\u0431\u0440\u0430\u043d\u043e --","class_name":"\u041a\u043b\u0430\u0441",browse:"\u041f\u0435\u0440\u0435\u0433\u043b\u044f\u0434",close:"\u0417\u0430\u043a\u0440\u0438\u0442\u0438",cancel:"\u0412\u0456\u0434\u043c\u0456\u043d\u0438\u0442\u0438",update:"\u041e\u043d\u043e\u0432\u0438\u0442\u0438",insert:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438",apply:"\u0417\u0430\u0441\u0442\u043e\u0441\u0443\u0432\u0430\u0442\u0438","edit_confirm":"\u0412\u0438 \u0431\u0430\u0436\u0430\u0454\u0442\u0435 \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0432\u0430\u0442\u0438 WYSIWYG \u0440\u0435\u0436\u0438\u043c \u0434\u043b\u044f \u0446\u044c\u043e\u0433\u043e \u043f\u043e\u043b\u044f?","invalid_data_number":"{#field} \u043f\u043e\u0432\u0438\u043d\u043d\u0435 \u0431\u0443\u0442\u0438 \u0447\u0438\u0441\u043b\u043e\u043c","invalid_data_min":"{#field} \u0447\u0438\u0441\u043b\u043e \u043f\u043e\u0432\u0438\u043d\u043d\u0435 \u0431\u0443\u0442\u0438 \u0431\u0456\u043b\u044c\u0448\u0435 \u043d\u0456\u0436 {#min}","invalid_data_size":"{#field} \u043f\u043e\u0432\u0438\u043d\u043d\u0435 \u0431\u0443\u0442\u0438 \u0447\u0438\u0441\u043b\u043e\u043c \u0430\u0431\u043e \u0432\u0456\u0434\u0441\u043e\u0442\u043a\u043e\u043c",value:"(value)"},contextmenu:{full:"\u041f\u043e \u0448\u0438\u0440\u0438\u043d\u0456",right:"\u041f\u043e \u043f\u0440\u0430\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e",center:"\u041f\u043e \u0446\u0435\u043d\u0442\u0440\u0443",left:"\u041f\u043e \u043b\u0456\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e",align:"\u0412\u0438\u0440\u0456\u0432\u043d\u044e\u0432\u0430\u043d\u043d\u044f"},insertdatetime:{"day_short":"\u041d\u0434,\u041f\u043d,\u0412\u0442,\u0421\u0440,\u0427\u0442,\u041f\u0442,\u0421\u0431,\u041d\u0434","day_long":"\u041d\u0435\u0434\u0456\u043b\u044f,\u041f\u043e\u043d\u0435\u0434\u0456\u043b\u043e\u043a,\u0412\u0456\u0432\u0442\u043e\u0440\u043e\u043a,\u0421\u0435\u0440\u0435\u0434\u0430,\u0427\u0435\u0442\u0432\u0435\u0440,\u041f\'\u044f\u0442\u043d\u0438\u0446\u044f,\u0421\u0443\u0431\u043e\u0442\u0430,\u041d\u0435\u0434\u0456\u043b\u044f","months_short":"\u0421\u0456\u0447,\u041b\u044e\u0442,\u0411\u0435\u0440,\u041a\u0432\u0456,\u0422\u0440\u0430,\u0427\u0435\u0440,\u041b\u0438\u043f,\u0421\u0435\u0440,\u0412\u0435\u0440,\u0416\u043e\u0432,\u041b\u0438\u0441,\u0413\u0440\u0443","months_long":"\u0421\u0456\u0447\u0435\u043d\u044c,\u041b\u044e\u0442\u0438\u0439,\u0411\u0435\u0440\u0435\u0437\u0435\u043d\u044c,\u041a\u0432\u0456\u0442\u0435\u043d\u044c,\u0422\u0440\u0430\u0432\u0435\u043d\u044c,\u0427\u0435\u0440\u0432\u0435\u043d\u044c,\u041b\u0438\u043f\u0435\u043d\u044c,\u0421\u0435\u0440\u043f\u0435\u043d\u044c,\u0412\u0435\u0440\u0435\u0441\u0435\u043d\u044c,\u0416\u043e\u0432\u0442\u0435\u043d\u044c,\u041b\u0438\u0441\u0442\u043e\u043f\u0430\u0434,\u0413\u0440\u0443\u0434\u0435\u043d\u044c","inserttime_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u0447\u0430\u0441","insertdate_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u0434\u0430\u0442\u0443","time_fmt":"%H:%M:%S","date_fmt":"%d.%m.%Y"},print:{"print_desc":"\u0414\u0440\u0443\u043a\u0443\u0432\u0430\u0442\u0438"},preview:{"preview_desc":"\u041f\u0435\u0440\u0435\u0433\u043b\u044f\u0434"},directionality:{"rtl_desc":"\u041d\u0430\u043f\u0440\u044f\u043c \u0441\u043f\u0440\u0430\u0432\u0430 \u043d\u0430\u043b\u0456\u0432\u043e","ltr_desc":"\u041d\u0430\u043f\u0440\u044f\u043c \u0437\u043b\u0456\u0432\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u043e"},layer:{content:"\u041d\u043e\u0432\u0438\u0439 \u043f\u0440\u043e\u0448\u0430\u0440\u043e\u043a...","absolute_desc":"\u041f\u0435\u0440\u0435\u043c\u0438\u043a\u043d\u0443\u0442\u0438 \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u0435 \u043f\u043e\u0437\u0438\u0446\u0456\u044e\u0432\u0430\u043d\u043d\u044f","backward_desc":"\u041f\u0435\u0440\u0435\u043c\u0456\u0441\u0442\u0438\u0442\u0438 \u043d\u0430\u0437\u0430\u0434","forward_desc":"\u041f\u0435\u0440\u0435\u043c\u0456\u0441\u0442\u0438\u0442\u0438 \u0432\u043f\u0435\u0440\u0435\u0434","insertlayer_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u043d\u043e\u0432\u0438\u0439 \u043f\u0440\u043e\u0448\u0430\u0440\u043e\u043a"},save:{"save_desc":"\u0417\u0431\u0435\u0440\u0435\u0433\u0442\u0438","cancel_desc":"\u0412\u0456\u0434\u043c\u0456\u043d\u0438\u0442\u0438 \u0432\u0441\u0456 \u0437\u043c\u0456\u043d\u0438"},nonbreaking:{"nonbreaking_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u043d\u0435\u0440\u043e\u0437\u0440\u0438\u0432\u043d\u0438\u0439 \u043f\u0440\u043e\u043c\u0456\u0436\u043e\u043a"},iespell:{download:"\u0414\u043e\u0434\u0430\u0442\u043e\u043a ieSpell \u043d\u0435 \u0437\u043d\u0430\u0439\u0434\u0435\u043d\u043e. \u0411\u0430\u0436\u0430\u0454\u0442\u0435 \u0432\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0438?","iespell_desc":"\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0438 \u043f\u0435\u0440\u0435\u0432\u0456\u0440\u043a\u0443 \u043e\u0440\u0444\u043e\u0433\u0440\u0430\u0444\u0456\u0457"},advhr:{"advhr_desc":"\u0413\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u0438\u0439 \u0440\u043e\u0437\u0434\u0456\u043b\u044c\u043d\u0438\u043a","delta_height":"","delta_width":""},emotions:{"emotions_desc":"\u0421\u043c\u0430\u0439\u043b\u0438","delta_height":"","delta_width":""},searchreplace:{"replace_desc":"\u0428\u0443\u043a\u0430\u0442\u0438/\u0417\u0430\u043c\u0456\u043d\u0438\u0442\u0438","search_desc":"\u0428\u0443\u043a\u0430\u0442\u0438","delta_width":"","delta_height":""},advimage:{"delta_width":"200","image_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438/\u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f","delta_height":""},advlink:{"delta_width":"200","link_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438/\u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f","delta_height":""},xhtmlxtras:{"attribs_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438/\u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u0438","ins_desc":"\u0412\u0441\u0442\u0430\u0432\u043a\u0430","del_desc":"\u0412\u0438\u0434\u0430\u043b\u0435\u043d\u043d\u044f","acronym_desc":"\u0410\u043a\u0440\u043e\u043d\u0456\u043c","abbr_desc":"\u0410\u0431\u0440\u0435\u0432\u0456\u0430\u0442\u0443\u0440\u0430","cite_desc":"\u0426\u0438\u0442\u0430\u0442\u0430","attribs_delta_height":"","attribs_delta_width":"","ins_delta_height":"","ins_delta_width":"","del_delta_height":"","del_delta_width":"","acronym_delta_height":"","acronym_delta_width":"","abbr_delta_height":"","abbr_delta_width":"","cite_delta_height":"","cite_delta_width":""},style:{desc:"\u0420\u0435\u0434\u0430\u0433\u0443\u0432\u0430\u0442\u0438 CSS \u0441\u0442\u0438\u043b\u044c","delta_height":"","delta_width":""},paste:{"plaintext_mode":"\u0412 \u0434\u0430\u043d\u0438\u0439 \u0447\u0430\u0441 \u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u0432 \u0440\u0435\u0436\u0438\u043c\u0456 \u0437\u0432\u0438\u0447\u0430\u0439\u043d\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0443. \u041d\u0430\u0442\u0438\u0441\u043d\u0456\u0442\u044c \u0437\u043d\u043e\u0432\u0443 \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u043c\u0438\u043a\u0430\u043d\u043d\u044f \u043d\u0430\u0437\u0430\u0434 \u0432 \u0437\u0432\u0438\u0447\u0430\u0439\u043d\u0438\u0439 \u0440\u0435\u0436\u0438\u043c \u0412\u0441\u0442\u0430\u0432\u043a\u0438.","plaintext_mode_sticky":"\u0412 \u0434\u0430\u043d\u0438\u0439 \u0447\u0430\u0441 \u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u0432 \u0440\u0435\u0436\u0438\u043c\u0456 \u0437\u0432\u0438\u0447\u0430\u0439\u043d\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0443. \u041d\u0430\u0442\u0438\u0441\u043d\u0456\u0442\u044c \u0437\u043d\u043e\u0432\u0443 \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u043c\u0438\u043a\u0430\u043d\u043d\u044f \u043d\u0430\u0437\u0430\u0434 \u0432 \u0437\u0432\u0438\u0447\u0430\u0439\u043d\u0438\u0439 \u0440\u0435\u0436\u0438\u043c \u0412\u0441\u0442\u0430\u0432\u043a\u0438.. \u041f\u0456\u0441\u043b\u044f \u0442\u043e\u0433\u043e, \u044f\u043a \u0412\u0438 \u0449\u043e-\u043d\u0435\u0431\u0443\u0434\u044c \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u0435, \u0412\u0438 \u043f\u043e\u0432\u0435\u0440\u043d\u0435\u0442\u0435\u0441\u044c \u0432 \u0437\u0432\u0438\u0447\u0430\u0439\u043d\u043c\u0439 \u0440\u0435\u0436\u0438\u043c \u0412\u0441\u0442\u0430\u0432\u043a\u0438.","selectall_desc":"\u0412\u0438\u0434\u0456\u043b\u0438\u0442\u0438 \u0432\u0441\u0435","paste_word_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u0437 Word","paste_text_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u044f\u043a \u0442\u0435\u043a\u0441\u0442"},"paste_dlg":{"word_title":"\u0412\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0439\u0442\u0435 CTRL+V \u0434\u043b\u044f \u0432\u0441\u0442\u0430\u0432\u043a\u0438 \u0442\u0435\u043a\u0441\u0442\u0443 \u0443 \u0432\u0456\u043a\u043d\u043e.","text_linebreaks":"\u0417\u0431\u0435\u0440\u0456\u0433\u0430\u0442\u0438 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438 \u0440\u044f\u0434\u043a\u0456\u0432","text_title":"\u0412\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0439\u0442\u0435 CTRL+V \u0434\u043b\u044f \u0432\u0441\u0442\u0430\u0432\u043a\u0438 \u0442\u0435\u043a\u0441\u0442\u0443 \u0443 \u0432\u0456\u043a\u043d\u043e."},table:{"cellprops_delta_width":"30",cell:"\u041a\u043e\u043c\u0456\u0440\u043a\u0430",col:"\u0421\u0442\u043e\u0432\u043f\u0435\u0446\u044c",row:"\u0420\u044f\u0434\u043e\u043a",del:"\u0412\u0438\u0434\u0430\u043b\u0438\u0442\u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u044e","copy_row_desc":"\u041a\u043e\u043f\u0456\u044e\u0432\u0430\u0442\u0438 \u0440\u044f\u0434\u043e\u043a \u0442\u0430\u0431\u043b\u0438\u0446\u0456","cut_row_desc":"\u0412\u0438\u0440\u0456\u0437\u0430\u0442\u0438 \u0440\u044f\u0434\u043e\u043a \u0442\u0430\u0431\u043b\u0438\u0446\u0456","paste_row_after_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u0440\u044f\u0434\u043e\u043a \u043f\u0456\u0441\u043b\u044f","paste_row_before_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u0440\u044f\u0434\u043e\u043a \u0434\u043e","props_desc":"\u0412\u043b\u0430\u0441\u0442\u0438\u0432\u043e\u0441\u0442\u0456 \u0442\u0430\u0431\u043b\u0438\u0446\u0456","cell_desc":"\u0412\u043b\u0430\u0441\u0442\u0438\u0432\u043e\u0441\u0442\u0456 \u043a\u043e\u043c\u0456\u0440\u043a\u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u0456","row_desc":"\u0412\u043b\u0430\u0441\u0442\u0438\u0432\u043e\u0441\u0442\u0456 \u0440\u044f\u0434\u043a\u0443 \u0442\u0430\u0431\u043b\u0438\u0446\u0456","merge_cells_desc":"\u041e\u0431\'\u0454\u0434\u043d\u0430\u0442\u0438 \u043a\u043e\u043c\u0456\u0440\u043a\u0438","split_cells_desc":"\u0420\u043e\u0437\u0434\u0456\u043b\u0438\u0442\u0438 \u043a\u043e\u043c\u0456\u0440\u043a\u0438","delete_col_desc":"\u0412\u0438\u0434\u0430\u043b\u0438\u0442\u0438 \u0441\u0442\u043e\u0432\u043f\u0435\u0446\u044c","col_after_desc":"\u0414\u043e\u0434\u0430\u0442\u0438 \u0441\u0442\u043e\u0432\u043f\u0435\u0446\u044c \u043f\u0456\u0441\u043b\u044f","col_before_desc":"\u0414\u043e\u0434\u0430\u0442\u0438 \u0441\u0442\u043e\u0432\u043f\u0435\u0446\u044c \u0434\u043e","delete_row_desc":"\u0412\u0438\u0434\u0430\u043b\u0438\u0442\u0438 \u0440\u044f\u0434\u043e\u043a","row_after_desc":"\u0414\u043e\u0434\u0430\u0442\u0438 \u0440\u044f\u0434\u043e\u043a \u043f\u0456\u0441\u043b\u044f","row_before_desc":"\u0414\u043e\u0434\u0430\u0442\u0438 \u0440\u044f\u0434\u043e\u043a \u0434\u043e",desc:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u043d\u043e\u0432\u0443 \u0442\u0430\u0431\u043b\u0438\u0446\u044e","merge_cells_delta_height":"","merge_cells_delta_width":"","table_delta_height":"","table_delta_width":"","cellprops_delta_height":"","rowprops_delta_height":"","rowprops_delta_width":""},autosave:{"warning_message":"\u042f\u043a\u0449\u043e \u0432\u0456\u0434\u043d\u043e\u0432\u0438\u0442\u0438 \u0437\u0431\u0435\u0440\u0435\u0436\u0435\u043d\u0438\u0439 \u0432\u043c\u0456\u0441\u0442, \u0442\u043e \u0432\u0438 \u0432\u0442\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u0435\u0441\u044c \u0432\u043c\u0456\u0441\u0442, \u044f\u043a\u0438\u0439 \u0432 \u0434\u0430\u043d\u0438\u0439 \u0447\u0430\u0441 \u0437\u043d\u0430\u0445\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u0432 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0456. \n\n\u0412\u0438 \u0432\u043f\u0435\u0432\u043d\u0435\u043d\u0456, \u0449\u043e \u0445\u043e\u0447\u0435\u0442\u0435 \u0432\u0456\u0434\u043d\u043e\u0432\u0438\u0442\u0438 \u0437\u0431\u0435\u0440\u0435\u0436\u0435\u043d\u0438\u0439 \u0437\u043c\u0456\u0441\u0442?.","restore_content":"\u0412\u0456\u0434\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u0437\u0431\u0435\u0440\u0435\u0436\u0435\u043d\u043e\u0433\u043e \u0432\u043c\u0456\u0441\u0442\u0443.","unload_msg":"\u0417\u043c\u0456\u043d\u0438, \u044f\u043a\u0456 \u0432\u0438 \u0437\u0440\u043e\u0431\u0438\u043b\u0438, \u0431\u0443\u0434\u0443\u0442\u044c \u0432\u0442\u0440\u0430\u0447\u0435\u043d\u0456, \u044f\u043a\u0449\u043e \u0432\u0438 \u043f\u0435\u0440\u0435\u0439\u0434\u0435\u0442\u0435 \u0437 \u0446\u0456\u0454\u0457 \u0441\u0442\u043e\u0440\u0456\u043d\u043a\u0438."},fullscreen:{desc:"\u041f\u0435\u0440\u0435\u043c\u043a\u043d\u0443\u0442\u0438 \u043d\u0430 \u0432\u0435\u0441\u044c \u0435\u043a\u0440\u0430\u043d"},media:{edit:"\u0420\u0435\u0434\u0430\u0433\u0443\u0432\u0430\u0442\u0438 \u0432\u0431\u0443\u0434\u043e\u0432\u0430\u043d\u0456 \u043c\u0435\u0434\u0456\u0430",desc:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 / \u0440\u0435\u0434\u0430\u0433\u0443\u0432\u0430\u0442\u0438 \u0432\u0431\u0443\u0434\u043e\u0432\u0430\u043d\u0456 \u043c\u0435\u0434\u0456\u0430","delta_height":"","delta_width":""},fullpage:{desc:"\u0412\u043b\u0430\u0441\u0442\u0438\u0432\u043e\u0441\u0442\u0456 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430","delta_width":"","delta_height":""},template:{desc:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u0448\u0430\u0431\u043b\u043e\u043d\u043d\u0438\u0439 \u043a\u043e\u043d\u0442\u0435\u043d\u0442"},visualchars:{desc:"\u0412\u0456\u0437\u0443\u0430\u043b\u044c\u043d\u0438\u0439 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u0441\u0438\u043c\u0432\u043e\u043b\u0456\u0432 \u0432\u0432\u0456\u043c\u043a\u043d\u0435\u043d\u043d\u044f / \u0432\u0438\u043c\u043a\u043d\u0435\u043d\u043d\u044f."},spellchecker:{desc:"\u041f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0438\u0442\u0438 \u043f\u0435\u0440\u0435\u0432\u0456\u0440\u043a\u0443",menu:"\u041d\u0430\u043b\u0430\u0448\u0442\u0443\u0432\u0430\u043d\u043d\u044f \u043f\u0435\u0440\u0435\u0432\u0456\u0440\u043a\u0438","ignore_word":"\u0406\u0433\u043d\u043e\u0440\u0443\u0432\u0430\u0442\u0438 \u0441\u043b\u043e\u0432\u043e","ignore_words":"\u0406\u0433\u043d\u043e\u0440\u0443\u0432\u0430\u0442\u0438 \u0432\u0441\u0435",langs:"\u041c\u043e\u0432\u0438",wait:"\u0411\u0443\u0434\u044c \u043b\u0430\u0441\u043a\u0430, \u0437\u0430\u0447\u0435\u043a\u0430\u0439\u0442\u0435...",sug:"\u0412\u0430\u0440\u0456\u0430\u043d\u0442\u0438","no_sug":"\u041d\u0435\u043c\u0430\u0454 \u0432\u0430\u0440\u0456\u0430\u043d\u0442\u0456\u0432","no_mpell":"\u041f\u043e\u043c\u0438\u043b\u043e\u043a \u043d\u0435 \u0437\u043d\u0430\u0439\u0434\u0435\u043d\u043e.","learn_word":"\u0417\u0430\u043f\u0430\u043c\'\u044f\u0442\u0430\u0442\u0438 \u0441\u043b\u043e\u0432\u043e"},pagebreak:{desc:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u0440\u043e\u0437\u0434\u0456\u043b\u044c\u043d\u0438\u043a \u0441\u0442\u043e\u0440\u0456\u043d\u043a\u0438."},advlist:{types:"\u0422\u0438\u043f\u0438",def:"\u0417\u0430 \u0437\u0430\u043c\u043e\u0432\u0447\u0430\u043d\u043d\u044f\u043c","lower_alpha":"Lower alpha","lower_greek":"Lower greek","lower_roman":"Lower roman","upper_alpha":"Upper alpha","upper_roman":"Upper roman",circle:"\u041a\u043e\u043b\u043e",disc:"\u0414\u0438\u0441\u043a",square:"\u041a\u0432\u0430\u0434\u0440\u0430\u0442"},colors:{"333300":"\u0422\u0435\u043c\u043d\u043e-\u043e\u043b\u0438\u0432\u043a\u043e\u0432\u0438\u0439","000000":"\u0427\u043e\u0440\u043d\u0438\u0439","003300":"\u0422\u0435\u043c\u043d\u043e-\u0437\u0435\u043b\u0435\u043d\u0438\u0439","808000":"\u041e\u043b\u0438\u0432\u043a\u043e\u0432\u0438\u0439","008000":"\u0417\u0435\u043b\u0435\u043d\u0438\u0439","0000FF":"\u0421\u0438\u043d\u0456\u0439","666699":"\u0421\u0456\u0440\u043e-\u0433\u043e\u043b\u0443\u0431\u0438\u0439","808080":"\u0421\u0456\u0440\u0438\u0439",FF0000:"\u0427\u0435\u0440\u0432\u043e\u043d\u0438\u0439","99CC00":"\u0416\u043e\u0432\u0442\u043e-\u0437\u0435\u043b\u0435\u043d\u0438\u0439","339966":"Sea green ",FFCC00:"\u0417\u043e\u043b\u043e\u0442\u0438\u0439",FFFF00:"\u0416\u043e\u0432\u0442\u0438\u0439",FF99CC:"\u0420\u043e\u0436\u0435\u0432\u0438\u0439",CC99FF:"\u0421\u043b\u0438\u0432\u043e\u0432\u0438\u0439",FFFFFF:"\u0411\u0456\u043b\u0438\u0439","993300":"Burnt orange","003366":"Dark azure","000080":"Navy Blue","333399":"Indigo","333333":"Very dark gray","800000":"Maroon",FF6600:"Orange","008080":"Teal",FF9900:"Amber","33CCCC":"Turquoise","3366FF":"Royal blue","800080":"Purple","999999":"Medium gray",FF00FF:"Magenta","00FF00":"Lime","00FFFF":"Aqua","00CCFF":"Sky blue","993366":"Brown",C0C0C0:"Silver",FFCC99:"Peach",FFFF99:"Light yellow",CCFFCC:"Pale green",CCFFFF:"Pale cyan","99CCFF":"Light sky blue"},aria:{"rich_text_area":"Rich Text Area"},wordcount:{words:"\u0421\u043b\u0456\u0432:"}}}); \ No newline at end of file
+tinyMCE.addI18n({uk:{common:{"more_colors":"\u0411\u0456\u043b\u044c\u0448\u0435 \u043a\u043e\u043b\u044c\u043e\u0440\u0456\u0432","invalid_data":"\u041f\u043e\u043c\u0438\u043b\u043a\u0430: \u0412\u0432\u0435\u0434\u0435\u043d\u043e \u043f\u043e\u043c\u0438\u043b\u043a\u043e\u0432\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044f, \u0432\u0456\u0434\u043c\u0456\u0447\u0435\u043d\u0435 \u0447\u0435\u0440\u0432\u043e\u043d\u0438\u043c.","popup_blocked":"\u0414\u0443\u0436\u0435 \u043f\u0440\u0438\u043a\u0440\u043e, \u0430\u043b\u0435 \u0432\u0430\u0448 \u0431\u0440\u0430\u0443\u0437\u0435\u0440 \u0437\u0430\u0431\u043b\u043e\u043a\u0443\u0432\u0430\u0432 \u0432\u0438\u0440\u0438\u043d\u0430\u044e\u0447\u0435 \u0432\u0456\u043a\u043d\u043e. \u0411\u0443\u0434\u044c \u043b\u0430\u0441\u043a\u0430, \u043d\u0430\u043b\u0430\u0448\u0442\u0443\u0439\u0442\u0435 \u0431\u0440\u0430\u0443\u0437\u0435\u0440 \u0442\u0430\u043a, \u0449\u043e\u0431 \u0432\u0456\u043d \u0434\u043e\u0437\u0432\u043e\u043b\u044f\u0432 \u0432\u0438\u0440\u0438\u043d\u0430\u044e\u0447\u0456 \u0432\u0456\u043a\u043d\u0430 \u0437 \u0446\u044c\u043e\u0433\u043e \u0441\u0430\u0439\u0442\u0443.","clipboard_no_support":"\u041d\u0430\u0440\u0430\u0437\u0456 \u0446\u044f \u0444\u0443\u043d\u043a\u0446\u0456\u044f \u043d\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0432 \u0432\u0430\u0448\u043e\u043c\u0443 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0456, \u0430\u043b\u0435 \u0432\u0438 \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0432\u0430\u0442\u0438 \u043a\u043b\u0430\u0432\u0456\u0430\u0442\u0443\u0440\u0443 \u0437\u0430\u043c\u0456\u0441\u0442\u044c \u0446\u044c\u043e\u0433\u043e.","clipboard_msg":"\u041a\u043e\u043f\u0456\u044e\u0432\u0430\u0442\u0438/\u0412\u0438\u0440\u0456\u0437\u0430\u0442\u0438/\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u043d\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e \u0432 Mozilla \u0442\u0430 Firefox.\n\u0412\u0430\u043c \u0446\u0456\u043a\u0430\u0432\u0430 \u0456\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0456\u044f \u043f\u0440\u043e \u0446\u0435?","not_set":"-- \u043d\u0435 \u0432\u0438\u0431\u0440\u0430\u043d\u043e --","class_name":"\u041a\u043b\u0430\u0441",browse:"\u041f\u0435\u0440\u0435\u0433\u043b\u044f\u0434",close:"\u0417\u0430\u043a\u0440\u0438\u0442\u0438",cancel:"\u0412\u0456\u0434\u043c\u0456\u043d\u0438\u0442\u0438",update:"\u041e\u043d\u043e\u0432\u0438\u0442\u0438",insert:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438",apply:"\u0417\u0430\u0441\u0442\u043e\u0441\u0443\u0432\u0430\u0442\u0438","edit_confirm":"\u0412\u0438 \u0431\u0430\u0436\u0430\u0454\u0442\u0435 \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0432\u0430\u0442\u0438 WYSIWYG \u0440\u0435\u0436\u0438\u043c \u0434\u043b\u044f \u0446\u044c\u043e\u0433\u043e \u043f\u043e\u043b\u044f?","invalid_data_number":"{#field} \u043f\u043e\u0432\u0438\u043d\u043d\u0435 \u0431\u0443\u0442\u0438 \u0447\u0438\u0441\u043b\u043e\u043c","invalid_data_min":"{#field} \u0447\u0438\u0441\u043b\u043e \u043f\u043e\u0432\u0438\u043d\u043d\u0435 \u0431\u0443\u0442\u0438 \u0431\u0456\u043b\u044c\u0448\u0435 \u043d\u0456\u0436 {#min}","invalid_data_size":"{#field} \u043f\u043e\u0432\u0438\u043d\u043d\u0435 \u0431\u0443\u0442\u0438 \u0447\u0438\u0441\u043b\u043e\u043c \u0430\u0431\u043e \u0432\u0456\u0434\u0441\u043e\u0442\u043a\u043e\u043c",value:"(\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044f)"},contextmenu:{full:"\u041f\u043e \u0448\u0438\u0440\u0438\u043d\u0456",right:"\u041f\u043e \u043f\u0440\u0430\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e",center:"\u041f\u043e \u0446\u0435\u043d\u0442\u0440\u0443",left:"\u041f\u043e \u043b\u0456\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e",align:"\u0412\u0438\u0440\u0456\u0432\u043d\u044e\u0432\u0430\u043d\u043d\u044f"},insertdatetime:{"day_short":"\u041d\u0434,\u041f\u043d,\u0412\u0442,\u0421\u0440,\u0427\u0442,\u041f\u0442,\u0421\u0431,\u041d\u0434","day_long":"\u041d\u0435\u0434\u0456\u043b\u044f,\u041f\u043e\u043d\u0435\u0434\u0456\u043b\u043e\u043a,\u0412\u0456\u0432\u0442\u043e\u0440\u043e\u043a,\u0421\u0435\u0440\u0435\u0434\u0430,\u0427\u0435\u0442\u0432\u0435\u0440,\u041f\'\u044f\u0442\u043d\u0438\u0446\u044f,\u0421\u0443\u0431\u043e\u0442\u0430,\u041d\u0435\u0434\u0456\u043b\u044f","months_short":"\u0421\u0456\u0447,\u041b\u044e\u0442,\u0411\u0435\u0440,\u041a\u0432\u0456,\u0422\u0440\u0430,\u0427\u0435\u0440,\u041b\u0438\u043f,\u0421\u0435\u0440,\u0412\u0435\u0440,\u0416\u043e\u0432,\u041b\u0438\u0441,\u0413\u0440\u0443","months_long":"\u0421\u0456\u0447\u0435\u043d\u044c,\u041b\u044e\u0442\u0438\u0439,\u0411\u0435\u0440\u0435\u0437\u0435\u043d\u044c,\u041a\u0432\u0456\u0442\u0435\u043d\u044c,\u0422\u0440\u0430\u0432\u0435\u043d\u044c,\u0427\u0435\u0440\u0432\u0435\u043d\u044c,\u041b\u0438\u043f\u0435\u043d\u044c,\u0421\u0435\u0440\u043f\u0435\u043d\u044c,\u0412\u0435\u0440\u0435\u0441\u0435\u043d\u044c,\u0416\u043e\u0432\u0442\u0435\u043d\u044c,\u041b\u0438\u0441\u0442\u043e\u043f\u0430\u0434,\u0413\u0440\u0443\u0434\u0435\u043d\u044c","inserttime_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u0447\u0430\u0441","insertdate_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u0434\u0430\u0442\u0443","time_fmt":"%H:%M:%S","date_fmt":"%d.%m.%Y"},print:{"print_desc":"\u0414\u0440\u0443\u043a\u0443\u0432\u0430\u0442\u0438"},preview:{"preview_desc":"\u041f\u0435\u0440\u0435\u0433\u043b\u044f\u0434"},directionality:{"rtl_desc":"\u041d\u0430\u043f\u0440\u044f\u043c \u0441\u043f\u0440\u0430\u0432\u0430 \u043d\u0430\u043b\u0456\u0432\u043e","ltr_desc":"\u041d\u0430\u043f\u0440\u044f\u043c \u0437\u043b\u0456\u0432\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u043e"},layer:{content:"\u041d\u043e\u0432\u0438\u0439 \u043f\u0440\u043e\u0448\u0430\u0440\u043e\u043a...","absolute_desc":"\u041f\u0435\u0440\u0435\u043c\u0438\u043a\u043d\u0443\u0442\u0438 \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u0435 \u043f\u043e\u0437\u0438\u0446\u0456\u044e\u0432\u0430\u043d\u043d\u044f","backward_desc":"\u041f\u0435\u0440\u0435\u043c\u0456\u0441\u0442\u0438\u0442\u0438 \u043d\u0430\u0437\u0430\u0434","forward_desc":"\u041f\u0435\u0440\u0435\u043c\u0456\u0441\u0442\u0438\u0442\u0438 \u0432\u043f\u0435\u0440\u0435\u0434","insertlayer_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u043d\u043e\u0432\u0438\u0439 \u043f\u0440\u043e\u0448\u0430\u0440\u043e\u043a"},save:{"save_desc":"\u0417\u0431\u0435\u0440\u0435\u0433\u0442\u0438","cancel_desc":"\u0412\u0456\u0434\u043c\u0456\u043d\u0438\u0442\u0438 \u0432\u0441\u0456 \u0437\u043c\u0456\u043d\u0438"},nonbreaking:{"nonbreaking_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u043d\u0435\u0440\u043e\u0437\u0440\u0438\u0432\u043d\u0438\u0439 \u043f\u0440\u043e\u043c\u0456\u0436\u043e\u043a"},iespell:{download:"\u0414\u043e\u0434\u0430\u0442\u043e\u043a ieSpell \u043d\u0435 \u0437\u043d\u0430\u0439\u0434\u0435\u043d\u043e. \u0411\u0430\u0436\u0430\u0454\u0442\u0435 \u0432\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0438?","iespell_desc":"\u0417\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0438 \u043f\u0435\u0440\u0435\u0432\u0456\u0440\u043a\u0443 \u043e\u0440\u0444\u043e\u0433\u0440\u0430\u0444\u0456\u0457"},advhr:{"advhr_desc":"\u0413\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u0438\u0439 \u0440\u043e\u0437\u0434\u0456\u043b\u044c\u043d\u0438\u043a","delta_height":"","delta_width":""},emotions:{"emotions_desc":"\u0421\u043c\u0430\u0439\u043b\u0438","delta_height":"","delta_width":""},searchreplace:{"replace_desc":"\u0428\u0443\u043a\u0430\u0442\u0438/\u0417\u0430\u043c\u0456\u043d\u0438\u0442\u0438","search_desc":"\u0428\u0443\u043a\u0430\u0442\u0438","delta_width":"","delta_height":""},advimage:{"delta_width":"200","image_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438/\u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f","delta_height":""},advlink:{"delta_width":"200","link_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438/\u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f","delta_height":""},xhtmlxtras:{"attribs_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438/\u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u0430\u0442\u0440\u0438\u0431\u0443\u0442\u0438","ins_desc":"\u0412\u0441\u0442\u0430\u0432\u043a\u0430","del_desc":"\u0412\u0438\u0434\u0430\u043b\u0435\u043d\u043d\u044f","acronym_desc":"\u0410\u043a\u0440\u043e\u043d\u0456\u043c","abbr_desc":"\u0410\u0431\u0440\u0435\u0432\u0456\u0430\u0442\u0443\u0440\u0430","cite_desc":"\u0426\u0438\u0442\u0430\u0442\u0430","attribs_delta_height":"","attribs_delta_width":"","ins_delta_height":"","ins_delta_width":"","del_delta_height":"","del_delta_width":"","acronym_delta_height":"","acronym_delta_width":"","abbr_delta_height":"","abbr_delta_width":"","cite_delta_height":"","cite_delta_width":""},style:{desc:"\u0420\u0435\u0434\u0430\u0433\u0443\u0432\u0430\u0442\u0438 CSS \u0441\u0442\u0438\u043b\u044c","delta_height":"","delta_width":""},paste:{"plaintext_mode":"\u0412 \u0434\u0430\u043d\u0438\u0439 \u0447\u0430\u0441 \u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u0432 \u0440\u0435\u0436\u0438\u043c\u0456 \u0437\u0432\u0438\u0447\u0430\u0439\u043d\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0443. \u041d\u0430\u0442\u0438\u0441\u043d\u0456\u0442\u044c \u0437\u043d\u043e\u0432\u0443 \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u043c\u0438\u043a\u0430\u043d\u043d\u044f \u043d\u0430\u0437\u0430\u0434 \u0432 \u0437\u0432\u0438\u0447\u0430\u0439\u043d\u0438\u0439 \u0440\u0435\u0436\u0438\u043c \u0412\u0441\u0442\u0430\u0432\u043a\u0438.","plaintext_mode_sticky":"\u0412 \u0434\u0430\u043d\u0438\u0439 \u0447\u0430\u0441 \u0412\u0441\u0442\u0430\u0432\u043a\u0430 \u0432 \u0440\u0435\u0436\u0438\u043c\u0456 \u0437\u0432\u0438\u0447\u0430\u0439\u043d\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0443. \u041d\u0430\u0442\u0438\u0441\u043d\u0456\u0442\u044c \u0437\u043d\u043e\u0432\u0443 \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u043c\u0438\u043a\u0430\u043d\u043d\u044f \u043d\u0430\u0437\u0430\u0434 \u0432 \u0437\u0432\u0438\u0447\u0430\u0439\u043d\u0438\u0439 \u0440\u0435\u0436\u0438\u043c \u0412\u0441\u0442\u0430\u0432\u043a\u0438.. \u041f\u0456\u0441\u043b\u044f \u0442\u043e\u0433\u043e, \u044f\u043a \u0412\u0438 \u0449\u043e-\u043d\u0435\u0431\u0443\u0434\u044c \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u0435, \u0412\u0438 \u043f\u043e\u0432\u0435\u0440\u043d\u0435\u0442\u0435\u0441\u044c \u0432 \u0437\u0432\u0438\u0447\u0430\u0439\u043d\u043c\u0439 \u0440\u0435\u0436\u0438\u043c \u0412\u0441\u0442\u0430\u0432\u043a\u0438.","selectall_desc":"\u0412\u0438\u0434\u0456\u043b\u0438\u0442\u0438 \u0432\u0441\u0435","paste_word_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u0437 Word","paste_text_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u044f\u043a \u0442\u0435\u043a\u0441\u0442"},"paste_dlg":{"word_title":"\u0412\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0439\u0442\u0435 CTRL+V \u0434\u043b\u044f \u0432\u0441\u0442\u0430\u0432\u043a\u0438 \u0442\u0435\u043a\u0441\u0442\u0443 \u0443 \u0432\u0456\u043a\u043d\u043e.","text_linebreaks":"\u0417\u0431\u0435\u0440\u0456\u0433\u0430\u0442\u0438 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438 \u0440\u044f\u0434\u043a\u0456\u0432","text_title":"\u0412\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0439\u0442\u0435 CTRL+V \u0434\u043b\u044f \u0432\u0441\u0442\u0430\u0432\u043a\u0438 \u0442\u0435\u043a\u0441\u0442\u0443 \u0443 \u0432\u0456\u043a\u043d\u043e."},table:{"cellprops_delta_width":"30",cell:"\u041a\u043e\u043c\u0456\u0440\u043a\u0430",col:"\u0421\u0442\u043e\u0432\u043f\u0435\u0446\u044c",row:"\u0420\u044f\u0434\u043e\u043a",del:"\u0412\u0438\u0434\u0430\u043b\u0438\u0442\u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u044e","copy_row_desc":"\u041a\u043e\u043f\u0456\u044e\u0432\u0430\u0442\u0438 \u0440\u044f\u0434\u043e\u043a \u0442\u0430\u0431\u043b\u0438\u0446\u0456","cut_row_desc":"\u0412\u0438\u0440\u0456\u0437\u0430\u0442\u0438 \u0440\u044f\u0434\u043e\u043a \u0442\u0430\u0431\u043b\u0438\u0446\u0456","paste_row_after_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u0440\u044f\u0434\u043e\u043a \u043f\u0456\u0441\u043b\u044f","paste_row_before_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u0440\u044f\u0434\u043e\u043a \u0434\u043e","props_desc":"\u0412\u043b\u0430\u0441\u0442\u0438\u0432\u043e\u0441\u0442\u0456 \u0442\u0430\u0431\u043b\u0438\u0446\u0456","cell_desc":"\u0412\u043b\u0430\u0441\u0442\u0438\u0432\u043e\u0441\u0442\u0456 \u043a\u043e\u043c\u0456\u0440\u043a\u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u0456","row_desc":"\u0412\u043b\u0430\u0441\u0442\u0438\u0432\u043e\u0441\u0442\u0456 \u0440\u044f\u0434\u043a\u0443 \u0442\u0430\u0431\u043b\u0438\u0446\u0456","merge_cells_desc":"\u041e\u0431\'\u0454\u0434\u043d\u0430\u0442\u0438 \u043a\u043e\u043c\u0456\u0440\u043a\u0438","split_cells_desc":"\u0420\u043e\u0437\u0434\u0456\u043b\u0438\u0442\u0438 \u043a\u043e\u043c\u0456\u0440\u043a\u0438","delete_col_desc":"\u0412\u0438\u0434\u0430\u043b\u0438\u0442\u0438 \u0441\u0442\u043e\u0432\u043f\u0435\u0446\u044c","col_after_desc":"\u0414\u043e\u0434\u0430\u0442\u0438 \u0441\u0442\u043e\u0432\u043f\u0435\u0446\u044c \u043f\u0456\u0441\u043b\u044f","col_before_desc":"\u0414\u043e\u0434\u0430\u0442\u0438 \u0441\u0442\u043e\u0432\u043f\u0435\u0446\u044c \u0434\u043e","delete_row_desc":"\u0412\u0438\u0434\u0430\u043b\u0438\u0442\u0438 \u0440\u044f\u0434\u043e\u043a","row_after_desc":"\u0414\u043e\u0434\u0430\u0442\u0438 \u0440\u044f\u0434\u043e\u043a \u043f\u0456\u0441\u043b\u044f","row_before_desc":"\u0414\u043e\u0434\u0430\u0442\u0438 \u0440\u044f\u0434\u043e\u043a \u0434\u043e",desc:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u043d\u043e\u0432\u0443 \u0442\u0430\u0431\u043b\u0438\u0446\u044e","merge_cells_delta_height":"","merge_cells_delta_width":"","table_delta_height":"","table_delta_width":"","cellprops_delta_height":"","rowprops_delta_height":"","rowprops_delta_width":""},autosave:{"warning_message":"\u042f\u043a\u0449\u043e \u0432\u0456\u0434\u043d\u043e\u0432\u0438\u0442\u0438 \u0437\u0431\u0435\u0440\u0435\u0436\u0435\u043d\u0438\u0439 \u0432\u043c\u0456\u0441\u0442, \u0442\u043e \u0432\u0438 \u0432\u0442\u0440\u0430\u0442\u0438\u0442\u0435 \u0432\u0435\u0441\u044c \u0432\u043c\u0456\u0441\u0442, \u044f\u043a\u0438\u0439 \u0432 \u0434\u0430\u043d\u0438\u0439 \u0447\u0430\u0441 \u0437\u043d\u0430\u0445\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u0432 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0456. \n\n\u0412\u0438 \u0432\u043f\u0435\u0432\u043d\u0435\u043d\u0456, \u0449\u043e \u0445\u043e\u0447\u0435\u0442\u0435 \u0432\u0456\u0434\u043d\u043e\u0432\u0438\u0442\u0438 \u0437\u0431\u0435\u0440\u0435\u0436\u0435\u043d\u0438\u0439 \u0437\u043c\u0456\u0441\u0442?.","restore_content":"\u0412\u0456\u0434\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u0437\u0431\u0435\u0440\u0435\u0436\u0435\u043d\u043e\u0433\u043e \u0432\u043c\u0456\u0441\u0442\u0443.","unload_msg":"\u0417\u043c\u0456\u043d\u0438, \u044f\u043a\u0456 \u0432\u0438 \u0437\u0440\u043e\u0431\u0438\u043b\u0438, \u0431\u0443\u0434\u0443\u0442\u044c \u0432\u0442\u0440\u0430\u0447\u0435\u043d\u0456, \u044f\u043a\u0449\u043e \u0432\u0438 \u043f\u0435\u0440\u0435\u0439\u0434\u0435\u0442\u0435 \u0437 \u0446\u0456\u0454\u0457 \u0441\u0442\u043e\u0440\u0456\u043d\u043a\u0438."},fullscreen:{desc:"\u041f\u0435\u0440\u0435\u043c\u043a\u043d\u0443\u0442\u0438 \u043d\u0430 \u0432\u0435\u0441\u044c \u0435\u043a\u0440\u0430\u043d"},media:{edit:"\u0420\u0435\u0434\u0430\u0433\u0443\u0432\u0430\u0442\u0438 \u0432\u0431\u0443\u0434\u043e\u0432\u0430\u043d\u0456 \u043c\u0435\u0434\u0456\u0430",desc:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 / \u0440\u0435\u0434\u0430\u0433\u0443\u0432\u0430\u0442\u0438 \u0432\u0431\u0443\u0434\u043e\u0432\u0430\u043d\u0456 \u043c\u0435\u0434\u0456\u0430","delta_height":"","delta_width":""},fullpage:{desc:"\u0412\u043b\u0430\u0441\u0442\u0438\u0432\u043e\u0441\u0442\u0456 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430","delta_width":"","delta_height":""},template:{desc:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u0448\u0430\u0431\u043b\u043e\u043d\u043d\u0438\u0439 \u043a\u043e\u043d\u0442\u0435\u043d\u0442"},visualchars:{desc:"\u0412\u0456\u0437\u0443\u0430\u043b\u044c\u043d\u0438\u0439 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c \u0441\u0438\u043c\u0432\u043e\u043b\u0456\u0432 \u0432\u0432\u0456\u043c\u043a\u043d\u0435\u043d\u043d\u044f / \u0432\u0438\u043c\u043a\u043d\u0435\u043d\u043d\u044f."},spellchecker:{desc:"\u041f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0438\u0442\u0438 \u043f\u0435\u0440\u0435\u0432\u0456\u0440\u043a\u0443",menu:"\u041d\u0430\u043b\u0430\u0448\u0442\u0443\u0432\u0430\u043d\u043d\u044f \u043f\u0435\u0440\u0435\u0432\u0456\u0440\u043a\u0438","ignore_word":"\u0406\u0433\u043d\u043e\u0440\u0443\u0432\u0430\u0442\u0438 \u0441\u043b\u043e\u0432\u043e","ignore_words":"\u0406\u0433\u043d\u043e\u0440\u0443\u0432\u0430\u0442\u0438 \u0432\u0441\u0435",langs:"\u041c\u043e\u0432\u0438",wait:"\u0411\u0443\u0434\u044c \u043b\u0430\u0441\u043a\u0430, \u0437\u0430\u0447\u0435\u043a\u0430\u0439\u0442\u0435...",sug:"\u0412\u0430\u0440\u0456\u0430\u043d\u0442\u0438","no_sug":"\u041d\u0435\u043c\u0430\u0454 \u0432\u0430\u0440\u0456\u0430\u043d\u0442\u0456\u0432","no_mpell":"\u041f\u043e\u043c\u0438\u043b\u043e\u043a \u043d\u0435 \u0437\u043d\u0430\u0439\u0434\u0435\u043d\u043e.","learn_word":"\u0417\u0430\u043f\u0430\u043c\'\u044f\u0442\u0430\u0442\u0438 \u0441\u043b\u043e\u0432\u043e"},pagebreak:{desc:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u0440\u043e\u0437\u0434\u0456\u043b\u044c\u043d\u0438\u043a \u0441\u0442\u043e\u0440\u0456\u043d\u043a\u0438."},advlist:{types:"\u0422\u0438\u043f\u0438",def:"\u0417\u0430 \u0437\u0430\u043c\u043e\u0432\u0447\u0430\u043d\u043d\u044f\u043c","lower_alpha":"Lower alpha","lower_greek":"Lower greek","lower_roman":"Lower roman","upper_alpha":"Upper alpha","upper_roman":"Upper roman",circle:"\u041a\u043e\u043b\u043e",disc:"\u0414\u0438\u0441\u043a",square:"\u041a\u0432\u0430\u0434\u0440\u0430\u0442"},colors:{"333300":"\u0422\u0435\u043c\u043d\u043e-\u043e\u043b\u0438\u0432\u043a\u043e\u0432\u0438\u0439","993300":"\u041f\u043e\u043c\u0430\u0440\u0430\u043d\u0447\u0435\u0432\u0438\u0439","000000":"\u0427\u043e\u0440\u043d\u0438\u0439","003300":"\u0422\u0435\u043c\u043d\u043e-\u0437\u0435\u043b\u0435\u043d\u0438\u0439",FF6600:"\u041e\u0440\u0430\u043d\u0436\u0435\u0432\u0438\u0439","808000":"\u041e\u043b\u0438\u0432\u043a\u043e\u0432\u0438\u0439","008000":"\u0417\u0435\u043b\u0435\u043d\u0438\u0439","0000FF":"\u0421\u0438\u043d\u0456\u0439","666699":"\u0421\u0456\u0440\u043e-\u0433\u043e\u043b\u0443\u0431\u0438\u0439","808080":"\u0421\u0456\u0440\u0438\u0439",FF0000:"\u0427\u0435\u0440\u0432\u043e\u043d\u0438\u0439","99CC00":"\u0416\u043e\u0432\u0442\u043e-\u0437\u0435\u043b\u0435\u043d\u0438\u0439","339966":"Sea green ",FFCC00:"\u0417\u043e\u043b\u043e\u0442\u0438\u0439",FFFF00:"\u0416\u043e\u0432\u0442\u0438\u0439","993366":"\u041a\u043e\u0440\u0438\u0447\u043d\u0435\u0432\u0438\u0439",C0C0C0:"\u0421\u0440\u0456\u0431\u043b\u044f\u0441\u0442\u0438\u0439",FF99CC:"\u0420\u043e\u0436\u0435\u0432\u0438\u0439",FFFF99:"\u0421\u0432\u0456\u0442\u043b\u043e \u0436\u043e\u0432\u0442\u0438\u0439",CC99FF:"\u0421\u043b\u0438\u0432\u043e\u0432\u0438\u0439",FFFFFF:"\u0411\u0456\u043b\u0438\u0439","003366":"Dark azure","000080":"Navy Blue","333399":"Indigo","333333":"Very dark gray","800000":"Maroon","008080":"Teal",FF9900:"Amber","33CCCC":"Turquoise","3366FF":"Royal blue","800080":"Purple","999999":"Medium gray",FF00FF:"Magenta","00FF00":"Lime","00FFFF":"Aqua","00CCFF":"Sky blue",FFCC99:"Peach",CCFFCC:"Pale green",CCFFFF:"Pale cyan","99CCFF":"Light sky blue"},aria:{"rich_text_area":"\u0412\u0456\u0437\u0443\u0430\u043b\u044c\u043d\u0438\u0439 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440"},wordcount:{words:"\u0421\u043b\u0456\u0432:"}}}); \ No newline at end of file
diff --git a/program/js/tiny_mce/plugins/advimage/js/image.js b/program/js/tiny_mce/plugins/advimage/js/image.js
index 546b69c0d..f0b7c6eef 100644
--- a/program/js/tiny_mce/plugins/advimage/js/image.js
+++ b/program/js/tiny_mce/plugins/advimage/js/image.js
@@ -395,12 +395,14 @@ var ImageDialog = {
if (v == '0')
img.style.border = isIE ? '0' : '0 none none';
else {
- if (b.length == 3 && b[isIE ? 2 : 1])
- bStyle = b[isIE ? 2 : 1];
+ var isOldIE = tinymce.isIE && (!document.documentMode || document.documentMode < 9);
+
+ if (b.length == 3 && b[isOldIE ? 2 : 1])
+ bStyle = b[isOldIE ? 2 : 1];
else if (!bStyle || bStyle == 'none')
bStyle = 'solid';
if (b.length == 3 && b[isIE ? 0 : 2])
- bColor = b[isIE ? 0 : 2];
+ bColor = b[isOldIE ? 0 : 2];
else if (!bColor || bColor == 'none')
bColor = 'black';
img.style.border = v + 'px ' + bStyle + ' ' + bColor;
diff --git a/program/js/tiny_mce/plugins/advimage/langs/nl_dlg.js b/program/js/tiny_mce/plugins/advimage/langs/nl_dlg.js
index 35538d374..ea7272812 100644
--- a/program/js/tiny_mce/plugins/advimage/langs/nl_dlg.js
+++ b/program/js/tiny_mce/plugins/advimage/langs/nl_dlg.js
@@ -1 +1 @@
-tinyMCE.addI18n('nl.advimage_dlg',{"image_list":"Lijst","align_right":"Rechts","align_left":"Links","align_textbottom":"Onderkant tekst","align_texttop":"Bovenkant tekst","align_bottom":"Onder","align_middle":"Midden","align_top":"Boven","align_baseline":"Basislijn",align:"Uitlijning",hspace:"Horizontale ruimte",vspace:"Verticale ruimte",dimensions:"Afmetingen",border:"Rand",list:"Lijst",alt:"Beschrijving",src:"Bestand/URL","dialog_title":"Afbeelding invoegen/bewerken","missing_alt":"Wilt u de afbeelding zonder beschrijving invoegen? De afbeelding wordt dan mogelijk niet opgemerkt door mensen met een visuele handicap, of welke zonder afbeeldingen browsen.","example_img":"Voorbeeldweergave",misc:"Diversen",mouseout:"Bij muis uit",mouseover:"Bij muis over","alt_image":"Alternatieve afbeeldingen","swap_image":"Afbeelding wisselen",map:"Afbeeldingsplattegrond",id:"Id",rtl:"Van rechts naar links",ltr:"Van links naar rechts",classes:"Klasses",style:"Stijl","long_desc":"Uitgebreide beschrijving",langcode:"Taalcode",langdir:"Taalrichting","constrain_proportions":"Verhouding behouden",preview:"Voorbeeld",title:"Titel",general:"Algemeen","tab_advanced":"Geavanceerd","tab_appearance":"Weergave","tab_general":"Algemeen",width:"Breedte",height:"Hoogte"}); \ No newline at end of file
+tinyMCE.addI18n('nl.advimage_dlg',{"image_list":"Lijst","align_right":"Rechts","align_left":"Links","align_textbottom":"Onderkant tekst","align_texttop":"Bovenkant tekst","align_bottom":"Onder","align_middle":"Midden","align_top":"Boven","align_baseline":"Basislijn",align:"Uitlijning",hspace:"Horizontale ruimte",vspace:"Verticale ruimte",dimensions:"Afmetingen",border:"Rand",list:"Lijst",alt:"Beschrijving",src:"Bestand/URL","dialog_title":"Afbeelding invoegen/bewerken","missing_alt":"Wilt u de afbeelding zonder beschrijving invoegen? De afbeelding wordt dan mogelijk niet opgemerkt door mensen met een visuele handicap, of mensen die zonder afbeeldingen browsen.","example_img":"Voorbeeldweergave",misc:"Diversen",mouseout:"Bij muis uit",mouseover:"Bij muis over","alt_image":"Alternatieve afbeeldingen","swap_image":"Afbeelding wisselen",map:"Afbeeldingsplattegrond",id:"Id",rtl:"Van rechts naar links",ltr:"Van links naar rechts",classes:"Klasses",style:"Stijl","long_desc":"Uitgebreide beschrijving",langcode:"Taalcode",langdir:"Taalrichting","constrain_proportions":"Verhouding behouden",preview:"Voorbeeld",title:"Titel",general:"Algemeen","tab_advanced":"Geavanceerd","tab_appearance":"Weergave","tab_general":"Algemeen",width:"Breedte",height:"Hoogte"}); \ No newline at end of file
diff --git a/program/js/tiny_mce/plugins/advimage/langs/uk_dlg.js b/program/js/tiny_mce/plugins/advimage/langs/uk_dlg.js
index 5692313c3..d083a13bb 100644
--- a/program/js/tiny_mce/plugins/advimage/langs/uk_dlg.js
+++ b/program/js/tiny_mce/plugins/advimage/langs/uk_dlg.js
@@ -1 +1 @@
-tinyMCE.addI18n('uk.advimage_dlg',{"image_list":"\u0421\u043f\u0438\u0441\u043e\u043a \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u044c","align_right":"\u041f\u043e \u043f\u0440\u0430\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","align_left":"\u041f\u043e \u043b\u0456\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","align_textbottom":"\u041f\u043e \u043d\u0438\u0436\u043d\u044c\u043e\u043c\u0443 \u043a\u0440\u0430\u044e \u0442\u0435\u043a\u0441\u0442\u0443","align_texttop":"\u041f\u043e \u0432\u0435\u0440\u0445\u043d\u044c\u043e\u043c\u0443 \u043a\u0440\u0430\u044e \u0442\u0435\u043a\u0441\u0442\u0443","align_bottom":"\u041f\u043e \u043d\u0438\u0436\u043d\u044c\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","align_middle":"\u041f\u043e \u0446\u0435\u043d\u0442\u0440\u0443","align_top":"\u041f\u043e \u0432\u0435\u0440\u0445\u043d\u044c\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","align_baseline":"\u041f\u043e \u0431\u0430\u0437\u043e\u0432\u0456\u0439 \u043b\u0456\u043d\u0456\u0457",align:"\u0412\u0438\u0440\u0456\u0432\u043d\u044e\u0432\u0430\u043d\u043d\u044f",hspace:"\u0413\u043e\u0440\u0438\u0437. \u0432\u0456\u0434\u0441\u0442\u0443\u043f",vspace:"\u0412\u0435\u0440\u0442. \u0432\u0456\u0434\u0441\u0442\u0443\u043f",dimensions:"\u0420\u043e\u0437\u043c\u0456\u0440\u0438",border:"\u0420\u0430\u043c\u043a\u0430",list:"\u0421\u043f\u0438\u0441\u043e\u043a \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u044c",alt:"\u041e\u043f\u0438\u0441",src:"\u041f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f \u043d\u0430 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f","dialog_title":"\u0414\u043e\u0434\u0430\u0442\u0438/\u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f","missing_alt":"\u0412\u0438 \u0432\u043f\u0435\u0432\u043d\u0435\u043d\u043d\u0456, \u0449\u043e \u0431\u0430\u0436\u0430\u0454\u0442\u0435 \u043f\u0440\u043e\u0434\u043e\u0432\u0436\u0438\u0442\u0438 \u0431\u0435\u0437 \u043e\u043f\u0438\u0441\u0443 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f? \u0411\u0435\u0437 \u0446\u044c\u043e\u0433\u043e, \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f \u043d\u0435 \u0431\u0443\u0434\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0438\u043c \u0434\u0435\u044f\u043a\u0438\u043c \u043a\u043e\u0440\u0438\u0441\u0442\u0443\u0432\u0430\u0447\u0430\u043c \u0437 \u0432\u0430\u0434\u0430\u043c\u0438, \u0430\u0431\u043e \u0442\u0438\u043c, \u0445\u0442\u043e \u043a\u043e\u0440\u0438\u0442\u0443\u0454\u0442\u044c\u0441\u044f \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u0438\u043c\u0438 \u043f\u0435\u0440\u0435\u0433\u043b\u044f\u0434\u0430\u0447\u0430\u043c\u0438, \u0430\u0431\u043e \u043f\u0440\u043e\u0433\u043b\u044f\u0434\u0430\u0454 \u0456\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u0441\u0442\u043e\u0440\u0456\u043d\u043a\u0438 \u0437 \u0432\u0438\u043c\u043a\u043d\u0435\u043d\u0438\u043c\u0438 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f\u043c\u0438.","example_img":"\u0412\u0438\u0433\u043b\u044f\u0434 \u043f\u0435\u0440\u0435\u0433\u043b\u044f\u0434\u0443 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f",misc:"\u0406\u043d\u0448\u0435",mouseout:"\u043f\u0440\u0438 \u0432\u0456\u0434\u0432\u0435\u0434\u0435\u043d\u043d\u0456",mouseover:"\u043f\u0440\u0438 \u043d\u0430\u0432\u0435\u0434\u0435\u043d\u043d\u0456","alt_image":"\u0410\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u0435 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f","swap_image":"\u0417\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f \u0437\u0430\u043c\u0456\u043d\u043d\u0438\u043a",map:"\u041c\u0430\u043f\u0430 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f",id:"\u0406\u0434\u0435\u043d\u0442\u0438\u0444\u0456\u043a\u0430\u0442\u043e\u0440",rtl:"\u0421\u043f\u0440\u0430\u0432\u0430 \u043b\u0456\u0432\u043e\u0440\u0443\u0447",ltr:"\u0417\u043b\u0456\u0432\u0430 \u043f\u0440\u0430\u0432\u043e\u0440\u0443\u0447",classes:"\u041a\u043b\u0430\u0441\u0438",style:"\u0421\u0442\u0438\u043b\u044c","long_desc":"\u041f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f \u043d\u0430 \u043f\u043e\u0432\u043d\u0438\u0439 \u043e\u043f\u0438\u0441",langcode:"\u041a\u043e\u0434 \u043c\u043e\u0432\u0438",langdir:"\u041d\u0430\u043f\u0440\u044f\u043c\u043e\u043a \u043c\u043e\u0432\u0438","constrain_proportions":"\u0417\u0431\u0435\u0440\u0456\u0433\u0430\u0442\u0438 \u043f\u0440\u043e\u043f\u043e\u0440\u0446\u0456\u0457",preview:"\u041f\u0435\u0440\u0435\u0433\u043b\u044f\u0434",title:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a",general:"\u0417\u0430\u0433\u0430\u043b\u044c\u043d\u0435","tab_advanced":"\u0414\u043e\u0434\u0430\u0442\u043a\u043e\u0432\u043e","tab_appearance":"\u0412\u0438\u0433\u043b\u044f\u0434","tab_general":"\u0417\u0430\u0433\u0430\u043b\u044c\u043d\u0435",width:"Width",height:"Height"}); \ No newline at end of file
+tinyMCE.addI18n('uk.advimage_dlg',{"image_list":"\u0421\u043f\u0438\u0441\u043e\u043a \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u044c","align_right":"\u041f\u043e \u043f\u0440\u0430\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","align_left":"\u041f\u043e \u043b\u0456\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","align_textbottom":"\u041f\u043e \u043d\u0438\u0436\u043d\u044c\u043e\u043c\u0443 \u043a\u0440\u0430\u044e \u0442\u0435\u043a\u0441\u0442\u0443","align_texttop":"\u041f\u043e \u0432\u0435\u0440\u0445\u043d\u044c\u043e\u043c\u0443 \u043a\u0440\u0430\u044e \u0442\u0435\u043a\u0441\u0442\u0443","align_bottom":"\u041f\u043e \u043d\u0438\u0436\u043d\u044c\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","align_middle":"\u041f\u043e \u0446\u0435\u043d\u0442\u0440\u0443","align_top":"\u041f\u043e \u0432\u0435\u0440\u0445\u043d\u044c\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","align_baseline":"\u041f\u043e \u0431\u0430\u0437\u043e\u0432\u0456\u0439 \u043b\u0456\u043d\u0456\u0457",align:"\u0412\u0438\u0440\u0456\u0432\u043d\u044e\u0432\u0430\u043d\u043d\u044f",hspace:"\u0413\u043e\u0440\u0438\u0437. \u0432\u0456\u0434\u0441\u0442\u0443\u043f",vspace:"\u0412\u0435\u0440\u0442. \u0432\u0456\u0434\u0441\u0442\u0443\u043f",dimensions:"\u0420\u043e\u0437\u043c\u0456\u0440\u0438",border:"\u0420\u0430\u043c\u043a\u0430",list:"\u0421\u043f\u0438\u0441\u043e\u043a \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u044c",alt:"\u041e\u043f\u0438\u0441",src:"\u041f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f \u043d\u0430 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f","dialog_title":"\u0414\u043e\u0434\u0430\u0442\u0438/\u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f","missing_alt":"\u0412\u0438 \u0432\u043f\u0435\u0432\u043d\u0435\u043d\u043d\u0456, \u0449\u043e \u0431\u0430\u0436\u0430\u0454\u0442\u0435 \u043f\u0440\u043e\u0434\u043e\u0432\u0436\u0438\u0442\u0438 \u0431\u0435\u0437 \u043e\u043f\u0438\u0441\u0443 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f? \u0411\u0435\u0437 \u0446\u044c\u043e\u0433\u043e, \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f \u043d\u0435 \u0431\u0443\u0434\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0438\u043c \u0434\u0435\u044f\u043a\u0438\u043c \u043a\u043e\u0440\u0438\u0441\u0442\u0443\u0432\u0430\u0447\u0430\u043c \u0437 \u0432\u0430\u0434\u0430\u043c\u0438, \u0430\u0431\u043e \u0442\u0438\u043c, \u0445\u0442\u043e \u043a\u043e\u0440\u0438\u0442\u0443\u0454\u0442\u044c\u0441\u044f \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u0438\u043c\u0438 \u043f\u0435\u0440\u0435\u0433\u043b\u044f\u0434\u0430\u0447\u0430\u043c\u0438, \u0430\u0431\u043e \u043f\u0440\u043e\u0433\u043b\u044f\u0434\u0430\u0454 \u0456\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u0441\u0442\u043e\u0440\u0456\u043d\u043a\u0438 \u0437 \u0432\u0438\u043c\u043a\u043d\u0435\u043d\u0438\u043c\u0438 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f\u043c\u0438.","example_img":"\u0412\u0438\u0433\u043b\u044f\u0434 \u043f\u0435\u0440\u0435\u0433\u043b\u044f\u0434\u0443 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f",misc:"\u0406\u043d\u0448\u0435",mouseout:"\u043f\u0440\u0438 \u0432\u0456\u0434\u0432\u0435\u0434\u0435\u043d\u043d\u0456",mouseover:"\u043f\u0440\u0438 \u043d\u0430\u0432\u0435\u0434\u0435\u043d\u043d\u0456","alt_image":"\u0410\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u0435 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f","swap_image":"\u0417\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f \u0437\u0430\u043c\u0456\u043d\u043d\u0438\u043a",map:"\u041c\u0430\u043f\u0430 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f",id:"\u0406\u0434\u0435\u043d\u0442\u0438\u0444\u0456\u043a\u0430\u0442\u043e\u0440",rtl:"\u0421\u043f\u0440\u0430\u0432\u0430 \u043b\u0456\u0432\u043e\u0440\u0443\u0447",ltr:"\u0417\u043b\u0456\u0432\u0430 \u043f\u0440\u0430\u0432\u043e\u0440\u0443\u0447",classes:"\u041a\u043b\u0430\u0441\u0438",style:"\u0421\u0442\u0438\u043b\u044c","long_desc":"\u041f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f \u043d\u0430 \u043f\u043e\u0432\u043d\u0438\u0439 \u043e\u043f\u0438\u0441",langcode:"\u041a\u043e\u0434 \u043c\u043e\u0432\u0438",langdir:"\u041d\u0430\u043f\u0440\u044f\u043c\u043e\u043a \u043c\u043e\u0432\u0438","constrain_proportions":"\u0417\u0431\u0435\u0440\u0456\u0433\u0430\u0442\u0438 \u043f\u0440\u043e\u043f\u043e\u0440\u0446\u0456\u0457",preview:"\u041f\u0435\u0440\u0435\u0433\u043b\u044f\u0434",title:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a",general:"\u0417\u0430\u0433\u0430\u043b\u044c\u043d\u0435","tab_advanced":"\u0414\u043e\u0434\u0430\u0442\u043a\u043e\u0432\u043e","tab_appearance":"\u0412\u0438\u0433\u043b\u044f\u0434","tab_general":"\u0417\u0430\u0433\u0430\u043b\u044c\u043d\u0435",width:"\u0428\u0438\u0440\u0438\u043d\u0430",height:"\u0412\u0438\u0441\u043e\u0442\u0430"}); \ No newline at end of file
diff --git a/program/js/tiny_mce/plugins/advlink/langs/nl_dlg.js b/program/js/tiny_mce/plugins/advlink/langs/nl_dlg.js
index 0e147d81c..b2924758b 100644
--- a/program/js/tiny_mce/plugins/advlink/langs/nl_dlg.js
+++ b/program/js/tiny_mce/plugins/advlink/langs/nl_dlg.js
@@ -1 +1 @@
-tinyMCE.addI18n('nl.advlink_dlg',{"target_name":"Doel",classes:"Klassen",style:"Stijl",id:"Id","popup_position":"Positie (X/Y)",langdir:"Taalrichting","popup_size":"Grootte","popup_dependent":"Afhankelijk (Alleen Mozilla/Firefox)","popup_resizable":"Aanpasbaar venster","popup_location":"Lokatiebalk weergeven","popup_menubar":"Menubalk weergeven","popup_toolbar":"Werkbalk weergeven","popup_statusbar":"Statusbalk weergeven","popup_scrollbars":"Scrollbalken weergeven","popup_return":"\'return false\' invoegen","popup_name":"Vensternaam","popup_url":"Popup URL",popup:"Javascript popup","target_blank":"In nieuw venster openen","target_top":"In bovenste frame openen (vervangt gehele pagina)","target_parent":"In bovenliggend venster / frame openen","target_same":"In dit venster / frame openen","anchor_names":"Ankers","popup_opts":"Opties","advanced_props":"Geavanceerde eigenschappen","event_props":"Gebeurtenissen","popup_props":"Popup eigenschappen","general_props":"Algemene eigenschappen","advanced_tab":"Geavanceerd","events_tab":"Gebeurtenissen","popup_tab":"Popup","general_tab":"Algemeen",list:"Lijst","is_external":"De ingevoerde URL lijkt op een externe link. Wilt u de vereiste http:// tekst voorvoegen?","is_email":"De ingevoerde URL lijkt op een e-mailadres. Wilt u de vereiste mailto: tekst voorvoegen?",titlefield:"Titel",target:"Doel",url:"URL",title:"Link invoegen/bewerken","link_list":"Lijst",rtl:"Van rechts naar links",ltr:"Van links naar rechts",accesskey:"Toegangstoets",tabindex:"Tabvolgorde",rev:"Relatie van doel tot pagina",rel:"Relatie van pagina tot doel",mime:"MIME type",encoding:"Taalcodering",langcode:"Taalcode","target_langcode":"Taal",width:"Breedte",height:"Hoogte"}); \ No newline at end of file
+tinyMCE.addI18n('nl.advlink_dlg',{"target_name":"Doel",classes:"Klasses",style:"Stijl",id:"Id","popup_position":"Positie (X/Y)",langdir:"Taalrichting","popup_size":"Grootte","popup_dependent":"Afhankelijk (Alleen Mozilla/Firefox)","popup_resizable":"Aanpasbaar venster","popup_location":"Lokatiebalk weergeven","popup_menubar":"Menubalk weergeven","popup_toolbar":"Werkbalk weergeven","popup_statusbar":"Statusbalk weergeven","popup_scrollbars":"Scrollbalken weergeven","popup_return":"\'return false\' invoegen","popup_name":"Vensternaam","popup_url":"Popup URL",popup:"Javascript popup","target_blank":"In nieuw venster openen","target_top":"In bovenste frame openen (vervangt gehele pagina)","target_parent":"In bovenliggend venster / frame openen","target_same":"In dit venster / frame openen","anchor_names":"Ankers","popup_opts":"Opties","advanced_props":"Geavanceerde eigenschappen","event_props":"Gebeurtenissen","popup_props":"Popup eigenschappen","general_props":"Algemene eigenschappen","advanced_tab":"Geavanceerd","events_tab":"Gebeurtenissen","popup_tab":"Popup","general_tab":"Algemeen",list:"Lijst","is_external":"De ingevoerde URL lijkt op een externe link. Wilt u de vereiste http:// tekst voorvoegen?","is_email":"De ingevoerde URL lijkt op een e-mailadres. Wilt u de vereiste mailto: tekst voorvoegen?",titlefield:"Titel",target:"Doel",url:"URL",title:"Link invoegen/bewerken","link_list":"Lijst",rtl:"Van rechts naar links",ltr:"Van links naar rechts",accesskey:"Toegangstoets",tabindex:"Tabvolgorde",rev:"Relatie van doel tot pagina",rel:"Relatie van pagina tot doel",mime:"MIME type",encoding:"Taalcodering",langcode:"Taalcode","target_langcode":"Taal",width:"Breedte",height:"Hoogte"}); \ No newline at end of file
diff --git a/program/js/tiny_mce/plugins/advlink/langs/uk_dlg.js b/program/js/tiny_mce/plugins/advlink/langs/uk_dlg.js
index d069797c5..91d935ea8 100644
--- a/program/js/tiny_mce/plugins/advlink/langs/uk_dlg.js
+++ b/program/js/tiny_mce/plugins/advlink/langs/uk_dlg.js
@@ -1 +1 @@
-tinyMCE.addI18n('uk.advlink_dlg',{"target_name":"\u041d\u0430\u0437\u0432\u0430 \u0446\u0456\u043b\u0456",classes:"\u041a\u043b\u0430\u0441\u0438",style:"\u0421\u0442\u0438\u043b\u044c",id:"\u0406\u0434\u0435\u043d\u0442\u0438\u0444\u0456\u043a\u0430\u0442\u043e\u0440","popup_position":"\u041f\u043e\u0437\u0438\u0446\u0456\u044f (X/Y)",langdir:"\u041d\u0430\u043f\u0440\u044f\u043c \u043c\u043e\u0432\u0438","popup_size":"\u0420\u043e\u0437\u043c\u0456\u0440","popup_dependent":"\u0417\u0430\u043b\u0435\u0436\u043d\u0438\u0439 (\u043b\u0438\u0448\u0435 \u0434\u043b\u044f Mozilla/Firefox)","popup_resizable":"\u0414\u043e\u0437\u0432\u043e\u043b\u044f\u0442\u0438 \u0437\u043c\u0456\u043d\u044e\u0432\u0430\u0442\u0438 \u0440\u043e\u0437\u043c\u0456\u0440","popup_location":"\u041f\u043e\u043a\u0430\u0437\u0443\u0432\u0430\u0442\u0438 \u043f\u0430\u043d\u0435\u043b\u044c location","popup_menubar":"\u041f\u043e\u043a\u0430\u0437\u0443\u0432\u0430\u0442\u0438 \u043c\u0435\u043d\u044e","popup_toolbar":"\u041f\u043e\u043a\u0430\u0437\u0443\u0432\u0430\u0442\u0438 \u043f\u0430\u043d\u0435\u043b\u0456 \u0456\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0456\u0432","popup_statusbar":"\u041f\u043e\u043a\u0430\u0437\u0443\u0432\u0430\u0442\u0438 \u0441\u0442\u0430\u0442\u0443\u0441","popup_scrollbars":"\u041f\u043e\u043a\u0430\u0437\u0443\u0432\u0430\u0442\u0438 \u0441\u043a\u0440\u043e\u043b\u0435\u0440\u0438","popup_return":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \'return false\'","popup_name":"\u041d\u0430\u0437\u0432\u0430 \u0432\u0456\u043a\u043d\u0430","popup_url":"\u041f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f \u043d\u0430 \u0432\u0438\u0440\u0438\u043d\u0430\u044e\u0447\u0435 \u0432\u0456\u043a\u043d\u043e",popup:"\u0412\u0438\u0440\u0438\u043d\u0430\u044e\u0447\u0435 \u0432\u0456\u043a\u043d\u043e Javascript","target_blank":"\u0412\u0456\u0434\u043a\u0440\u0438\u0442\u0438 \u0432 \u043d\u043e\u0432\u043e\u043c\u0443 \u0432\u0456\u043a\u043d\u0456","target_top":"\u0412\u0456\u0434\u043a\u0440\u0438\u0442\u0438 \u0443 \u0432\u0435\u0440\u0445\u043d\u044c\u043e\u043c\u0443 \u0444\u0440\u0435\u0439\u043c\u0456 (\u0437\u0430\u043c\u0456\u043d\u0438\u0442\u0438 \u0432\u0441\u0456 \u0444\u0440\u0435\u0439\u043c\u0438)","target_parent":"\u0412\u0456\u0434\u043a\u0440\u0438\u0442\u0438 \u0432 \u0431\u0430\u0442\u044c\u043a\u0456\u0432\u0441\u044c\u043a\u043e\u043c\u0443 \u0432\u0456\u043a\u043d\u0456 / \u0444\u0440\u0435\u0439\u043c\u0456","target_same":"\u0412\u0456\u0434\u043a\u0440\u0438\u0442\u0438 \u0432 \u0446\u044c\u043e\u043c\u0443 \u0436 \u0432\u0456\u043a\u043d\u0456 / \u0444\u0440\u0435\u0439\u043c\u0456","anchor_names":"\u042f\u043a\u043e\u0440\u0456","popup_opts":"\u0412\u043b\u0430\u0441\u0442\u0438\u0432\u043e\u0441\u0442\u0456","advanced_props":"\u0420\u043e\u0437\u0448\u0438\u0440\u0435\u043d\u0456 \u0432\u043b\u0430\u0441\u0442\u0438\u0432\u043e\u0441\u0442\u0456","event_props":"\u041f\u043e\u0434\u0456\u0457","popup_props":"\u0412\u043b\u0430\u0441\u0442\u0438\u0432\u043e\u0441\u0442\u0456 \u0432\u0438\u0440\u0438\u043d\u0430\u044e\u0447\u043e\u0433\u043e \u0432\u0456\u043a\u043d\u0430","general_props":"\u0417\u0430\u0433\u0430\u043b\u044c\u043d\u0456 \u0432\u043b\u0430\u0441\u0442\u0438\u0432\u043e\u0441\u0442\u0456","advanced_tab":"\u0414\u043e\u0434\u0430\u0442\u043a\u043e\u0432\u043e","events_tab":"\u041f\u043e\u0434\u0456\u0457","popup_tab":"\u0412\u0438\u0440\u0438\u043d\u0430\u044e\u0447\u0435 \u0432\u0456\u043a\u043d\u043e","general_tab":"\u0417\u0430\u0433\u0430\u043b\u044c\u043d\u0435",list:"\u0421\u043f\u0438\u0441\u043e\u043a \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u044c","is_external":"\u0412\u0432\u0435\u0434\u0435\u043d\u0435 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f \u0441\u0445\u043e\u0436\u0435 \u043d\u0430 \u0437\u043e\u0432\u043d\u0456\u0448\u043d\u0454 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f, \u0432\u0438 \u0431\u0430\u0436\u0430\u0454\u0442\u0435 \u0434\u043e\u0434\u0430\u0442\u0438 \u043f\u043e\u0442\u0440\u0456\u0431\u043d\u0438\u0439 \u043f\u0440\u0435\u0444\u0456\u043a\u0441 http://?","is_email":"\u0412\u0432\u0435\u0434\u0435\u043d\u0435 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f \u0441\u0445\u043e\u0436\u0435 \u043d\u0430 \u0430\u0434\u0440\u0435\u0441\u0443 \u0435\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u0457 \u043f\u043e\u0448\u0442\u0438, \u0432\u0438 \u0431\u0430\u0436\u0430\u0454\u0442\u0435 \u0434\u043e\u0434\u0430\u0442\u0438 \u043f\u043e\u0442\u0440\u0456\u0431\u043d\u0438\u0439 \u043f\u0440\u0435\u0444\u0456\u043a\u0441 mailto:?",titlefield:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a",target:"\u0412\u0456\u0434\u043a\u0440\u0438\u0442\u0438 \u0432...",url:"\u0410\u0434\u0440\u0435\u0441\u0430",title:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438/\u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f","link_list":"\u0421\u043f\u0438\u0441\u043e\u043a \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u044c",rtl:"\u0421\u043f\u0440\u0430\u0432\u0430 \u043b\u0456\u0432\u043e\u0440\u0443\u0447",ltr:"\u0417\u043b\u0456\u0432\u0430 \u043f\u0440\u0430\u0432\u043e\u0440\u0443\u0447",accesskey:"\u041a\u043b\u0430\u0432\u0456\u0448\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u0443",tabindex:"\u0422\u0430\u0431\u0456\u043d\u0434\u0435\u043a\u0441",rev:"\u0417\u0432\'\u044f\u0437\u043e\u043a \u043c\u0456\u0436 \u0446\u0456\u043b\u043b\u044e \u0442\u0430 \u0441\u0442\u043e\u0440\u0456\u043d\u043a\u043e\u044e",rel:"\u0417\u0432\'\u044f\u0437\u043e\u043a \u043c\u0456\u0436 \u0441\u0442\u043e\u0440\u0456\u043d\u043a\u043e\u044e \u0442\u0430 \u0446\u0456\u043b\u043b\u044e",mime:"MIME \u0442\u0438\u043f \u0446\u0456\u043b\u0456",encoding:"\u041a\u043e\u0434\u0443\u0432\u0430\u043d\u043d\u044f \u0446\u0456\u043b\u0456",langcode:"\u041a\u043e\u0434 \u043c\u043e\u0432\u0438","target_langcode":"\u041c\u043e\u0432\u0430 \u0446\u0456\u043b\u0456",width:"Width",height:"Height"}); \ No newline at end of file
+tinyMCE.addI18n('uk.advlink_dlg',{"target_name":"\u041d\u0430\u0437\u0432\u0430 \u0446\u0456\u043b\u0456",classes:"\u041a\u043b\u0430\u0441\u0438",style:"\u0421\u0442\u0438\u043b\u044c",id:"\u0406\u0434\u0435\u043d\u0442\u0438\u0444\u0456\u043a\u0430\u0442\u043e\u0440","popup_position":"\u041f\u043e\u0437\u0438\u0446\u0456\u044f (X/Y)",langdir:"\u041d\u0430\u043f\u0440\u044f\u043c \u043c\u043e\u0432\u0438","popup_size":"\u0420\u043e\u0437\u043c\u0456\u0440","popup_dependent":"\u0417\u0430\u043b\u0435\u0436\u043d\u0438\u0439 (\u043b\u0438\u0448\u0435 \u0434\u043b\u044f Mozilla/Firefox)","popup_resizable":"\u0414\u043e\u0437\u0432\u043e\u043b\u044f\u0442\u0438 \u0437\u043c\u0456\u043d\u044e\u0432\u0430\u0442\u0438 \u0440\u043e\u0437\u043c\u0456\u0440","popup_location":"\u041f\u043e\u043a\u0430\u0437\u0443\u0432\u0430\u0442\u0438 \u043f\u0430\u043d\u0435\u043b\u044c location","popup_menubar":"\u041f\u043e\u043a\u0430\u0437\u0443\u0432\u0430\u0442\u0438 \u043c\u0435\u043d\u044e","popup_toolbar":"\u041f\u043e\u043a\u0430\u0437\u0443\u0432\u0430\u0442\u0438 \u043f\u0430\u043d\u0435\u043b\u0456 \u0456\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0456\u0432","popup_statusbar":"\u041f\u043e\u043a\u0430\u0437\u0443\u0432\u0430\u0442\u0438 \u0441\u0442\u0430\u0442\u0443\u0441","popup_scrollbars":"\u041f\u043e\u043a\u0430\u0437\u0443\u0432\u0430\u0442\u0438 \u0441\u043a\u0440\u043e\u043b\u0435\u0440\u0438","popup_return":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \'return false\'","popup_name":"\u041d\u0430\u0437\u0432\u0430 \u0432\u0456\u043a\u043d\u0430","popup_url":"\u041f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f \u043d\u0430 \u0432\u0438\u0440\u0438\u043d\u0430\u044e\u0447\u0435 \u0432\u0456\u043a\u043d\u043e",popup:"\u0412\u0438\u0440\u0438\u043d\u0430\u044e\u0447\u0435 \u0432\u0456\u043a\u043d\u043e Javascript","target_blank":"\u0412\u0456\u0434\u043a\u0440\u0438\u0442\u0438 \u0432 \u043d\u043e\u0432\u043e\u043c\u0443 \u0432\u0456\u043a\u043d\u0456","target_top":"\u0412\u0456\u0434\u043a\u0440\u0438\u0442\u0438 \u0443 \u0432\u0435\u0440\u0445\u043d\u044c\u043e\u043c\u0443 \u0444\u0440\u0435\u0439\u043c\u0456 (\u0437\u0430\u043c\u0456\u043d\u0438\u0442\u0438 \u0432\u0441\u0456 \u0444\u0440\u0435\u0439\u043c\u0438)","target_parent":"\u0412\u0456\u0434\u043a\u0440\u0438\u0442\u0438 \u0432 \u0431\u0430\u0442\u044c\u043a\u0456\u0432\u0441\u044c\u043a\u043e\u043c\u0443 \u0432\u0456\u043a\u043d\u0456 / \u0444\u0440\u0435\u0439\u043c\u0456","target_same":"\u0412\u0456\u0434\u043a\u0440\u0438\u0442\u0438 \u0432 \u0446\u044c\u043e\u043c\u0443 \u0436 \u0432\u0456\u043a\u043d\u0456 / \u0444\u0440\u0435\u0439\u043c\u0456","anchor_names":"\u042f\u043a\u043e\u0440\u0456","popup_opts":"\u0412\u043b\u0430\u0441\u0442\u0438\u0432\u043e\u0441\u0442\u0456","advanced_props":"\u0420\u043e\u0437\u0448\u0438\u0440\u0435\u043d\u0456 \u0432\u043b\u0430\u0441\u0442\u0438\u0432\u043e\u0441\u0442\u0456","event_props":"\u041f\u043e\u0434\u0456\u0457","popup_props":"\u0412\u043b\u0430\u0441\u0442\u0438\u0432\u043e\u0441\u0442\u0456 \u0432\u0438\u0440\u0438\u043d\u0430\u044e\u0447\u043e\u0433\u043e \u0432\u0456\u043a\u043d\u0430","general_props":"\u0417\u0430\u0433\u0430\u043b\u044c\u043d\u0456 \u0432\u043b\u0430\u0441\u0442\u0438\u0432\u043e\u0441\u0442\u0456","advanced_tab":"\u0414\u043e\u0434\u0430\u0442\u043a\u043e\u0432\u043e","events_tab":"\u041f\u043e\u0434\u0456\u0457","popup_tab":"\u0412\u0438\u0440\u0438\u043d\u0430\u044e\u0447\u0435 \u0432\u0456\u043a\u043d\u043e","general_tab":"\u0417\u0430\u0433\u0430\u043b\u044c\u043d\u0435",list:"\u0421\u043f\u0438\u0441\u043e\u043a \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u044c","is_external":"\u0412\u0432\u0435\u0434\u0435\u043d\u0435 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f \u0441\u0445\u043e\u0436\u0435 \u043d\u0430 \u0437\u043e\u0432\u043d\u0456\u0448\u043d\u0454 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f, \u0432\u0438 \u0431\u0430\u0436\u0430\u0454\u0442\u0435 \u0434\u043e\u0434\u0430\u0442\u0438 \u043f\u043e\u0442\u0440\u0456\u0431\u043d\u0438\u0439 \u043f\u0440\u0435\u0444\u0456\u043a\u0441 http://?","is_email":"\u0412\u0432\u0435\u0434\u0435\u043d\u0435 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f \u0441\u0445\u043e\u0436\u0435 \u043d\u0430 \u0430\u0434\u0440\u0435\u0441\u0443 \u0435\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u0457 \u043f\u043e\u0448\u0442\u0438, \u0432\u0438 \u0431\u0430\u0436\u0430\u0454\u0442\u0435 \u0434\u043e\u0434\u0430\u0442\u0438 \u043f\u043e\u0442\u0440\u0456\u0431\u043d\u0438\u0439 \u043f\u0440\u0435\u0444\u0456\u043a\u0441 mailto:?",titlefield:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a",target:"\u0412\u0456\u0434\u043a\u0440\u0438\u0442\u0438 \u0432...",url:"\u0410\u0434\u0440\u0435\u0441\u0430",title:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438/\u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f","link_list":"\u0421\u043f\u0438\u0441\u043e\u043a \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u044c",rtl:"\u0421\u043f\u0440\u0430\u0432\u0430 \u043b\u0456\u0432\u043e\u0440\u0443\u0447",ltr:"\u0417\u043b\u0456\u0432\u0430 \u043f\u0440\u0430\u0432\u043e\u0440\u0443\u0447",accesskey:"\u041a\u043b\u0430\u0432\u0456\u0448\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u0443",tabindex:"\u0422\u0430\u0431\u0456\u043d\u0434\u0435\u043a\u0441",rev:"\u0417\u0432\'\u044f\u0437\u043e\u043a \u043c\u0456\u0436 \u0446\u0456\u043b\u043b\u044e \u0442\u0430 \u0441\u0442\u043e\u0440\u0456\u043d\u043a\u043e\u044e",rel:"\u0417\u0432\'\u044f\u0437\u043e\u043a \u043c\u0456\u0436 \u0441\u0442\u043e\u0440\u0456\u043d\u043a\u043e\u044e \u0442\u0430 \u0446\u0456\u043b\u043b\u044e",mime:"MIME \u0442\u0438\u043f \u0446\u0456\u043b\u0456",encoding:"\u041a\u043e\u0434\u0443\u0432\u0430\u043d\u043d\u044f \u0446\u0456\u043b\u0456",langcode:"\u041a\u043e\u0434 \u043c\u043e\u0432\u0438","target_langcode":"\u041c\u043e\u0432\u0430 \u0446\u0456\u043b\u0456",width:"\u0428\u0438\u0440\u0438\u043d\u0430",height:"\u0412\u0438\u0441\u043e\u0442\u0430"}); \ No newline at end of file
diff --git a/program/js/tiny_mce/plugins/autolink/editor_plugin.js b/program/js/tiny_mce/plugins/autolink/editor_plugin.js
index 9662b50bc..d1c3502ac 100644
--- a/program/js/tiny_mce/plugins/autolink/editor_plugin.js
+++ b/program/js/tiny_mce/plugins/autolink/editor_plugin.js
@@ -1 +1 @@
-(function(){tinymce.create("tinymce.plugins.AutolinkPlugin",{init:function(a,b){var c=this;a.onKeyDown.addToTop(function(d,f){if(f.keyCode==13){return c.handleEnter(d)}});if(tinyMCE.isIE){return}a.onKeyPress.add(function(d,f){if(f.which==41){return c.handleEclipse(d)}});a.onKeyUp.add(function(d,f){if(f.keyCode==32){return c.handleSpacebar(d)}})},handleEclipse:function(a){this.parseCurrentLine(a,-1,"(",true)},handleSpacebar:function(a){this.parseCurrentLine(a,0,"",true)},handleEnter:function(a){this.parseCurrentLine(a,-1,"",false)},parseCurrentLine:function(i,d,b,g){var a,f,c,n,k,m,h,e,j;a=i.selection.getRng(true).cloneRange();if(a.startOffset<5){e=a.endContainer.previousSibling;if(e==null){if(a.endContainer.firstChild==null||a.endContainer.firstChild.nextSibling==null){return}e=a.endContainer.firstChild.nextSibling}j=e.length;a.setStart(e,j);a.setEnd(e,j);if(a.endOffset<5){return}f=a.endOffset;n=e}else{n=a.endContainer;if(n.nodeType!=3&&n.firstChild){while(n.nodeType!=3&&n.firstChild){n=n.firstChild}a.setStart(n,0);a.setEnd(n,n.nodeValue.length)}if(a.endOffset==1){f=2}else{f=a.endOffset-1-d}}c=f;do{a.setStart(n,f-2);a.setEnd(n,f-1);f-=1}while(a.toString()!=" "&&a.toString()!=""&&a.toString().charCodeAt(0)!=160&&(f-2)>=0&&a.toString()!=b);if(a.toString()==b||a.toString().charCodeAt(0)==160){a.setStart(n,f);a.setEnd(n,c);f+=1}else{if(a.startOffset==0){a.setStart(n,0);a.setEnd(n,c)}else{a.setStart(n,f);a.setEnd(n,c)}}var m=a.toString();if(m.charAt(m.length-1)=="."){a.setEnd(n,c-1)}m=a.toString();h=m.match(/^(https?:\/\/|ssh:\/\/|ftp:\/\/|file:\/|www\.|(?:mailto:)?[A-Z0-9._%+-]+@)(.+)$/i);if(h){if(h[1]=="www."){h[1]="http://www."}else{if(/@$/.test(h[1])&&!/^mailto:/.test(h[1])){h[1]="mailto:"+h[1]}}k=i.selection.getBookmark();i.selection.setRng(a);tinyMCE.execCommand("createlink",false,h[1]+h[2]);i.selection.moveToBookmark(k);i.nodeChanged();if(tinyMCE.isWebKit){i.selection.collapse(false);var l=Math.min(n.length,c+1);a.setStart(n,l);a.setEnd(n,l);i.selection.setRng(a)}}},getInfo:function(){return{longname:"Autolink",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autolink",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("autolink",tinymce.plugins.AutolinkPlugin)})(); \ No newline at end of file
+(function(){tinymce.create("tinymce.plugins.AutolinkPlugin",{init:function(a,b){var c=this;a.onKeyDown.addToTop(function(d,f){if(f.keyCode==13){return c.handleEnter(d)}});if(tinyMCE.isIE){return}a.onKeyPress.add(function(d,f){if(f.which==41){return c.handleEclipse(d)}});a.onKeyUp.add(function(d,f){if(f.keyCode==32){return c.handleSpacebar(d)}})},handleEclipse:function(a){this.parseCurrentLine(a,-1,"(",true)},handleSpacebar:function(a){this.parseCurrentLine(a,0,"",true)},handleEnter:function(a){this.parseCurrentLine(a,-1,"",false)},parseCurrentLine:function(i,d,b,g){var a,f,c,n,k,m,h,e,j;a=i.selection.getRng(true).cloneRange();if(a.startOffset<5){e=a.endContainer.previousSibling;if(e==null){if(a.endContainer.firstChild==null||a.endContainer.firstChild.nextSibling==null){return}e=a.endContainer.firstChild.nextSibling}j=e.length;a.setStart(e,j);a.setEnd(e,j);if(a.endOffset<5){return}f=a.endOffset;n=e}else{n=a.endContainer;if(n.nodeType!=3&&n.firstChild){while(n.nodeType!=3&&n.firstChild){n=n.firstChild}if(n.nodeType==3){a.setStart(n,0);a.setEnd(n,n.nodeValue.length)}}if(a.endOffset==1){f=2}else{f=a.endOffset-1-d}}c=f;do{a.setStart(n,f-2);a.setEnd(n,f-1);f-=1}while(a.toString()!=" "&&a.toString()!=""&&a.toString().charCodeAt(0)!=160&&(f-2)>=0&&a.toString()!=b);if(a.toString()==b||a.toString().charCodeAt(0)==160){a.setStart(n,f);a.setEnd(n,c);f+=1}else{if(a.startOffset==0){a.setStart(n,0);a.setEnd(n,c)}else{a.setStart(n,f);a.setEnd(n,c)}}var m=a.toString();if(m.charAt(m.length-1)=="."){a.setEnd(n,c-1)}m=a.toString();h=m.match(/^(https?:\/\/|ssh:\/\/|ftp:\/\/|file:\/|www\.|(?:mailto:)?[A-Z0-9._%+-]+@)(.+)$/i);if(h){if(h[1]=="www."){h[1]="http://www."}else{if(/@$/.test(h[1])&&!/^mailto:/.test(h[1])){h[1]="mailto:"+h[1]}}k=i.selection.getBookmark();i.selection.setRng(a);tinyMCE.execCommand("createlink",false,h[1]+h[2]);i.selection.moveToBookmark(k);i.nodeChanged();if(tinyMCE.isWebKit){i.selection.collapse(false);var l=Math.min(n.length,c+1);a.setStart(n,l);a.setEnd(n,l);i.selection.setRng(a)}}},getInfo:function(){return{longname:"Autolink",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autolink",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("autolink",tinymce.plugins.AutolinkPlugin)})(); \ No newline at end of file
diff --git a/program/js/tiny_mce/plugins/autolink/editor_plugin_src.js b/program/js/tiny_mce/plugins/autolink/editor_plugin_src.js
index 8c1cd6881..c05fbbc09 100644
--- a/program/js/tiny_mce/plugins/autolink/editor_plugin_src.js
+++ b/program/js/tiny_mce/plugins/autolink/editor_plugin_src.js
@@ -89,8 +89,11 @@
while (endContainer.nodeType != 3 && endContainer.firstChild)
endContainer = endContainer.firstChild;
- r.setStart(endContainer, 0);
- r.setEnd(endContainer, endContainer.nodeValue.length);
+ // Move range to text node
+ if (endContainer.nodeType == 3) {
+ r.setStart(endContainer, 0);
+ r.setEnd(endContainer, endContainer.nodeValue.length);
+ }
}
if (r.endOffset == 1)
diff --git a/program/js/tiny_mce/plugins/autosave/editor_plugin.js b/program/js/tiny_mce/plugins/autosave/editor_plugin.js
index f7d057600..6da98ff33 100644
--- a/program/js/tiny_mce/plugins/autosave/editor_plugin.js
+++ b/program/js/tiny_mce/plugins/autosave/editor_plugin.js
@@ -1 +1 @@
-(function(e){var c="autosave",g="restoredraft",b=true,f,d,a=e.util.Dispatcher;e.create("tinymce.plugins.AutoSave",{init:function(i,j){var h=this,l=i.settings;h.editor=i;function k(n){var m={s:1000,m:60000};n=/^(\d+)([ms]?)$/.exec(""+n);return(n[2]?m[n[2]]:1)*parseInt(n)}e.each({ask_before_unload:b,interval:"30s",retention:"20m",minlength:50},function(n,m){m=c+"_"+m;if(l[m]===f){l[m]=n}});l.autosave_interval=k(l.autosave_interval);l.autosave_retention=k(l.autosave_retention);i.addButton(g,{title:c+".restore_content",onclick:function(){if(i.getContent({draft:true}).replace(/\s|&nbsp;|<\/?p[^>]*>|<br[^>]*>/gi,"").length>0){i.windowManager.confirm(c+".warning_message",function(m){if(m){h.restoreDraft()}})}else{h.restoreDraft()}}});i.onNodeChange.add(function(){var m=i.controlManager;if(m.get(g)){m.setDisabled(g,!h.hasDraft())}});i.onInit.add(function(){if(i.controlManager.get(g)){h.setupStorage(i);setInterval(function(){h.storeDraft();i.nodeChanged()},l.autosave_interval)}});h.onStoreDraft=new a(h);h.onRestoreDraft=new a(h);h.onRemoveDraft=new a(h);if(!d){window.onbeforeunload=e.plugins.AutoSave._beforeUnloadHandler;d=b}},getInfo:function(){return{longname:"Auto save",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autosave",version:e.majorVersion+"."+e.minorVersion}},getExpDate:function(){return new Date(new Date().getTime()+this.editor.settings.autosave_retention).toUTCString()},setupStorage:function(i){var h=this,k=c+"_test",j="OK";h.key=c+i.id;e.each([function(){if(localStorage){localStorage.setItem(k,j);if(localStorage.getItem(k)===j){localStorage.removeItem(k);return localStorage}}},function(){if(sessionStorage){sessionStorage.setItem(k,j);if(sessionStorage.getItem(k)===j){sessionStorage.removeItem(k);return sessionStorage}}},function(){if(e.isIE){i.getElement().style.behavior="url('#default#userData')";return{autoExpires:b,setItem:function(l,n){var m=i.getElement();m.setAttribute(l,n);m.expires=h.getExpDate();try{m.save("TinyMCE")}catch(o){}},getItem:function(l){var m=i.getElement();try{m.load("TinyMCE");return m.getAttribute(l)}catch(n){return null}},removeItem:function(l){i.getElement().removeAttribute(l)}}}},],function(l){try{h.storage=l();if(h.storage){return false}}catch(m){}})},storeDraft:function(){var i=this,l=i.storage,j=i.editor,h,k;if(l){if(!l.getItem(i.key)&&!j.isDirty()){return}k=j.getContent({draft:true});if(k.length>j.settings.autosave_minlength){h=i.getExpDate();if(!i.storage.autoExpires){i.storage.setItem(i.key+"_expires",h)}i.storage.setItem(i.key,k);i.onStoreDraft.dispatch(i,{expires:h,content:k})}}},restoreDraft:function(){var h=this,j=h.storage,i;if(j){i=j.getItem(h.key);if(i){h.editor.setContent(i);h.onRestoreDraft.dispatch(h,{content:i})}}},hasDraft:function(){var h=this,k=h.storage,i,j;if(k){j=!!k.getItem(h.key);if(j){if(!h.storage.autoExpires){i=new Date(k.getItem(h.key+"_expires"));if(new Date().getTime()<i.getTime()){return b}h.removeDraft()}else{return b}}}return false},removeDraft:function(){var h=this,k=h.storage,i=h.key,j;if(k){j=k.getItem(i);k.removeItem(i);k.removeItem(i+"_expires");if(j){h.onRemoveDraft.dispatch(h,{content:j})}}},"static":{_beforeUnloadHandler:function(h){var i;e.each(tinyMCE.editors,function(j){if(j.plugins.autosave){j.plugins.autosave.storeDraft()}if(j.getParam("fullscreen_is_enabled")){return}if(!i&&j.isDirty()&&j.getParam("autosave_ask_before_unload")){i=j.getLang("autosave.unload_msg")}});return i}}});e.PluginManager.add("autosave",e.plugins.AutoSave)})(tinymce); \ No newline at end of file
+(function(e){var c="autosave",g="restoredraft",b=true,f,d,a=e.util.Dispatcher;e.create("tinymce.plugins.AutoSave",{init:function(i,j){var h=this,l=i.settings;h.editor=i;function k(n){var m={s:1000,m:60000};n=/^(\d+)([ms]?)$/.exec(""+n);return(n[2]?m[n[2]]:1)*parseInt(n)}e.each({ask_before_unload:b,interval:"30s",retention:"20m",minlength:50},function(n,m){m=c+"_"+m;if(l[m]===f){l[m]=n}});l.autosave_interval=k(l.autosave_interval);l.autosave_retention=k(l.autosave_retention);i.addButton(g,{title:c+".restore_content",onclick:function(){if(i.getContent({draft:true}).replace(/\s|&nbsp;|<\/?p[^>]*>|<br[^>]*>/gi,"").length>0){i.windowManager.confirm(c+".warning_message",function(m){if(m){h.restoreDraft()}})}else{h.restoreDraft()}}});i.onNodeChange.add(function(){var m=i.controlManager;if(m.get(g)){m.setDisabled(g,!h.hasDraft())}});i.onInit.add(function(){if(i.controlManager.get(g)){h.setupStorage(i);setInterval(function(){if(!i.removed){h.storeDraft();i.nodeChanged()}},l.autosave_interval)}});h.onStoreDraft=new a(h);h.onRestoreDraft=new a(h);h.onRemoveDraft=new a(h);if(!d){window.onbeforeunload=e.plugins.AutoSave._beforeUnloadHandler;d=b}},getInfo:function(){return{longname:"Auto save",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/autosave",version:e.majorVersion+"."+e.minorVersion}},getExpDate:function(){return new Date(new Date().getTime()+this.editor.settings.autosave_retention).toUTCString()},setupStorage:function(i){var h=this,k=c+"_test",j="OK";h.key=c+i.id;e.each([function(){if(localStorage){localStorage.setItem(k,j);if(localStorage.getItem(k)===j){localStorage.removeItem(k);return localStorage}}},function(){if(sessionStorage){sessionStorage.setItem(k,j);if(sessionStorage.getItem(k)===j){sessionStorage.removeItem(k);return sessionStorage}}},function(){if(e.isIE){i.getElement().style.behavior="url('#default#userData')";return{autoExpires:b,setItem:function(l,n){var m=i.getElement();m.setAttribute(l,n);m.expires=h.getExpDate();try{m.save("TinyMCE")}catch(o){}},getItem:function(l){var m=i.getElement();try{m.load("TinyMCE");return m.getAttribute(l)}catch(n){return null}},removeItem:function(l){i.getElement().removeAttribute(l)}}}},],function(l){try{h.storage=l();if(h.storage){return false}}catch(m){}})},storeDraft:function(){var i=this,l=i.storage,j=i.editor,h,k;if(l){if(!l.getItem(i.key)&&!j.isDirty()){return}k=j.getContent({draft:true});if(k.length>j.settings.autosave_minlength){h=i.getExpDate();if(!i.storage.autoExpires){i.storage.setItem(i.key+"_expires",h)}i.storage.setItem(i.key,k);i.onStoreDraft.dispatch(i,{expires:h,content:k})}}},restoreDraft:function(){var h=this,j=h.storage,i;if(j){i=j.getItem(h.key);if(i){h.editor.setContent(i);h.onRestoreDraft.dispatch(h,{content:i})}}},hasDraft:function(){var h=this,k=h.storage,i,j;if(k){j=!!k.getItem(h.key);if(j){if(!h.storage.autoExpires){i=new Date(k.getItem(h.key+"_expires"));if(new Date().getTime()<i.getTime()){return b}h.removeDraft()}else{return b}}}return false},removeDraft:function(){var h=this,k=h.storage,i=h.key,j;if(k){j=k.getItem(i);k.removeItem(i);k.removeItem(i+"_expires");if(j){h.onRemoveDraft.dispatch(h,{content:j})}}},"static":{_beforeUnloadHandler:function(h){var i;e.each(tinyMCE.editors,function(j){if(j.plugins.autosave){j.plugins.autosave.storeDraft()}if(j.getParam("fullscreen_is_enabled")){return}if(!i&&j.isDirty()&&j.getParam("autosave_ask_before_unload")){i=j.getLang("autosave.unload_msg")}});return i}}});e.PluginManager.add("autosave",e.plugins.AutoSave)})(tinymce); \ No newline at end of file
diff --git a/program/js/tiny_mce/plugins/autosave/editor_plugin_src.js b/program/js/tiny_mce/plugins/autosave/editor_plugin_src.js
index 8311483f9..8b308f5aa 100644
--- a/program/js/tiny_mce/plugins/autosave/editor_plugin_src.js
+++ b/program/js/tiny_mce/plugins/autosave/editor_plugin_src.js
@@ -136,8 +136,10 @@
// Auto save contents each interval time
setInterval(function() {
- self.storeDraft();
- ed.nodeChanged();
+ if (!ed.removed) {
+ self.storeDraft();
+ ed.nodeChanged();
+ }
}, settings.autosave_interval);
}
});
diff --git a/program/js/tiny_mce/plugins/contextmenu/editor_plugin.js b/program/js/tiny_mce/plugins/contextmenu/editor_plugin.js
index 4f99010e8..2ed042c3a 100644
--- a/program/js/tiny_mce/plugins/contextmenu/editor_plugin.js
+++ b/program/js/tiny_mce/plugins/contextmenu/editor_plugin.js
@@ -1 +1 @@
-(function(){var a=tinymce.dom.Event,c=tinymce.each,b=tinymce.DOM;tinymce.create("tinymce.plugins.ContextMenu",{init:function(e){var h=this,f,d,i;h.editor=e;d=e.settings.contextmenu_never_use_native;h.onContextMenu=new tinymce.util.Dispatcher(this);f=e.onContextMenu.add(function(j,k){if((i!==0?i:k.ctrlKey)&&!d){return}a.cancel(k);if(k.target.nodeName=="IMG"){j.selection.select(k.target)}h._getMenu(j).showMenu(k.clientX||k.pageX,k.clientY||k.pageY);a.add(j.getDoc(),"click",function(l){g(j,l)});j.nodeChanged()});e.onRemove.add(function(){if(h._menu){h._menu.removeAll()}});function g(j,k){i=0;if(k&&k.button==2){i=k.ctrlKey;return}if(h._menu){h._menu.removeAll();h._menu.destroy();a.remove(j.getDoc(),"click",g);h._menu=null}}e.onMouseDown.add(g);e.onKeyDown.add(g);e.onKeyDown.add(function(j,k){if(k.shiftKey&&!k.ctrlKey&&!k.altKey&&k.keyCode===121){a.cancel(k);f(j,k)}})},getInfo:function(){return{longname:"Contextmenu",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/contextmenu",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_getMenu:function(e){var g=this,d=g._menu,j=e.selection,f=j.isCollapsed(),h=j.getNode()||e.getBody(),i,k;if(d){d.removeAll();d.destroy()}k=b.getPos(e.getContentAreaContainer());d=e.controlManager.createDropMenu("contextmenu",{offset_x:k.x+e.getParam("contextmenu_offset_x",0),offset_y:k.y+e.getParam("contextmenu_offset_y",0),constrain:1,keyboard_focus:true});g._menu=d;d.add({title:"advanced.cut_desc",icon:"cut",cmd:"Cut"}).setDisabled(f);d.add({title:"advanced.copy_desc",icon:"copy",cmd:"Copy"}).setDisabled(f);d.add({title:"advanced.paste_desc",icon:"paste",cmd:"Paste"});if((h.nodeName=="A"&&!e.dom.getAttrib(h,"name"))||!f){d.addSeparator();d.add({title:"advanced.link_desc",icon:"link",cmd:e.plugins.advlink?"mceAdvLink":"mceLink",ui:true});d.add({title:"advanced.unlink_desc",icon:"unlink",cmd:"UnLink"})}d.addSeparator();d.add({title:"advanced.image_desc",icon:"image",cmd:e.plugins.advimage?"mceAdvImage":"mceImage",ui:true});d.addSeparator();i=d.addMenu({title:"contextmenu.align"});i.add({title:"contextmenu.left",icon:"justifyleft",cmd:"JustifyLeft"});i.add({title:"contextmenu.center",icon:"justifycenter",cmd:"JustifyCenter"});i.add({title:"contextmenu.right",icon:"justifyright",cmd:"JustifyRight"});i.add({title:"contextmenu.full",icon:"justifyfull",cmd:"JustifyFull"});g.onContextMenu.dispatch(g,d,h,f);return d}});tinymce.PluginManager.add("contextmenu",tinymce.plugins.ContextMenu)})(); \ No newline at end of file
+(function(){var a=tinymce.dom.Event,c=tinymce.each,b=tinymce.DOM;tinymce.create("tinymce.plugins.ContextMenu",{init:function(f){var i=this,g,d,j,e;i.editor=f;d=f.settings.contextmenu_never_use_native;i.onContextMenu=new tinymce.util.Dispatcher(this);e=function(k){h(f,k)};g=f.onContextMenu.add(function(k,l){if((j!==0?j:l.ctrlKey)&&!d){return}a.cancel(l);if(l.target.nodeName=="IMG"){k.selection.select(l.target)}i._getMenu(k).showMenu(l.clientX||l.pageX,l.clientY||l.pageY);a.add(k.getDoc(),"click",e);k.nodeChanged()});f.onRemove.add(function(){if(i._menu){i._menu.removeAll()}});function h(k,l){j=0;if(l&&l.button==2){j=l.ctrlKey;return}if(i._menu){i._menu.removeAll();i._menu.destroy();a.remove(k.getDoc(),"click",e);i._menu=null}}f.onMouseDown.add(h);f.onKeyDown.add(h);f.onKeyDown.add(function(k,l){if(l.shiftKey&&!l.ctrlKey&&!l.altKey&&l.keyCode===121){a.cancel(l);g(k,l)}})},getInfo:function(){return{longname:"Contextmenu",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/contextmenu",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_getMenu:function(e){var g=this,d=g._menu,j=e.selection,f=j.isCollapsed(),h=j.getNode()||e.getBody(),i,k;if(d){d.removeAll();d.destroy()}k=b.getPos(e.getContentAreaContainer());d=e.controlManager.createDropMenu("contextmenu",{offset_x:k.x+e.getParam("contextmenu_offset_x",0),offset_y:k.y+e.getParam("contextmenu_offset_y",0),constrain:1,keyboard_focus:true});g._menu=d;d.add({title:"advanced.cut_desc",icon:"cut",cmd:"Cut"}).setDisabled(f);d.add({title:"advanced.copy_desc",icon:"copy",cmd:"Copy"}).setDisabled(f);d.add({title:"advanced.paste_desc",icon:"paste",cmd:"Paste"});if((h.nodeName=="A"&&!e.dom.getAttrib(h,"name"))||!f){d.addSeparator();d.add({title:"advanced.link_desc",icon:"link",cmd:e.plugins.advlink?"mceAdvLink":"mceLink",ui:true});d.add({title:"advanced.unlink_desc",icon:"unlink",cmd:"UnLink"})}d.addSeparator();d.add({title:"advanced.image_desc",icon:"image",cmd:e.plugins.advimage?"mceAdvImage":"mceImage",ui:true});d.addSeparator();i=d.addMenu({title:"contextmenu.align"});i.add({title:"contextmenu.left",icon:"justifyleft",cmd:"JustifyLeft"});i.add({title:"contextmenu.center",icon:"justifycenter",cmd:"JustifyCenter"});i.add({title:"contextmenu.right",icon:"justifyright",cmd:"JustifyRight"});i.add({title:"contextmenu.full",icon:"justifyfull",cmd:"JustifyFull"});g.onContextMenu.dispatch(g,d,h,f);return d}});tinymce.PluginManager.add("contextmenu",tinymce.plugins.ContextMenu)})(); \ No newline at end of file
diff --git a/program/js/tiny_mce/plugins/contextmenu/editor_plugin_src.js b/program/js/tiny_mce/plugins/contextmenu/editor_plugin_src.js
index 004d011d0..48b0fff99 100644
--- a/program/js/tiny_mce/plugins/contextmenu/editor_plugin_src.js
+++ b/program/js/tiny_mce/plugins/contextmenu/editor_plugin_src.js
@@ -27,7 +27,7 @@
* @param {string} url Absolute URL to where the plugin is located.
*/
init : function(ed) {
- var t = this, showMenu, contextmenuNeverUseNative, realCtrlKey;
+ var t = this, showMenu, contextmenuNeverUseNative, realCtrlKey, hideMenu;
t.editor = ed;
@@ -42,6 +42,10 @@
*/
t.onContextMenu = new tinymce.util.Dispatcher(this);
+ hideMenu = function(e) {
+ hide(ed, e);
+ };
+
showMenu = ed.onContextMenu.add(function(ed, e) {
// Block TinyMCE menu on ctrlKey and work around Safari issue
if ((realCtrlKey !== 0 ? realCtrlKey : e.ctrlKey) && !contextmenuNeverUseNative)
@@ -54,13 +58,11 @@
ed.selection.select(e.target);
t._getMenu(ed).showMenu(e.clientX || e.pageX, e.clientY || e.pageY);
- Event.add(ed.getDoc(), 'click', function(e) {
- hide(ed, e);
- });
+ Event.add(ed.getDoc(), 'click', hideMenu);
ed.nodeChanged();
});
-
+
ed.onRemove.add(function() {
if (t._menu)
t._menu.removeAll();
@@ -78,8 +80,8 @@
if (t._menu) {
t._menu.removeAll();
- t._menu.destroy();
- Event.remove(ed.getDoc(), 'click', hide);
+ t._menu.destroy();
+ Event.remove(ed.getDoc(), 'click', hideMenu);
t._menu = null;
}
};
diff --git a/program/js/tiny_mce/plugins/directionality/editor_plugin.js b/program/js/tiny_mce/plugins/directionality/editor_plugin.js
index bce8e7399..90847e78e 100644
--- a/program/js/tiny_mce/plugins/directionality/editor_plugin.js
+++ b/program/js/tiny_mce/plugins/directionality/editor_plugin.js
@@ -1 +1 @@
-(function(){tinymce.create("tinymce.plugins.Directionality",{init:function(a,b){var c=this;c.editor=a;a.addCommand("mceDirectionLTR",function(){var d=a.dom.getParent(a.selection.getNode(),a.dom.isBlock);if(d){if(a.dom.getAttrib(d,"dir")!="ltr"){a.dom.setAttrib(d,"dir","ltr")}else{a.dom.setAttrib(d,"dir","")}}a.nodeChanged()});a.addCommand("mceDirectionRTL",function(){var d=a.dom.getParent(a.selection.getNode(),a.dom.isBlock);if(d){if(a.dom.getAttrib(d,"dir")!="rtl"){a.dom.setAttrib(d,"dir","rtl")}else{a.dom.setAttrib(d,"dir","")}}a.nodeChanged()});a.addButton("ltr",{title:"directionality.ltr_desc",cmd:"mceDirectionLTR"});a.addButton("rtl",{title:"directionality.rtl_desc",cmd:"mceDirectionRTL"});a.onNodeChange.add(c._nodeChange,c)},getInfo:function(){return{longname:"Directionality",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/directionality",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_nodeChange:function(b,a,e){var d=b.dom,c;e=d.getParent(e,d.isBlock);if(!e){a.setDisabled("ltr",1);a.setDisabled("rtl",1);return}c=d.getAttrib(e,"dir");a.setActive("ltr",c=="ltr");a.setDisabled("ltr",0);a.setActive("rtl",c=="rtl");a.setDisabled("rtl",0)}});tinymce.PluginManager.add("directionality",tinymce.plugins.Directionality)})(); \ No newline at end of file
+(function(){tinymce.create("tinymce.plugins.Directionality",{init:function(b,c){var d=this;d.editor=b;function a(e){var h=b.dom,g,f=b.selection.getSelectedBlocks();if(f.length){g=h.getAttrib(f[0],"dir");tinymce.each(f,function(i){if(!h.getParent(i.parentNode,"*[dir='"+e+"']",h.getRoot())){if(g!=e){h.setAttrib(i,"dir",e)}else{h.setAttrib(i,"dir",null)}}});b.nodeChanged()}}b.addCommand("mceDirectionLTR",function(){a("ltr")});b.addCommand("mceDirectionRTL",function(){a("rtl")});b.addButton("ltr",{title:"directionality.ltr_desc",cmd:"mceDirectionLTR"});b.addButton("rtl",{title:"directionality.rtl_desc",cmd:"mceDirectionRTL"});b.onNodeChange.add(d._nodeChange,d)},getInfo:function(){return{longname:"Directionality",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/directionality",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_nodeChange:function(b,a,e){var d=b.dom,c;e=d.getParent(e,d.isBlock);if(!e){a.setDisabled("ltr",1);a.setDisabled("rtl",1);return}c=d.getAttrib(e,"dir");a.setActive("ltr",c=="ltr");a.setDisabled("ltr",0);a.setActive("rtl",c=="rtl");a.setDisabled("rtl",0)}});tinymce.PluginManager.add("directionality",tinymce.plugins.Directionality)})(); \ No newline at end of file
diff --git a/program/js/tiny_mce/plugins/directionality/editor_plugin_src.js b/program/js/tiny_mce/plugins/directionality/editor_plugin_src.js
index 4444959bf..b13401412 100644
--- a/program/js/tiny_mce/plugins/directionality/editor_plugin_src.js
+++ b/program/js/tiny_mce/plugins/directionality/editor_plugin_src.js
@@ -15,30 +15,33 @@
t.editor = ed;
- ed.addCommand('mceDirectionLTR', function() {
- var e = ed.dom.getParent(ed.selection.getNode(), ed.dom.isBlock);
-
- if (e) {
- if (ed.dom.getAttrib(e, "dir") != "ltr")
- ed.dom.setAttrib(e, "dir", "ltr");
- else
- ed.dom.setAttrib(e, "dir", "");
+ function setDir(dir) {
+ var dom = ed.dom, curDir, blocks = ed.selection.getSelectedBlocks();
+
+ if (blocks.length) {
+ curDir = dom.getAttrib(blocks[0], "dir");
+
+ tinymce.each(blocks, function(block) {
+ // Add dir to block if the parent block doesn't already have that dir
+ if (!dom.getParent(block.parentNode, "*[dir='" + dir + "']", dom.getRoot())) {
+ if (curDir != dir) {
+ dom.setAttrib(block, "dir", dir);
+ } else {
+ dom.setAttrib(block, "dir", null);
+ }
+ }
+ });
+
+ ed.nodeChanged();
}
+ }
- ed.nodeChanged();
+ ed.addCommand('mceDirectionLTR', function() {
+ setDir("ltr");
});
ed.addCommand('mceDirectionRTL', function() {
- var e = ed.dom.getParent(ed.selection.getNode(), ed.dom.isBlock);
-
- if (e) {
- if (ed.dom.getAttrib(e, "dir") != "rtl")
- ed.dom.setAttrib(e, "dir", "rtl");
- else
- ed.dom.setAttrib(e, "dir", "");
- }
-
- ed.nodeChanged();
+ setDir("rtl");
});
ed.addButton('ltr', {title : 'directionality.ltr_desc', cmd : 'mceDirectionLTR'});
diff --git a/program/js/tiny_mce/plugins/emotions/langs/uk_dlg.js b/program/js/tiny_mce/plugins/emotions/langs/uk_dlg.js
index ec10c33c9..8798e9eca 100644
--- a/program/js/tiny_mce/plugins/emotions/langs/uk_dlg.js
+++ b/program/js/tiny_mce/plugins/emotions/langs/uk_dlg.js
@@ -1 +1 @@
-tinyMCE.addI18n('uk.emotions_dlg',{cry:"\u041f\u043b\u0430\u0447",cool:"Cool",desc:"\u041f\u043e\u0441\u043c\u0456\u0448\u043a\u0438",title:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u043f\u043e\u0441\u043c\u0456\u0448\u043a\u0443",yell:"\u0417\u043e\u0439\u043a",wink:"\u041f\u0456\u0434\u043c\u043e\u0440\u0433\u0443\u0454",undecided:"\u041d\u0435\u0440\u0456\u0448\u0443\u0447\u0456\u0441\u0442\u044c","tongue_out":"\u041f\u043e\u043a\u0430\u0437\u0443\u0454 \u044f\u0437\u0438\u043a\u0430",surprised:"\u0417\u0434\u0438\u0432\u043e\u0432\u0430\u043d\u0456\u0441\u0442\u044c",smile:"\u041f\u043e\u0441\u043c\u0456\u0448\u043a\u0430",sealed:"Sealed","money_mouth":"\u0413\u0440\u043e\u0449\u0456 \u0432 \u0440\u043e\u0442\u0456",laughing:"\u0421\u043c\u0456\u0445",kiss:"\u041f\u043e\u0446\u0456\u043b\u0443\u043d\u043e\u043a",innocent:"\u041d\u0435\u0432\u0438\u043d\u043d\u0456\u0441\u0442\u044c",frown:"\u041d\u0430\u0441\u0443\u043f\u043b\u0435\u043d\u043d\u0456\u0441\u0442\u044c","foot_in_mouth":"\u041d\u043e\u0433\u0430 \u0432 \u0440\u043e\u0442\u0456",embarassed:"\u0417\u0431\u0435\u043d\u0442\u0435\u0436\u0435\u043d\u043d\u044f",usage:"Use left and right arrows to navigate."}); \ No newline at end of file
+tinyMCE.addI18n('uk.emotions_dlg',{cry:"\u041f\u043b\u0430\u0447",cool:"Cool",desc:"\u041f\u043e\u0441\u043c\u0456\u0448\u043a\u0438",title:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u043f\u043e\u0441\u043c\u0456\u0448\u043a\u0443",yell:"\u0417\u043e\u0439\u043a",wink:"\u041f\u0456\u0434\u043c\u043e\u0440\u0433\u0443\u0454",undecided:"\u041d\u0435\u0440\u0456\u0448\u0443\u0447\u0456\u0441\u0442\u044c","tongue_out":"\u041f\u043e\u043a\u0430\u0437\u0443\u0454 \u044f\u0437\u0438\u043a\u0430",surprised:"\u0417\u0434\u0438\u0432\u043e\u0432\u0430\u043d\u0456\u0441\u0442\u044c",smile:"\u041f\u043e\u0441\u043c\u0456\u0448\u043a\u0430",sealed:"Sealed","money_mouth":"\u0413\u0440\u043e\u0449\u0456 \u0432 \u0440\u043e\u0442\u0456",laughing:"\u0421\u043c\u0456\u0445",kiss:"\u041f\u043e\u0446\u0456\u043b\u0443\u043d\u043e\u043a",innocent:"\u041d\u0435\u0432\u0438\u043d\u043d\u0456\u0441\u0442\u044c",frown:"\u041d\u0430\u0441\u0443\u043f\u043b\u0435\u043d\u043d\u0456\u0441\u0442\u044c","foot_in_mouth":"\u041d\u043e\u0433\u0430 \u0432 \u0440\u043e\u0442\u0456",embarassed:"\u0417\u0431\u0435\u043d\u0442\u0435\u0436\u0435\u043d\u043d\u044f",usage:"\u0412\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0439\u0442\u0435 \u0441\u0442\u0440\u0456\u043b\u043a\u0438 \u0432\u043b\u0456\u0432\u043e \u0442\u0430 \u0432\u043f\u0440\u0430\u0432\u043e \u0434\u043b\u044f \u043d\u0430\u0432\u0456\u0433\u0430\u0446\u0456\u0457"}); \ No newline at end of file
diff --git a/program/js/tiny_mce/plugins/fullpage/langs/he_dlg.js b/program/js/tiny_mce/plugins/fullpage/langs/he_dlg.js
index 341e5bb4c..69faae39a 100644
--- a/program/js/tiny_mce/plugins/fullpage/langs/he_dlg.js
+++ b/program/js/tiny_mce/plugins/fullpage/langs/he_dlg.js
@@ -1 +1 @@
-tinyMCE.addI18n('he.fullpage_dlg',{title:"\u05de\u05d0\u05e4\u05d9\u05d9\u05e0\u05d9 \u05de\u05e1\u05de\u05da","meta_tab":"\u05db\u05dc\u05dc\u05d9","appearance_tab":"\u05de\u05e8\u05d0\u05d4","advanced_tab":"\u05de\u05ea\u05e7\u05d3\u05dd","meta_props":"\u05ea\u05d2\u05d9 \u05de\u05d8\u05d4",langprops:"\u05e9\u05e4\u05d4 \u05d5\u05e7\u05d9\u05d3\u05d5\u05d3","meta_title":"\u05db\u05d5\u05ea\u05e8\u05ea","meta_keywords":"\u05de\u05d9\u05dc\u05d5\u05ea \u05de\u05e4\u05ea\u05d7","meta_description":"\u05ea\u05d9\u05d0\u05d5\u05e8","meta_robots":"\u05e8\u05d5\u05d1\u05d5\u05d8\u05d9\u05dd",doctypes:"Doctype",langcode:"\u05e7\u05d5\u05d3 \u05d4\u05e9\u05e4\u05d4",langdir:"\u05db\u05d9\u05d5\u05d5\u05df \u05d4\u05e9\u05e4\u05d4",ltr:"\u05de\u05e9\u05de\u05d0\u05dc \u05dc\u05d9\u05de\u05d9\u05df",rtl:"\u05de\u05d9\u05de\u05d9\u05df \u05dc\u05e9\u05de\u05d0\u05dc","xml_pi":"XML declaration",encoding:"\u05e7\u05d9\u05d3\u05d5\u05d3 \u05ea\u05d5\u05d5\u05d9\u05dd","appearance_bgprops":"\u05de\u05d0\u05e4\u05d9\u05d9\u05e0\u05d9 \u05e8\u05e7\u05e2","appearance_marginprops":"Body margins","appearance_linkprops":"\u05e6\u05d1\u05e2 \u05e7\u05d9\u05e9\u05d5\u05e8\u05d9\u05dd","appearance_textprops":"Text properties",bgcolor:"\u05e6\u05d1\u05e2 \u05e8\u05e7\u05e2",bgimage:"\u05ea\u05de\u05d5\u05e0\u05ea \u05e8\u05e7\u05e2","left_margin":"\u05e9\u05d5\u05dc\u05d9\u05d9\u05dd \u05e9\u05de\u05d0\u05dc\u05d9\u05d9\u05dd","right_margin":"\u05e9\u05d5\u05dc\u05d9\u05d9\u05dd \u05d9\u05de\u05e0\u05d9\u05d9\u05dd","top_margin":"\u05e9\u05d5\u05dc\u05d9\u05d9\u05dd \u05e2\u05dc\u05d9\u05d5\u05e0\u05d9\u05dd","bottom_margin":"\u05e9\u05d5\u05dc\u05d9\u05d9\u05dd \u05ea\u05d7\u05ea\u05d9\u05d9\u05dd","text_color":"\u05e6\u05d1\u05e2 \u05d8\u05e7\u05e1\u05d8","font_size":"\u05d2\u05d5\u05d3\u05dc \u05d2\u05d5\u05e4\u05df","font_face":"\u05e1\u05d5\u05d2 \u05d2\u05d5\u05e4\u05df","link_color":"\u05e6\u05d1\u05e2 \u05e7\u05d9\u05e9\u05d5\u05e8","hover_color":"\u05e6\u05d1\u05e2 \u05e7\u05d9\u05e9\u05d5\u05e8 \u05d1\u05de\u05e2\u05d1\u05e8 \u05e2\u05db\u05d1\u05e8","visited_color":"\u05e6\u05d1\u05e2 \u05e7\u05d9\u05e9\u05d5\u05e8 \u05e9\u05e0\u05e6\u05e4\u05d4","active_color":"\u05e6\u05d1\u05e2 \u05e7\u05d9\u05e9\u05d5\u05e8 \u05e4\u05e2\u05d9\u05dc",textcolor:"\u05e6\u05d1\u05e2",fontsize:"\u05d2\u05d5\u05d3\u05dc \u05d2\u05d5\u05e4\u05df",fontface:"\u05d2\u05d5\u05e4\u05df","meta_index_follow":"Index and follow the links","meta_index_nofollow":"Index and don\'t follow the links","meta_noindex_follow":"Do not index but follow the links","meta_noindex_nofollow":"Do not index and don\\\'t follow the links","appearance_style":"Stylesheet and style properties",stylesheet:"\u05e1\u05d2\u05e0\u05d5\u05df \u05e2\u05d9\u05e6\u05d5\u05d1",style:"\u05e2\u05d9\u05e6\u05d5\u05d1",author:"\u05db\u05d5\u05ea\u05d1",copyright:"\u05d6\u05db\u05d5\u05d9\u05d5\u05ea \u05d9\u05d5\u05e6\u05e8\u05d9\u05dd",add:"Add new element",remove:"Remove selected element",moveup:"Move selected element up",movedown:"Move selected element down","head_elements":"Head elements",info:"\u05de\u05d9\u05d3\u05e2","add_title":"Title element","add_meta":"Meta element","add_script":"Script element","add_style":"Style element","add_link":"Link element","add_base":"Base element","add_comment":"Comment node","title_element":"Title element","script_element":"Script element","style_element":"Style element","base_element":"Base element","link_element":"Link element","meta_element":"Meta element","comment_element":"\u05ea\u05d2\u05d5\u05d1\u05d4",src:"\u05db\u05ea\u05d5\u05d1\u05ea \u05de\u05e7\u05d5\u05e8",language:"\u05e9\u05e4\u05d4",href:"Href",target:"\u05d9\u05e2\u05d3",type:"\u05e1\u05d5\u05d2",charset:"\u05e7\u05d9\u05d3\u05d5\u05d3",defer:"Defer",media:"\u05de\u05d3\u05d9\u05d4",properties:"\u05de\u05d0\u05e4\u05d9\u05d9\u05e0\u05d9\u05dd",name:"\u05e9\u05dd",value:"\u05e2\u05e8\u05da",content:"\u05ea\u05d5\u05db\u05df",rel:"Rel",rev:"Rev",hreflang:"Href lang","general_props":"\u05db\u05dc\u05dc\u05d9","advanced_props":"\u05de\u05ea\u05e7\u05d3\u05dd"}); \ No newline at end of file
+tinyMCE.addI18n('he.fullpage_dlg',{title:"\u05de\u05d0\u05e4\u05d9\u05d9\u05e0\u05d9 \u05de\u05e1\u05de\u05da","meta_tab":"\u05db\u05dc\u05dc\u05d9","appearance_tab":"\u05de\u05e8\u05d0\u05d4","advanced_tab":"\u05de\u05ea\u05e7\u05d3\u05dd","meta_props":"\u05ea\u05d2\u05d9 \u05de\u05d8\u05d4",langprops:"\u05e9\u05e4\u05d4 \u05d5\u05e7\u05d9\u05d3\u05d5\u05d3","meta_title":"\u05db\u05d5\u05ea\u05e8\u05ea","meta_keywords":"\u05de\u05d9\u05dc\u05d5\u05ea \u05de\u05e4\u05ea\u05d7","meta_description":"\u05ea\u05d9\u05d0\u05d5\u05e8","meta_robots":"\u05e8\u05d5\u05d1\u05d5\u05d8\u05d9\u05dd",doctypes:"Doctype",langcode:"\u05e7\u05d5\u05d3 \u05d4\u05e9\u05e4\u05d4",langdir:"\u05db\u05d9\u05d5\u05d5\u05df \u05d4\u05e9\u05e4\u05d4",ltr:"\u05de\u05e9\u05de\u05d0\u05dc \u05dc\u05d9\u05de\u05d9\u05df",rtl:"\u05de\u05d9\u05de\u05d9\u05df \u05dc\u05e9\u05de\u05d0\u05dc","xml_pi":"XML declaration",encoding:"\u05e7\u05d9\u05d3\u05d5\u05d3 \u05ea\u05d5\u05d5\u05d9\u05dd","appearance_bgprops":"\u05de\u05d0\u05e4\u05d9\u05d9\u05e0\u05d9 \u05e8\u05e7\u05e2","appearance_marginprops":"Body margins","appearance_linkprops":"\u05e6\u05d1\u05e2 \u05e7\u05d9\u05e9\u05d5\u05e8\u05d9\u05dd","appearance_textprops":"Text properties",bgcolor:"\u05e6\u05d1\u05e2 \u05e8\u05e7\u05e2",bgimage:"\u05ea\u05de\u05d5\u05e0\u05ea \u05e8\u05e7\u05e2","left_margin":"\u05e9\u05d5\u05dc\u05d9\u05d9\u05dd \u05e9\u05de\u05d0\u05dc\u05d9\u05d9\u05dd","right_margin":"\u05e9\u05d5\u05dc\u05d9\u05d9\u05dd \u05d9\u05de\u05e0\u05d9\u05d9\u05dd","top_margin":"\u05e9\u05d5\u05dc\u05d9\u05d9\u05dd \u05e2\u05dc\u05d9\u05d5\u05e0\u05d9\u05dd","bottom_margin":"\u05e9\u05d5\u05dc\u05d9\u05d9\u05dd \u05ea\u05d7\u05ea\u05d9\u05d9\u05dd","text_color":"\u05e6\u05d1\u05e2 \u05d8\u05e7\u05e1\u05d8","font_size":"\u05d2\u05d5\u05d3\u05dc \u05d2\u05d5\u05e4\u05df","font_face":"\u05e1\u05d5\u05d2 \u05d2\u05d5\u05e4\u05df","link_color":"\u05e6\u05d1\u05e2 \u05e7\u05d9\u05e9\u05d5\u05e8","hover_color":"\u05e6\u05d1\u05e2 \u05e7\u05d9\u05e9\u05d5\u05e8 \u05d1\u05de\u05e2\u05d1\u05e8 \u05e2\u05db\u05d1\u05e8","visited_color":"\u05e6\u05d1\u05e2 \u05e7\u05d9\u05e9\u05d5\u05e8 \u05e9\u05e0\u05e6\u05e4\u05d4","active_color":"\u05e6\u05d1\u05e2 \u05e7\u05d9\u05e9\u05d5\u05e8 \u05e4\u05e2\u05d9\u05dc",textcolor:"\u05e6\u05d1\u05e2",fontsize:"\u05d2\u05d5\u05d3\u05dc \u05d2\u05d5\u05e4\u05df",fontface:"\u05d2\u05d5\u05e4\u05df","meta_index_follow":"Index and follow the links","meta_index_nofollow":"Index and don\'t follow the links","meta_noindex_follow":"Do not index but follow the links","meta_noindex_nofollow":"Do not index and don\\\'t follow the links","appearance_style":"Stylesheet and style properties",stylesheet:"\u05e1\u05d2\u05e0\u05d5\u05df \u05e2\u05d9\u05e6\u05d5\u05d1",style:"\u05e2\u05d9\u05e6\u05d5\u05d1",author:"\u05db\u05d5\u05ea\u05d1",copyright:"\u05d6\u05db\u05d5\u05d9\u05d5\u05ea \u05d9\u05d5\u05e6\u05e8\u05d9\u05dd",add:"\u05d4\u05d5\u05e1\u05e3 \u05d0\u05dc\u05de\u05e0\u05d8 \u05d7\u05d3\u05e9",remove:"Remove selected element",moveup:"Move selected element up",movedown:"Move selected element down","head_elements":"Head elements",info:"\u05de\u05d9\u05d3\u05e2","add_title":"Title element","add_meta":"Meta element","add_script":"Script element","add_style":"Style element","add_link":"Link element","add_base":"Base element","add_comment":"Comment node","title_element":"Title element","script_element":"Script element","style_element":"\u05d0\u05dc\u05de\u05e0\u05d8 \u05e2\u05d9\u05e6\u05d5\u05d1","base_element":"\u05d0\u05dc\u05de\u05e0\u05d8 \u05d1\u05e1\u05d9\u05e1","link_element":"\u05d0\u05dc\u05de\u05e0\u05d8 \u05e7\u05d9\u05e9\u05d5\u05e8","meta_element":"Meta element","comment_element":"\u05ea\u05d2\u05d5\u05d1\u05d4",src:"\u05db\u05ea\u05d5\u05d1\u05ea \u05de\u05e7\u05d5\u05e8",language:"\u05e9\u05e4\u05d4",href:"HREF",target:"\u05d9\u05e2\u05d3",type:"\u05e1\u05d5\u05d2",charset:"\u05e7\u05d9\u05d3\u05d5\u05d3",defer:"Defer",media:"\u05de\u05d3\u05d9\u05d4",properties:"\u05de\u05d0\u05e4\u05d9\u05d9\u05e0\u05d9\u05dd",name:"\u05e9\u05dd",value:"\u05e2\u05e8\u05da",content:"\u05ea\u05d5\u05db\u05df",rel:"Rel",rev:"Rev",hreflang:"Href lang","general_props":"\u05db\u05dc\u05dc\u05d9","advanced_props":"\u05de\u05ea\u05e7\u05d3\u05dd"}); \ No newline at end of file
diff --git a/program/js/tiny_mce/plugins/fullpage/langs/nl_dlg.js b/program/js/tiny_mce/plugins/fullpage/langs/nl_dlg.js
index 3fca75086..9124146ce 100644
--- a/program/js/tiny_mce/plugins/fullpage/langs/nl_dlg.js
+++ b/program/js/tiny_mce/plugins/fullpage/langs/nl_dlg.js
@@ -1 +1 @@
-tinyMCE.addI18n('nl.fullpage_dlg',{title:"Documenteigenschappen","meta_tab":"Algemeen","appearance_tab":"Weergave","advanced_tab":"Geavanceerd","meta_props":"Meta informatie",langprops:"Taal en codering","meta_title":"Titel","meta_keywords":"Sleutelwoorden","meta_description":"Beschrijving","meta_robots":"Robots",doctypes:"Doctype",langcode:"Taalcode",langdir:"Taalrichting",ltr:"Van links naar rechts",rtl:"Van rechts naar links","xml_pi":"XML toewijzing",encoding:"Karaktercodering","appearance_bgprops":"Achtergrondeigenschappen","appearance_marginprops":"Bodymarge","appearance_linkprops":"Linkkleuren","appearance_textprops":"Teksteigenschappen",bgcolor:"Achtergrondkleur",bgimage:"Achtergrondafbeelding","left_margin":"Linkermarge","right_margin":"Rechtermarge","top_margin":"Bovenmarge","bottom_margin":"Ondermarge","text_color":"Tekstkleur","font_size":"Tekengrootte","font_face":"Lettertype","link_color":"Linkkleur","hover_color":"Hoverkleur","visited_color":"Bezocht kleur","active_color":"Actieve kleur",textcolor:"Kleur",fontsize:"Tekengrootte",fontface:"Lettertype","meta_index_follow":"Links indexeren en volgen","meta_index_nofollow":"Links indexeren maar niet volgen","meta_noindex_follow":"Links volgen maar niet indexeren","meta_noindex_nofollow":"Links niet indexeren en niet volgen","appearance_style":"Stijlblad en stijleigenschappen",stylesheet:"Stijlblad",style:"Stijl",author:"Auteur",copyright:"Copyright",add:"Nieuw element toevoegen",remove:"Geselecteerde elementen verwijderen",moveup:"Geselecteerde elementen omhoog verplaatsen",movedown:"Geselecteerde elementen omlaag verplaatsen","head_elements":"Kopelementen",info:"Informatie","add_title":"Titelelement","add_meta":"Meta-element","add_script":"Scriptelement","add_style":"Stijlelement","add_link":"Linkelement","add_base":"Basiselement","add_comment":"Opmerkingknooppunt","title_element":"Titelelement","script_element":"Scriptelement","style_element":"Stijlelement","base_element":"Basiselement","link_element":"Linkelement","meta_element":"Meta-element","comment_element":"Opmerking",src:"Bron",language:"Taal",href:"Href",target:"Doel",type:"Type",charset:"Karakterset",defer:"Uitstellen",media:"Media",properties:"Eigenschappen",name:"Naam",value:"Waarde",content:"Inhoud",rel:"Rel",rev:"Rev",hreflang:"Href taal","general_props":"Algemeen","advanced_props":"Geavanceerd"}); \ No newline at end of file
+tinyMCE.addI18n('nl.fullpage_dlg',{title:"Documenteigenschappen","meta_tab":"Algemeen","appearance_tab":"Weergave","advanced_tab":"Geavanceerd","meta_props":"Meta informatie",langprops:"Taal en codering","meta_title":"Titel","meta_keywords":"Sleutelwoorden","meta_description":"Beschrijving","meta_robots":"Robots",doctypes:"Doctype",langcode:"Taalcode",langdir:"Taalrichting",ltr:"Van links naar rechts",rtl:"Van rechts naar links","xml_pi":"XML toewijzing",encoding:"Karaktercodering","appearance_bgprops":"Achtergrondeigenschappen","appearance_marginprops":"Bodymarge","appearance_linkprops":"Linkkleuren","appearance_textprops":"Teksteigenschappen",bgcolor:"Achtergrondkleur",bgimage:"Achtergrondafbeelding","left_margin":"Linkermarge","right_margin":"Rechtermarge","top_margin":"Bovenmarge","bottom_margin":"Ondermarge","text_color":"Tekstkleur","font_size":"Tekengrootte","font_face":"Lettertype","link_color":"Linkkleur","hover_color":"Hoverkleur","visited_color":"Bezocht kleur","active_color":"Actieve kleur",textcolor:"Kleur",fontsize:"Tekengrootte",fontface:"Lettertype","meta_index_follow":"Links indexeren en volgen","meta_index_nofollow":"Links indexeren maar niet volgen","meta_noindex_follow":"Links volgen maar niet indexeren","meta_noindex_nofollow":"Links niet indexeren en niet volgen","appearance_style":"Stijlblad en stijleigenschappen",stylesheet:"Stijlblad",style:"Stijl",author:"Auteur",copyright:"Copyright",add:"Nieuw element toevoegen",remove:"Geselecteerde elementen verwijderen",moveup:"Geselecteerde elementen omhoog verplaatsen",movedown:"Geselecteerde elementen omlaag verplaatsen","head_elements":"Kopelementen",info:"Informatie","add_title":"Titelelement","add_meta":"Meta-element","add_script":"Scriptelement","add_style":"Stijlelement","add_link":"Linkelement","add_base":"Basiselement","add_comment":"Opmerkingknooppunt","title_element":"Titelelement","script_element":"Scriptelement","style_element":"Stijlelement","base_element":"Basiselement","link_element":"Linkelement","meta_element":"Meta-element","comment_element":"Opmerking",src:"Bron",language:"Taal",href:"HREF",target:"Doel",type:"Type",charset:"Karakterset",defer:"Uitstellen",media:"Media",properties:"Eigenschappen",name:"Naam",value:"Waarde",content:"Inhoud",rel:"Rel",rev:"Rev",hreflang:"HREF taal","general_props":"Algemeen","advanced_props":"Geavanceerd"}); \ No newline at end of file
diff --git a/program/js/tiny_mce/plugins/fullscreen/editor_plugin.js b/program/js/tiny_mce/plugins/fullscreen/editor_plugin.js
index 7b65e733c..a2eb03483 100644
--- a/program/js/tiny_mce/plugins/fullscreen/editor_plugin.js
+++ b/program/js/tiny_mce/plugins/fullscreen/editor_plugin.js
@@ -1 +1 @@
-(function(){var a=tinymce.DOM;tinymce.create("tinymce.plugins.FullScreenPlugin",{init:function(d,e){var f=this,g={},c,b;f.editor=d;d.addCommand("mceFullScreen",function(){var i,j=a.doc.documentElement;if(d.getParam("fullscreen_is_enabled")){if(d.getParam("fullscreen_new_window")){closeFullscreen()}else{a.win.setTimeout(function(){tinymce.dom.Event.remove(a.win,"resize",f.resizeFunc);tinyMCE.get(d.getParam("fullscreen_editor_id")).setContent(d.getContent());tinyMCE.remove(d);a.remove("mce_fullscreen_container");j.style.overflow=d.getParam("fullscreen_html_overflow");a.setStyle(a.doc.body,"overflow",d.getParam("fullscreen_overflow"));a.win.scrollTo(d.getParam("fullscreen_scrollx"),d.getParam("fullscreen_scrolly"));tinyMCE.settings=tinyMCE.oldSettings},10)}return}if(d.getParam("fullscreen_new_window")){i=a.win.open(e+"/fullscreen.htm","mceFullScreenPopup","fullscreen=yes,menubar=no,toolbar=no,scrollbars=no,resizable=yes,left=0,top=0,width="+screen.availWidth+",height="+screen.availHeight);try{i.resizeTo(screen.availWidth,screen.availHeight)}catch(h){}}else{tinyMCE.oldSettings=tinyMCE.settings;g.fullscreen_overflow=a.getStyle(a.doc.body,"overflow",1)||"auto";g.fullscreen_html_overflow=a.getStyle(j,"overflow",1);c=a.getViewPort();g.fullscreen_scrollx=c.x;g.fullscreen_scrolly=c.y;if(tinymce.isOpera&&g.fullscreen_overflow=="visible"){g.fullscreen_overflow="auto"}if(tinymce.isIE&&g.fullscreen_overflow=="scroll"){g.fullscreen_overflow="auto"}if(tinymce.isIE&&(g.fullscreen_html_overflow=="visible"||g.fullscreen_html_overflow=="scroll")){g.fullscreen_html_overflow="auto"}if(g.fullscreen_overflow=="0px"){g.fullscreen_overflow=""}a.setStyle(a.doc.body,"overflow","hidden");j.style.overflow="hidden";c=a.getViewPort();a.win.scrollTo(0,0);if(tinymce.isIE){c.h-=1}if(tinymce.isIE6||document.compatMode=="BackCompat"){b="absolute;top:"+c.y}else{b="fixed;top:0"}n=a.add(a.doc.body,"div",{id:"mce_fullscreen_container",style:"position:"+b+";left:0;width:"+c.w+"px;height:"+c.h+"px;z-index:200000;"});a.add(n,"div",{id:"mce_fullscreen"});tinymce.each(d.settings,function(k,l){g[l]=k});g.id="mce_fullscreen";g.width=n.clientWidth;g.height=n.clientHeight-15;g.fullscreen_is_enabled=true;g.fullscreen_editor_id=d.id;g.theme_advanced_resizing=false;g.save_onsavecallback=function(){d.setContent(tinyMCE.get(g.id).getContent());d.execCommand("mceSave")};tinymce.each(d.getParam("fullscreen_settings"),function(m,l){g[l]=m});if(g.theme_advanced_toolbar_location==="external"){g.theme_advanced_toolbar_location="top"}f.fullscreenEditor=new tinymce.Editor("mce_fullscreen",g);f.fullscreenEditor.onInit.add(function(){f.fullscreenEditor.setContent(d.getContent());f.fullscreenEditor.focus()});f.fullscreenEditor.render();f.fullscreenElement=new tinymce.dom.Element("mce_fullscreen_container");f.fullscreenElement.update();f.resizeFunc=tinymce.dom.Event.add(a.win,"resize",function(){var o=tinymce.DOM.getViewPort(),l=f.fullscreenEditor,k,m;k=l.dom.getSize(l.getContainer().firstChild);m=l.dom.getSize(l.getContainer().getElementsByTagName("iframe")[0]);l.theme.resizeTo(o.w-k.w+m.w,o.h-k.h+m.h)})}});d.addButton("fullscreen",{title:"fullscreen.desc",cmd:"mceFullScreen"});d.onNodeChange.add(function(i,h){h.setActive("fullscreen",i.getParam("fullscreen_is_enabled"))})},getInfo:function(){return{longname:"Fullscreen",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/fullscreen",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("fullscreen",tinymce.plugins.FullScreenPlugin)})(); \ No newline at end of file
+(function(){var a=tinymce.DOM;tinymce.create("tinymce.plugins.FullScreenPlugin",{init:function(d,e){var f=this,g={},c,b;f.editor=d;d.addCommand("mceFullScreen",function(){var i,j=a.doc.documentElement;if(d.getParam("fullscreen_is_enabled")){if(d.getParam("fullscreen_new_window")){closeFullscreen()}else{a.win.setTimeout(function(){tinymce.dom.Event.remove(a.win,"resize",f.resizeFunc);tinyMCE.get(d.getParam("fullscreen_editor_id")).setContent(d.getContent());tinyMCE.remove(d);a.remove("mce_fullscreen_container");j.style.overflow=d.getParam("fullscreen_html_overflow");a.setStyle(a.doc.body,"overflow",d.getParam("fullscreen_overflow"));a.win.scrollTo(d.getParam("fullscreen_scrollx"),d.getParam("fullscreen_scrolly"));tinyMCE.settings=tinyMCE.oldSettings},10)}return}if(d.getParam("fullscreen_new_window")){i=a.win.open(e+"/fullscreen.htm","mceFullScreenPopup","fullscreen=yes,menubar=no,toolbar=no,scrollbars=no,resizable=yes,left=0,top=0,width="+screen.availWidth+",height="+screen.availHeight);try{i.resizeTo(screen.availWidth,screen.availHeight)}catch(h){}}else{tinyMCE.oldSettings=tinyMCE.settings;g.fullscreen_overflow=a.getStyle(a.doc.body,"overflow",1)||"auto";g.fullscreen_html_overflow=a.getStyle(j,"overflow",1);c=a.getViewPort();g.fullscreen_scrollx=c.x;g.fullscreen_scrolly=c.y;if(tinymce.isOpera&&g.fullscreen_overflow=="visible"){g.fullscreen_overflow="auto"}if(tinymce.isIE&&g.fullscreen_overflow=="scroll"){g.fullscreen_overflow="auto"}if(tinymce.isIE&&(g.fullscreen_html_overflow=="visible"||g.fullscreen_html_overflow=="scroll")){g.fullscreen_html_overflow="auto"}if(g.fullscreen_overflow=="0px"){g.fullscreen_overflow=""}a.setStyle(a.doc.body,"overflow","hidden");j.style.overflow="hidden";c=a.getViewPort();a.win.scrollTo(0,0);if(tinymce.isIE){c.h-=1}if(tinymce.isIE6||document.compatMode=="BackCompat"){b="absolute;top:"+c.y}else{b="fixed;top:0"}n=a.add(a.doc.body,"div",{id:"mce_fullscreen_container",style:"position:"+b+";left:0;width:"+c.w+"px;height:"+c.h+"px;z-index:200000;"});a.add(n,"div",{id:"mce_fullscreen"});tinymce.each(d.settings,function(k,l){g[l]=k});g.id="mce_fullscreen";g.width=n.clientWidth;g.height=n.clientHeight-15;g.fullscreen_is_enabled=true;g.fullscreen_editor_id=d.id;g.theme_advanced_resizing=false;g.save_onsavecallback=function(){d.setContent(tinyMCE.get(g.id).getContent());d.execCommand("mceSave")};tinymce.each(d.getParam("fullscreen_settings"),function(m,l){g[l]=m});if(g.theme_advanced_toolbar_location==="external"){g.theme_advanced_toolbar_location="top"}f.fullscreenEditor=new tinymce.Editor("mce_fullscreen",g);f.fullscreenEditor.onInit.add(function(){f.fullscreenEditor.setContent(d.getContent());f.fullscreenEditor.focus()});f.fullscreenEditor.render();f.fullscreenElement=new tinymce.dom.Element("mce_fullscreen_container");f.fullscreenElement.update();f.resizeFunc=tinymce.dom.Event.add(a.win,"resize",function(){var o=tinymce.DOM.getViewPort(),l=f.fullscreenEditor,k,m;k=l.dom.getSize(l.getContainer().getElementsByTagName("table")[0]);m=l.dom.getSize(l.getContainer().getElementsByTagName("iframe")[0]);l.theme.resizeTo(o.w-k.w+m.w,o.h-k.h+m.h)})}});d.addButton("fullscreen",{title:"fullscreen.desc",cmd:"mceFullScreen"});d.onNodeChange.add(function(i,h){h.setActive("fullscreen",i.getParam("fullscreen_is_enabled"))})},getInfo:function(){return{longname:"Fullscreen",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/fullscreen",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("fullscreen",tinymce.plugins.FullScreenPlugin)})(); \ No newline at end of file
diff --git a/program/js/tiny_mce/plugins/fullscreen/editor_plugin_src.js b/program/js/tiny_mce/plugins/fullscreen/editor_plugin_src.js
index 6622f924a..524b487aa 100644
--- a/program/js/tiny_mce/plugins/fullscreen/editor_plugin_src.js
+++ b/program/js/tiny_mce/plugins/fullscreen/editor_plugin_src.js
@@ -65,7 +65,7 @@
// Fixes an IE bug where the scrollbars doesn't reappear
if (tinymce.isIE && (s.fullscreen_html_overflow == 'visible' || s.fullscreen_html_overflow == 'scroll'))
- s.fullscreen_html_overflow = 'auto';
+ s.fullscreen_html_overflow = 'auto';
if (s.fullscreen_overflow == '0px')
s.fullscreen_overflow = '';
@@ -85,7 +85,7 @@
posCss = 'fixed;top:0';
n = DOM.add(DOM.doc.body, 'div', {
- id : 'mce_fullscreen_container',
+ id : 'mce_fullscreen_container',
style : 'position:' + posCss + ';left:0;width:' + vp.w + 'px;height:' + vp.h + 'px;z-index:200000;'});
DOM.add(n, 'div', {id : 'mce_fullscreen'});
@@ -127,7 +127,7 @@
var vp = tinymce.DOM.getViewPort(), fed = t.fullscreenEditor, outerSize, innerSize;
// Get outer/inner size to get a delta size that can be used to calc the new iframe size
- outerSize = fed.dom.getSize(fed.getContainer().firstChild);
+ outerSize = fed.dom.getSize(fed.getContainer().getElementsByTagName('table')[0]);
innerSize = fed.dom.getSize(fed.getContainer().getElementsByTagName('iframe')[0]);
fed.theme.resizeTo(vp.w - outerSize.w + innerSize.w, vp.h - outerSize.h + innerSize.h);
@@ -156,4 +156,4 @@
// Register plugin
tinymce.PluginManager.add('fullscreen', tinymce.plugins.FullScreenPlugin);
-})(); \ No newline at end of file
+})();
diff --git a/program/js/tiny_mce/plugins/lists/editor_plugin.js b/program/js/tiny_mce/plugins/lists/editor_plugin.js
index f07e37250..ec21b256e 100644
--- a/program/js/tiny_mce/plugins/lists/editor_plugin.js
+++ b/program/js/tiny_mce/plugins/lists/editor_plugin.js
@@ -1 +1 @@
-(function(){var e=tinymce.each,r=tinymce.dom.Event,g;function p(t,s){while(t&&(t.nodeType===8||(t.nodeType===3&&/^[ \t\n\r]*$/.test(t.nodeValue)))){t=s(t)}return t}function b(s){return p(s,function(t){return t.previousSibling})}function i(s){return p(s,function(t){return t.nextSibling})}function d(s,u,t){return s.dom.getParent(u,function(v){return tinymce.inArray(t,v)!==-1})}function n(s){return s&&(s.tagName==="OL"||s.tagName==="UL")}function c(u,v){var t,w,s;t=b(u.lastChild);while(n(t)){w=t;t=b(w.previousSibling)}if(w){s=v.create("li",{style:"list-style-type: none;"});v.split(u,w);v.insertAfter(s,w);s.appendChild(w);s.appendChild(w);u=s.previousSibling}return u}function m(t,s,u){t=a(t,s,u);return o(t,s,u)}function a(u,s,v){var t=b(u.previousSibling);if(t){return h(t,u,s?t:false,v)}else{return u}}function o(u,t,v){var s=i(u.nextSibling);if(s){return h(u,s,t?s:false,v)}else{return u}}function h(u,s,t,v){if(l(u,s,!!t,v)){return f(u,s,t)}else{if(u&&u.tagName==="LI"&&n(s)){u.appendChild(s)}}return s}function l(u,t,s,v){if(!u||!t){return false}else{if(u.tagName==="LI"&&t.tagName==="LI"){return t.style.listStyleType==="none"||j(t)}else{if(n(u)){return(u.tagName===t.tagName&&(s||u.style.listStyleType===t.style.listStyleType))||q(t)}else{return v&&u.tagName==="P"&&t.tagName==="P"}}}}function q(t){var s=i(t.firstChild),u=b(t.lastChild);return s&&u&&n(t)&&s===u&&(n(s)||s.style.listStyleType==="none"||j(s))}function j(u){var t=i(u.firstChild),s=b(u.lastChild);return t&&s&&t===s&&n(t)}function f(w,v,s){var u=b(w.lastChild),t=i(v.firstChild);if(w.tagName==="P"){w.appendChild(w.ownerDocument.createElement("br"))}while(v.firstChild){w.appendChild(v.firstChild)}if(s){w.style.listStyleType=s.style.listStyleType}v.parentNode.removeChild(v);h(u,t,false);return w}function k(t,u){var s;if(!u.is(t,"li,ol,ul")){s=u.getParent(t,"li");if(s){t=s}}return t}tinymce.create("tinymce.plugins.Lists",{init:function(y){var v="TABBING";var s="EMPTY";var J="ESCAPE";var z="PARAGRAPH";var N="UNKNOWN";var x=N;function E(U){return U.keyCode===tinymce.VK.TAB&&!(U.altKey||U.ctrlKey)&&(y.queryCommandState("InsertUnorderedList")||y.queryCommandState("InsertOrderedList"))}function w(){var U=B();var W=U.parentNode.parentNode;var V=U.parentNode.lastChild===U;return V&&!t(W)&&P(U)}function t(U){if(n(U)){return U.parentNode&&U.parentNode.tagName==="LI"}else{return U.tagName==="LI"}}function F(){return y.selection.isCollapsed()&&P(B())}function B(){var U=y.selection.getStart();return((U.tagName=="BR"||U.tagName=="")&&U.parentNode.tagName=="LI")?U.parentNode:U}function P(U){var V=U.childNodes.length;if(U.tagName==="LI"){return V==0?true:V==1&&(U.firstChild.tagName==""||U.firstChild.tagName=="BR"||H(U))}return false}function H(U){var V=tinymce.grep(U.parentNode.childNodes,function(Y){return Y.tagName=="LI"});var W=U==V[V.length-1];var X=U.firstChild;return tinymce.isIE9&&W&&(X.nodeValue==String.fromCharCode(160)||X.nodeValue==String.fromCharCode(32))}function T(U){return U.keyCode===tinymce.VK.ENTER}function A(U){return T(U)&&!U.shiftKey}function M(U){if(E(U)){return v}else{if(A(U)&&w()){return N}else{if(A(U)&&F()){return s}else{return N}}}}function D(U,V){if(x==v||x==s||tinymce.isGecko&&x==J){r.cancel(V)}}function C(){var U=y.selection.getRng(true);var V=U.startContainer;if(V.nodeType==3){var W=V.nodeValue;if(tinymce.isIE9&&W.length>1&&W.charCodeAt(W.length-1)==32){return(U.endOffset==W.length-1)}else{return(U.endOffset==W.length)}}else{if(V.nodeType==1){return U.endOffset==V.childNodes.length}}return false}function I(){var W=y.selection.getNode();var V="h1,h2,h3,h4,h5,h6,p,div";var U=y.dom.is(W,V)&&W.parentNode.tagName==="LI"&&W.parentNode.lastChild===W;return y.selection.isCollapsed()&&U&&C()}function K(W,Y){if(A(Y)&&I()){var X=W.selection.getNode();var V=W.dom.create("li");var U=W.dom.getParent(X,"li");W.dom.insertAfter(V,U);if(tinymce.isIE6||tinymce.isIE7||tinyMCE.isIE8){W.selection.setCursorLocation(V,1)}else{W.selection.setCursorLocation(V,0)}Y.preventDefault()}}function u(X,Z){var ac;if(!tinymce.isGecko){return}var V=X.selection.getStart();if(Z.keyCode!=tinymce.VK.BACKSPACE||V.tagName!=="IMG"){return}function W(ag){var ah=ag.firstChild;var af=null;do{if(!ah){break}if(ah.tagName==="LI"){af=ah}}while(ah=ah.nextSibling);return af}function ae(ag,af){while(ag.childNodes.length>0){af.appendChild(ag.childNodes[0])}}ac=V.parentNode.previousSibling;if(!ac){return}var aa;if(ac.tagName==="UL"||ac.tagName==="OL"){aa=ac}else{if(ac.previousSibling&&(ac.previousSibling.tagName==="UL"||ac.previousSibling.tagName==="OL")){aa=ac.previousSibling}else{return}}var ad=W(aa);var U=X.dom.createRng();U.setStart(ad,1);U.setEnd(ad,1);X.selection.setRng(U);X.selection.collapse(true);var Y=X.selection.getBookmark();var ab=V.parentNode.cloneNode(true);if(ab.tagName==="P"||ab.tagName==="DIV"){ae(ab,ad)}else{ad.appendChild(ab)}V.parentNode.parentNode.removeChild(V.parentNode);X.selection.moveToBookmark(Y)}function G(U){var V=y.dom.getParent(U,"ol,ul");if(V!=null){var W=V.lastChild;y.selection.setCursorLocation(W,0)}}this.ed=y;y.addCommand("Indent",this.indent,this);y.addCommand("Outdent",this.outdent,this);y.addCommand("InsertUnorderedList",function(){this.applyList("UL","OL")},this);y.addCommand("InsertOrderedList",function(){this.applyList("OL","UL")},this);y.onInit.add(function(){y.editorCommands.addCommands({outdent:function(){var V=y.selection,W=y.dom;function U(X){X=W.getParent(X,W.isBlock);return X&&(parseInt(y.dom.getStyle(X,"margin-left")||0,10)+parseInt(y.dom.getStyle(X,"padding-left")||0,10))>0}return U(V.getStart())||U(V.getEnd())||y.queryCommandState("InsertOrderedList")||y.queryCommandState("InsertUnorderedList")}},"state")});y.onKeyUp.add(function(V,W){if(x==v){V.execCommand(W.shiftKey?"Outdent":"Indent",true,null);x=N;return r.cancel(W)}else{if(x==s){var U=B();var Y=V.settings.list_outdent_on_enter===true||W.shiftKey;V.execCommand(Y?"Outdent":"Indent",true,null);if(tinymce.isIE){G(U)}return r.cancel(W)}else{if(x==J){if(tinymce.isIE6||tinymce.isIE7||tinymce.isIE8){var X=V.getDoc().createTextNode("\uFEFF");V.selection.getNode().appendChild(X)}else{if(tinymce.isIE9||tinymce.isGecko){V.execCommand("Outdent");return r.cancel(W)}}}}}});function L(V,U){var W=y.getDoc().createTextNode("\uFEFF");V.insertBefore(W,U);y.selection.setCursorLocation(W,0);y.execCommand("mceRepaint")}function R(V,X){if(T(X)){var U=B();if(U){var W=U.parentNode;var Y=W&&W.parentNode;if(Y&&Y.nodeName=="LI"&&Y.firstChild==W&&U==W.firstChild){L(Y,W)}}}}function S(V,X){if(T(X)){var U=B();if(V.dom.select("ul li",U).length===1){var W=U.firstChild;L(U,W)}}}function Q(V,Z){function W(ad,aa){var ac=[];var ae=new tinymce.dom.TreeWalker(aa,ad);for(var ab=ae.current();ab;ab=ae.next()){if(V.dom.is(ab,"ol,ul,li")){ac.push(ab)}}return ac}if(Z.keyCode==tinymce.VK.BACKSPACE){var U=B();if(U){var Y=V.dom.getParent(U,"ol,ul");if(Y&&Y.firstChild===U){var X=W(Y,U);V.execCommand("Outdent",false,X);V.undoManager.add();return r.cancel(Z)}}}}function O(V,X){var U=B();if(X.keyCode===tinymce.VK.BACKSPACE&&V.dom.is(U,"li")&&U.parentNode.firstChild!==U){if(V.dom.select("ul,ol",U).length===1){var Z=U.previousSibling;V.dom.remove(V.dom.select("br",U));V.dom.remove(U,true);var W=tinymce.grep(Z.childNodes,function(aa){return aa.nodeType===3});if(W.length===1){var Y=W[0];V.selection.setCursorLocation(Y,Y.length)}V.undoManager.add();return r.cancel(X)}}}y.onKeyDown.add(function(U,V){x=M(V)});y.onKeyDown.add(D);y.onKeyDown.add(u);y.onKeyDown.add(K);if(tinymce.isGecko){y.onKeyUp.add(R)}if(tinymce.isIE8){y.onKeyUp.add(S)}if(tinymce.isGecko||tinymce.isWebKit){y.onKeyDown.add(Q)}if(tinymce.isWebKit){y.onKeyDown.add(O)}},applyList:function(y,v){var C=this,z=C.ed,I=z.dom,s=[],H=false,u=false,w=false,B,G=z.selection.getSelectedBlocks();function E(t){if(t&&t.tagName==="BR"){I.remove(t)}}function F(M){var N=I.create(y),t;function L(O){if(O.style.marginLeft||O.style.paddingLeft){C.adjustPaddingFunction(false)(O)}}if(M.tagName==="LI"){}else{if(M.tagName==="P"||M.tagName==="DIV"||M.tagName==="BODY"){K(M,function(P,O){J(P,O,M.tagName==="BODY"?null:P.parentNode);t=P.parentNode;L(t);E(O)});if(t){if(t.tagName==="LI"&&(M.tagName==="P"||G.length>1)){I.split(t.parentNode.parentNode,t.parentNode)}m(t.parentNode,true)}return}else{t=I.create("li");I.insertAfter(t,M);t.appendChild(M);L(M);M=t}}I.insertAfter(N,M);N.appendChild(M);m(N,true);s.push(M)}function J(P,L,N){var t,O=P,M;while(!I.isBlock(P.parentNode)&&P.parentNode!==I.getRoot()){P=I.split(P.parentNode,P.previousSibling);P=P.nextSibling;O=P}if(N){t=N.cloneNode(true);P.parentNode.insertBefore(t,P);while(t.firstChild){I.remove(t.firstChild)}t=I.rename(t,"li")}else{t=I.create("li");P.parentNode.insertBefore(t,P)}while(O&&O!=L){M=O.nextSibling;t.appendChild(O);O=M}if(t.childNodes.length===0){t.innerHTML='<br _mce_bogus="1" />'}F(t)}function K(Q,T){var N,R,O=3,L=1,t="br,ul,ol,p,div,h1,h2,h3,h4,h5,h6,table,blockquote,address,pre,form,center,dl";function P(X,U){var V=I.createRng(),W;g.keep=true;z.selection.moveToBookmark(g);g.keep=false;W=z.selection.getRng(true);if(!U){U=X.parentNode.lastChild}V.setStartBefore(X);V.setEndAfter(U);return !(V.compareBoundaryPoints(O,W)>0||V.compareBoundaryPoints(L,W)<=0)}function S(U){if(U.nextSibling){return U.nextSibling}if(!I.isBlock(U.parentNode)&&U.parentNode!==I.getRoot()){return S(U.parentNode)}}N=Q.firstChild;var M=false;e(I.select(t,Q),function(U){if(U.hasAttribute&&U.hasAttribute("_mce_bogus")){return true}if(P(N,U)){I.addClass(U,"_mce_tagged_br");N=S(U)}});M=(N&&P(N,undefined));N=Q.firstChild;e(I.select(t,Q),function(V){var U=S(V);if(V.hasAttribute&&V.hasAttribute("_mce_bogus")){return true}if(I.hasClass(V,"_mce_tagged_br")){T(N,V,R);R=null}else{R=V}N=U});if(M){T(N,undefined,R)}}function D(t){K(t,function(M,L,N){J(M,L);E(L);E(N)})}function A(t){if(tinymce.inArray(s,t)!==-1){return}if(t.parentNode.tagName===v){I.split(t.parentNode,t);F(t);o(t.parentNode,false)}s.push(t)}function x(M){var O,N,L,t;if(tinymce.inArray(s,M)!==-1){return}M=c(M,I);while(I.is(M.parentNode,"ol,ul,li")){I.split(M.parentNode,M)}s.push(M);M=I.rename(M,"p");L=m(M,false,z.settings.force_br_newlines);if(L===M){O=M.firstChild;while(O){if(I.isBlock(O)){O=I.split(O.parentNode,O);t=true;N=O.nextSibling&&O.nextSibling.firstChild}else{N=O.nextSibling;if(t&&O.tagName==="BR"){I.remove(O)}t=false}O=N}}}e(G,function(t){t=k(t,I);if(t.tagName===v||(t.tagName==="LI"&&t.parentNode.tagName===v)){u=true}else{if(t.tagName===y||(t.tagName==="LI"&&t.parentNode.tagName===y)){H=true}else{w=true}}});if(w&&!H||u||G.length===0){B={LI:A,H1:F,H2:F,H3:F,H4:F,H5:F,H6:F,P:F,BODY:F,DIV:G.length>1?F:D,defaultAction:D,elements:this.selectedBlocks()}}else{B={defaultAction:x,elements:this.selectedBlocks()}}this.process(B)},indent:function(){var u=this.ed,w=u.dom,x=[];function s(z){var y=w.create("li",{style:"list-style-type: none;"});w.insertAfter(y,z);return y}function t(B){var y=s(B),D=w.getParent(B,"ol,ul"),C=D.tagName,E=w.getStyle(D,"list-style-type"),A={},z;if(E!==""){A.style="list-style-type: "+E+";"}z=w.create(C,A);y.appendChild(z);return z}function v(z){if(!d(u,z,x)){z=c(z,w);var y=t(z);y.appendChild(z);m(y.parentNode,false);m(y,false);x.push(z)}}this.process({LI:v,defaultAction:this.adjustPaddingFunction(true),elements:this.selectedBlocks()})},outdent:function(y,x){var w=this,u=w.ed,z=u.dom,s=[];function A(t){var C,B,D;if(!d(u,t,s)){if(z.getStyle(t,"margin-left")!==""||z.getStyle(t,"padding-left")!==""){return w.adjustPaddingFunction(false)(t)}D=z.getStyle(t,"text-align",true);if(D==="center"||D==="right"){z.setStyle(t,"text-align","left");return}t=c(t,z);C=t.parentNode;B=t.parentNode.parentNode;if(B.tagName==="P"){z.split(B,t.parentNode)}else{z.split(C,t);if(B.tagName==="LI"){z.split(B,t)}else{if(!z.is(B,"ol,ul")){z.rename(t,"p")}}}s.push(t)}}var v=x&&tinymce.is(x,"array")?x:this.selectedBlocks();this.process({LI:A,defaultAction:this.adjustPaddingFunction(false),elements:v});e(s,m)},process:function(y){var F=this,w=F.ed.selection,z=F.ed.dom,E,u;function B(t){var s=tinymce.grep(t.childNodes,function(H){return !(H.nodeName==="BR"||H.nodeName==="SPAN"&&z.getAttrib(H,"data-mce-type")=="bookmark"||H.nodeType==3&&(H.nodeValue==String.fromCharCode(160)||H.nodeValue==""))});return s.length===0}function x(s){z.removeClass(s,"_mce_act_on");if(!s||s.nodeType!==1||E.length>1&&B(s)){return}s=k(s,z);var t=y[s.tagName];if(!t){t=y.defaultAction}t(s)}function v(s){F.splitSafeEach(s.childNodes,x)}function C(s,t){return t>=0&&s.hasChildNodes()&&t<s.childNodes.length&&s.childNodes[t].tagName==="BR"}function D(){var t=w.getNode();var s=z.getParent(t,"td");return s!==null}E=y.elements;u=w.getRng(true);if(!u.collapsed){if(C(u.endContainer,u.endOffset-1)){u.setEnd(u.endContainer,u.endOffset-1);w.setRng(u)}if(C(u.startContainer,u.startOffset)){u.setStart(u.startContainer,u.startOffset+1);w.setRng(u)}}if(tinymce.isIE8){var G=F.ed.selection.getNode();if(G.tagName==="LI"&&!(G.parentNode.lastChild===G)){var A=F.ed.getDoc().createTextNode("\uFEFF");G.appendChild(A)}}g=w.getBookmark();y.OL=y.UL=v;F.splitSafeEach(E,x);w.moveToBookmark(g);g=null;if(!D()){F.ed.execCommand("mceRepaint")}},splitSafeEach:function(t,s){if(tinymce.isGecko&&(/Firefox\/[12]\.[0-9]/.test(navigator.userAgent)||/Firefox\/3\.[0-4]/.test(navigator.userAgent))){this.classBasedEach(t,s)}else{e(t,s)}},classBasedEach:function(v,u){var w=this.ed.dom,s,t;e(v,function(x){w.addClass(x,"_mce_act_on")});s=w.select("._mce_act_on");while(s.length>0){t=s.shift();w.removeClass(t,"_mce_act_on");u(t);s=w.select("._mce_act_on")}},adjustPaddingFunction:function(u){var s,v,t=this.ed;s=t.settings.indentation;v=/[a-z%]+/i.exec(s);s=parseInt(s,10);return function(w){var y,x;y=parseInt(t.dom.getStyle(w,"margin-left")||0,10)+parseInt(t.dom.getStyle(w,"padding-left")||0,10);if(u){x=y+s}else{x=y-s}t.dom.setStyle(w,"padding-left","");t.dom.setStyle(w,"margin-left",x>0?x+v:"")}},selectedBlocks:function(){var s=this.ed;var t=s.selection.getSelectedBlocks();return t.length==0?[s.dom.getRoot()]:t},getInfo:function(){return{longname:"Lists",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/lists",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("lists",tinymce.plugins.Lists)}()); \ No newline at end of file
+(function(){var e=tinymce.each,r=tinymce.dom.Event,g;function p(t,s){while(t&&(t.nodeType===8||(t.nodeType===3&&/^[ \t\n\r]*$/.test(t.nodeValue)))){t=s(t)}return t}function b(s){return p(s,function(t){return t.previousSibling})}function i(s){return p(s,function(t){return t.nextSibling})}function d(s,u,t){return s.dom.getParent(u,function(v){return tinymce.inArray(t,v)!==-1})}function n(s){return s&&(s.tagName==="OL"||s.tagName==="UL")}function c(u,v){var t,w,s;t=b(u.lastChild);while(n(t)){w=t;t=b(w.previousSibling)}if(w){s=v.create("li",{style:"list-style-type: none;"});v.split(u,w);v.insertAfter(s,w);s.appendChild(w);s.appendChild(w);u=s.previousSibling}return u}function m(t,s,u){t=a(t,s,u);return o(t,s,u)}function a(u,s,v){var t=b(u.previousSibling);if(t){return h(t,u,s?t:false,v)}else{return u}}function o(u,t,v){var s=i(u.nextSibling);if(s){return h(u,s,t?s:false,v)}else{return u}}function h(u,s,t,v){if(l(u,s,!!t,v)){return f(u,s,t)}else{if(u&&u.tagName==="LI"&&n(s)){u.appendChild(s)}}return s}function l(u,t,s,v){if(!u||!t){return false}else{if(u.tagName==="LI"&&t.tagName==="LI"){return t.style.listStyleType==="none"||j(t)}else{if(n(u)){return(u.tagName===t.tagName&&(s||u.style.listStyleType===t.style.listStyleType))||q(t)}else{return v&&u.tagName==="P"&&t.tagName==="P"}}}}function q(t){var s=i(t.firstChild),u=b(t.lastChild);return s&&u&&n(t)&&s===u&&(n(s)||s.style.listStyleType==="none"||j(s))}function j(u){var t=i(u.firstChild),s=b(u.lastChild);return t&&s&&t===s&&n(t)}function f(w,v,s){var u=b(w.lastChild),t=i(v.firstChild);if(w.tagName==="P"){w.appendChild(w.ownerDocument.createElement("br"))}while(v.firstChild){w.appendChild(v.firstChild)}if(s){w.style.listStyleType=s.style.listStyleType}v.parentNode.removeChild(v);h(u,t,false);return w}function k(t,u){var s;if(!u.is(t,"li,ol,ul")){s=u.getParent(t,"li");if(s){t=s}}return t}tinymce.create("tinymce.plugins.Lists",{init:function(y){var v="TABBING";var s="EMPTY";var J="ESCAPE";var z="PARAGRAPH";var N="UNKNOWN";var x=N;function E(U){return U.keyCode===tinymce.VK.TAB&&!(U.altKey||U.ctrlKey)&&(y.queryCommandState("InsertUnorderedList")||y.queryCommandState("InsertOrderedList"))}function w(){var U=B();var W=U.parentNode.parentNode;var V=U.parentNode.lastChild===U;return V&&!t(W)&&P(U)}function t(U){if(n(U)){return U.parentNode&&U.parentNode.tagName==="LI"}else{return U.tagName==="LI"}}function F(){return y.selection.isCollapsed()&&P(B())}function B(){var U=y.selection.getStart();return((U.tagName=="BR"||U.tagName=="")&&U.parentNode.tagName=="LI")?U.parentNode:U}function P(U){var V=U.childNodes.length;if(U.tagName==="LI"){return V==0?true:V==1&&(U.firstChild.tagName==""||U.firstChild.tagName=="BR"||H(U))}return false}function H(U){var V=tinymce.grep(U.parentNode.childNodes,function(Y){return Y.tagName=="LI"});var W=U==V[V.length-1];var X=U.firstChild;return tinymce.isIE9&&W&&(X.nodeValue==String.fromCharCode(160)||X.nodeValue==String.fromCharCode(32))}function T(U){return U.keyCode===tinymce.VK.ENTER}function A(U){return T(U)&&!U.shiftKey}function M(U){if(E(U)){return v}else{if(A(U)&&w()){return N}else{if(A(U)&&F()){return s}else{return N}}}}function D(U,V){if(x==v||x==s||tinymce.isGecko&&x==J){r.cancel(V)}}function C(){var U=y.selection.getRng(true);var V=U.startContainer;if(V.nodeType==3){var W=V.nodeValue;if(tinymce.isIE9&&W.length>1&&W.charCodeAt(W.length-1)==32){return(U.endOffset==W.length-1)}else{return(U.endOffset==W.length)}}else{if(V.nodeType==1){return U.endOffset==V.childNodes.length}}return false}function I(){var W=y.selection.getNode();var V="h1,h2,h3,h4,h5,h6,p,div";var U=y.dom.is(W,V)&&W.parentNode.tagName==="LI"&&W.parentNode.lastChild===W;return y.selection.isCollapsed()&&U&&C()}function K(W,Y){if(A(Y)&&I()){var X=W.selection.getNode();var V=W.dom.create("li");var U=W.dom.getParent(X,"li");W.dom.insertAfter(V,U);if(tinymce.isIE6||tinymce.isIE7||tinyMCE.isIE8){W.selection.setCursorLocation(V,1)}else{W.selection.setCursorLocation(V,0)}Y.preventDefault()}}function u(X,Z){var ac;if(!tinymce.isGecko){return}var V=X.selection.getStart();if(Z.keyCode!=tinymce.VK.BACKSPACE||V.tagName!=="IMG"){return}function W(ag){var ah=ag.firstChild;var af=null;do{if(!ah){break}if(ah.tagName==="LI"){af=ah}}while(ah=ah.nextSibling);return af}function ae(ag,af){while(ag.childNodes.length>0){af.appendChild(ag.childNodes[0])}}ac=V.parentNode.previousSibling;if(!ac){return}var aa;if(ac.tagName==="UL"||ac.tagName==="OL"){aa=ac}else{if(ac.previousSibling&&(ac.previousSibling.tagName==="UL"||ac.previousSibling.tagName==="OL")){aa=ac.previousSibling}else{return}}var ad=W(aa);var U=X.dom.createRng();U.setStart(ad,1);U.setEnd(ad,1);X.selection.setRng(U);X.selection.collapse(true);var Y=X.selection.getBookmark();var ab=V.parentNode.cloneNode(true);if(ab.tagName==="P"||ab.tagName==="DIV"){ae(ab,ad)}else{ad.appendChild(ab)}V.parentNode.parentNode.removeChild(V.parentNode);X.selection.moveToBookmark(Y)}function G(U){var V=y.dom.getParent(U,"ol,ul");if(V!=null){var W=V.lastChild;y.selection.setCursorLocation(W,0)}}this.ed=y;y.addCommand("Indent",this.indent,this);y.addCommand("Outdent",this.outdent,this);y.addCommand("InsertUnorderedList",function(){this.applyList("UL","OL")},this);y.addCommand("InsertOrderedList",function(){this.applyList("OL","UL")},this);y.onInit.add(function(){y.editorCommands.addCommands({outdent:function(){var V=y.selection,W=y.dom;function U(X){X=W.getParent(X,W.isBlock);return X&&(parseInt(y.dom.getStyle(X,"margin-left")||0,10)+parseInt(y.dom.getStyle(X,"padding-left")||0,10))>0}return U(V.getStart())||U(V.getEnd())||y.queryCommandState("InsertOrderedList")||y.queryCommandState("InsertUnorderedList")}},"state")});y.onKeyUp.add(function(V,W){if(x==v){V.execCommand(W.shiftKey?"Outdent":"Indent",true,null);x=N;return r.cancel(W)}else{if(x==s){var U=B();var Y=V.settings.list_outdent_on_enter===true||W.shiftKey;V.execCommand(Y?"Outdent":"Indent",true,null);if(tinymce.isIE){G(U)}return r.cancel(W)}else{if(x==J){if(tinymce.isIE6||tinymce.isIE7||tinymce.isIE8){var X=V.getDoc().createTextNode("\uFEFF");V.selection.getNode().appendChild(X)}else{if(tinymce.isIE9||tinymce.isGecko){V.execCommand("Outdent");return r.cancel(W)}}}}}});function L(V,U){var W=y.getDoc().createTextNode("\uFEFF");V.insertBefore(W,U);y.selection.setCursorLocation(W,0);y.execCommand("mceRepaint")}function R(V,X){if(T(X)){var U=B();if(U){var W=U.parentNode;var Y=W&&W.parentNode;if(Y&&Y.nodeName=="LI"&&Y.firstChild==W&&U==W.firstChild){L(Y,W)}}}}function S(V,X){if(T(X)){var U=B();if(V.dom.select("ul li",U).length===1){var W=U.firstChild;L(U,W)}}}function Q(W,aa){function X(ab){var ad=[];var ae=new tinymce.dom.TreeWalker(ab.firstChild,ab);for(var ac=ae.current();ac;ac=ae.next()){if(W.dom.is(ac,"ol,ul,li")){ad.push(ac)}}return ad}if(aa.keyCode==tinymce.VK.BACKSPACE){var U=B();if(U){var Z=W.dom.getParent(U,"ol,ul"),V=W.selection.getRng();if(Z&&Z.firstChild===U&&V.startOffset==0){var Y=X(U);Y.unshift(U);W.execCommand("Outdent",false,Y);W.undoManager.add();return r.cancel(aa)}}}}function O(V,X){var U=B();if(X.keyCode===tinymce.VK.BACKSPACE&&V.dom.is(U,"li")&&U.parentNode.firstChild!==U){if(V.dom.select("ul,ol",U).length===1){var Z=U.previousSibling;V.dom.remove(V.dom.select("br",U));V.dom.remove(U,true);var W=tinymce.grep(Z.childNodes,function(aa){return aa.nodeType===3});if(W.length===1){var Y=W[0];V.selection.setCursorLocation(Y,Y.length)}V.undoManager.add();return r.cancel(X)}}}y.onKeyDown.add(function(U,V){x=M(V)});y.onKeyDown.add(D);y.onKeyDown.add(u);y.onKeyDown.add(K);if(tinymce.isGecko){y.onKeyUp.add(R)}if(tinymce.isIE8){y.onKeyUp.add(S)}if(tinymce.isGecko||tinymce.isWebKit){y.onKeyDown.add(Q)}if(tinymce.isWebKit){y.onKeyDown.add(O)}},applyList:function(y,v){var C=this,z=C.ed,I=z.dom,s=[],H=false,u=false,w=false,B,G=z.selection.getSelectedBlocks();function E(t){if(t&&t.tagName==="BR"){I.remove(t)}}function F(M){var N=I.create(y),t;function L(O){if(O.style.marginLeft||O.style.paddingLeft){C.adjustPaddingFunction(false)(O)}}if(M.tagName==="LI"){}else{if(M.tagName==="P"||M.tagName==="DIV"||M.tagName==="BODY"){K(M,function(P,O){J(P,O,M.tagName==="BODY"?null:P.parentNode);t=P.parentNode;L(t);E(O)});if(t){if(t.tagName==="LI"&&(M.tagName==="P"||G.length>1)){I.split(t.parentNode.parentNode,t.parentNode)}m(t.parentNode,true)}return}else{t=I.create("li");I.insertAfter(t,M);t.appendChild(M);L(M);M=t}}I.insertAfter(N,M);N.appendChild(M);m(N,true);s.push(M)}function J(P,L,N){var t,O=P,M;while(!I.isBlock(P.parentNode)&&P.parentNode!==I.getRoot()){P=I.split(P.parentNode,P.previousSibling);P=P.nextSibling;O=P}if(N){t=N.cloneNode(true);P.parentNode.insertBefore(t,P);while(t.firstChild){I.remove(t.firstChild)}t=I.rename(t,"li")}else{t=I.create("li");P.parentNode.insertBefore(t,P)}while(O&&O!=L){M=O.nextSibling;t.appendChild(O);O=M}if(t.childNodes.length===0){t.innerHTML='<br _mce_bogus="1" />'}F(t)}function K(Q,T){var N,R,O=3,L=1,t="br,ul,ol,p,div,h1,h2,h3,h4,h5,h6,table,blockquote,address,pre,form,center,dl";function P(X,U){var V=I.createRng(),W;g.keep=true;z.selection.moveToBookmark(g);g.keep=false;W=z.selection.getRng(true);if(!U){U=X.parentNode.lastChild}V.setStartBefore(X);V.setEndAfter(U);return !(V.compareBoundaryPoints(O,W)>0||V.compareBoundaryPoints(L,W)<=0)}function S(U){if(U.nextSibling){return U.nextSibling}if(!I.isBlock(U.parentNode)&&U.parentNode!==I.getRoot()){return S(U.parentNode)}}N=Q.firstChild;var M=false;e(I.select(t,Q),function(U){if(U.hasAttribute&&U.hasAttribute("_mce_bogus")){return true}if(P(N,U)){I.addClass(U,"_mce_tagged_br");N=S(U)}});M=(N&&P(N,undefined));N=Q.firstChild;e(I.select(t,Q),function(V){var U=S(V);if(V.hasAttribute&&V.hasAttribute("_mce_bogus")){return true}if(I.hasClass(V,"_mce_tagged_br")){T(N,V,R);R=null}else{R=V}N=U});if(M){T(N,undefined,R)}}function D(t){K(t,function(M,L,N){J(M,L);E(L);E(N)})}function A(t){if(tinymce.inArray(s,t)!==-1){return}if(t.parentNode.tagName===v){I.split(t.parentNode,t);F(t);o(t.parentNode,false)}s.push(t)}function x(M){var O,N,L,t;if(tinymce.inArray(s,M)!==-1){return}M=c(M,I);while(I.is(M.parentNode,"ol,ul,li")){I.split(M.parentNode,M)}s.push(M);M=I.rename(M,"p");L=m(M,false,z.settings.force_br_newlines);if(L===M){O=M.firstChild;while(O){if(I.isBlock(O)){O=I.split(O.parentNode,O);t=true;N=O.nextSibling&&O.nextSibling.firstChild}else{N=O.nextSibling;if(t&&O.tagName==="BR"){I.remove(O)}t=false}O=N}}}e(G,function(t){t=k(t,I);if(t.tagName===v||(t.tagName==="LI"&&t.parentNode.tagName===v)){u=true}else{if(t.tagName===y||(t.tagName==="LI"&&t.parentNode.tagName===y)){H=true}else{w=true}}});if(w&&!H||u||G.length===0){B={LI:A,H1:F,H2:F,H3:F,H4:F,H5:F,H6:F,P:F,BODY:F,DIV:G.length>1?F:D,defaultAction:D,elements:this.selectedBlocks()}}else{B={defaultAction:x,elements:this.selectedBlocks(),processEvenIfEmpty:true}}this.process(B)},indent:function(){var u=this.ed,w=u.dom,x=[];function s(z){var y=w.create("li",{style:"list-style-type: none;"});w.insertAfter(y,z);return y}function t(B){var y=s(B),D=w.getParent(B,"ol,ul"),C=D.tagName,E=w.getStyle(D,"list-style-type"),A={},z;if(E!==""){A.style="list-style-type: "+E+";"}z=w.create(C,A);y.appendChild(z);return z}function v(z){if(!d(u,z,x)){z=c(z,w);var y=t(z);y.appendChild(z);m(y.parentNode,false);m(y,false);x.push(z)}}this.process({LI:v,defaultAction:this.adjustPaddingFunction(true),elements:this.selectedBlocks()})},outdent:function(y,x){var w=this,u=w.ed,z=u.dom,s=[];function A(t){var C,B,D;if(!d(u,t,s)){if(z.getStyle(t,"margin-left")!==""||z.getStyle(t,"padding-left")!==""){return w.adjustPaddingFunction(false)(t)}D=z.getStyle(t,"text-align",true);if(D==="center"||D==="right"){z.setStyle(t,"text-align","left");return}t=c(t,z);C=t.parentNode;B=t.parentNode.parentNode;if(B.tagName==="P"){z.split(B,t.parentNode)}else{z.split(C,t);if(B.tagName==="LI"){z.split(B,t)}else{if(!z.is(B,"ol,ul")){z.rename(t,"p")}}}s.push(t)}}var v=x&&tinymce.is(x,"array")?x:this.selectedBlocks();this.process({LI:A,defaultAction:this.adjustPaddingFunction(false),elements:v});e(s,m)},process:function(y){var F=this,w=F.ed.selection,z=F.ed.dom,E,u;function B(t){var s=tinymce.grep(t.childNodes,function(H){return !(H.nodeName==="BR"||H.nodeName==="SPAN"&&z.getAttrib(H,"data-mce-type")=="bookmark"||H.nodeType==3&&(H.nodeValue==String.fromCharCode(160)||H.nodeValue==""))});return s.length===0}function x(s){z.removeClass(s,"_mce_act_on");if(!s||s.nodeType!==1||!y.processEvenIfEmpty&&E.length>1&&B(s)){return}s=k(s,z);var t=y[s.tagName];if(!t){t=y.defaultAction}t(s)}function v(s){F.splitSafeEach(s.childNodes,x,true)}function C(s,t){return t>=0&&s.hasChildNodes()&&t<s.childNodes.length&&s.childNodes[t].tagName==="BR"}function D(){var t=w.getNode();var s=z.getParent(t,"td");return s!==null}E=y.elements;u=w.getRng(true);if(!u.collapsed){if(C(u.endContainer,u.endOffset-1)){u.setEnd(u.endContainer,u.endOffset-1);w.setRng(u)}if(C(u.startContainer,u.startOffset)){u.setStart(u.startContainer,u.startOffset+1);w.setRng(u)}}if(tinymce.isIE8){var G=F.ed.selection.getNode();if(G.tagName==="LI"&&!(G.parentNode.lastChild===G)){var A=F.ed.getDoc().createTextNode("\uFEFF");G.appendChild(A)}}g=w.getBookmark();y.OL=y.UL=v;F.splitSafeEach(E,x);w.moveToBookmark(g);g=null;if(!D()){F.ed.execCommand("mceRepaint")}},splitSafeEach:function(u,t,s){if(s||(tinymce.isGecko&&(/Firefox\/[12]\.[0-9]/.test(navigator.userAgent)||/Firefox\/3\.[0-4]/.test(navigator.userAgent)))){this.classBasedEach(u,t)}else{e(u,t)}},classBasedEach:function(v,u){var w=this.ed.dom,s,t;e(v,function(x){w.addClass(x,"_mce_act_on")});s=w.select("._mce_act_on");while(s.length>0){t=s.shift();w.removeClass(t,"_mce_act_on");u(t);s=w.select("._mce_act_on")}},adjustPaddingFunction:function(u){var s,v,t=this.ed;s=t.settings.indentation;v=/[a-z%]+/i.exec(s);s=parseInt(s,10);return function(w){var y,x;y=parseInt(t.dom.getStyle(w,"margin-left")||0,10)+parseInt(t.dom.getStyle(w,"padding-left")||0,10);if(u){x=y+s}else{x=y-s}t.dom.setStyle(w,"padding-left","");t.dom.setStyle(w,"margin-left",x>0?x+v:"")}},selectedBlocks:function(){var s=this.ed,t=s.selection.getSelectedBlocks();return t.length==0?[s.dom.getRoot()]:t},getInfo:function(){return{longname:"Lists",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/lists",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("lists",tinymce.plugins.Lists)}()); \ No newline at end of file
diff --git a/program/js/tiny_mce/plugins/lists/editor_plugin_src.js b/program/js/tiny_mce/plugins/lists/editor_plugin_src.js
index e711d5301..1000ef745 100644
--- a/program/js/tiny_mce/plugins/lists/editor_plugin_src.js
+++ b/program/js/tiny_mce/plugins/lists/editor_plugin_src.js
@@ -440,9 +440,9 @@
}
function fixDeletingFirstCharOfList(ed, e) {
- function listElements(list, li) {
+ function listElements(li) {
var elements = [];
- var walker = new tinymce.dom.TreeWalker(li, list);
+ var walker = new tinymce.dom.TreeWalker(li.firstChild, li);
for (var node = walker.current(); node; node = walker.next()) {
if (ed.dom.is(node, 'ol,ul,li')) {
elements.push(node);
@@ -454,9 +454,11 @@
if (e.keyCode == tinymce.VK.BACKSPACE) {
var li = getLi();
if (li) {
- var list = ed.dom.getParent(li, 'ol,ul');
- if (list && list.firstChild === li) {
- var elements = listElements(list, li);
+ var list = ed.dom.getParent(li, 'ol,ul'),
+ rng = ed.selection.getRng();
+ if (list && list.firstChild === li && rng.startOffset == 0) {
+ var elements = listElements(li);
+ elements.unshift(li);
ed.execCommand("Outdent", false, elements);
ed.undoManager.add();
return Event.cancel(e);
@@ -474,7 +476,7 @@
ed.dom.remove(li, true);
var textNodes = tinymce.grep(prevLi.childNodes, function(n){ return n.nodeType === 3 });
if (textNodes.length === 1) {
- var textNode = textNodes[0]
+ var textNode = textNodes[0];
ed.selection.setCursorLocation(textNode, textNode.length);
}
ed.undoManager.add();
@@ -722,7 +724,8 @@
} else {
actions = {
defaultAction: convertListItemToParagraph,
- elements: this.selectedBlocks()
+ elements: this.selectedBlocks(),
+ processEvenIfEmpty: true
};
}
this.process(actions);
@@ -826,7 +829,7 @@
function processElement(element) {
dom.removeClass(element, '_mce_act_on');
- if (!element || element.nodeType !== 1 || selectedBlocks.length > 1 && isEmptyElement(element)) {
+ if (!element || element.nodeType !== 1 || ! actions.processEvenIfEmpty && selectedBlocks.length > 1 && isEmptyElement(element)) {
return;
}
element = findItemToOperateOn(element, dom);
@@ -838,7 +841,7 @@
}
function recurse(element) {
- t.splitSafeEach(element.childNodes, processElement);
+ t.splitSafeEach(element.childNodes, processElement, true);
}
function brAtEdgeOfSelection(container, offset) {
@@ -889,9 +892,11 @@
}
},
- splitSafeEach: function(elements, f) {
- if (tinymce.isGecko && (/Firefox\/[12]\.[0-9]/.test(navigator.userAgent) ||
- /Firefox\/3\.[0-4]/.test(navigator.userAgent))) {
+ splitSafeEach: function(elements, f, forceClassBase) {
+ if (forceClassBase ||
+ (tinymce.isGecko &&
+ (/Firefox\/[12]\.[0-9]/.test(navigator.userAgent) ||
+ /Firefox\/3\.[0-4]/.test(navigator.userAgent)))) {
this.classBasedEach(elements, f);
} else {
each(elements, f);
@@ -932,8 +937,7 @@
},
selectedBlocks: function() {
- var ed = this.ed
- var selectedBlocks = ed.selection.getSelectedBlocks();
+ var ed = this.ed, selectedBlocks = ed.selection.getSelectedBlocks();
return selectedBlocks.length == 0 ? [ ed.dom.getRoot() ] : selectedBlocks;
},
diff --git a/program/js/tiny_mce/plugins/media/editor_plugin.js b/program/js/tiny_mce/plugins/media/editor_plugin.js
index 37b4320bd..9ac42e0d2 100644
--- a/program/js/tiny_mce/plugins/media/editor_plugin.js
+++ b/program/js/tiny_mce/plugins/media/editor_plugin.js
@@ -1 +1 @@
-(function(){var d=tinymce.explode("id,name,width,height,style,align,class,hspace,vspace,bgcolor,type"),h=tinymce.makeMap(d.join(",")),b=tinymce.html.Node,f,a,g=tinymce.util.JSON,e;f=[["Flash","d27cdb6e-ae6d-11cf-96b8-444553540000","application/x-shockwave-flash","http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"],["ShockWave","166b1bca-3f9c-11cf-8075-444553540000","application/x-director","http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0"],["WindowsMedia","6bf52a52-394a-11d3-b153-00c04f79faa6,22d6f312-b0f6-11d0-94ab-0080c74c7e95,05589fa1-c356-11ce-bf01-00aa0055595a","application/x-mplayer2","http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701"],["QuickTime","02bf25d5-8c17-4b23-bc80-d3488abddc6b","video/quicktime","http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0"],["RealMedia","cfcdaa03-8be4-11cf-b84b-0020afbbccfa","audio/x-pn-realaudio-plugin","http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"],["Java","8ad9c840-044e-11d1-b3e9-00805f499d93","application/x-java-applet","http://java.sun.com/products/plugin/autodl/jinstall-1_5_0-windows-i586.cab#Version=1,5,0,0"],["Silverlight","dfeaf541-f3e1-4c24-acac-99c30715084a","application/x-silverlight-2"],["Iframe"],["Video"],["EmbeddedAudio"],["Audio"]];function c(m){var l,j,k;if(m&&!m.splice){j=[];for(k=0;true;k++){if(m[k]){j[k]=m[k]}else{break}}return j}return m}tinymce.create("tinymce.plugins.MediaPlugin",{init:function(n,j){var r=this,l={},m,p,q,k;function o(i){return i&&i.nodeName==="IMG"&&n.dom.hasClass(i,"mceItemMedia")}r.editor=n;r.url=j;a="";for(m=0;m<f.length;m++){k=f[m][0];q={name:k,clsids:tinymce.explode(f[m][1]||""),mimes:tinymce.explode(f[m][2]||""),codebase:f[m][3]};for(p=0;p<q.clsids.length;p++){l["clsid:"+q.clsids[p]]=q}for(p=0;p<q.mimes.length;p++){l[q.mimes[p]]=q}l["mceItem"+k]=q;l[k.toLowerCase()]=q;a+=(a?"|":"")+k}tinymce.each(n.getParam("media_types","video=mp4,m4v,ogv,webm;silverlight=xap;flash=swf,flv;shockwave=dcr;quicktime=mov,qt,mpg,mpeg;shockwave=dcr;windowsmedia=avi,wmv,wm,asf,asx,wmx,wvx;realmedia=rm,ra,ram;java=jar;audio=mp3,ogg").split(";"),function(v){var s,u,t;v=v.split(/=/);u=tinymce.explode(v[1].toLowerCase());for(s=0;s<u.length;s++){t=l[v[0].toLowerCase()];if(t){l[u[s]]=t}}});a=new RegExp("write("+a+")\\(([^)]+)\\)");r.lookup=l;n.onPreInit.add(function(){n.schema.addValidElements("object[id|style|width|height|classid|codebase|*],param[name|value],embed[id|style|width|height|type|src|*],video[*],audio[*],source[*]");n.parser.addNodeFilter("object,embed,video,audio,script,iframe",function(s){var t=s.length;while(t--){r.objectToImg(s[t])}});n.serializer.addNodeFilter("img",function(s,u,t){var v=s.length,w;while(v--){w=s[v];if((w.attr("class")||"").indexOf("mceItemMedia")!==-1){r.imgToObject(w,t)}}})});n.onInit.add(function(){if(n.theme&&n.theme.onResolveName){n.theme.onResolveName.add(function(i,s){if(s.name==="img"&&n.dom.hasClass(s.node,"mceItemMedia")){s.name="media"}})}if(n&&n.plugins.contextmenu){n.plugins.contextmenu.onContextMenu.add(function(s,t,i){if(i.nodeName==="IMG"&&i.className.indexOf("mceItemMedia")!==-1){t.add({title:"media.edit",icon:"media",cmd:"mceMedia"})}})}});n.addCommand("mceMedia",function(){var s,i;i=n.selection.getNode();if(o(i)){s=n.dom.getAttrib(i,"data-mce-json");if(s){s=g.parse(s);tinymce.each(d,function(t){var u=n.dom.getAttrib(i,t);if(u){s[t]=u}});s.type=r.getType(i.className).name.toLowerCase()}}if(!s){s={type:"flash",video:{sources:[]},params:{}}}n.windowManager.open({file:j+"/media.htm",width:430+parseInt(n.getLang("media.delta_width",0)),height:500+parseInt(n.getLang("media.delta_height",0)),inline:1},{plugin_url:j,data:s})});n.addButton("media",{title:"media.desc",cmd:"mceMedia"});n.onNodeChange.add(function(s,i,t){i.setActive("media",o(t))})},convertUrl:function(k,n){var j=this,m=j.editor,l=m.settings,o=l.url_converter,i=l.url_converter_scope||j;if(!k){return k}if(n){return m.documentBaseURI.toAbsolute(k)}return o.call(i,k,"src","object")},getInfo:function(){return{longname:"Media",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/media",version:tinymce.majorVersion+"."+tinymce.minorVersion}},dataToImg:function(m,k){var r=this,o=r.editor,p=o.documentBaseURI,j,q,n,l;m.params.src=r.convertUrl(m.params.src,k);q=m.video.attrs;if(q){q.src=r.convertUrl(q.src,k)}if(q){q.poster=r.convertUrl(q.poster,k)}j=c(m.video.sources);if(j){for(l=0;l<j.length;l++){j[l].src=r.convertUrl(j[l].src,k)}}n=r.editor.dom.create("img",{id:m.id,style:m.style,align:m.align,hspace:m.hspace,vspace:m.vspace,src:r.editor.theme.url+"/img/trans.gif","class":"mceItemMedia mceItem"+r.getType(m.type).name,"data-mce-json":g.serialize(m,"'")});n.width=m.width||(m.type=="audio"?"300":"320");n.height=m.height||(m.type=="audio"?"32":"240");return n},dataToHtml:function(i,j){return this.editor.serializer.serialize(this.dataToImg(i,j),{forced_root_block:"",force_absolute:j})},htmlToData:function(k){var j,i,l;l={type:"flash",video:{sources:[]},params:{}};j=this.editor.parser.parse(k);i=j.getAll("img")[0];if(i){l=g.parse(i.attr("data-mce-json"));l.type=this.getType(i.attr("class")).name.toLowerCase();tinymce.each(d,function(m){var n=i.attr(m);if(n){l[m]=n}})}return l},getType:function(m){var k,j,l;j=tinymce.explode(m," ");for(k=0;k<j.length;k++){l=this.lookup[j[k]];if(l){return l}}},imgToObject:function(z,o){var u=this,p=u.editor,C,H,j,t,I,y,G,w,k,E,s,q,A,D,m,x,l,B,F;function r(i,n){var M,L,N,K,J;J=p.getParam("flash_video_player_url",u.convertUrl(u.url+"/moxieplayer.swf"));if(J){M=p.documentBaseURI;G.params.src=J;if(p.getParam("flash_video_player_absvideourl",true)){i=M.toAbsolute(i||"",true);n=M.toAbsolute(n||"",true)}N="";L=p.getParam("flash_video_player_flashvars",{url:"$url",poster:"$poster"});tinymce.each(L,function(P,O){P=P.replace(/\$url/,i||"");P=P.replace(/\$poster/,n||"");if(P.length>0){N+=(N?"&":"")+O+"="+escape(P)}});if(N.length){G.params.flashvars=N}K=p.getParam("flash_video_player_params",{allowfullscreen:true,allowscriptaccess:true});tinymce.each(K,function(P,O){G.params[O]=""+P})}}G=z.attr("data-mce-json");if(!G){return}G=g.parse(G);q=this.getType(z.attr("class"));B=z.attr("data-mce-style");if(!B){B=z.attr("style");if(B){B=p.dom.serializeStyle(p.dom.parseStyle(B,"img"))}}if(q.name==="Iframe"){x=new b("iframe",1);tinymce.each(d,function(i){var n=z.attr(i);if(i=="class"&&n){n=n.replace(/mceItem.+ ?/g,"")}if(n&&n.length>0){x.attr(i,n)}});for(I in G.params){x.attr(I,G.params[I])}x.attr({style:B,src:G.params.src});z.replace(x);return}if(this.editor.settings.media_use_script){x=new b("script",1).attr("type","text/javascript");y=new b("#text",3);y.value="write"+q.name+"("+g.serialize(tinymce.extend(G.params,{width:z.attr("width"),height:z.attr("height")}))+");";x.append(y);z.replace(x);return}if(q.name==="Video"&&G.video.sources[0]){C=new b("video",1).attr(tinymce.extend({id:z.attr("id"),width:z.attr("width"),height:z.attr("height"),style:B},G.video.attrs));if(G.video.attrs){l=G.video.attrs.poster}k=G.video.sources=c(G.video.sources);for(A=0;A<k.length;A++){if(/\.mp4$/.test(k[A].src)){m=k[A].src}}if(!k[0].type){C.attr("src",k[0].src);k.splice(0,1)}for(A=0;A<k.length;A++){w=new b("source",1).attr(k[A]);w.shortEnded=true;C.append(w)}if(m){r(m,l);q=u.getType("flash")}else{G.params.src=""}}if(q.name==="Audio"&&G.video.sources[0]){F=new b("audio",1).attr(tinymce.extend({id:z.attr("id"),width:z.attr("width"),height:z.attr("height"),style:B},G.video.attrs));if(G.video.attrs){l=G.video.attrs.poster}k=G.video.sources=c(G.video.sources);if(!k[0].type){F.attr("src",k[0].src);k.splice(0,1)}for(A=0;A<k.length;A++){w=new b("source",1).attr(k[A]);w.shortEnded=true;F.append(w)}G.params.src=""}if(q.name==="EmbeddedAudio"){j=new b("embed",1);j.shortEnded=true;j.attr({id:z.attr("id"),width:z.attr("width"),height:z.attr("height"),style:B,type:z.attr("type")});for(I in G.params){j.attr(I,G.params[I])}tinymce.each(d,function(i){if(G[i]&&i!="type"){j.attr(i,G[i])}});G.params.src=""}if(G.params.src){if(/\.flv$/i.test(G.params.src)){r(G.params.src,"")}if(o&&o.force_absolute){G.params.src=p.documentBaseURI.toAbsolute(G.params.src)}H=new b("object",1).attr({id:z.attr("id"),width:z.attr("width"),height:z.attr("height"),style:B});tinymce.each(d,function(i){var n=G[i];if(i=="class"&&n){n=n.replace(/mceItem.+ ?/g,"")}if(n&&i!="type"){H.attr(i,n)}});for(I in G.params){s=new b("param",1);s.shortEnded=true;y=G.params[I];if(I==="src"&&q.name==="WindowsMedia"){I="url"}s.attr({name:I,value:y});H.append(s)}if(this.editor.getParam("media_strict",true)){H.attr({data:G.params.src,type:q.mimes[0]})}else{H.attr({classid:"clsid:"+q.clsids[0],codebase:q.codebase});j=new b("embed",1);j.shortEnded=true;j.attr({id:z.attr("id"),width:z.attr("width"),height:z.attr("height"),style:B,type:q.mimes[0]});for(I in G.params){j.attr(I,G.params[I])}tinymce.each(d,function(i){if(G[i]&&i!="type"){j.attr(i,G[i])}});H.append(j)}if(G.object_html){y=new b("#text",3);y.raw=true;y.value=G.object_html;H.append(y)}if(C){C.append(H)}}if(C){if(G.video_html){y=new b("#text",3);y.raw=true;y.value=G.video_html;C.append(y)}}if(F){if(G.video_html){y=new b("#text",3);y.raw=true;y.value=G.video_html;F.append(y)}}var v=C||F||H||j;if(v){z.replace(v)}else{z.remove()}},objectToImg:function(C){var L,k,F,s,M,N,y,A,x,G,E,t,q,I,B,l,K,o,H=this.lookup,m,z,v=this.editor.settings.url_converter,n=this.editor.settings.url_converter_scope,w,r,D,j;function u(i){return new tinymce.html.Serializer({inner:true,validate:false}).serialize(i)}function J(O,i){return H[(O.attr(i)||"").toLowerCase()]}function p(O){var i=O.replace(/^.*\.([^.]+)$/,"$1");return H[i.toLowerCase()||""]}if(!C.parent){return}if(C.name==="script"){if(C.firstChild){m=a.exec(C.firstChild.value)}if(!m){return}o=m[1];K={video:{},params:g.parse(m[2])};A=K.params.width;x=K.params.height}K=K||{video:{},params:{}};M=new b("img",1);M.attr({src:this.editor.theme.url+"/img/trans.gif"});N=C.name;if(N==="video"||N=="audio"){F=C;L=C.getAll("object")[0];k=C.getAll("embed")[0];A=F.attr("width");x=F.attr("height");y=F.attr("id");K.video={attrs:{},sources:[]};z=K.video.attrs;for(N in F.attributes.map){z[N]=F.attributes.map[N]}B=C.attr("src");if(B){K.video.sources.push({src:v.call(n,B,"src",C.name)})}l=F.getAll("source");for(E=0;E<l.length;E++){B=l[E].remove();K.video.sources.push({src:v.call(n,B.attr("src"),"src","source"),type:B.attr("type"),media:B.attr("media")})}if(z.poster){z.poster=v.call(n,z.poster,"poster",C.name)}}if(C.name==="object"){L=C;k=C.getAll("embed")[0]}if(C.name==="embed"){k=C}if(C.name==="iframe"){s=C;o="Iframe"}if(L){A=A||L.attr("width");x=x||L.attr("height");G=G||L.attr("style");y=y||L.attr("id");w=w||L.attr("hspace");r=r||L.attr("vspace");D=D||L.attr("align");j=j||L.attr("bgcolor");K.name=L.attr("name");I=L.getAll("param");for(E=0;E<I.length;E++){q=I[E];N=q.remove().attr("name");if(!h[N]){K.params[N]=q.attr("value")}}K.params.src=K.params.src||L.attr("data")}if(k){A=A||k.attr("width");x=x||k.attr("height");G=G||k.attr("style");y=y||k.attr("id");w=w||k.attr("hspace");r=r||k.attr("vspace");D=D||k.attr("align");j=j||k.attr("bgcolor");for(N in k.attributes.map){if(!h[N]&&!K.params[N]){K.params[N]=k.attributes.map[N]}}}if(s){A=s.attr("width");x=s.attr("height");G=G||s.attr("style");y=s.attr("id");w=s.attr("hspace");r=s.attr("vspace");D=s.attr("align");j=s.attr("bgcolor");tinymce.each(d,function(i){M.attr(i,s.attr(i))});for(N in s.attributes.map){if(!h[N]&&!K.params[N]){K.params[N]=s.attributes.map[N]}}}if(K.params.movie){K.params.src=K.params.src||K.params.movie;delete K.params.movie}if(K.params.src){K.params.src=v.call(n,K.params.src,"src","object")}if(F){if(C.name==="video"){o=H.video.name}else{if(C.name==="audio"){o=H.audio.name}}}if(L&&!o){o=(J(L,"clsid")||J(L,"classid")||J(L,"type")||{}).name}if(k&&!o){o=(J(k,"type")||p(K.params.src)||{}).name}if(k&&o=="EmbeddedAudio"){K.params.type=k.attr("type")}C.replace(M);if(k){k.remove()}if(L){t=u(L.remove());if(t){K.object_html=t}}if(F){t=u(F.remove());if(t){K.video_html=t}}K.hspace=w;K.vspace=r;K.align=D;K.bgcolor=j;M.attr({id:y,"class":"mceItemMedia mceItem"+(o||"Flash"),style:G,width:A||(C.name=="audio"?"300":"320"),height:x||(C.name=="audio"?"32":"240"),hspace:w,vspace:r,align:D,bgcolor:j,"data-mce-json":g.serialize(K,"'")})}});tinymce.PluginManager.add("media",tinymce.plugins.MediaPlugin)})(); \ No newline at end of file
+(function(){var b=tinymce.explode("id,name,width,height,style,align,class,hspace,vspace,bgcolor,type"),a=tinymce.makeMap(b.join(",")),f=tinymce.html.Node,d,i,h=tinymce.util.JSON,g;d=[["Flash","d27cdb6e-ae6d-11cf-96b8-444553540000","application/x-shockwave-flash","http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"],["ShockWave","166b1bca-3f9c-11cf-8075-444553540000","application/x-director","http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0"],["WindowsMedia","6bf52a52-394a-11d3-b153-00c04f79faa6,22d6f312-b0f6-11d0-94ab-0080c74c7e95,05589fa1-c356-11ce-bf01-00aa0055595a","application/x-mplayer2","http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701"],["QuickTime","02bf25d5-8c17-4b23-bc80-d3488abddc6b","video/quicktime","http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0"],["RealMedia","cfcdaa03-8be4-11cf-b84b-0020afbbccfa","audio/x-pn-realaudio-plugin","http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"],["Java","8ad9c840-044e-11d1-b3e9-00805f499d93","application/x-java-applet","http://java.sun.com/products/plugin/autodl/jinstall-1_5_0-windows-i586.cab#Version=1,5,0,0"],["Silverlight","dfeaf541-f3e1-4c24-acac-99c30715084a","application/x-silverlight-2"],["Iframe"],["Video"],["EmbeddedAudio"],["Audio"]];function e(j){return typeof(j)=="string"?j.replace(/[^0-9%]/g,""):j}function c(m){var l,j,k;if(m&&!m.splice){j=[];for(k=0;true;k++){if(m[k]){j[k]=m[k]}else{break}}return j}return m}tinymce.create("tinymce.plugins.MediaPlugin",{init:function(n,j){var r=this,l={},m,p,q,k;function o(s){return s&&s.nodeName==="IMG"&&n.dom.hasClass(s,"mceItemMedia")}r.editor=n;r.url=j;i="";for(m=0;m<d.length;m++){k=d[m][0];q={name:k,clsids:tinymce.explode(d[m][1]||""),mimes:tinymce.explode(d[m][2]||""),codebase:d[m][3]};for(p=0;p<q.clsids.length;p++){l["clsid:"+q.clsids[p]]=q}for(p=0;p<q.mimes.length;p++){l[q.mimes[p]]=q}l["mceItem"+k]=q;l[k.toLowerCase()]=q;i+=(i?"|":"")+k}tinymce.each(n.getParam("media_types","video=mp4,m4v,ogv,webm;silverlight=xap;flash=swf,flv;shockwave=dcr;quicktime=mov,qt,mpg,mpeg;shockwave=dcr;windowsmedia=avi,wmv,wm,asf,asx,wmx,wvx;realmedia=rm,ra,ram;java=jar;audio=mp3,ogg").split(";"),function(v){var s,u,t;v=v.split(/=/);u=tinymce.explode(v[1].toLowerCase());for(s=0;s<u.length;s++){t=l[v[0].toLowerCase()];if(t){l[u[s]]=t}}});i=new RegExp("write("+i+")\\(([^)]+)\\)");r.lookup=l;n.onPreInit.add(function(){n.schema.addValidElements("object[id|style|width|height|classid|codebase|*],param[name|value],embed[id|style|width|height|type|src|*],video[*],audio[*],source[*]");n.parser.addNodeFilter("object,embed,video,audio,script,iframe",function(s){var t=s.length;while(t--){r.objectToImg(s[t])}});n.serializer.addNodeFilter("img",function(s,u,t){var v=s.length,w;while(v--){w=s[v];if((w.attr("class")||"").indexOf("mceItemMedia")!==-1){r.imgToObject(w,t)}}})});n.onInit.add(function(){if(n.theme&&n.theme.onResolveName){n.theme.onResolveName.add(function(s,t){if(t.name==="img"&&n.dom.hasClass(t.node,"mceItemMedia")){t.name="media"}})}if(n&&n.plugins.contextmenu){n.plugins.contextmenu.onContextMenu.add(function(t,u,s){if(s.nodeName==="IMG"&&s.className.indexOf("mceItemMedia")!==-1){u.add({title:"media.edit",icon:"media",cmd:"mceMedia"})}})}});n.addCommand("mceMedia",function(){var t,s;s=n.selection.getNode();if(o(s)){t=n.dom.getAttrib(s,"data-mce-json");if(t){t=h.parse(t);tinymce.each(b,function(u){var v=n.dom.getAttrib(s,u);if(v){t[u]=v}});t.type=r.getType(s.className).name.toLowerCase()}}if(!t){t={type:"flash",video:{sources:[]},params:{}}}n.windowManager.open({file:j+"/media.htm",width:430+parseInt(n.getLang("media.delta_width",0)),height:500+parseInt(n.getLang("media.delta_height",0)),inline:1},{plugin_url:j,data:t})});n.addButton("media",{title:"media.desc",cmd:"mceMedia"});n.onNodeChange.add(function(t,s,u){s.setActive("media",o(u))})},convertUrl:function(l,o){var k=this,n=k.editor,m=n.settings,p=m.url_converter,j=m.url_converter_scope||k;if(!l){return l}if(o){return n.documentBaseURI.toAbsolute(l)}return p.call(j,l,"src","object")},getInfo:function(){return{longname:"Media",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/media",version:tinymce.majorVersion+"."+tinymce.minorVersion}},dataToImg:function(m,k){var r=this,o=r.editor,p=o.documentBaseURI,j,q,n,l;m.params.src=r.convertUrl(m.params.src,k);q=m.video.attrs;if(q){q.src=r.convertUrl(q.src,k)}if(q){q.poster=r.convertUrl(q.poster,k)}j=c(m.video.sources);if(j){for(l=0;l<j.length;l++){j[l].src=r.convertUrl(j[l].src,k)}}n=r.editor.dom.create("img",{id:m.id,style:m.style,align:m.align,hspace:m.hspace,vspace:m.vspace,src:r.editor.theme.url+"/img/trans.gif","class":"mceItemMedia mceItem"+r.getType(m.type).name,"data-mce-json":h.serialize(m,"'")});n.width=m.width=e(m.width||(m.type=="audio"?"300":"320"));n.height=m.height=e(m.height||(m.type=="audio"?"32":"240"));return n},dataToHtml:function(j,k){return this.editor.serializer.serialize(this.dataToImg(j,k),{forced_root_block:"",force_absolute:k})},htmlToData:function(l){var k,j,m;m={type:"flash",video:{sources:[]},params:{}};k=this.editor.parser.parse(l);j=k.getAll("img")[0];if(j){m=h.parse(j.attr("data-mce-json"));m.type=this.getType(j.attr("class")).name.toLowerCase();tinymce.each(b,function(n){var o=j.attr(n);if(o){m[n]=o}})}return m},getType:function(m){var k,j,l;j=tinymce.explode(m," ");for(k=0;k<j.length;k++){l=this.lookup[j[k]];if(l){return l}}},imgToObject:function(z,o){var u=this,p=u.editor,C,H,j,t,I,y,G,w,k,E,s,q,A,D,m,x,l,B,F;function r(n,J){var N,M,O,L,K;K=p.getParam("flash_video_player_url",u.convertUrl(u.url+"/moxieplayer.swf"));if(K){N=p.documentBaseURI;G.params.src=K;if(p.getParam("flash_video_player_absvideourl",true)){n=N.toAbsolute(n||"",true);J=N.toAbsolute(J||"",true)}O="";M=p.getParam("flash_video_player_flashvars",{url:"$url",poster:"$poster"});tinymce.each(M,function(Q,P){Q=Q.replace(/\$url/,n||"");Q=Q.replace(/\$poster/,J||"");if(Q.length>0){O+=(O?"&":"")+P+"="+escape(Q)}});if(O.length){G.params.flashvars=O}L=p.getParam("flash_video_player_params",{allowfullscreen:true,allowscriptaccess:true});tinymce.each(L,function(Q,P){G.params[P]=""+Q})}}G=z.attr("data-mce-json");if(!G){return}G=h.parse(G);q=this.getType(z.attr("class"));B=z.attr("data-mce-style");if(!B){B=z.attr("style");if(B){B=p.dom.serializeStyle(p.dom.parseStyle(B,"img"))}}G.width=z.attr("width")||G.width;G.height=z.attr("height")||G.height;if(q.name==="Iframe"){x=new f("iframe",1);tinymce.each(b,function(n){var J=z.attr(n);if(n=="class"&&J){J=J.replace(/mceItem.+ ?/g,"")}if(J&&J.length>0){x.attr(n,J)}});for(I in G.params){x.attr(I,G.params[I])}x.attr({style:B,src:G.params.src});z.replace(x);return}if(this.editor.settings.media_use_script){x=new f("script",1).attr("type","text/javascript");y=new f("#text",3);y.value="write"+q.name+"("+h.serialize(tinymce.extend(G.params,{width:z.attr("width"),height:z.attr("height")}))+");";x.append(y);z.replace(x);return}if(q.name==="Video"&&G.video.sources[0]){C=new f("video",1).attr(tinymce.extend({id:z.attr("id"),width:e(z.attr("width")),height:e(z.attr("height")),style:B},G.video.attrs));if(G.video.attrs){l=G.video.attrs.poster}k=G.video.sources=c(G.video.sources);for(A=0;A<k.length;A++){if(/\.mp4$/.test(k[A].src)){m=k[A].src}}if(!k[0].type){C.attr("src",k[0].src);k.splice(0,1)}for(A=0;A<k.length;A++){w=new f("source",1).attr(k[A]);w.shortEnded=true;C.append(w)}if(m){r(m,l);q=u.getType("flash")}else{G.params.src=""}}if(q.name==="Audio"&&G.video.sources[0]){F=new f("audio",1).attr(tinymce.extend({id:z.attr("id"),width:e(z.attr("width")),height:e(z.attr("height")),style:B},G.video.attrs));if(G.video.attrs){l=G.video.attrs.poster}k=G.video.sources=c(G.video.sources);if(!k[0].type){F.attr("src",k[0].src);k.splice(0,1)}for(A=0;A<k.length;A++){w=new f("source",1).attr(k[A]);w.shortEnded=true;F.append(w)}G.params.src=""}if(q.name==="EmbeddedAudio"){j=new f("embed",1);j.shortEnded=true;j.attr({id:z.attr("id"),width:e(z.attr("width")),height:e(z.attr("height")),style:B,type:z.attr("type")});for(I in G.params){j.attr(I,G.params[I])}tinymce.each(b,function(n){if(G[n]&&n!="type"){j.attr(n,G[n])}});G.params.src=""}if(G.params.src){if(/\.flv$/i.test(G.params.src)){r(G.params.src,"")}if(o&&o.force_absolute){G.params.src=p.documentBaseURI.toAbsolute(G.params.src)}H=new f("object",1).attr({id:z.attr("id"),width:e(z.attr("width")),height:e(z.attr("height")),style:B});tinymce.each(b,function(n){var J=G[n];if(n=="class"&&J){J=J.replace(/mceItem.+ ?/g,"")}if(J&&n!="type"){H.attr(n,J)}});for(I in G.params){s=new f("param",1);s.shortEnded=true;y=G.params[I];if(I==="src"&&q.name==="WindowsMedia"){I="url"}s.attr({name:I,value:y});H.append(s)}if(this.editor.getParam("media_strict",true)){H.attr({data:G.params.src,type:q.mimes[0]})}else{H.attr({classid:"clsid:"+q.clsids[0],codebase:q.codebase});j=new f("embed",1);j.shortEnded=true;j.attr({id:z.attr("id"),width:e(z.attr("width")),height:e(z.attr("height")),style:B,type:q.mimes[0]});for(I in G.params){j.attr(I,G.params[I])}tinymce.each(b,function(n){if(G[n]&&n!="type"){j.attr(n,G[n])}});H.append(j)}if(G.object_html){y=new f("#text",3);y.raw=true;y.value=G.object_html;H.append(y)}if(C){C.append(H)}}if(C){if(G.video_html){y=new f("#text",3);y.raw=true;y.value=G.video_html;C.append(y)}}if(F){if(G.video_html){y=new f("#text",3);y.raw=true;y.value=G.video_html;F.append(y)}}var v=C||F||H||j;if(v){z.replace(v)}else{z.remove()}},objectToImg:function(C){var L,k,F,s,M,N,y,A,x,G,E,t,q,I,B,l,K,o,H=this.lookup,m,z,v=this.editor.settings.url_converter,n=this.editor.settings.url_converter_scope,w,r,D,j;function u(O){return new tinymce.html.Serializer({inner:true,validate:false}).serialize(O)}function J(P,O){return H[(P.attr(O)||"").toLowerCase()]}function p(P){var O=P.replace(/^.*\.([^.]+)$/,"$1");return H[O.toLowerCase()||""]}if(!C.parent){return}if(C.name==="script"){if(C.firstChild){m=i.exec(C.firstChild.value)}if(!m){return}o=m[1];K={video:{},params:h.parse(m[2])};A=K.params.width;x=K.params.height}K=K||{video:{},params:{}};M=new f("img",1);M.attr({src:this.editor.theme.url+"/img/trans.gif"});N=C.name;if(N==="video"||N=="audio"){F=C;L=C.getAll("object")[0];k=C.getAll("embed")[0];A=F.attr("width");x=F.attr("height");y=F.attr("id");K.video={attrs:{},sources:[]};z=K.video.attrs;for(N in F.attributes.map){z[N]=F.attributes.map[N]}B=C.attr("src");if(B){K.video.sources.push({src:v.call(n,B,"src",C.name)})}l=F.getAll("source");for(E=0;E<l.length;E++){B=l[E].remove();K.video.sources.push({src:v.call(n,B.attr("src"),"src","source"),type:B.attr("type"),media:B.attr("media")})}if(z.poster){z.poster=v.call(n,z.poster,"poster",C.name)}}if(C.name==="object"){L=C;k=C.getAll("embed")[0]}if(C.name==="embed"){k=C}if(C.name==="iframe"){s=C;o="Iframe"}if(L){A=A||L.attr("width");x=x||L.attr("height");G=G||L.attr("style");y=y||L.attr("id");w=w||L.attr("hspace");r=r||L.attr("vspace");D=D||L.attr("align");j=j||L.attr("bgcolor");K.name=L.attr("name");I=L.getAll("param");for(E=0;E<I.length;E++){q=I[E];N=q.remove().attr("name");if(!a[N]){K.params[N]=q.attr("value")}}K.params.src=K.params.src||L.attr("data")}if(k){A=A||k.attr("width");x=x||k.attr("height");G=G||k.attr("style");y=y||k.attr("id");w=w||k.attr("hspace");r=r||k.attr("vspace");D=D||k.attr("align");j=j||k.attr("bgcolor");for(N in k.attributes.map){if(!a[N]&&!K.params[N]){K.params[N]=k.attributes.map[N]}}}if(s){A=e(s.attr("width"));x=e(s.attr("height"));G=G||s.attr("style");y=s.attr("id");w=s.attr("hspace");r=s.attr("vspace");D=s.attr("align");j=s.attr("bgcolor");tinymce.each(b,function(O){M.attr(O,s.attr(O))});for(N in s.attributes.map){if(!a[N]&&!K.params[N]){K.params[N]=s.attributes.map[N]}}}if(K.params.movie){K.params.src=K.params.src||K.params.movie;delete K.params.movie}if(K.params.src){K.params.src=v.call(n,K.params.src,"src","object")}if(F){if(C.name==="video"){o=H.video.name}else{if(C.name==="audio"){o=H.audio.name}}}if(L&&!o){o=(J(L,"clsid")||J(L,"classid")||J(L,"type")||{}).name}if(k&&!o){o=(J(k,"type")||p(K.params.src)||{}).name}if(k&&o=="EmbeddedAudio"){K.params.type=k.attr("type")}C.replace(M);if(k){k.remove()}if(L){t=u(L.remove());if(t){K.object_html=t}}if(F){t=u(F.remove());if(t){K.video_html=t}}K.hspace=w;K.vspace=r;K.align=D;K.bgcolor=j;M.attr({id:y,"class":"mceItemMedia mceItem"+(o||"Flash"),style:G,width:A||(C.name=="audio"?"300":"320"),height:x||(C.name=="audio"?"32":"240"),hspace:w,vspace:r,align:D,bgcolor:j,"data-mce-json":h.serialize(K,"'")})}});tinymce.PluginManager.add("media",tinymce.plugins.MediaPlugin)})(); \ No newline at end of file
diff --git a/program/js/tiny_mce/plugins/media/editor_plugin_src.js b/program/js/tiny_mce/plugins/media/editor_plugin_src.js
index ea79db18a..33a58050e 100644
--- a/program/js/tiny_mce/plugins/media/editor_plugin_src.js
+++ b/program/js/tiny_mce/plugins/media/editor_plugin_src.js
@@ -28,6 +28,10 @@
["Audio"]
];
+ function normalizeSize(size) {
+ return typeof(size) == "string" ? size.replace(/[^0-9%]/g, '') : size;
+ }
+
function toArray(obj) {
var undef, out, i;
@@ -258,8 +262,8 @@
'data-mce-json' : JSON.serialize(data, "'")
});
- img.width = data.width || (data.type == 'audio' ? "300" : "320");
- img.height = data.height || (data.type == 'audio' ? "32" : "240");
+ img.width = data.width = normalizeSize(data.width || (data.type == 'audio' ? "300" : "320"));
+ img.height = data.height = normalizeSize(data.height || (data.type == 'audio' ? "32" : "240"));
return img;
},
@@ -378,7 +382,7 @@
data = JSON.parse(data);
typeItem = this.getType(node.attr('class'));
- style = node.attr('data-mce-style')
+ style = node.attr('data-mce-style');
if (!style) {
style = node.attr('style');
@@ -386,6 +390,10 @@
style = editor.dom.serializeStyle(editor.dom.parseStyle(style, 'img'));
}
+ // Use node width/height to override the data width/height when the placeholder is resized
+ data.width = node.attr('width') || data.width;
+ data.height = node.attr('height') || data.height;
+
// Handle iframe
if (typeItem.name === 'Iframe') {
replacement = new Node('iframe', 1);
@@ -434,8 +442,8 @@
// Create new object element
video = new Node('video', 1).attr(tinymce.extend({
id : node.attr('id'),
- width: node.attr('width'),
- height: node.attr('height'),
+ width: normalizeSize(node.attr('width')),
+ height: normalizeSize(node.attr('height')),
style : style
}, data.video.attrs));
@@ -473,8 +481,8 @@
// Create new object element
audio = new Node('audio', 1).attr(tinymce.extend({
id : node.attr('id'),
- width: node.attr('width'),
- height: node.attr('height'),
+ width: normalizeSize(node.attr('width')),
+ height: normalizeSize(node.attr('height')),
style : style
}, data.video.attrs));
@@ -502,8 +510,8 @@
embed.shortEnded = true;
embed.attr({
id: node.attr('id'),
- width: node.attr('width'),
- height: node.attr('height'),
+ width: normalizeSize(node.attr('width')),
+ height: normalizeSize(node.attr('height')),
style : style,
type: node.attr('type')
});
@@ -531,8 +539,8 @@
// Create new object element
object = new Node('object', 1).attr({
id : node.attr('id'),
- width: node.attr('width'),
- height: node.attr('height'),
+ width: normalizeSize(node.attr('width')),
+ height: normalizeSize(node.attr('height')),
style : style
});
@@ -576,8 +584,8 @@
embed.shortEnded = true;
embed.attr({
id: node.attr('id'),
- width: node.attr('width'),
- height: node.attr('height'),
+ width: normalizeSize(node.attr('width')),
+ height: normalizeSize(node.attr('height')),
style : style,
type: typeItem.mimes[0]
});
@@ -793,8 +801,8 @@
if (iframe) {
// Get width/height
- width = iframe.attr('width');
- height = iframe.attr('height');
+ width = normalizeSize(iframe.attr('width'));
+ height = normalizeSize(iframe.attr('height'));
style = style || iframe.attr('style');
id = iframe.attr('id');
hspace = iframe.attr('hspace');
diff --git a/program/js/tiny_mce/plugins/media/js/media.js b/program/js/tiny_mce/plugins/media/js/media.js
index 733c5f6c2..f6a081a63 100644
--- a/program/js/tiny_mce/plugins/media/js/media.js
+++ b/program/js/tiny_mce/plugins/media/js/media.js
@@ -78,7 +78,7 @@
get('video_altsource2_filebrowser').innerHTML = getBrowserHTML('video_filebrowser_altsource2','video_altsource2','media','media');
get('audio_altsource1_filebrowser').innerHTML = getBrowserHTML('audio_filebrowser_altsource1','audio_altsource1','media','media');
get('audio_altsource2_filebrowser').innerHTML = getBrowserHTML('audio_filebrowser_altsource2','audio_altsource2','media','media');
- get('video_poster_filebrowser').innerHTML = getBrowserHTML('filebrowser_poster','video_poster','media','image');
+ get('video_poster_filebrowser').innerHTML = getBrowserHTML('filebrowser_poster','video_poster','image','media');
html = self.getMediaListHTML('medialist', 'src', 'media', 'media');
if (html == "")
@@ -326,6 +326,39 @@
setVal('src', src);
setVal('media_type', data.type);
}
+
+ // Vimeo
+ if (src.match(/vimeo.com\/([0-9]+)/)) {
+ data.width = 425;
+ data.height = 350;
+ data.params.frameborder = '0';
+ data.type = 'iframe';
+ src = 'http://player.vimeo.com/video/' + src.match(/vimeo.com\/([0-9]+)/)[1];
+ setVal('src', src);
+ setVal('media_type', data.type);
+ }
+
+ // stream.cz
+ if (src.match(/stream.cz\/((?!object).)*\/([0-9]+)/)) {
+ data.width = 425;
+ data.height = 350;
+ data.params.frameborder = '0';
+ data.type = 'iframe';
+ src = 'http://www.stream.cz/object/' + src.match(/stream.cz\/[^/]+\/([0-9]+)/)[1];
+ setVal('src', src);
+ setVal('media_type', data.type);
+ }
+
+ // Google maps
+ if (src.match(/maps.google.([a-z]{2,3})\/maps\/(.+)msid=(.+)/)) {
+ data.width = 425;
+ data.height = 350;
+ data.params.frameborder = '0';
+ data.type = 'iframe';
+ src = 'http://maps.google.com/maps/ms?msid=' + src.match(/msid=(.+)/)[1] + "&output=embed";
+ setVal('src', src);
+ setVal('media_type', data.type);
+ }
if (data.type == 'video') {
if (!data.video.sources)
diff --git a/program/js/tiny_mce/plugins/media/langs/en_dlg.js b/program/js/tiny_mce/plugins/media/langs/en_dlg.js
index d0aaa1396..b247f85cd 100644
--- a/program/js/tiny_mce/plugins/media/langs/en_dlg.js
+++ b/program/js/tiny_mce/plugins/media/langs/en_dlg.js
@@ -1 +1 @@
-tinyMCE.addI18n('en.media_dlg',{list:"List",file:"File/URL",advanced:"Advanced",general:"General",title:"Insert/Edit Embedded Media","align_top_left":"Top Left","align_center":"Center","align_left":"Left","align_bottom":"Bottom","align_right":"Right","align_top":"Top","qt_stream_warn":"Streamed RTSP resources should be added to the QT Source field under the Advanced tab.\nYou should also add a non-streamed version to the Source field.",qtsrc:"QT Source",progress:"Progress",sound:"Sound",swstretchvalign:"Stretch V-Align",swstretchhalign:"Stretch H-Align",swstretchstyle:"Stretch Style",scriptcallbacks:"Script Callbacks","align_top_right":"Top Right",uimode:"UI Mode",rate:"Rate",playcount:"Play Count",defaultframe:"Default Frame",currentposition:"Current Position",currentmarker:"Current Marker",captioningid:"Captioning ID",baseurl:"Base URL",balance:"Balance",windowlessvideo:"Windowless Video",stretchtofit:"Stretch to Fit",mute:"Mute",invokeurls:"Invoke URLs",fullscreen:"Full Screen",enabled:"Enabled",autostart:"Auto Start",volume:"Volume",target:"Target",qtsrcchokespeed:"Choke Speed",href:"HREF",endtime:"End Time",starttime:"Start Time",enablejavascript:"Enable JavaScript",correction:"No Correction",targetcache:"Target Cache",playeveryframe:"Play Every Frame",kioskmode:"Kiosk Mode",controller:"Controller",menu:"Show Menu",loop:"Loop",play:"Auto Play",hspace:"H-Space",vspace:"V-Space","class_name":"Class",name:"Name",id:"ID",type:"Type",size:"Dimensions",preview:"Preview","constrain_proportions":"Constrain Proportions",controls:"Controls",numloop:"Num Loops",console:"Console",cache:"Cache",autohref:"Auto HREF",liveconnect:"SWLiveConnect",flashvars:"Flash Vars",base:"Base",bgcolor:"Background",wmode:"WMode",salign:"SAlign",align:"Align",scale:"Scale",quality:"Quality",shuffle:"Shuffle",prefetch:"Prefetch",nojava:"No Java",maintainaspect:"Maintain Aspect",imagestatus:"Image Status",center:"Center",autogotourl:"Auto Goto URL","shockwave_options":"Shockwave Options","rmp_options":"Real Media Player Options","wmp_options":"Windows Media Player Options","qt_options":"QuickTime Options","flash_options":"Flash Options",hidden:"Hidden","align_bottom_left":"Bottom Left","align_bottom_right":"Bottom Right","embedded_audio_options":"Embedded Audio Options","html5_video_options":"HTML5 Video Options",altsource1:"Alternative source 1",altsource2:"Alternative source 2",preload:"Preload",poster:"Poster",source:"Source","html5_audio_options":"Audio Options","preload_none":"Don\'t Preload","preload_metadata":"Preload video metadata","preload_auto":"Let user\'s browser decide",flash:"",quicktime:"",windowsmedia:"",realmedia:"",shockwave:"",audio:"",video:"",iframe:"",embeddedaudio:""}); \ No newline at end of file
+tinyMCE.addI18n('en.media_dlg',{list:"List",file:"File/URL",advanced:"Advanced",general:"General",title:"Insert/Edit Embedded Media","align_top_left":"Top Left","align_center":"Center","align_left":"Left","align_bottom":"Bottom","align_right":"Right","align_top":"Top","qt_stream_warn":"Streamed RTSP resources should be added to the QT Source field under the Advanced tab.\nYou should also add a non-streamed version to the Source field.",qtsrc:"QT Source",progress:"Progress",sound:"Sound",swstretchvalign:"Stretch V-Align",swstretchhalign:"Stretch H-Align",swstretchstyle:"Stretch Style",scriptcallbacks:"Script Callbacks","align_top_right":"Top Right",uimode:"UI Mode",rate:"Rate",playcount:"Play Count",defaultframe:"Default Frame",currentposition:"Current Position",currentmarker:"Current Marker",captioningid:"Captioning ID",baseurl:"Base URL",balance:"Balance",windowlessvideo:"Windowless Video",stretchtofit:"Stretch to Fit",mute:"Mute",invokeurls:"Invoke URLs",fullscreen:"Full Screen",enabled:"Enabled",autostart:"Auto Start",volume:"Volume",target:"Target",qtsrcchokespeed:"Choke Speed",href:"HREF",endtime:"End Time",starttime:"Start Time",enablejavascript:"Enable JavaScript",correction:"No Correction",targetcache:"Target Cache",playeveryframe:"Play Every Frame",kioskmode:"Kiosk Mode",controller:"Controller",menu:"Show Menu",loop:"Loop",play:"Auto Play",hspace:"H-Space",vspace:"V-Space","class_name":"Class",name:"Name",id:"ID",type:"Type",size:"Dimensions",preview:"Preview","constrain_proportions":"Constrain Proportions",controls:"Controls",numloop:"Num Loops",console:"Console",cache:"Cache",autohref:"Auto HREF",liveconnect:"SWLiveConnect",flashvars:"Flash Vars",base:"Base",bgcolor:"Background",wmode:"WMode",salign:"SAlign",align:"Align",scale:"Scale",quality:"Quality",shuffle:"Shuffle",prefetch:"Prefetch",nojava:"No Java",maintainaspect:"Maintain Aspect",imagestatus:"Image Status",center:"Center",autogotourl:"Auto Goto URL","shockwave_options":"Shockwave Options","rmp_options":"Real Media Player Options","wmp_options":"Windows Media Player Options","qt_options":"QuickTime Options","flash_options":"Flash Options",hidden:"Hidden","align_bottom_left":"Bottom Left","align_bottom_right":"Bottom Right",flash:"",quicktime:"","embedded_audio_options":"Embedded Audio Options",windowsmedia:"",realmedia:"",shockwave:"",audio:"",video:"","html5_video_options":"HTML5 Video Options",altsource1:"Alternative source 1",altsource2:"Alternative source 2",preload:"Preload",poster:"Poster",source:"Source","html5_audio_options":"Audio Options","preload_none":"Don\'t Preload","preload_metadata":"Preload video metadata","preload_auto":"Let user\'s browser decide",iframe:"",embeddedaudio:""}); \ No newline at end of file
diff --git a/program/js/tiny_mce/plugins/media/langs/uk_dlg.js b/program/js/tiny_mce/plugins/media/langs/uk_dlg.js
index 6c3b60c01..6f7a4b43f 100644
--- a/program/js/tiny_mce/plugins/media/langs/uk_dlg.js
+++ b/program/js/tiny_mce/plugins/media/langs/uk_dlg.js
@@ -1 +1 @@
-tinyMCE.addI18n('uk.media_dlg',{list:"\u0421\u043f\u0438\u0441\u043e\u043a",file:"\u0424\u0430\u0439\u043b/URL",advanced:"\u0414\u043e\u0434\u0430\u0442\u043a\u043e\u0432\u043e",general:"\u0417\u0430\u0433\u0430\u043b\u044c\u043d\u0435",title:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 / \u0440\u0435\u0434\u0430\u0433\u0443\u0432\u0430\u0442\u0438 \u0432\u0431\u0443\u0434\u043e\u0432\u0430\u043d\u0456 \u043c\u0435\u0434\u0456\u0430","align_top_left":"\u0417\u0432\u0435\u0440\u0445\u0443 \u0437\u043b\u0456\u0432\u0430","align_center":"\u0426\u0435\u043d\u0442\u0440","align_left":"\u041b\u0456\u0432\u043e","align_bottom":"\u041d\u0438\u0437","align_right":"\u041f\u0440\u0430\u0432\u043e","align_top":"\u0412\u0435\u0440\u0445","qt_stream_warn":"Streamed rtsp resources should be added to the QT Src field under the advanced tab.\nYou should also add a non streamed version to the Src field..",qtsrc:"\u0414\u0436\u0435\u0440\u0435\u043b\u043e QT",progress:"\u0425\u0456\u0434",sound:"\u0417\u0432\u0443\u043a",swstretchvalign:"\u0420\u043e\u0437\u0442\u044f\u0433\u043d\u0443\u0442\u0438 \u0432\u0435\u0440\u0442. \u0432\u0438\u0440\u0456\u0432\u043d\u044e\u0430\u043d\u043d\u044f",swstretchhalign:"\u0420\u043e\u0437\u0442\u044f\u0433\u043d\u0443\u0442\u0438 \u0433\u043e\u0440\u0438\u0437. \u0432\u0438\u0440\u0456\u0432\u043d\u044e\u0430\u043d\u043d\u044f",swstretchstyle:"\u0420\u043e\u0437\u0442\u044f\u0433\u043d\u0443\u0442\u0438\u0439 \u0441\u0442\u0438\u043b\u044c",scriptcallbacks:"\u0417\u0432\u043e\u0440\u043e\u0442\u043d\u0456\u0439 \u0432\u0438\u043a\u043b\u0438\u043a \u0441\u0446\u0435\u043d\u0430\u0440\u0456\u044e","align_top_right":"\u0417\u0432\u0435\u0440\u0445\u0443 \u0437\u043f\u0440\u0430\u0432\u0430",uimode:"\u0420\u0435\u0436\u0438\u043c \u0456\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0443",rate:"\u0428\u0432\u0438\u0434\u043a\u0456\u0441\u0442\u044c",playcount:"\u041a\u0456\u043b\u044c\u043a\u0456\u0441\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u0432\u0430\u043d\u044c",defaultframe:"\u041a\u0430\u0434\u0440 \u0437\u0430 \u0437\u0430\u043c\u043e\u0432\u0447\u0430\u043d\u043d\u044f\u043c",currentposition:"\u041f\u043e\u0442\u043e\u0447\u043d\u0430 \u043f\u043e\u0437\u0438\u0446\u0456\u044f",currentmarker:"\u041f\u043e\u0442\u043e\u0447\u043d\u0438\u0439 \u043c\u0430\u0440\u043a\u0435\u0440",captioningid:"\u0406\u0434\u0435\u043d\u0442\u0438\u0444\u0456\u043a\u0430\u0442\u043e\u0440 \u043d\u0430\u0434\u043f\u0438\u0441\u0443",baseurl:"\u041e\u0441\u043d\u043e\u0432\u043d\u0435 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f",balance:"\u0411\u0430\u043b\u0430\u043d\u0441",windowlessvideo:"Windowless video",stretchtofit:"\u0417\u043c\u0435\u043d\u0448\u0438\u0442\u0438, \u0449\u043e\u0431 \u0432\u043c\u0456\u0441\u0442\u0438\u043b\u043e\u0441\u044c",mute:"\u0417\u0430\u0433\u043b\u0443\u0448\u0438\u0442\u0438",invokeurls:"\u0412\u0438\u043a\u043b\u0438\u043a\u0430\u0442\u0438 URLs",fullscreen:"\u041f\u043e\u0432\u043d\u0438\u0439 \u0435\u043a\u0440\u0430\u043d",enabled:"\u0414\u043e\u0437\u0432\u043e\u043b\u0435\u043d\u0438\u0439",autostart:"\u0410\u0432\u0442\u043e\u0441\u0442\u0430\u0440\u0442",volume:"\u0413\u0443\u0447\u043d\u0456\u0441\u0442\u044c",target:"\u0426\u0456\u043b\u044c",qtsrcchokespeed:"\u0428\u0432\u0438\u0434\u043a\u0456\u0441\u0442\u044c \u0437\u0430\u0433\u0430\u0441\u0430\u043d\u043d\u044f",href:"\u041f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f",endtime:"\u0427\u0430\u0441 \u043a\u0456\u043d\u0446\u044f",starttime:"\u0427\u0430\u0441 \u043f\u043e\u0447\u0430\u0442\u043a\u0443",enablejavascript:"\u0414\u043e\u0437\u0432\u043e\u043b\u0438\u0442\u0438 JavaScript",correction:"\u0411\u0435\u0437 \u043a\u043e\u0440\u0435\u043a\u0446\u0456\u0457",targetcache:"\u0426\u0456\u043b\u044c\u043e\u0432\u0438\u0439 \u043a\u0435\u0448",playeveryframe:"\u041f\u0440\u043e\u0433\u0440\u0430\u0432\u0430\u0442\u0438 \u043a\u043e\u0436\u0435\u043d \u043a\u0430\u0434\u0440",kioskmode:"\u041f\u043e\u0432\u043d\u043e\u0435\u043a\u0440\u0430\u043d\u043d\u0438\u0439 \u0440\u0435\u0436\u0438\u043c",controller:"\u041a\u043e\u043d\u0442\u0440\u043e\u043b\u0435\u0440",menu:"\u041f\u043e\u043a\u0430\u0437\u0443\u0432\u0430\u0442\u0438 \u043c\u0435\u043d\u044e",loop:"\u041f\u043e\u0432\u0442\u043e\u0440\u044e\u0432\u0430\u0442\u0438",play:"\u0410\u0432\u0442\u043e\u043f\u0440\u043e\u0433\u0440\u0430\u0432\u043d\u043d\u044f",hspace:"\u0433\u043e\u0440.\u0432\u0456\u0434\u0441\u0442\u0443\u043f",vspace:"\u0432\u0435\u0440\u0442.\u0432\u0456\u0434\u0441\u0442\u0443\u043f","class_name":"\u041a\u043b\u0430\u0441",name:"\u041d\u0430\u0437\u0432\u0430",id:"\u0406\u0434\u0435\u043d\u0442\u0438\u0444\u0456\u043a\u0430\u0442\u043e\u0440",type:"\u0422\u0438\u043f",size:"\u0420\u043e\u0437\u043c\u0456\u0440\u0438",preview:"\u041f\u0435\u0440\u0435\u0433\u043b\u044f\u0434","constrain_proportions":"\u0417\u0431\u0435\u0440\u0456\u0433\u0430\u0442\u0438 \u043f\u0440\u043e\u043f\u043e\u0440\u0446\u0456\u0457",controls:"\u041a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f",numloop:"\u041a\u0456\u043b\u044c\u043a\u0456\u0441\u0442\u044c \u0446\u0438\u043a\u043b\u0456\u0432",console:"\u041a\u043e\u043d\u0441\u043e\u043b\u044c",cache:"\u041a\u0435\u0448",autohref:"AutoHREF",liveconnect:"SWLiveConnect",flashvars:"Flash-\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0438",base:"\u0411\u0430\u0437\u0430",bgcolor:"\u0424\u043e\u043d",wmode:"W-\u0440\u0435\u0436\u0438\u043c",salign:"S-\u0412\u0438\u0440\u0456\u0432\u043d\u044e\u0432\u0430\u043d\u043d\u044f",align:"\u0412\u0438\u0440\u0456\u0432\u043d\u044e\u0432\u0430\u043d\u043d\u044f",scale:"\u041c\u0430\u0441\u0448\u0442\u0430\u0431\u0443\u0432\u0430\u043d\u043d\u044f",quality:"\u042f\u043a\u0456\u0441\u0442\u044c",shuffle:"\u041f\u0435\u0440\u0435\u0442\u0430\u0441\u0443\u0432\u0430\u0442\u0438",prefetch:"\u041f\u043e\u043f\u0435\u0440\u0435\u0434\u043d\u0454 \u0432\u0438\u043b\u0443\u0447\u0435\u043d\u043d\u044f",nojava:"\u0411\u0435\u0437 Java",maintainaspect:"\u0412\u0434\u0435\u0440\u0436\u0443\u0432\u0430\u0442\u0438 \u0440\u0430\u043a\u0443\u0440\u0441",imagestatus:"\u0421\u0442\u0430\u0442\u0443\u0441 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f",center:"\u041f\u043e \u0446\u0435\u043d\u0442\u0440\u0443",autogotourl:"\u041f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f \u0430\u0432\u0442\u043e\u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0443","shockwave_options":"\u041e\u043f\u0446\u0456\u0457 Shockwave","rmp_options":"\u041e\u043f\u0446\u0456\u0457 Real media player","wmp_options":"\u041e\u043f\u0446\u0456\u0457 Windows media player","qt_options":"\u041e\u043f\u0446\u0456\u0457 Quicktime","flash_options":"\u041e\u043f\u0446\u0456\u0457 Flash",hidden:"\u041f\u0440\u0438\u0445\u043e\u0432\u0430\u043d\u0438\u0439","align_bottom_left":"\u0417\u043d\u0438\u0437\u0443 \u0437\u043b\u0456\u0432\u0430","align_bottom_right":"\u0417\u043d\u0438\u0437\u0443 \u0437\u043f\u0440\u0430\u0432\u0430",flash:"flash",quicktime:"quicktime",windowsmedia:"windowsmedia",realmedia:"realmedia",shockwave:"shockwave",audio:"audio",video:"video","html5_video_options":"\u0412\u0456\u0434\u0435\u043e \u043e\u043f\u0446\u0456\u0457 HTML5",altsource1:"\u0410\u043b\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u0435 \u0434\u0436\u0435\u0440\u0435\u043b\u043e 1",altsource2:"\u0410\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u0435 \u0434\u0436\u0435\u0440\u0435\u043b\u043e 2",preload:"\u041f\u043e\u043f\u0435\u0440\u0435\u0434\u043d\u0454 \u0437\u0430\u0432\u0430\u043d\u0442\u0430\u0436\u0435\u043d\u043d\u044f",source:"\u0414\u0436\u0435\u0440\u0435\u043b\u043e","html5_audio_options":"\u0410\u0443\u0434\u0456\u043e \u043e\u043f\u0446\u0456\u0457",iframe:"iframe",embeddedaudio:"embeddedaudio","embedded_audio_options":"Embedded Audio Options",poster:"Poster","preload_none":"Don\'t Preload","preload_metadata":"Preload video metadata","preload_auto":"Let user\'s browser decide"}); \ No newline at end of file
+tinyMCE.addI18n('uk.media_dlg',{list:"\u0421\u043f\u0438\u0441\u043e\u043a",file:"\u0424\u0430\u0439\u043b/URL",advanced:"\u0414\u043e\u0434\u0430\u0442\u043a\u043e\u0432\u043e",general:"\u0417\u0430\u0433\u0430\u043b\u044c\u043d\u0435",title:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 / \u0440\u0435\u0434\u0430\u0433\u0443\u0432\u0430\u0442\u0438 \u0432\u0431\u0443\u0434\u043e\u0432\u0430\u043d\u0456 \u043c\u0435\u0434\u0456\u0430","align_top_left":"\u0417\u0432\u0435\u0440\u0445\u0443 \u0437\u043b\u0456\u0432\u0430","align_center":"\u0426\u0435\u043d\u0442\u0440","align_left":"\u041b\u0456\u0432\u043e","align_bottom":"\u041d\u0438\u0437","align_right":"\u041f\u0440\u0430\u0432\u043e","align_top":"\u0412\u0435\u0440\u0445","qt_stream_warn":"Streamed rtsp resources should be added to the QT Src field under the advanced tab.\nYou should also add a non streamed version to the Src field..",qtsrc:"\u0414\u0436\u0435\u0440\u0435\u043b\u043e QT",progress:"\u0425\u0456\u0434",sound:"\u0417\u0432\u0443\u043a",swstretchvalign:"\u0420\u043e\u0437\u0442\u044f\u0433\u043d\u0443\u0442\u0438 \u0432\u0435\u0440\u0442. \u0432\u0438\u0440\u0456\u0432\u043d\u044e\u0430\u043d\u043d\u044f",swstretchhalign:"\u0420\u043e\u0437\u0442\u044f\u0433\u043d\u0443\u0442\u0438 \u0433\u043e\u0440\u0438\u0437. \u0432\u0438\u0440\u0456\u0432\u043d\u044e\u0430\u043d\u043d\u044f",swstretchstyle:"\u0420\u043e\u0437\u0442\u044f\u0433\u043d\u0443\u0442\u0438\u0439 \u0441\u0442\u0438\u043b\u044c",scriptcallbacks:"\u0417\u0432\u043e\u0440\u043e\u0442\u043d\u0456\u0439 \u0432\u0438\u043a\u043b\u0438\u043a \u0441\u0446\u0435\u043d\u0430\u0440\u0456\u044e","align_top_right":"\u0417\u0432\u0435\u0440\u0445\u0443 \u0437\u043f\u0440\u0430\u0432\u0430",uimode:"\u0420\u0435\u0436\u0438\u043c \u0456\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0443",rate:"\u0428\u0432\u0438\u0434\u043a\u0456\u0441\u0442\u044c",playcount:"\u041a\u0456\u043b\u044c\u043a\u0456\u0441\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u0432\u0430\u043d\u044c",defaultframe:"\u041a\u0430\u0434\u0440 \u0437\u0430 \u0437\u0430\u043c\u043e\u0432\u0447\u0430\u043d\u043d\u044f\u043c",currentposition:"\u041f\u043e\u0442\u043e\u0447\u043d\u0430 \u043f\u043e\u0437\u0438\u0446\u0456\u044f",currentmarker:"\u041f\u043e\u0442\u043e\u0447\u043d\u0438\u0439 \u043c\u0430\u0440\u043a\u0435\u0440",captioningid:"\u0406\u0434\u0435\u043d\u0442\u0438\u0444\u0456\u043a\u0430\u0442\u043e\u0440 \u043d\u0430\u0434\u043f\u0438\u0441\u0443",baseurl:"\u041e\u0441\u043d\u043e\u0432\u043d\u0435 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f",balance:"\u0411\u0430\u043b\u0430\u043d\u0441",windowlessvideo:"Windowless video",stretchtofit:"\u0417\u043c\u0435\u043d\u0448\u0438\u0442\u0438, \u0449\u043e\u0431 \u0432\u043c\u0456\u0441\u0442\u0438\u043b\u043e\u0441\u044c",mute:"\u0417\u0430\u0433\u043b\u0443\u0448\u0438\u0442\u0438",invokeurls:"\u0412\u0438\u043a\u043b\u0438\u043a\u0430\u0442\u0438 URLs",fullscreen:"\u041f\u043e\u0432\u043d\u0438\u0439 \u0435\u043a\u0440\u0430\u043d",enabled:"\u0414\u043e\u0437\u0432\u043e\u043b\u0435\u043d\u0438\u0439",autostart:"\u0410\u0432\u0442\u043e\u0441\u0442\u0430\u0440\u0442",volume:"\u0413\u0443\u0447\u043d\u0456\u0441\u0442\u044c",target:"\u0426\u0456\u043b\u044c",qtsrcchokespeed:"\u0428\u0432\u0438\u0434\u043a\u0456\u0441\u0442\u044c \u0437\u0430\u0433\u0430\u0441\u0430\u043d\u043d\u044f",href:"\u041f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f",endtime:"\u0427\u0430\u0441 \u043a\u0456\u043d\u0446\u044f",starttime:"\u0427\u0430\u0441 \u043f\u043e\u0447\u0430\u0442\u043a\u0443",enablejavascript:"\u0414\u043e\u0437\u0432\u043e\u043b\u0438\u0442\u0438 JavaScript",correction:"\u0411\u0435\u0437 \u043a\u043e\u0440\u0435\u043a\u0446\u0456\u0457",targetcache:"\u0426\u0456\u043b\u044c\u043e\u0432\u0438\u0439 \u043a\u0435\u0448",playeveryframe:"\u041f\u0440\u043e\u0433\u0440\u0430\u0432\u0430\u0442\u0438 \u043a\u043e\u0436\u0435\u043d \u043a\u0430\u0434\u0440",kioskmode:"\u041f\u043e\u0432\u043d\u043e\u0435\u043a\u0440\u0430\u043d\u043d\u0438\u0439 \u0440\u0435\u0436\u0438\u043c",controller:"\u041a\u043e\u043d\u0442\u0440\u043e\u043b\u0435\u0440",menu:"\u041f\u043e\u043a\u0430\u0437\u0443\u0432\u0430\u0442\u0438 \u043c\u0435\u043d\u044e",loop:"\u041f\u043e\u0432\u0442\u043e\u0440\u044e\u0432\u0430\u0442\u0438",play:"\u0410\u0432\u0442\u043e\u043f\u0440\u043e\u0433\u0440\u0430\u0432\u043d\u043d\u044f",hspace:"\u0433\u043e\u0440.\u0432\u0456\u0434\u0441\u0442\u0443\u043f",vspace:"\u0432\u0435\u0440\u0442.\u0432\u0456\u0434\u0441\u0442\u0443\u043f","class_name":"\u041a\u043b\u0430\u0441",name:"\u041d\u0430\u0437\u0432\u0430",id:"\u0406\u0434\u0435\u043d\u0442\u0438\u0444\u0456\u043a\u0430\u0442\u043e\u0440",type:"\u0422\u0438\u043f",size:"\u0420\u043e\u0437\u043c\u0456\u0440\u0438",preview:"\u041f\u0435\u0440\u0435\u0433\u043b\u044f\u0434","constrain_proportions":"\u0417\u0431\u0435\u0440\u0456\u0433\u0430\u0442\u0438 \u043f\u0440\u043e\u043f\u043e\u0440\u0446\u0456\u0457",controls:"\u041a\u0435\u0440\u0443\u0432\u0430\u043d\u043d\u044f",numloop:"\u041a\u0456\u043b\u044c\u043a\u0456\u0441\u0442\u044c \u0446\u0438\u043a\u043b\u0456\u0432",console:"\u041a\u043e\u043d\u0441\u043e\u043b\u044c",cache:"\u041a\u0435\u0448",autohref:"AutoHREF",liveconnect:"SWLiveConnect",flashvars:"Flash-\u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0438",base:"\u0411\u0430\u0437\u0430",bgcolor:"\u0424\u043e\u043d",wmode:"W-\u0440\u0435\u0436\u0438\u043c",salign:"S-\u0412\u0438\u0440\u0456\u0432\u043d\u044e\u0432\u0430\u043d\u043d\u044f",align:"\u0412\u0438\u0440\u0456\u0432\u043d\u044e\u0432\u0430\u043d\u043d\u044f",scale:"\u041c\u0430\u0441\u0448\u0442\u0430\u0431\u0443\u0432\u0430\u043d\u043d\u044f",quality:"\u042f\u043a\u0456\u0441\u0442\u044c",shuffle:"\u041f\u0435\u0440\u0435\u0442\u0430\u0441\u0443\u0432\u0430\u0442\u0438",prefetch:"\u041f\u043e\u043f\u0435\u0440\u0435\u0434\u043d\u0454 \u0432\u0438\u043b\u0443\u0447\u0435\u043d\u043d\u044f",nojava:"\u0411\u0435\u0437 Java",maintainaspect:"\u0412\u0434\u0435\u0440\u0436\u0443\u0432\u0430\u0442\u0438 \u0440\u0430\u043a\u0443\u0440\u0441",imagestatus:"\u0421\u0442\u0430\u0442\u0443\u0441 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f",center:"\u041f\u043e \u0446\u0435\u043d\u0442\u0440\u0443",autogotourl:"\u041f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f \u0430\u0432\u0442\u043e\u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0443","shockwave_options":"\u041e\u043f\u0446\u0456\u0457 Shockwave","rmp_options":"\u041e\u043f\u0446\u0456\u0457 Real media player","wmp_options":"\u041e\u043f\u0446\u0456\u0457 Windows media player","qt_options":"\u041e\u043f\u0446\u0456\u0457 Quicktime","flash_options":"\u041e\u043f\u0446\u0456\u0457 Flash",hidden:"\u041f\u0440\u0438\u0445\u043e\u0432\u0430\u043d\u0438\u0439","align_bottom_left":"\u0417\u043d\u0438\u0437\u0443 \u0437\u043b\u0456\u0432\u0430","align_bottom_right":"\u0417\u043d\u0438\u0437\u0443 \u0437\u043f\u0440\u0430\u0432\u0430",flash:"flash",quicktime:"quicktime","embedded_audio_options":"\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0438 \u0432\u0431\u0443\u0434\u043e\u0432\u0430\u043d\u043e\u0433\u043e \u0437\u0432\u0443\u043a\u0443",windowsmedia:"windowsmedia",realmedia:"realmedia",shockwave:"shockwave",audio:"audio",video:"video","html5_video_options":"\u0412\u0456\u0434\u0435\u043e \u043e\u043f\u0446\u0456\u0457 HTML5",altsource1:"\u0410\u043b\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u0435 \u0434\u0436\u0435\u0440\u0435\u043b\u043e 1",altsource2:"\u0410\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u0435 \u0434\u0436\u0435\u0440\u0435\u043b\u043e 2",preload:"\u041f\u043e\u043f\u0435\u0440\u0435\u0434\u043d\u0454 \u0437\u0430\u0432\u0430\u043d\u0442\u0430\u0436\u0435\u043d\u043d\u044f",poster:"\u041f\u043e\u0441\u0442\u0435\u0440",source:"\u0414\u0436\u0435\u0440\u0435\u043b\u043e","html5_audio_options":"\u0410\u0443\u0434\u0456\u043e \u043e\u043f\u0446\u0456\u0457","preload_none":"\u0411\u0435\u0437 \u043f\u043e\u043f\u0435\u0440\u0435\u0434\u043d\u044c\u043e\u0457 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438","preload_metadata":"\u041f\u043e\u043f\u0435\u0440\u0435\u0434\u043d\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u0438\u0445 \u0432\u0456\u0434\u0435\u043e","preload_auto":"\u041d\u0430 \u0440\u043e\u0437\u0441\u0443\u0434 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430",iframe:"iframe",embeddedaudio:"embeddedaudio"}); \ No newline at end of file
diff --git a/program/js/tiny_mce/plugins/noneditable/editor_plugin.js b/program/js/tiny_mce/plugins/noneditable/editor_plugin.js
index e204328d9..da411ebc0 100644
--- a/program/js/tiny_mce/plugins/noneditable/editor_plugin.js
+++ b/program/js/tiny_mce/plugins/noneditable/editor_plugin.js
@@ -1 +1 @@
-(function(){var c=tinymce.dom.TreeWalker;var a="contenteditable",d="data-mce-"+a;var e=tinymce.VK;function b(n){var j=n.dom,p=n.selection,r,o="mce_noneditablecaret";r=tinymce.isGecko?"\u200B":"\uFEFF";function m(t){var s;if(t.nodeType===1){s=t.getAttribute(d);if(s&&s!=="inherit"){return s}s=t.contentEditable;if(s!=="inherit"){return s}}return null}function g(s){var t;while(s){t=m(s);if(t){return t==="false"?s:null}s=s.parentNode}}function l(s){while(s){if(s.id===o){return s}s=s.parentNode}}function k(s){var t;if(s){t=new c(s,s);for(s=t.current();s;s=t.next()){if(s.nodeType===3){return s}}}}function f(v,u){var s,t;if(m(v)==="false"){if(j.isBlock(v)){p.select(v);return}}t=j.createRng();if(m(v)==="true"){if(!v.firstChild){v.appendChild(n.getDoc().createTextNode("\u00a0"))}v=v.firstChild;u=true}s=j.create("span",{id:o,"data-mce-bogus":true},r);if(u){v.parentNode.insertBefore(s,v)}else{j.insertAfter(s,v)}t.setStart(s.firstChild,1);t.collapse(true);p.setRng(t);return s}function i(s){var v,t,u;if(s){rng=p.getRng(true);rng.setStartBefore(s);rng.setEndBefore(s);v=k(s);if(v&&v.nodeValue.charAt(0)==r){v=v.deleteData(0,1)}j.remove(s,true);p.setRng(rng)}else{t=l(p.getStart());while((s=j.get(o))&&s!==u){if(t!==s){v=k(s);if(v&&v.nodeValue.charAt(0)==r){v=v.deleteData(0,1)}j.remove(s,true)}u=s}}}function q(){var s,w,u,t,v;function x(B,D){var A,F,E,C,z;A=t.startContainer;F=t.startOffset;if(A.nodeType==3){z=A.nodeValue.length;if((F>0&&F<z)||(D?F==z:F==0)){return}}else{if(F<A.childNodes.length){var G=!D&&F>0?F-1:F;A=A.childNodes[G];if(A.hasChildNodes()){A=A.firstChild}}else{return !D?B:null}}E=new c(A,B);while(C=E[D?"prev":"next"]()){if(C.nodeType===3&&C.nodeValue.length>0){return}else{if(m(C)==="true"){return C}}}return B}i();u=p.isCollapsed();s=g(p.getStart());w=g(p.getEnd());if(s||w){t=p.getRng(true);if(u){s=s||w;var y=p.getStart();if(v=x(s,true)){f(v,true)}else{if(v=x(s,false)){f(v,false)}else{p.select(s)}}}else{t=p.getRng(true);if(s){t.setStartBefore(s)}if(w){t.setEndAfter(w)}p.setRng(t)}}}function h(z,B){var F=B.keyCode,x,C,D,v;function u(H,G){while(H=H[G?"previousSibling":"nextSibling"]){if(H.nodeType!==3||H.nodeValue.length>0){return H}}}function y(G,H){p.select(G);p.collapse(H)}function t(K){var J,I,M,H;function G(O){var N=I;while(N){if(N===O){return}N=N.parentNode}j.remove(O);q()}function L(){var O,P,N=z.schema.getNonEmptyElements();P=new tinymce.dom.TreeWalker(I,z.getBody());while(O=(K?P.prev():P.next())){if(N[O.nodeName.toLowerCase()]){break}if(O.nodeType===3&&tinymce.trim(O.nodeValue).length>0){break}if(m(O)==="false"){G(O);return true}}if(g(O)){return true}return false}if(p.isCollapsed()){J=p.getRng(true);I=J.startContainer;M=J.startOffset;I=l(I)||I;if(H=g(I)){G(H);return false}if(I.nodeType==3&&(K?M>0:M<I.nodeValue.length)){return true}if(I.nodeType==1){I=I.childNodes[M]||I}if(L()){return false}}return true}D=p.getStart();v=p.getEnd();x=g(D)||g(v);if(x&&(F<112||F>124)&&F!=e.DELETE&&F!=e.BACKSPACE){if((tinymce.isMac?B.metaKey:B.ctrlKey)&&(F==67||F==88||F==86)){return}B.preventDefault();if(F==e.LEFT||F==e.RIGHT){var w=F==e.LEFT;if(z.dom.isBlock(x)){var A=w?x.previousSibling:x.nextSibling;var s=new c(A,A);var E=w?s.prev():s.next();y(E,!w)}else{y(x,w)}}}else{if(F==e.LEFT||F==e.RIGHT||F==e.BACKSPACE||F==e.DELETE){C=l(D);if(C){if(F==e.LEFT||F==e.BACKSPACE){x=u(C,true);if(x&&m(x)==="false"){B.preventDefault();if(F==e.LEFT){y(x,true)}else{j.remove(x);return}}else{i(C)}}if(F==e.RIGHT||F==e.DELETE){x=u(C);if(x&&m(x)==="false"){B.preventDefault();if(F==e.RIGHT){y(x,false)}else{j.remove(x);return}}else{i(C)}}}if((F==e.BACKSPACE||F==e.DELETE)&&!t(F==e.BACKSPACE)){B.preventDefault();return false}}}}n.onMouseDown.addToTop(function(s,u){var t=s.selection.getNode();if(m(t)==="false"&&t==u.target){q()}});n.onMouseUp.addToTop(q);n.onKeyDown.addToTop(h);n.onKeyUp.addToTop(q)}tinymce.create("tinymce.plugins.NonEditablePlugin",{init:function(i,k){var h,g,j;function f(m,n){var o=j.length,p=n.content,l=tinymce.trim(g);if(n.format=="raw"){return}while(o--){p=p.replace(j[o],function(s){var r=arguments,q=r[r.length-2];if(q>0&&p.charAt(q-1)=='"'){return s}return'<span class="'+l+'" data-mce-content="'+m.dom.encode(r[0])+'">'+m.dom.encode(typeof(r[1])==="string"?r[1]:r[0])+"</span>"})}n.content=p}h=" "+tinymce.trim(i.getParam("noneditable_editable_class","mceEditable"))+" ";g=" "+tinymce.trim(i.getParam("noneditable_noneditable_class","mceNonEditable"))+" ";j=i.getParam("noneditable_regexp");if(j&&!j.length){j=[j]}i.onPreInit.add(function(){b(i);if(j){i.selection.onBeforeSetContent.add(f);i.onBeforeSetContent.add(f)}i.parser.addAttributeFilter("class",function(l){var m=l.length,n,o;while(m--){o=l[m];n=" "+o.attr("class")+" ";if(n.indexOf(h)!==-1){o.attr(d,"true")}else{if(n.indexOf(g)!==-1){o.attr(d,"false")}}}});i.serializer.addAttributeFilter(d,function(l,m){var n=l.length,o;while(n--){o=l[n];if(j&&o.attr("data-mce-content")){o.name="#text";o.type=3;o.raw=true;o.value=o.attr("data-mce-content")}else{o.attr(a,null);o.attr(d,null)}}});i.parser.addAttributeFilter(a,function(l,m){var n=l.length,o;while(n--){o=l[n];o.attr(d,o.attr(a));o.attr(a,null)}})})},getInfo:function(){return{longname:"Non editable elements",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/noneditable",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("noneditable",tinymce.plugins.NonEditablePlugin)})(); \ No newline at end of file
+(function(){var c=tinymce.dom.TreeWalker;var a="contenteditable",d="data-mce-"+a;var e=tinymce.VK;function b(n){var j=n.dom,p=n.selection,r,o="mce_noneditablecaret",r="\uFEFF";function m(t){var s;if(t.nodeType===1){s=t.getAttribute(d);if(s&&s!=="inherit"){return s}s=t.contentEditable;if(s!=="inherit"){return s}}return null}function g(s){var t;while(s){t=m(s);if(t){return t==="false"?s:null}s=s.parentNode}}function l(s){while(s){if(s.id===o){return s}s=s.parentNode}}function k(s){var t;if(s){t=new c(s,s);for(s=t.current();s;s=t.next()){if(s.nodeType===3){return s}}}}function f(v,u){var s,t;if(m(v)==="false"){if(j.isBlock(v)){p.select(v);return}}t=j.createRng();if(m(v)==="true"){if(!v.firstChild){v.appendChild(n.getDoc().createTextNode("\u00a0"))}v=v.firstChild;u=true}s=j.create("span",{id:o,"data-mce-bogus":true},r);if(u){v.parentNode.insertBefore(s,v)}else{j.insertAfter(s,v)}t.setStart(s.firstChild,1);t.collapse(true);p.setRng(t);return s}function i(s){var v,t,u;if(s){rng=p.getRng(true);rng.setStartBefore(s);rng.setEndBefore(s);v=k(s);if(v&&v.nodeValue.charAt(0)==r){v=v.deleteData(0,1)}j.remove(s,true);p.setRng(rng)}else{t=l(p.getStart());while((s=j.get(o))&&s!==u){if(t!==s){v=k(s);if(v&&v.nodeValue.charAt(0)==r){v=v.deleteData(0,1)}j.remove(s,true)}u=s}}}function q(){var s,w,u,t,v;function x(B,D){var A,F,E,C,z;A=t.startContainer;F=t.startOffset;if(A.nodeType==3){z=A.nodeValue.length;if((F>0&&F<z)||(D?F==z:F==0)){return}}else{if(F<A.childNodes.length){var G=!D&&F>0?F-1:F;A=A.childNodes[G];if(A.hasChildNodes()){A=A.firstChild}}else{return !D?B:null}}E=new c(A,B);while(C=E[D?"prev":"next"]()){if(C.nodeType===3&&C.nodeValue.length>0){return}else{if(m(C)==="true"){return C}}}return B}i();u=p.isCollapsed();s=g(p.getStart());w=g(p.getEnd());if(s||w){t=p.getRng(true);if(u){s=s||w;var y=p.getStart();if(v=x(s,true)){f(v,true)}else{if(v=x(s,false)){f(v,false)}else{p.select(s)}}}else{t=p.getRng(true);if(s){t.setStartBefore(s)}if(w){t.setEndAfter(w)}p.setRng(t)}}}function h(z,B){var F=B.keyCode,x,C,D,v;function u(H,G){while(H=H[G?"previousSibling":"nextSibling"]){if(H.nodeType!==3||H.nodeValue.length>0){return H}}}function y(G,H){p.select(G);p.collapse(H)}function t(K){var J,I,M,H;function G(O){var N=I;while(N){if(N===O){return}N=N.parentNode}j.remove(O);q()}function L(){var O,P,N=z.schema.getNonEmptyElements();P=new tinymce.dom.TreeWalker(I,z.getBody());while(O=(K?P.prev():P.next())){if(N[O.nodeName.toLowerCase()]){break}if(O.nodeType===3&&tinymce.trim(O.nodeValue).length>0){break}if(m(O)==="false"){G(O);return true}}if(g(O)){return true}return false}if(p.isCollapsed()){J=p.getRng(true);I=J.startContainer;M=J.startOffset;I=l(I)||I;if(H=g(I)){G(H);return false}if(I.nodeType==3&&(K?M>0:M<I.nodeValue.length)){return true}if(I.nodeType==1){I=I.childNodes[M]||I}if(L()){return false}}return true}D=p.getStart();v=p.getEnd();x=g(D)||g(v);if(x&&(F<112||F>124)&&F!=e.DELETE&&F!=e.BACKSPACE){if((tinymce.isMac?B.metaKey:B.ctrlKey)&&(F==67||F==88||F==86)){return}B.preventDefault();if(F==e.LEFT||F==e.RIGHT){var w=F==e.LEFT;if(z.dom.isBlock(x)){var A=w?x.previousSibling:x.nextSibling;var s=new c(A,A);var E=w?s.prev():s.next();y(E,!w)}else{y(x,w)}}}else{if(F==e.LEFT||F==e.RIGHT||F==e.BACKSPACE||F==e.DELETE){C=l(D);if(C){if(F==e.LEFT||F==e.BACKSPACE){x=u(C,true);if(x&&m(x)==="false"){B.preventDefault();if(F==e.LEFT){y(x,true)}else{j.remove(x);return}}else{i(C)}}if(F==e.RIGHT||F==e.DELETE){x=u(C);if(x&&m(x)==="false"){B.preventDefault();if(F==e.RIGHT){y(x,false)}else{j.remove(x);return}}else{i(C)}}}if((F==e.BACKSPACE||F==e.DELETE)&&!t(F==e.BACKSPACE)){B.preventDefault();return false}}}}n.onMouseDown.addToTop(function(s,u){var t=s.selection.getNode();if(m(t)==="false"&&t==u.target){q()}});n.onMouseUp.addToTop(q);n.onKeyDown.addToTop(h);n.onKeyUp.addToTop(q)}tinymce.create("tinymce.plugins.NonEditablePlugin",{init:function(i,k){var h,g,j;function f(m,n){var o=j.length,p=n.content,l=tinymce.trim(g);if(n.format=="raw"){return}while(o--){p=p.replace(j[o],function(s){var r=arguments,q=r[r.length-2];if(q>0&&p.charAt(q-1)=='"'){return s}return'<span class="'+l+'" data-mce-content="'+m.dom.encode(r[0])+'">'+m.dom.encode(typeof(r[1])==="string"?r[1]:r[0])+"</span>"})}n.content=p}h=" "+tinymce.trim(i.getParam("noneditable_editable_class","mceEditable"))+" ";g=" "+tinymce.trim(i.getParam("noneditable_noneditable_class","mceNonEditable"))+" ";j=i.getParam("noneditable_regexp");if(j&&!j.length){j=[j]}i.onPreInit.add(function(){b(i);if(j){i.selection.onBeforeSetContent.add(f);i.onBeforeSetContent.add(f)}i.parser.addAttributeFilter("class",function(l){var m=l.length,n,o;while(m--){o=l[m];n=" "+o.attr("class")+" ";if(n.indexOf(h)!==-1){o.attr(d,"true")}else{if(n.indexOf(g)!==-1){o.attr(d,"false")}}}});i.serializer.addAttributeFilter(d,function(l,m){var n=l.length,o;while(n--){o=l[n];if(j&&o.attr("data-mce-content")){o.name="#text";o.type=3;o.raw=true;o.value=o.attr("data-mce-content")}else{o.attr(a,null);o.attr(d,null)}}});i.parser.addAttributeFilter(a,function(l,m){var n=l.length,o;while(n--){o=l[n];o.attr(d,o.attr(a));o.attr(a,null)}})})},getInfo:function(){return{longname:"Non editable elements",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/noneditable",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("noneditable",tinymce.plugins.NonEditablePlugin)})(); \ No newline at end of file
diff --git a/program/js/tiny_mce/plugins/noneditable/editor_plugin_src.js b/program/js/tiny_mce/plugins/noneditable/editor_plugin_src.js
index c0efe749c..a18bcd786 100644
--- a/program/js/tiny_mce/plugins/noneditable/editor_plugin_src.js
+++ b/program/js/tiny_mce/plugins/noneditable/editor_plugin_src.js
@@ -14,10 +14,7 @@
var VK = tinymce.VK;
function handleContentEditableSelection(ed) {
- var dom = ed.dom, selection = ed.selection, invisibleChar, caretContainerId = 'mce_noneditablecaret';
-
- // Setup invisible character use zero width space on Gecko since it doesn't change the height of the container
- invisibleChar = tinymce.isGecko ? '\u200B' : '\uFEFF';
+ var dom = ed.dom, selection = ed.selection, invisibleChar, caretContainerId = 'mce_noneditablecaret', invisibleChar = '\uFEFF';
// Returns the content editable state of a node "true/false" or null
function getContentEditable(node) {
diff --git a/program/js/tiny_mce/plugins/style/langs/es_dlg.js b/program/js/tiny_mce/plugins/style/langs/es_dlg.js
index 9bbaa5f5d..7a63754a7 100644
--- a/program/js/tiny_mce/plugins/style/langs/es_dlg.js
+++ b/program/js/tiny_mce/plugins/style/langs/es_dlg.js
@@ -1 +1 @@
-tinyMCE.addI18n('es.style_dlg',{"text_lineheight":"Ancho de la fila","text_variant":"Variante","text_style":"Estilo","text_weight":"Peso","text_size":"Tama\u00f1o","text_font":"Fuente","text_props":"Texto","positioning_tab":"Posici\u00f3n","list_tab":"Lista","border_tab":"Borde","box_tab":"Caja","block_tab":"Bloque","background_tab":"Fondo","text_tab":"Texto",apply:"Aplicar",title:"Editar Estilo CSS",clip:"Clip",placement:"Placement",overflow:"Overflow",zindex:"Z-index",visibility:"Visibilidad","positioning_type":"Tipo",position:"Posici\u00f3n","bullet_image":"Imagen de la vi\u00f1eta","list_type":"Tipo",color:"Color",height:"Alto",width:"Ancho",style:"Estilo",margin:"Margen",left:"Izquierda",bottom:"Debajo",right:"Derecha",top:"Arriba",same:"Lo mismo en todos",padding:"Padding","box_clear":"Clear","box_float":"Float","box_height":"Alto","box_width":"Ancho","block_display":"Display","block_whitespace":"Espacio en blanco","block_text_indent":"Sangr\u00eda","block_text_align":"Alineaci\u00f3n del texto","block_vertical_alignment":"Alineaci\u00f3n vertical","block_letterspacing":"Espacio entre letra","block_wordspacing":"Espacio entre palabra","background_vpos":"Posici\u00f3n vertical","background_hpos":"Posici\u00f3n horizontal","background_attachment":"Adjunto","background_repeat":"Repetici\u00f3n","background_image":"Imagen de fondo","background_color":"Color de fondo","text_none":"Ninguno","text_blink":"Parpadeo","text_case":"Min\u00fas./May\u00fas.","text_striketrough":"Tachado","text_underline":"Subrayado","text_overline":"Subrayado superior","text_decoration":"Decorativos","text_color":"Color",text:"Texto",background:"Fondo",block:"Bloque",box:"Caja",border:"Borde",list:"Lista"}); \ No newline at end of file
+tinyMCE.addI18n('es.style_dlg',{"text_lineheight":"Ancho de la fila","text_variant":"Variante","text_style":"Estilo","text_weight":"Peso","text_size":"Tama\u00f1o","text_font":"Fuente","text_props":"Texto","positioning_tab":"Posicionamiento","list_tab":"Lista","border_tab":"Borde","box_tab":"Caja","block_tab":"Bloque","background_tab":"Fondo","text_tab":"Texto",apply:"Aplicar",title:"Editar Estilo CSS",clip:"Clip",placement:"Placement",overflow:"Overflow",zindex:"Z-index",visibility:"Visibilidad","positioning_type":"Tipo",position:"Posici\u00f3n","bullet_image":"Imagen de la vi\u00f1eta","list_type":"Tipo",color:"Color",height:"Alto",width:"Ancho",style:"Estilo",margin:"Margen",left:"Izquierda",bottom:"Inferior",right:"Derecha",top:"Superior",same:"Lo mismo en todos",padding:"Padding","box_clear":"Clear","box_float":"Float","box_height":"Alto","box_width":"Ancho","block_display":"Display","block_whitespace":"Espacio en blanco","block_text_indent":"Sangr\u00eda","block_text_align":"Alineaci\u00f3n del texto","block_vertical_alignment":"Alineaci\u00f3n vertical","block_letterspacing":"Espacio entre letra","block_wordspacing":"Espacio entre palabra","background_vpos":"Posici\u00f3n vertical","background_hpos":"Posici\u00f3n horizontal","background_attachment":"Adjunto","background_repeat":"Repetici\u00f3n","background_image":"Imagen de fondo","background_color":"Color de fondo","text_none":"Ninguno","text_blink":"Parpadeo","text_case":"Min\u00fas./May\u00fas.","text_striketrough":"Tachado","text_underline":"Subrayado","text_overline":"Subrayado superior","text_decoration":"Decorativos","text_color":"Color",text:"Texto",background:"Fondo",block:"Bloque",box:"Caja",border:"Borde",list:"Lista"}); \ No newline at end of file
diff --git a/program/js/tiny_mce/plugins/style/langs/uk_dlg.js b/program/js/tiny_mce/plugins/style/langs/uk_dlg.js
index 152118f58..4c07a44c7 100644
--- a/program/js/tiny_mce/plugins/style/langs/uk_dlg.js
+++ b/program/js/tiny_mce/plugins/style/langs/uk_dlg.js
@@ -1 +1 @@
-tinyMCE.addI18n('uk.style_dlg',{"text_lineheight":"\u0412\u0438\u0441\u043e\u0442\u0430 \u0440\u044f\u0434\u043a\u0443","text_variant":"\u0412\u0430\u0440\u0456\u0430\u043d\u0442","text_style":"\u0421\u0442\u0438\u043b\u044c","text_weight":"\u0422\u043e\u0432\u0449\u0438\u043d\u0430","text_size":"\u0420\u043e\u0437\u043c\u0456\u0440","text_font":"\u0428\u0440\u0438\u0444\u0442","text_props":"\u0422\u0435\u043a\u0441\u0442","positioning_tab":"\u041f\u043e\u0437\u0438\u0446\u0456\u043e\u043d\u0443\u0432\u0430\u043d\u043d\u044f","list_tab":"\u0421\u043f\u0438\u0441\u043e\u043a","border_tab":"\u0420\u0430\u043c\u043a\u0430","box_tab":"\u042f\u0449\u0438\u043a(box)","block_tab":"\u0411\u043b\u043e\u043a","background_tab":"\u0424\u043e\u043d","text_tab":"\u0422\u0435\u043a\u0441\u0442",apply:"\u0417\u0430\u0441\u0442\u043e\u0441\u0443\u0432\u0430\u0442\u0438",title:"\u0420\u0435\u0434\u0430\u0433\u0443\u0432\u0430\u043d\u043d\u044f CSS \u0441\u0442\u0438\u043b\u044e",clip:"\u0421\u043a\u0440\u0456\u043f\u043b\u0435\u043d\u043d\u044f",placement:"\u0420\u043e\u0437\u043c\u0456\u0449\u0435\u043d\u043d\u044f",overflow:"\u041f\u0435\u0440\u0435\u043f\u043e\u0432\u043d\u0435\u043d\u043d\u044f",zindex:"Z-\u0456\u043d\u0434\u0435\u043a\u0441",visibility:"\u0412\u0438\u0434\u0438\u043c\u0456\u0441\u0442\u044c","positioning_type":"\u0422\u0438\u043f",position:"\u041f\u043e\u0437\u0438\u0446\u0456\u044f","bullet_image":"\u0417\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f \u0437\u043d\u0430\u0447\u043a\u0430 \u0432 \u0441\u043f\u0438\u0441\u043a\u0443","list_type":"\u0422\u0438\u043f",color:"\u041a\u043e\u043b\u0456\u0440",height:"\u0412\u0438\u0441\u043e\u0442\u0430",width:"\u0428\u0438\u0440\u0438\u043d\u0430",style:"\u0421\u0442\u0438\u043b\u044c",margin:"Margin",left:"\u041b\u0456\u0432\u043e\u0440\u0443\u0447",bottom:"\u0417\u043d\u0438\u0437\u0443",right:"\u041f\u0440\u0430\u0432\u043e\u0440\u0443\u0447",top:"\u0412\u0433\u043e\u0440\u0443",same:"\u041e\u0434\u043d\u0430\u043a\u043e\u0435 \u0434\u043b\u044f \u0432\u0441\u0456\u0445",padding:"\u0412\u043d\u0443\u0442\u0440\u0456\u0448\u043d\u0456\u0439 \u0432\u0456\u0434\u0441\u0442\u0443\u043f","box_clear":"\u041e\u0447\u0438\u0441\u0442\u043a\u0430","box_float":"\u041f\u043b\u0430\u0432\u0430\u043d\u043d\u044f","box_height":"\u0412\u0438\u0441\u043e\u0442\u0430","box_width":"\u0428\u0438\u0440\u0438\u043d\u0430","block_display":"\u0412\u0456\u0434\u043e\u0431\u0440\u0430\u0436\u0430\u0442\u0438","block_whitespace":"\u041f\u0440\u043e\u0431\u0456\u043b","block_text_indent":"\u0412\u0456\u0434\u0441\u0442\u0443\u043f","block_text_align":"\u0412\u0438\u0440\u0456\u0432\u043d\u044e\u0432\u0430\u043d\u043d\u044f \u0442\u0435\u043a\u0441\u0442\u0443","block_vertical_alignment":"\u0412\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u0435 \u0432\u0438\u0440\u0456\u0432\u043d\u044e\u0432\u0430\u043d\u043d\u044f","block_letterspacing":"\u0412\u0456\u0434\u0441\u0442\u0443\u043f\u0438 \u043c\u0456\u0436 \u043b\u0456\u0442\u0435\u0440\u0430\u043c\u0438","block_wordspacing":"\u0412\u0456\u0434\u0441\u0442\u0443\u043f\u0438 \u043c\u0456\u0436 \u0441\u043b\u043e\u0432\u0430\u043c\u0438","background_vpos":"\u0412\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u0430 \u043f\u043e\u0437\u0438\u0446\u0456\u044f","background_hpos":"\u0413\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u0430 \u043f\u043e\u0437\u0438\u0446\u0456\u044f","background_attachment":"\u0412\u043a\u043b\u0430\u0434\u0435\u043d\u043d\u044f","background_repeat":"\u041f\u043e\u0432\u0442\u043e\u0440","background_image":"\u0424\u043e\u043d\u043e\u0432\u0435 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f","background_color":"\u041a\u043e\u043b\u0456\u0440 \u0444\u043e\u043d\u0443","text_none":"\u041d\u0456\u0447\u043e\u0433\u043e","text_blink":"\u041c\u0435\u0440\u0435\u0445\u0442\u0456\u043d\u043d\u044f","text_case":"\u0420\u0435\u0433\u0456\u0441\u0442\u0440","text_striketrough":"\u0417\u0430\u043a\u0440\u0435\u0441\u043b\u0435\u043d\u0438\u0439","text_underline":"\u041f\u0456\u0434\u043a\u0440\u0435\u0441\u043b\u0435\u043d\u0438\u0439","text_overline":"\u041d\u0430\u0434\u043a\u0440\u0435\u0441\u043b\u0435\u043d\u0438\u0439","text_decoration":"\u041e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u043d\u044f","text_color":"\u041a\u043e\u043b\u0456\u0440",text:"\u0422\u0435\u043a\u0441\u0442",background:"Background",block:"Block",box:"Box",border:"Border",list:"List"}); \ No newline at end of file
+tinyMCE.addI18n('uk.style_dlg',{"text_lineheight":"\u0412\u0438\u0441\u043e\u0442\u0430 \u0440\u044f\u0434\u043a\u0443","text_variant":"\u0412\u0430\u0440\u0456\u0430\u043d\u0442","text_style":"\u0421\u0442\u0438\u043b\u044c","text_weight":"\u0422\u043e\u0432\u0449\u0438\u043d\u0430","text_size":"\u0420\u043e\u0437\u043c\u0456\u0440","text_font":"\u0428\u0440\u0438\u0444\u0442","text_props":"\u0422\u0435\u043a\u0441\u0442","positioning_tab":"\u041f\u043e\u0437\u0438\u0446\u0456\u043e\u043d\u0443\u0432\u0430\u043d\u043d\u044f","list_tab":"\u0421\u043f\u0438\u0441\u043e\u043a","border_tab":"\u0420\u0430\u043c\u043a\u0430","box_tab":"\u042f\u0449\u0438\u043a(box)","block_tab":"\u0411\u043b\u043e\u043a","background_tab":"\u0424\u043e\u043d","text_tab":"\u0422\u0435\u043a\u0441\u0442",apply:"\u0417\u0430\u0441\u0442\u043e\u0441\u0443\u0432\u0430\u0442\u0438",title:"\u0420\u0435\u0434\u0430\u0433\u0443\u0432\u0430\u043d\u043d\u044f CSS \u0441\u0442\u0438\u043b\u044e",clip:"\u0421\u043a\u0440\u0456\u043f\u043b\u0435\u043d\u043d\u044f",placement:"\u0420\u043e\u0437\u043c\u0456\u0449\u0435\u043d\u043d\u044f",overflow:"\u041f\u0435\u0440\u0435\u043f\u043e\u0432\u043d\u0435\u043d\u043d\u044f",zindex:"Z-\u0456\u043d\u0434\u0435\u043a\u0441",visibility:"\u0412\u0438\u0434\u0438\u043c\u0456\u0441\u0442\u044c","positioning_type":"\u0422\u0438\u043f",position:"\u041f\u043e\u0437\u0438\u0446\u0456\u044f","bullet_image":"\u0417\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f \u0437\u043d\u0430\u0447\u043a\u0430 \u0432 \u0441\u043f\u0438\u0441\u043a\u0443","list_type":"\u0422\u0438\u043f",color:"\u041a\u043e\u043b\u0456\u0440",height:"\u0412\u0438\u0441\u043e\u0442\u0430",width:"\u0428\u0438\u0440\u0438\u043d\u0430",style:"\u0421\u0442\u0438\u043b\u044c",margin:"Margin",left:"\u041b\u0456\u0432\u043e\u0440\u0443\u0447",bottom:"\u0417\u043d\u0438\u0437\u0443",right:"\u041f\u0440\u0430\u0432\u043e\u0440\u0443\u0447",top:"\u0412\u0433\u043e\u0440\u0443",same:"\u041e\u0434\u043d\u0430\u043a\u043e\u0435 \u0434\u043b\u044f \u0432\u0441\u0456\u0445",padding:"\u0412\u043d\u0443\u0442\u0440\u0456\u0448\u043d\u0456\u0439 \u0432\u0456\u0434\u0441\u0442\u0443\u043f","box_clear":"\u041e\u0447\u0438\u0441\u0442\u043a\u0430","box_float":"\u041f\u043b\u0430\u0432\u0430\u043d\u043d\u044f","box_height":"\u0412\u0438\u0441\u043e\u0442\u0430","box_width":"\u0428\u0438\u0440\u0438\u043d\u0430","block_display":"\u0412\u0456\u0434\u043e\u0431\u0440\u0430\u0436\u0430\u0442\u0438","block_whitespace":"\u041f\u0440\u043e\u0431\u0456\u043b","block_text_indent":"\u0412\u0456\u0434\u0441\u0442\u0443\u043f","block_text_align":"\u0412\u0438\u0440\u0456\u0432\u043d\u044e\u0432\u0430\u043d\u043d\u044f \u0442\u0435\u043a\u0441\u0442\u0443","block_vertical_alignment":"\u0412\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u0435 \u0432\u0438\u0440\u0456\u0432\u043d\u044e\u0432\u0430\u043d\u043d\u044f","block_letterspacing":"\u0412\u0456\u0434\u0441\u0442\u0443\u043f\u0438 \u043c\u0456\u0436 \u043b\u0456\u0442\u0435\u0440\u0430\u043c\u0438","block_wordspacing":"\u0412\u0456\u0434\u0441\u0442\u0443\u043f\u0438 \u043c\u0456\u0436 \u0441\u043b\u043e\u0432\u0430\u043c\u0438","background_vpos":"\u0412\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u044c\u043d\u0430 \u043f\u043e\u0437\u0438\u0446\u0456\u044f","background_hpos":"\u0413\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u0430 \u043f\u043e\u0437\u0438\u0446\u0456\u044f","background_attachment":"\u0412\u043a\u043b\u0430\u0434\u0435\u043d\u043d\u044f","background_repeat":"\u041f\u043e\u0432\u0442\u043e\u0440","background_image":"\u0424\u043e\u043d\u043e\u0432\u0435 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f","background_color":"\u041a\u043e\u043b\u0456\u0440 \u0444\u043e\u043d\u0443","text_none":"\u041d\u0456\u0447\u043e\u0433\u043e","text_blink":"\u041c\u0435\u0440\u0435\u0445\u0442\u0456\u043d\u043d\u044f","text_case":"\u0420\u0435\u0433\u0456\u0441\u0442\u0440","text_striketrough":"\u0417\u0430\u043a\u0440\u0435\u0441\u043b\u0435\u043d\u0438\u0439","text_underline":"\u041f\u0456\u0434\u043a\u0440\u0435\u0441\u043b\u0435\u043d\u0438\u0439","text_overline":"\u041d\u0430\u0434\u043a\u0440\u0435\u0441\u043b\u0435\u043d\u0438\u0439","text_decoration":"\u041e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u043d\u044f","text_color":"\u041a\u043e\u043b\u0456\u0440",text:"\u0422\u0435\u043a\u0441\u0442",background:"\u0424\u043e\u043d",block:"\u0411\u043b\u043e\u043a",box:"\u041a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440",border:"\u0413\u0440\u0430\u043d\u0438\u0446\u0456",list:"\u0421\u043f\u0438\u0441\u043e\u043a"}); \ No newline at end of file
diff --git a/program/js/tiny_mce/plugins/table/editor_plugin.js b/program/js/tiny_mce/plugins/table/editor_plugin.js
index d6ad7d64d..23c1a83f3 100644
--- a/program/js/tiny_mce/plugins/table/editor_plugin.js
+++ b/program/js/tiny_mce/plugins/table/editor_plugin.js
@@ -1 +1 @@
-(function(d){var e=d.each;function c(g,h){var j=h.ownerDocument,f=j.createRange(),k;f.setStartBefore(h);f.setEnd(g.endContainer,g.endOffset);k=j.createElement("body");k.appendChild(f.cloneContents());return k.innerHTML.replace(/<(br|img|object|embed|input|textarea)[^>]*>/gi,"-").replace(/<[^>]+>/g,"").length==0}function a(g,f){return parseInt(g.getAttribute(f)||1)}function b(H,G,K){var g,L,D,o;t();o=G.getParent(K.getStart(),"th,td");if(o){L=F(o);D=I();o=z(L.x,L.y)}function A(N,M){N=N.cloneNode(M);N.removeAttribute("id");return N}function t(){var M=0;g=[];e(["thead","tbody","tfoot"],function(N){var O=G.select("> "+N+" tr",H);e(O,function(P,Q){Q+=M;e(G.select("> td, > th",P),function(W,R){var S,T,U,V;if(g[Q]){while(g[Q][R]){R++}}U=a(W,"rowspan");V=a(W,"colspan");for(T=Q;T<Q+U;T++){if(!g[T]){g[T]=[]}for(S=R;S<R+V;S++){g[T][S]={part:N,real:T==Q&&S==R,elm:W,rowspan:U,colspan:V}}}})});M+=O.length})}function z(M,O){var N;N=g[O];if(N){return N[M]}}function s(O,M,N){if(O){N=parseInt(N);if(N===1){O.removeAttribute(M,1)}else{O.setAttribute(M,N,1)}}}function j(M){return M&&(G.hasClass(M.elm,"mceSelected")||M==o)}function k(){var M=[];e(H.rows,function(N){e(N.cells,function(O){if(G.hasClass(O,"mceSelected")||O==o.elm){M.push(N);return false}})});return M}function r(){var M=G.createRng();M.setStartAfter(H);M.setEndAfter(H);K.setRng(M);G.remove(H)}function f(M){var N;d.walk(M,function(P){var O;if(P.nodeType==3){e(G.getParents(P.parentNode,null,M).reverse(),function(Q){Q=A(Q,false);if(!N){N=O=Q}else{if(O){O.appendChild(Q)}}O=Q});if(O){O.innerHTML=d.isIE?"&nbsp;":'<br data-mce-bogus="1" />'}return false}},"childNodes");M=A(M,false);s(M,"rowSpan",1);s(M,"colSpan",1);if(N){M.appendChild(N)}else{if(!d.isIE){M.innerHTML='<br data-mce-bogus="1" />'}}return M}function q(){var M=G.createRng();e(G.select("tr",H),function(N){if(N.cells.length==0){G.remove(N)}});if(G.select("tr",H).length==0){M.setStartAfter(H);M.setEndAfter(H);K.setRng(M);G.remove(H);return}e(G.select("thead,tbody,tfoot",H),function(N){if(N.rows.length==0){G.remove(N)}});t();row=g[Math.min(g.length-1,L.y)];if(row){K.select(row[Math.min(row.length-1,L.x)].elm,true);K.collapse(true)}}function u(S,Q,U,R){var P,N,M,O,T;P=g[Q][S].elm.parentNode;for(M=1;M<=U;M++){P=G.getNext(P,"tr");if(P){for(N=S;N>=0;N--){T=g[Q+M][N].elm;if(T.parentNode==P){for(O=1;O<=R;O++){G.insertAfter(f(T),T)}break}}if(N==-1){for(O=1;O<=R;O++){P.insertBefore(f(P.cells[0]),P.cells[0])}}}}}function C(){e(g,function(M,N){e(M,function(P,O){var S,R,T,Q;if(j(P)){P=P.elm;S=a(P,"colspan");R=a(P,"rowspan");if(S>1||R>1){s(P,"rowSpan",1);s(P,"colSpan",1);for(Q=0;Q<S-1;Q++){G.insertAfter(f(P),P)}u(O,N,R-1,S)}}})})}function p(V,S,Y){var P,O,X,W,U,R,T,M,V,N,Q;if(V){pos=F(V);P=pos.x;O=pos.y;X=P+(S-1);W=O+(Y-1)}else{L=D=null;e(g,function(Z,aa){e(Z,function(ac,ab){if(j(ac)){if(!L){L={x:ab,y:aa}}D={x:ab,y:aa}}})});P=L.x;O=L.y;X=D.x;W=D.y}T=z(P,O);M=z(X,W);if(T&&M&&T.part==M.part){C();t();T=z(P,O).elm;s(T,"colSpan",(X-P)+1);s(T,"rowSpan",(W-O)+1);for(R=O;R<=W;R++){for(U=P;U<=X;U++){if(!g[R]||!g[R][U]){continue}V=g[R][U].elm;if(V!=T){N=d.grep(V.childNodes);e(N,function(Z){T.appendChild(Z)});if(N.length){N=d.grep(T.childNodes);Q=0;e(N,function(Z){if(Z.nodeName=="BR"&&G.getAttrib(Z,"data-mce-bogus")&&Q++<N.length-1){T.removeChild(Z)}})}G.remove(V)}}}q()}}function l(Q){var M,S,P,R,T,U,N,V,O;e(g,function(W,X){e(W,function(Z,Y){if(j(Z)){Z=Z.elm;T=Z.parentNode;U=A(T,false);M=X;if(Q){return false}}});if(Q){return !M}});for(R=0;R<g[0].length;R++){if(!g[M][R]){continue}S=g[M][R].elm;if(S!=P){if(!Q){O=a(S,"rowspan");if(O>1){s(S,"rowSpan",O+1);continue}}else{if(M>0&&g[M-1][R]){V=g[M-1][R].elm;O=a(V,"rowSpan");if(O>1){s(V,"rowSpan",O+1);continue}}}N=f(S);s(N,"colSpan",S.colSpan);U.appendChild(N);P=S}}if(U.hasChildNodes()){if(!Q){G.insertAfter(U,T)}else{T.parentNode.insertBefore(U,T)}}}function h(N){var O,M;e(g,function(P,Q){e(P,function(S,R){if(j(S)){O=R;if(N){return false}}});if(N){return !O}});e(g,function(S,T){var P,Q,R;if(!S[O]){return}P=S[O].elm;if(P!=M){R=a(P,"colspan");Q=a(P,"rowspan");if(R==1){if(!N){G.insertAfter(f(P),P);u(O,T,Q-1,R)}else{P.parentNode.insertBefore(f(P),P);u(O,T,Q-1,R)}}else{s(P,"colSpan",P.colSpan+1)}M=P}})}function n(){var M=[];e(g,function(N,O){e(N,function(Q,P){if(j(Q)&&d.inArray(M,P)===-1){e(g,function(T){var R=T[P].elm,S;S=a(R,"colSpan");if(S>1){s(R,"colSpan",S-1)}else{G.remove(R)}});M.push(P)}})});q()}function m(){var N;function M(Q){var P,R,O;P=G.getNext(Q,"tr");e(Q.cells,function(S){var T=a(S,"rowSpan");if(T>1){s(S,"rowSpan",T-1);R=F(S);u(R.x,R.y,1,1)}});R=F(Q.cells[0]);e(g[R.y],function(S){var T;S=S.elm;if(S!=O){T=a(S,"rowSpan");if(T<=1){G.remove(S)}else{s(S,"rowSpan",T-1)}O=S}})}N=k();e(N.reverse(),function(O){M(O)});q()}function E(){var M=k();G.remove(M);q();return M}function J(){var M=k();e(M,function(O,N){M[N]=A(O,true)});return M}function B(O,N){var P=k(),M=P[N?0:P.length-1],Q=M.cells.length;e(g,function(S){var R;Q=0;e(S,function(U,T){if(U.real){Q+=U.colspan}if(U.elm.parentNode==M){R=1}});if(R){return false}});if(!N){O.reverse()}e(O,function(T){var S=T.cells.length,R;for(i=0;i<S;i++){R=T.cells[i];s(R,"colSpan",1);s(R,"rowSpan",1)}for(i=S;i<Q;i++){T.appendChild(f(T.cells[S-1]))}for(i=Q;i<S;i++){G.remove(T.cells[i])}if(N){M.parentNode.insertBefore(T,M)}else{G.insertAfter(T,M)}});G.removeClass(G.select("td.mceSelected,th.mceSelected"),"mceSelected")}function F(M){var N;e(g,function(O,P){e(O,function(R,Q){if(R.elm==M){N={x:Q,y:P};return false}});return !N});return N}function w(M){L=F(M)}function I(){var O,N,M;N=M=0;e(g,function(P,Q){e(P,function(S,R){var U,T;if(j(S)){S=g[Q][R];if(R>N){N=R}if(Q>M){M=Q}if(S.real){U=S.colspan-1;T=S.rowspan-1;if(U){if(R+U>N){N=R+U}}if(T){if(Q+T>M){M=Q+T}}}}})});return{x:N,y:M}}function v(S){var P,O,U,T,N,M,Q,R;D=F(S);if(L&&D){P=Math.min(L.x,D.x);O=Math.min(L.y,D.y);U=Math.max(L.x,D.x);T=Math.max(L.y,D.y);N=U;M=T;for(y=O;y<=M;y++){S=g[y][P];if(!S.real){if(P-(S.colspan-1)<P){P-=S.colspan-1}}}for(x=P;x<=N;x++){S=g[O][x];if(!S.real){if(O-(S.rowspan-1)<O){O-=S.rowspan-1}}}for(y=O;y<=T;y++){for(x=P;x<=U;x++){S=g[y][x];if(S.real){Q=S.colspan-1;R=S.rowspan-1;if(Q){if(x+Q>N){N=x+Q}}if(R){if(y+R>M){M=y+R}}}}}G.removeClass(G.select("td.mceSelected,th.mceSelected"),"mceSelected");for(y=O;y<=M;y++){for(x=P;x<=N;x++){if(g[y][x]){G.addClass(g[y][x].elm,"mceSelected")}}}}}d.extend(this,{deleteTable:r,split:C,merge:p,insertRow:l,insertCol:h,deleteCols:n,deleteRows:m,cutRows:E,copyRows:J,pasteRows:B,getPos:F,setStartCell:w,setEndCell:v})}d.create("tinymce.plugins.TablePlugin",{init:function(g,h){var f,m,j=true;function l(p){var o=g.selection,n=g.dom.getParent(p||o.getNode(),"table");if(n){return new b(n,g.dom,o)}}function k(){g.getBody().style.webkitUserSelect="";if(j){g.dom.removeClass(g.dom.select("td.mceSelected,th.mceSelected"),"mceSelected");j=false}}e([["table","table.desc","mceInsertTable",true],["delete_table","table.del","mceTableDelete"],["delete_col","table.delete_col_desc","mceTableDeleteCol"],["delete_row","table.delete_row_desc","mceTableDeleteRow"],["col_after","table.col_after_desc","mceTableInsertColAfter"],["col_before","table.col_before_desc","mceTableInsertColBefore"],["row_after","table.row_after_desc","mceTableInsertRowAfter"],["row_before","table.row_before_desc","mceTableInsertRowBefore"],["row_props","table.row_desc","mceTableRowProps",true],["cell_props","table.cell_desc","mceTableCellProps",true],["split_cells","table.split_cells_desc","mceTableSplitCells",true],["merge_cells","table.merge_cells_desc","mceTableMergeCells",true]],function(n){g.addButton(n[0],{title:n[1],cmd:n[2],ui:n[3]})});if(!d.isIE){g.onClick.add(function(n,o){o=o.target;if(o.nodeName==="TABLE"){n.selection.select(o);n.nodeChanged()}})}g.onPreProcess.add(function(o,p){var n,q,r,t=o.dom,s;n=t.select("table",p.node);q=n.length;while(q--){r=n[q];t.setAttrib(r,"data-mce-style","");if((s=t.getAttrib(r,"width"))){t.setStyle(r,"width",s);t.setAttrib(r,"width","")}if((s=t.getAttrib(r,"height"))){t.setStyle(r,"height",s);t.setAttrib(r,"height","")}}});g.onNodeChange.add(function(q,o,s){var r;s=q.selection.getStart();r=q.dom.getParent(s,"td,th,caption");o.setActive("table",s.nodeName==="TABLE"||!!r);if(r&&r.nodeName==="CAPTION"){r=0}o.setDisabled("delete_table",!r);o.setDisabled("delete_col",!r);o.setDisabled("delete_table",!r);o.setDisabled("delete_row",!r);o.setDisabled("col_after",!r);o.setDisabled("col_before",!r);o.setDisabled("row_after",!r);o.setDisabled("row_before",!r);o.setDisabled("row_props",!r);o.setDisabled("cell_props",!r);o.setDisabled("split_cells",!r);o.setDisabled("merge_cells",!r)});g.onInit.add(function(r){var p,t,q=r.dom,u;f=r.windowManager;r.onMouseDown.add(function(w,z){if(z.button!=2){k();t=q.getParent(z.target,"td,th");p=q.getParent(t,"table")}});q.bind(r.getDoc(),"mouseover",function(C){var A,z,B=C.target;if(t&&(u||B!=t)&&(B.nodeName=="TD"||B.nodeName=="TH")){z=q.getParent(B,"table");if(z==p){if(!u){u=l(z);u.setStartCell(t);r.getBody().style.webkitUserSelect="none"}u.setEndCell(B);j=true}A=r.selection.getSel();try{if(A.removeAllRanges){A.removeAllRanges()}else{A.empty()}}catch(w){}C.preventDefault()}});r.onMouseUp.add(function(F,G){var z,B=F.selection,H,I=B.getSel(),w,C,A,E;if(t){if(u){F.getBody().style.webkitUserSelect=""}function D(J,L){var K=new d.dom.TreeWalker(J,J);do{if(J.nodeType==3&&d.trim(J.nodeValue).length!=0){if(L){z.setStart(J,0)}else{z.setEnd(J,J.nodeValue.length)}return}if(J.nodeName=="BR"){if(L){z.setStartBefore(J)}else{z.setEndBefore(J)}return}}while(J=(L?K.next():K.prev()))}H=q.select("td.mceSelected,th.mceSelected");if(H.length>0){z=q.createRng();C=H[0];E=H[H.length-1];z.setStartBefore(C);z.setEndAfter(C);D(C,1);w=new d.dom.TreeWalker(C,q.getParent(H[0],"table"));do{if(C.nodeName=="TD"||C.nodeName=="TH"){if(!q.hasClass(C,"mceSelected")){break}A=C}}while(C=w.next());D(A);B.setRng(z)}F.nodeChanged();t=u=p=null}});r.onKeyUp.add(function(w,z){k()});r.onKeyDown.add(function(w,z){n(w)});r.onMouseDown.add(function(w,z){if(z.button!=2){n(w)}});function o(D,z,A,F){var B=3,G=D.dom.getParent(z.startContainer,"TABLE"),C,w,E;if(G){C=G.parentNode}w=z.startContainer.nodeType==B&&z.startOffset==0&&z.endOffset==0&&F&&(A.nodeName=="TR"||A==C);E=(A.nodeName=="TD"||A.nodeName=="TH")&&!F;return w||E}function n(A){if(!d.isWebKit){return}var z=A.selection.getRng();var C=A.selection.getNode();var B=A.dom.getParent(z.startContainer,"TD,TH");if(!o(A,z,C,B)){return}if(!B){B=C}var w=B.lastChild;while(w.lastChild){w=w.lastChild}z.setEnd(w,w.nodeValue.length);A.selection.setRng(z)}r.plugins.table.fixTableCellSelection=n;if(r&&r.plugins.contextmenu){r.plugins.contextmenu.onContextMenu.add(function(A,w,C){var D,B=r.selection,z=B.getNode()||r.getBody();if(r.dom.getParent(C,"td")||r.dom.getParent(C,"th")||r.dom.select("td.mceSelected,th.mceSelected").length){w.removeAll();if(z.nodeName=="A"&&!r.dom.getAttrib(z,"name")){w.add({title:"advanced.link_desc",icon:"link",cmd:r.plugins.advlink?"mceAdvLink":"mceLink",ui:true});w.add({title:"advanced.unlink_desc",icon:"unlink",cmd:"UnLink"});w.addSeparator()}if(z.nodeName=="IMG"&&z.className.indexOf("mceItem")==-1){w.add({title:"advanced.image_desc",icon:"image",cmd:r.plugins.advimage?"mceAdvImage":"mceImage",ui:true});w.addSeparator()}w.add({title:"table.desc",icon:"table",cmd:"mceInsertTable",value:{action:"insert"}});w.add({title:"table.props_desc",icon:"table_props",cmd:"mceInsertTable"});w.add({title:"table.del",icon:"delete_table",cmd:"mceTableDelete"});w.addSeparator();D=w.addMenu({title:"table.cell"});D.add({title:"table.cell_desc",icon:"cell_props",cmd:"mceTableCellProps"});D.add({title:"table.split_cells_desc",icon:"split_cells",cmd:"mceTableSplitCells"});D.add({title:"table.merge_cells_desc",icon:"merge_cells",cmd:"mceTableMergeCells"});D=w.addMenu({title:"table.row"});D.add({title:"table.row_desc",icon:"row_props",cmd:"mceTableRowProps"});D.add({title:"table.row_before_desc",icon:"row_before",cmd:"mceTableInsertRowBefore"});D.add({title:"table.row_after_desc",icon:"row_after",cmd:"mceTableInsertRowAfter"});D.add({title:"table.delete_row_desc",icon:"delete_row",cmd:"mceTableDeleteRow"});D.addSeparator();D.add({title:"table.cut_row_desc",icon:"cut",cmd:"mceTableCutRow"});D.add({title:"table.copy_row_desc",icon:"copy",cmd:"mceTableCopyRow"});D.add({title:"table.paste_row_before_desc",icon:"paste",cmd:"mceTablePasteRowBefore"}).setDisabled(!m);D.add({title:"table.paste_row_after_desc",icon:"paste",cmd:"mceTablePasteRowAfter"}).setDisabled(!m);D=w.addMenu({title:"table.col"});D.add({title:"table.col_before_desc",icon:"col_before",cmd:"mceTableInsertColBefore"});D.add({title:"table.col_after_desc",icon:"col_after",cmd:"mceTableInsertColAfter"});D.add({title:"table.delete_col_desc",icon:"delete_col",cmd:"mceTableDeleteCol"})}else{w.add({title:"table.desc",icon:"table",cmd:"mceInsertTable"})}})}if(d.isWebKit){function v(C,N){var L=d.VK;var Q=N.keyCode;function O(Y,U,S){var T=Y?"previousSibling":"nextSibling";var Z=C.dom.getParent(U,"tr");var X=Z[T];if(X){z(C,U,X,Y);d.dom.Event.cancel(S);return true}else{var aa=C.dom.getParent(Z,"table");var W=Z.parentNode;var R=W.nodeName.toLowerCase();if(R==="tbody"||R===(Y?"tfoot":"thead")){var V=w(Y,aa,W,"tbody");if(V!==null){return K(Y,V,U,S)}}return M(Y,Z,T,aa,S)}}function w(V,T,U,X){var S=C.dom.select(">"+X,T);var R=S.indexOf(U);if(V&&R===0||!V&&R===S.length-1){return B(V,T)}else{if(R===-1){var W=U.tagName.toLowerCase()==="thead"?0:S.length-1;return S[W]}else{return S[R+(V?-1:1)]}}}function B(U,T){var S=U?"thead":"tfoot";var R=C.dom.select(">"+S,T);return R.length!==0?R[0]:null}function K(V,T,S,U){var R=J(T,V);R&&z(C,S,R,V);d.dom.Event.cancel(U);return true}function M(Y,U,R,X,W){var S=X[R];if(S){F(S);return true}else{var V=C.dom.getParent(X,"td,th");if(V){return O(Y,V,W)}else{var T=J(U,!Y);F(T);return d.dom.Event.cancel(W)}}}function J(S,R){var T=S&&S[R?"lastChild":"firstChild"];return T&&T.nodeName==="BR"?C.dom.getParent(T,"td,th"):T}function F(R){C.selection.setCursorLocation(R,0)}function A(){return Q==L.UP||Q==L.DOWN}function D(R){var T=R.selection.getNode();var S=R.dom.getParent(T,"tr");return S!==null}function P(S){var R=0;var T=S;while(T.previousSibling){T=T.previousSibling;R=R+a(T,"colspan")}return R}function E(T,R){var U=0;var S=0;e(T.children,function(V,W){U=U+a(V,"colspan");S=W;if(U>R){return false}});return S}function z(T,W,Y,V){var X=P(T.dom.getParent(W,"td,th"));var S=E(Y,X);var R=Y.childNodes[S];var U=J(R,V);F(U||R)}function H(R){var T=C.selection.getNode();var U=C.dom.getParent(T,"td,th");var S=C.dom.getParent(R,"td,th");return U&&U!==S&&I(U,S)}function I(S,R){return C.dom.getParent(S,"TABLE")===C.dom.getParent(R,"TABLE")}if(A()&&D(C)){var G=C.selection.getNode();setTimeout(function(){if(H(G)){O(!N.shiftKey&&Q===L.UP,G,N)}},0)}}r.onKeyDown.add(v)}if(!d.isIE){function s(){var w;for(w=r.getBody().lastChild;w&&w.nodeType==3&&!w.nodeValue.length;w=w.previousSibling){}if(w&&w.nodeName=="TABLE"){r.dom.add(r.getBody(),"p",null,'<br data-mce-bogus="1" />')}}if(d.isGecko){r.onKeyDown.add(function(z,B){var w,A,C=z.dom;if(B.keyCode==37||B.keyCode==38){w=z.selection.getRng();A=C.getParent(w.startContainer,"table");if(A&&z.getBody().firstChild==A){if(c(w,A)){w=C.createRng();w.setStartBefore(A);w.setEndBefore(A);z.selection.setRng(w);B.preventDefault()}}}})}r.onKeyUp.add(s);r.onSetContent.add(s);r.onVisualAid.add(s);r.onPreProcess.add(function(w,A){var z=A.node.lastChild;if(z&&z.childNodes.length==1&&z.firstChild.nodeName=="BR"&&z.previousSibling&&z.previousSibling.nodeName=="TABLE"){w.dom.remove(z)}});if(d.isGecko){r.onKeyDown.add(function(z,B){if(B.keyCode===d.VK.ENTER&&B.shiftKey){var A=z.selection.getRng().startContainer;var C=q.getParent(A,"td,th");if(C){var w=z.getDoc().createTextNode("\uFEFF");q.insertAfter(w,A)}}})}s();r.startContent=r.getContent({format:"raw"})}});e({mceTableSplitCells:function(n){n.split()},mceTableMergeCells:function(o){var p,q,n;n=g.dom.getParent(g.selection.getNode(),"th,td");if(n){p=n.rowSpan;q=n.colSpan}if(!g.dom.select("td.mceSelected,th.mceSelected").length){f.open({url:h+"/merge_cells.htm",width:240+parseInt(g.getLang("table.merge_cells_delta_width",0)),height:110+parseInt(g.getLang("table.merge_cells_delta_height",0)),inline:1},{rows:p,cols:q,onaction:function(r){o.merge(n,r.cols,r.rows)},plugin_url:h})}else{o.merge()}},mceTableInsertRowBefore:function(n){n.insertRow(true)},mceTableInsertRowAfter:function(n){n.insertRow()},mceTableInsertColBefore:function(n){n.insertCol(true)},mceTableInsertColAfter:function(n){n.insertCol()},mceTableDeleteCol:function(n){n.deleteCols()},mceTableDeleteRow:function(n){n.deleteRows()},mceTableCutRow:function(n){m=n.cutRows()},mceTableCopyRow:function(n){m=n.copyRows()},mceTablePasteRowBefore:function(n){n.pasteRows(m,true)},mceTablePasteRowAfter:function(n){n.pasteRows(m)},mceTableDelete:function(n){n.deleteTable()}},function(o,n){g.addCommand(n,function(){var p=l();if(p){o(p);g.execCommand("mceRepaint");k()}})});e({mceInsertTable:function(n){f.open({url:h+"/table.htm",width:400+parseInt(g.getLang("table.table_delta_width",0)),height:320+parseInt(g.getLang("table.table_delta_height",0)),inline:1},{plugin_url:h,action:n?n.action:0})},mceTableRowProps:function(){f.open({url:h+"/row.htm",width:400+parseInt(g.getLang("table.rowprops_delta_width",0)),height:295+parseInt(g.getLang("table.rowprops_delta_height",0)),inline:1},{plugin_url:h})},mceTableCellProps:function(){f.open({url:h+"/cell.htm",width:400+parseInt(g.getLang("table.cellprops_delta_width",0)),height:295+parseInt(g.getLang("table.cellprops_delta_height",0)),inline:1},{plugin_url:h})}},function(o,n){g.addCommand(n,function(p,q){o(q)})})}});d.PluginManager.add("table",d.plugins.TablePlugin)})(tinymce); \ No newline at end of file
+(function(d){var e=d.each;function c(g,h){var j=h.ownerDocument,f=j.createRange(),k;f.setStartBefore(h);f.setEnd(g.endContainer,g.endOffset);k=j.createElement("body");k.appendChild(f.cloneContents());return k.innerHTML.replace(/<(br|img|object|embed|input|textarea)[^>]*>/gi,"-").replace(/<[^>]+>/g,"").length==0}function a(g,f){return parseInt(g.getAttribute(f)||1)}function b(H,G,K){var g,L,D,o;t();o=G.getParent(K.getStart(),"th,td");if(o){L=F(o);D=I();o=z(L.x,L.y)}function A(N,M){N=N.cloneNode(M);N.removeAttribute("id");return N}function t(){var M=0;g=[];e(["thead","tbody","tfoot"],function(N){var O=G.select("> "+N+" tr",H);e(O,function(P,Q){Q+=M;e(G.select("> td, > th",P),function(W,R){var S,T,U,V;if(g[Q]){while(g[Q][R]){R++}}U=a(W,"rowspan");V=a(W,"colspan");for(T=Q;T<Q+U;T++){if(!g[T]){g[T]=[]}for(S=R;S<R+V;S++){g[T][S]={part:N,real:T==Q&&S==R,elm:W,rowspan:U,colspan:V}}}})});M+=O.length})}function z(M,O){var N;N=g[O];if(N){return N[M]}}function s(O,M,N){if(O){N=parseInt(N);if(N===1){O.removeAttribute(M,1)}else{O.setAttribute(M,N,1)}}}function j(M){return M&&(G.hasClass(M.elm,"mceSelected")||M==o)}function k(){var M=[];e(H.rows,function(N){e(N.cells,function(O){if(G.hasClass(O,"mceSelected")||O==o.elm){M.push(N);return false}})});return M}function r(){var M=G.createRng();M.setStartAfter(H);M.setEndAfter(H);K.setRng(M);G.remove(H)}function f(M){var N;d.walk(M,function(P){var O;if(P.nodeType==3){e(G.getParents(P.parentNode,null,M).reverse(),function(Q){Q=A(Q,false);if(!N){N=O=Q}else{if(O){O.appendChild(Q)}}O=Q});if(O){O.innerHTML=d.isIE?"&nbsp;":'<br data-mce-bogus="1" />'}return false}},"childNodes");M=A(M,false);s(M,"rowSpan",1);s(M,"colSpan",1);if(N){M.appendChild(N)}else{if(!d.isIE){M.innerHTML='<br data-mce-bogus="1" />'}}return M}function q(){var M=G.createRng();e(G.select("tr",H),function(N){if(N.cells.length==0){G.remove(N)}});if(G.select("tr",H).length==0){M.setStartAfter(H);M.setEndAfter(H);K.setRng(M);G.remove(H);return}e(G.select("thead,tbody,tfoot",H),function(N){if(N.rows.length==0){G.remove(N)}});t();row=g[Math.min(g.length-1,L.y)];if(row){K.select(row[Math.min(row.length-1,L.x)].elm,true);K.collapse(true)}}function u(S,Q,U,R){var P,N,M,O,T;P=g[Q][S].elm.parentNode;for(M=1;M<=U;M++){P=G.getNext(P,"tr");if(P){for(N=S;N>=0;N--){T=g[Q+M][N].elm;if(T.parentNode==P){for(O=1;O<=R;O++){G.insertAfter(f(T),T)}break}}if(N==-1){for(O=1;O<=R;O++){P.insertBefore(f(P.cells[0]),P.cells[0])}}}}}function C(){e(g,function(M,N){e(M,function(P,O){var S,R,T,Q;if(j(P)){P=P.elm;S=a(P,"colspan");R=a(P,"rowspan");if(S>1||R>1){s(P,"rowSpan",1);s(P,"colSpan",1);for(Q=0;Q<S-1;Q++){G.insertAfter(f(P),P)}u(O,N,R-1,S)}}})})}function p(V,S,Y){var P,O,X,W,U,R,T,M,V,N,Q;if(V){pos=F(V);P=pos.x;O=pos.y;X=P+(S-1);W=O+(Y-1)}else{L=D=null;e(g,function(Z,aa){e(Z,function(ac,ab){if(j(ac)){if(!L){L={x:ab,y:aa}}D={x:ab,y:aa}}})});P=L.x;O=L.y;X=D.x;W=D.y}T=z(P,O);M=z(X,W);if(T&&M&&T.part==M.part){C();t();T=z(P,O).elm;s(T,"colSpan",(X-P)+1);s(T,"rowSpan",(W-O)+1);for(R=O;R<=W;R++){for(U=P;U<=X;U++){if(!g[R]||!g[R][U]){continue}V=g[R][U].elm;if(V!=T){N=d.grep(V.childNodes);e(N,function(Z){T.appendChild(Z)});if(N.length){N=d.grep(T.childNodes);Q=0;e(N,function(Z){if(Z.nodeName=="BR"&&G.getAttrib(Z,"data-mce-bogus")&&Q++<N.length-1){T.removeChild(Z)}})}G.remove(V)}}}q()}}function l(Q){var M,S,P,R,T,U,N,V,O;e(g,function(W,X){e(W,function(Z,Y){if(j(Z)){Z=Z.elm;T=Z.parentNode;U=A(T,false);M=X;if(Q){return false}}});if(Q){return !M}});for(R=0;R<g[0].length;R++){if(!g[M][R]){continue}S=g[M][R].elm;if(S!=P){if(!Q){O=a(S,"rowspan");if(O>1){s(S,"rowSpan",O+1);continue}}else{if(M>0&&g[M-1][R]){V=g[M-1][R].elm;O=a(V,"rowSpan");if(O>1){s(V,"rowSpan",O+1);continue}}}N=f(S);s(N,"colSpan",S.colSpan);U.appendChild(N);P=S}}if(U.hasChildNodes()){if(!Q){G.insertAfter(U,T)}else{T.parentNode.insertBefore(U,T)}}}function h(N){var O,M;e(g,function(P,Q){e(P,function(S,R){if(j(S)){O=R;if(N){return false}}});if(N){return !O}});e(g,function(S,T){var P,Q,R;if(!S[O]){return}P=S[O].elm;if(P!=M){R=a(P,"colspan");Q=a(P,"rowspan");if(R==1){if(!N){G.insertAfter(f(P),P);u(O,T,Q-1,R)}else{P.parentNode.insertBefore(f(P),P);u(O,T,Q-1,R)}}else{s(P,"colSpan",P.colSpan+1)}M=P}})}function n(){var M=[];e(g,function(N,O){e(N,function(Q,P){if(j(Q)&&d.inArray(M,P)===-1){e(g,function(T){var R=T[P].elm,S;S=a(R,"colSpan");if(S>1){s(R,"colSpan",S-1)}else{G.remove(R)}});M.push(P)}})});q()}function m(){var N;function M(Q){var P,R,O;P=G.getNext(Q,"tr");e(Q.cells,function(S){var T=a(S,"rowSpan");if(T>1){s(S,"rowSpan",T-1);R=F(S);u(R.x,R.y,1,1)}});R=F(Q.cells[0]);e(g[R.y],function(S){var T;S=S.elm;if(S!=O){T=a(S,"rowSpan");if(T<=1){G.remove(S)}else{s(S,"rowSpan",T-1)}O=S}})}N=k();e(N.reverse(),function(O){M(O)});q()}function E(){var M=k();G.remove(M);q();return M}function J(){var M=k();e(M,function(O,N){M[N]=A(O,true)});return M}function B(O,N){var P=k(),M=P[N?0:P.length-1],Q=M.cells.length;e(g,function(S){var R;Q=0;e(S,function(U,T){if(U.real){Q+=U.colspan}if(U.elm.parentNode==M){R=1}});if(R){return false}});if(!N){O.reverse()}e(O,function(T){var S=T.cells.length,R;for(i=0;i<S;i++){R=T.cells[i];s(R,"colSpan",1);s(R,"rowSpan",1)}for(i=S;i<Q;i++){T.appendChild(f(T.cells[S-1]))}for(i=Q;i<S;i++){G.remove(T.cells[i])}if(N){M.parentNode.insertBefore(T,M)}else{G.insertAfter(T,M)}});G.removeClass(G.select("td.mceSelected,th.mceSelected"),"mceSelected")}function F(M){var N;e(g,function(O,P){e(O,function(R,Q){if(R.elm==M){N={x:Q,y:P};return false}});return !N});return N}function w(M){L=F(M)}function I(){var O,N,M;N=M=0;e(g,function(P,Q){e(P,function(S,R){var U,T;if(j(S)){S=g[Q][R];if(R>N){N=R}if(Q>M){M=Q}if(S.real){U=S.colspan-1;T=S.rowspan-1;if(U){if(R+U>N){N=R+U}}if(T){if(Q+T>M){M=Q+T}}}}})});return{x:N,y:M}}function v(S){var P,O,U,T,N,M,Q,R;D=F(S);if(L&&D){P=Math.min(L.x,D.x);O=Math.min(L.y,D.y);U=Math.max(L.x,D.x);T=Math.max(L.y,D.y);N=U;M=T;for(y=O;y<=M;y++){S=g[y][P];if(!S.real){if(P-(S.colspan-1)<P){P-=S.colspan-1}}}for(x=P;x<=N;x++){S=g[O][x];if(!S.real){if(O-(S.rowspan-1)<O){O-=S.rowspan-1}}}for(y=O;y<=T;y++){for(x=P;x<=U;x++){S=g[y][x];if(S.real){Q=S.colspan-1;R=S.rowspan-1;if(Q){if(x+Q>N){N=x+Q}}if(R){if(y+R>M){M=y+R}}}}}G.removeClass(G.select("td.mceSelected,th.mceSelected"),"mceSelected");for(y=O;y<=M;y++){for(x=P;x<=N;x++){if(g[y][x]){G.addClass(g[y][x].elm,"mceSelected")}}}}}d.extend(this,{deleteTable:r,split:C,merge:p,insertRow:l,insertCol:h,deleteCols:n,deleteRows:m,cutRows:E,copyRows:J,pasteRows:B,getPos:F,setStartCell:w,setEndCell:v})}d.create("tinymce.plugins.TablePlugin",{init:function(g,h){var f,m,j=true;function l(p){var o=g.selection,n=g.dom.getParent(p||o.getNode(),"table");if(n){return new b(n,g.dom,o)}}function k(){g.getBody().style.webkitUserSelect="";if(j){g.dom.removeClass(g.dom.select("td.mceSelected,th.mceSelected"),"mceSelected");j=false}}e([["table","table.desc","mceInsertTable",true],["delete_table","table.del","mceTableDelete"],["delete_col","table.delete_col_desc","mceTableDeleteCol"],["delete_row","table.delete_row_desc","mceTableDeleteRow"],["col_after","table.col_after_desc","mceTableInsertColAfter"],["col_before","table.col_before_desc","mceTableInsertColBefore"],["row_after","table.row_after_desc","mceTableInsertRowAfter"],["row_before","table.row_before_desc","mceTableInsertRowBefore"],["row_props","table.row_desc","mceTableRowProps",true],["cell_props","table.cell_desc","mceTableCellProps",true],["split_cells","table.split_cells_desc","mceTableSplitCells",true],["merge_cells","table.merge_cells_desc","mceTableMergeCells",true]],function(n){g.addButton(n[0],{title:n[1],cmd:n[2],ui:n[3]})});if(!d.isIE){g.onClick.add(function(n,o){o=o.target;if(o.nodeName==="TABLE"){n.selection.select(o);n.nodeChanged()}})}g.onPreProcess.add(function(o,p){var n,q,r,t=o.dom,s;n=t.select("table",p.node);q=n.length;while(q--){r=n[q];t.setAttrib(r,"data-mce-style","");if((s=t.getAttrib(r,"width"))){t.setStyle(r,"width",s);t.setAttrib(r,"width","")}if((s=t.getAttrib(r,"height"))){t.setStyle(r,"height",s);t.setAttrib(r,"height","")}}});g.onNodeChange.add(function(q,o,s){var r;s=q.selection.getStart();r=q.dom.getParent(s,"td,th,caption");o.setActive("table",s.nodeName==="TABLE"||!!r);if(r&&r.nodeName==="CAPTION"){r=0}o.setDisabled("delete_table",!r);o.setDisabled("delete_col",!r);o.setDisabled("delete_table",!r);o.setDisabled("delete_row",!r);o.setDisabled("col_after",!r);o.setDisabled("col_before",!r);o.setDisabled("row_after",!r);o.setDisabled("row_before",!r);o.setDisabled("row_props",!r);o.setDisabled("cell_props",!r);o.setDisabled("split_cells",!r);o.setDisabled("merge_cells",!r)});g.onInit.add(function(r){var p,t,q=r.dom,u;f=r.windowManager;r.onMouseDown.add(function(w,z){if(z.button!=2){k();t=q.getParent(z.target,"td,th");p=q.getParent(t,"table")}});q.bind(r.getDoc(),"mouseover",function(C){var A,z,B=C.target;if(t&&(u||B!=t)&&(B.nodeName=="TD"||B.nodeName=="TH")){z=q.getParent(B,"table");if(z==p){if(!u){u=l(z);u.setStartCell(t);r.getBody().style.webkitUserSelect="none"}u.setEndCell(B);j=true}A=r.selection.getSel();try{if(A.removeAllRanges){A.removeAllRanges()}else{A.empty()}}catch(w){}C.preventDefault()}});r.onMouseUp.add(function(F,G){var z,B=F.selection,H,I=B.getSel(),w,C,A,E;if(t){if(u){F.getBody().style.webkitUserSelect=""}function D(J,L){var K=new d.dom.TreeWalker(J,J);do{if(J.nodeType==3&&d.trim(J.nodeValue).length!=0){if(L){z.setStart(J,0)}else{z.setEnd(J,J.nodeValue.length)}return}if(J.nodeName=="BR"){if(L){z.setStartBefore(J)}else{z.setEndBefore(J)}return}}while(J=(L?K.next():K.prev()))}H=q.select("td.mceSelected,th.mceSelected");if(H.length>0){z=q.createRng();C=H[0];E=H[H.length-1];z.setStartBefore(C);z.setEndAfter(C);D(C,1);w=new d.dom.TreeWalker(C,q.getParent(H[0],"table"));do{if(C.nodeName=="TD"||C.nodeName=="TH"){if(!q.hasClass(C,"mceSelected")){break}A=C}}while(C=w.next());D(A);B.setRng(z)}F.nodeChanged();t=u=p=null}});r.onKeyUp.add(function(w,z){k()});r.onKeyDown.add(function(w,z){n(w)});r.onMouseDown.add(function(w,z){if(z.button!=2){n(w)}});function o(D,z,A,F){var B=3,G=D.dom.getParent(z.startContainer,"TABLE"),C,w,E;if(G){C=G.parentNode}w=z.startContainer.nodeType==B&&z.startOffset==0&&z.endOffset==0&&F&&(A.nodeName=="TR"||A==C);E=(A.nodeName=="TD"||A.nodeName=="TH")&&!F;return w||E}function n(A){if(!d.isWebKit){return}var z=A.selection.getRng();var C=A.selection.getNode();var B=A.dom.getParent(z.startContainer,"TD,TH");if(!o(A,z,C,B)){return}if(!B){B=C}var w=B.lastChild;while(w.lastChild){w=w.lastChild}z.setEnd(w,w.nodeValue.length);A.selection.setRng(z)}r.plugins.table.fixTableCellSelection=n;if(r&&r.plugins.contextmenu){r.plugins.contextmenu.onContextMenu.add(function(A,w,C){var D,B=r.selection,z=B.getNode()||r.getBody();if(r.dom.getParent(C,"td")||r.dom.getParent(C,"th")||r.dom.select("td.mceSelected,th.mceSelected").length){w.removeAll();if(z.nodeName=="A"&&!r.dom.getAttrib(z,"name")){w.add({title:"advanced.link_desc",icon:"link",cmd:r.plugins.advlink?"mceAdvLink":"mceLink",ui:true});w.add({title:"advanced.unlink_desc",icon:"unlink",cmd:"UnLink"});w.addSeparator()}if(z.nodeName=="IMG"&&z.className.indexOf("mceItem")==-1){w.add({title:"advanced.image_desc",icon:"image",cmd:r.plugins.advimage?"mceAdvImage":"mceImage",ui:true});w.addSeparator()}w.add({title:"table.desc",icon:"table",cmd:"mceInsertTable",value:{action:"insert"}});w.add({title:"table.props_desc",icon:"table_props",cmd:"mceInsertTable"});w.add({title:"table.del",icon:"delete_table",cmd:"mceTableDelete"});w.addSeparator();D=w.addMenu({title:"table.cell"});D.add({title:"table.cell_desc",icon:"cell_props",cmd:"mceTableCellProps"});D.add({title:"table.split_cells_desc",icon:"split_cells",cmd:"mceTableSplitCells"});D.add({title:"table.merge_cells_desc",icon:"merge_cells",cmd:"mceTableMergeCells"});D=w.addMenu({title:"table.row"});D.add({title:"table.row_desc",icon:"row_props",cmd:"mceTableRowProps"});D.add({title:"table.row_before_desc",icon:"row_before",cmd:"mceTableInsertRowBefore"});D.add({title:"table.row_after_desc",icon:"row_after",cmd:"mceTableInsertRowAfter"});D.add({title:"table.delete_row_desc",icon:"delete_row",cmd:"mceTableDeleteRow"});D.addSeparator();D.add({title:"table.cut_row_desc",icon:"cut",cmd:"mceTableCutRow"});D.add({title:"table.copy_row_desc",icon:"copy",cmd:"mceTableCopyRow"});D.add({title:"table.paste_row_before_desc",icon:"paste",cmd:"mceTablePasteRowBefore"}).setDisabled(!m);D.add({title:"table.paste_row_after_desc",icon:"paste",cmd:"mceTablePasteRowAfter"}).setDisabled(!m);D=w.addMenu({title:"table.col"});D.add({title:"table.col_before_desc",icon:"col_before",cmd:"mceTableInsertColBefore"});D.add({title:"table.col_after_desc",icon:"col_after",cmd:"mceTableInsertColAfter"});D.add({title:"table.delete_col_desc",icon:"delete_col",cmd:"mceTableDeleteCol"})}else{w.add({title:"table.desc",icon:"table",cmd:"mceInsertTable"})}})}if(d.isWebKit){function v(C,N){var L=d.VK;var Q=N.keyCode;function O(Y,U,S){var T=Y?"previousSibling":"nextSibling";var Z=C.dom.getParent(U,"tr");var X=Z[T];if(X){z(C,U,X,Y);d.dom.Event.cancel(S);return true}else{var aa=C.dom.getParent(Z,"table");var W=Z.parentNode;var R=W.nodeName.toLowerCase();if(R==="tbody"||R===(Y?"tfoot":"thead")){var V=w(Y,aa,W,"tbody");if(V!==null){return K(Y,V,U,S)}}return M(Y,Z,T,aa,S)}}function w(V,T,U,X){var S=C.dom.select(">"+X,T);var R=S.indexOf(U);if(V&&R===0||!V&&R===S.length-1){return B(V,T)}else{if(R===-1){var W=U.tagName.toLowerCase()==="thead"?0:S.length-1;return S[W]}else{return S[R+(V?-1:1)]}}}function B(U,T){var S=U?"thead":"tfoot";var R=C.dom.select(">"+S,T);return R.length!==0?R[0]:null}function K(V,T,S,U){var R=J(T,V);R&&z(C,S,R,V);d.dom.Event.cancel(U);return true}function M(Y,U,R,X,W){var S=X[R];if(S){F(S);return true}else{var V=C.dom.getParent(X,"td,th");if(V){return O(Y,V,W)}else{var T=J(U,!Y);F(T);return d.dom.Event.cancel(W)}}}function J(S,R){var T=S&&S[R?"lastChild":"firstChild"];return T&&T.nodeName==="BR"?C.dom.getParent(T,"td,th"):T}function F(R){C.selection.setCursorLocation(R,0)}function A(){return Q==L.UP||Q==L.DOWN}function D(R){var T=R.selection.getNode();var S=R.dom.getParent(T,"tr");return S!==null}function P(S){var R=0;var T=S;while(T.previousSibling){T=T.previousSibling;R=R+a(T,"colspan")}return R}function E(T,R){var U=0;var S=0;e(T.children,function(V,W){U=U+a(V,"colspan");S=W;if(U>R){return false}});return S}function z(T,W,Y,V){var X=P(T.dom.getParent(W,"td,th"));var S=E(Y,X);var R=Y.childNodes[S];var U=J(R,V);F(U||R)}function H(R){var T=C.selection.getNode();var U=C.dom.getParent(T,"td,th");var S=C.dom.getParent(R,"td,th");return U&&U!==S&&I(U,S)}function I(S,R){return C.dom.getParent(S,"TABLE")===C.dom.getParent(R,"TABLE")}if(A()&&D(C)){var G=C.selection.getNode();setTimeout(function(){if(H(G)){O(!N.shiftKey&&Q===L.UP,G,N)}},0)}}r.onKeyDown.add(v)}function s(){var w;for(w=r.getBody().lastChild;w&&w.nodeType==3&&!w.nodeValue.length;w=w.previousSibling){}if(w&&w.nodeName=="TABLE"){if(r.settings.forced_root_block){r.dom.add(r.getBody(),r.settings.forced_root_block,null,d.isIE?"&nbsp;":'<br data-mce-bogus="1" />')}else{r.dom.add(r.getBody(),"br",{"data-mce-bogus":"1"})}}}if(d.isGecko){r.onKeyDown.add(function(z,B){var w,A,C=z.dom;if(B.keyCode==37||B.keyCode==38){w=z.selection.getRng();A=C.getParent(w.startContainer,"table");if(A&&z.getBody().firstChild==A){if(c(w,A)){w=C.createRng();w.setStartBefore(A);w.setEndBefore(A);z.selection.setRng(w);B.preventDefault()}}}})}r.onKeyUp.add(s);r.onSetContent.add(s);r.onVisualAid.add(s);r.onPreProcess.add(function(w,A){var z=A.node.lastChild;if(z&&(z.nodeName=="BR"||(z.childNodes.length==1&&(z.firstChild.nodeName=="BR"||z.firstChild.nodeValue=="\u00a0")))&&z.previousSibling&&z.previousSibling.nodeName=="TABLE"){w.dom.remove(z)}});if(d.isGecko){r.onKeyDown.add(function(z,B){if(B.keyCode===d.VK.ENTER&&B.shiftKey){var A=z.selection.getRng().startContainer;var C=q.getParent(A,"td,th");if(C){var w=z.getDoc().createTextNode("\uFEFF");q.insertAfter(w,A)}}})}s();r.startContent=r.getContent({format:"raw"})});e({mceTableSplitCells:function(n){n.split()},mceTableMergeCells:function(o){var p,q,n;n=g.dom.getParent(g.selection.getNode(),"th,td");if(n){p=n.rowSpan;q=n.colSpan}if(!g.dom.select("td.mceSelected,th.mceSelected").length){f.open({url:h+"/merge_cells.htm",width:240+parseInt(g.getLang("table.merge_cells_delta_width",0)),height:110+parseInt(g.getLang("table.merge_cells_delta_height",0)),inline:1},{rows:p,cols:q,onaction:function(r){o.merge(n,r.cols,r.rows)},plugin_url:h})}else{o.merge()}},mceTableInsertRowBefore:function(n){n.insertRow(true)},mceTableInsertRowAfter:function(n){n.insertRow()},mceTableInsertColBefore:function(n){n.insertCol(true)},mceTableInsertColAfter:function(n){n.insertCol()},mceTableDeleteCol:function(n){n.deleteCols()},mceTableDeleteRow:function(n){n.deleteRows()},mceTableCutRow:function(n){m=n.cutRows()},mceTableCopyRow:function(n){m=n.copyRows()},mceTablePasteRowBefore:function(n){n.pasteRows(m,true)},mceTablePasteRowAfter:function(n){n.pasteRows(m)},mceTableDelete:function(n){n.deleteTable()}},function(o,n){g.addCommand(n,function(){var p=l();if(p){o(p);g.execCommand("mceRepaint");k()}})});e({mceInsertTable:function(n){f.open({url:h+"/table.htm",width:400+parseInt(g.getLang("table.table_delta_width",0)),height:320+parseInt(g.getLang("table.table_delta_height",0)),inline:1},{plugin_url:h,action:n?n.action:0})},mceTableRowProps:function(){f.open({url:h+"/row.htm",width:400+parseInt(g.getLang("table.rowprops_delta_width",0)),height:295+parseInt(g.getLang("table.rowprops_delta_height",0)),inline:1},{plugin_url:h})},mceTableCellProps:function(){f.open({url:h+"/cell.htm",width:400+parseInt(g.getLang("table.cellprops_delta_width",0)),height:295+parseInt(g.getLang("table.cellprops_delta_height",0)),inline:1},{plugin_url:h})}},function(o,n){g.addCommand(n,function(p,q){o(q)})})}});d.PluginManager.add("table",d.plugins.TablePlugin)})(tinymce); \ No newline at end of file
diff --git a/program/js/tiny_mce/plugins/table/editor_plugin_src.js b/program/js/tiny_mce/plugins/table/editor_plugin_src.js
index ff095c8bf..54bab56c3 100644
--- a/program/js/tiny_mce/plugins/table/editor_plugin_src.js
+++ b/program/js/tiny_mce/plugins/table/editor_plugin_src.js
@@ -1234,80 +1234,83 @@
ed.onKeyDown.add(moveSelection);
}
-
+
// Fixes an issue on Gecko where it's impossible to place the caret behind a table
// This fix will force a paragraph element after the table but only when the forced_root_block setting is enabled
- if (!tinymce.isIE) {
- function fixTableCaretPos() {
- var last;
+ function fixTableCaretPos() {
+ var last;
- // Skip empty text nodes form the end
- for (last = ed.getBody().lastChild; last && last.nodeType == 3 && !last.nodeValue.length; last = last.previousSibling) ;
+ // Skip empty text nodes form the end
+ for (last = ed.getBody().lastChild; last && last.nodeType == 3 && !last.nodeValue.length; last = last.previousSibling) ;
- if (last && last.nodeName == 'TABLE')
- ed.dom.add(ed.getBody(), 'p', null, '<br data-mce-bogus="1" />');
- };
+ if (last && last.nodeName == 'TABLE') {
+ if (ed.settings.forced_root_block)
+ ed.dom.add(ed.getBody(), ed.settings.forced_root_block, null, tinymce.isIE ? '&nbsp;' : '<br data-mce-bogus="1" />');
+ else
+ ed.dom.add(ed.getBody(), 'br', {'data-mce-bogus': '1'});
+ }
+ };
- // Fixes an bug where it's impossible to place the caret before a table in Gecko
- // this fix solves it by detecting when the caret is at the beginning of such a table
- // and then manually moves the caret infront of the table
- if (tinymce.isGecko) {
- ed.onKeyDown.add(function(ed, e) {
- var rng, table, dom = ed.dom;
+ // Fixes an bug where it's impossible to place the caret before a table in Gecko
+ // this fix solves it by detecting when the caret is at the beginning of such a table
+ // and then manually moves the caret infront of the table
+ if (tinymce.isGecko) {
+ ed.onKeyDown.add(function(ed, e) {
+ var rng, table, dom = ed.dom;
- // On gecko it's not possible to place the caret before a table
- if (e.keyCode == 37 || e.keyCode == 38) {
- rng = ed.selection.getRng();
- table = dom.getParent(rng.startContainer, 'table');
+ // On gecko it's not possible to place the caret before a table
+ if (e.keyCode == 37 || e.keyCode == 38) {
+ rng = ed.selection.getRng();
+ table = dom.getParent(rng.startContainer, 'table');
- if (table && ed.getBody().firstChild == table) {
- if (isAtStart(rng, table)) {
- rng = dom.createRng();
+ if (table && ed.getBody().firstChild == table) {
+ if (isAtStart(rng, table)) {
+ rng = dom.createRng();
- rng.setStartBefore(table);
- rng.setEndBefore(table);
+ rng.setStartBefore(table);
+ rng.setEndBefore(table);
- ed.selection.setRng(rng);
+ ed.selection.setRng(rng);
- e.preventDefault();
- }
+ e.preventDefault();
}
}
- });
- }
+ }
+ });
+ }
- ed.onKeyUp.add(fixTableCaretPos);
- ed.onSetContent.add(fixTableCaretPos);
- ed.onVisualAid.add(fixTableCaretPos);
+ ed.onKeyUp.add(fixTableCaretPos);
+ ed.onSetContent.add(fixTableCaretPos);
+ ed.onVisualAid.add(fixTableCaretPos);
- ed.onPreProcess.add(function(ed, o) {
- var last = o.node.lastChild;
+ ed.onPreProcess.add(function(ed, o) {
+ var last = o.node.lastChild;
- if (last && last.childNodes.length == 1 && last.firstChild.nodeName == 'BR' && last.previousSibling && last.previousSibling.nodeName == "TABLE")
- ed.dom.remove(last);
- });
+ if (last && (last.nodeName == "BR" || (last.childNodes.length == 1 && (last.firstChild.nodeName == 'BR' || last.firstChild.nodeValue == '\u00a0'))) && last.previousSibling && last.previousSibling.nodeName == "TABLE") {
+ ed.dom.remove(last);
+ }
+ });
- /**
- * Fixes bug in Gecko where shift-enter in table cell does not place caret on new line
- */
- if (tinymce.isGecko) {
- ed.onKeyDown.add(function(ed, e) {
- if (e.keyCode === tinymce.VK.ENTER && e.shiftKey) {
- var node = ed.selection.getRng().startContainer;
- var tableCell = dom.getParent(node, 'td,th');
- if (tableCell) {
- var zeroSizedNbsp = ed.getDoc().createTextNode("\uFEFF");
- dom.insertAfter(zeroSizedNbsp, node);
- }
+ /**
+ * Fixes bug in Gecko where shift-enter in table cell does not place caret on new line
+ */
+ if (tinymce.isGecko) {
+ ed.onKeyDown.add(function(ed, e) {
+ if (e.keyCode === tinymce.VK.ENTER && e.shiftKey) {
+ var node = ed.selection.getRng().startContainer;
+ var tableCell = dom.getParent(node, 'td,th');
+ if (tableCell) {
+ var zeroSizedNbsp = ed.getDoc().createTextNode("\uFEFF");
+ dom.insertAfter(zeroSizedNbsp, node);
}
- });
- }
+ }
+ });
+ }
- fixTableCaretPos();
- ed.startContent = ed.getContent({format : 'raw'});
- }
+ fixTableCaretPos();
+ ed.startContent = ed.getContent({format : 'raw'});
});
// Register action commands
diff --git a/program/js/tiny_mce/plugins/table/js/table.js b/program/js/tiny_mce/plugins/table/js/table.js
index 50654b24d..1db243b63 100644
--- a/program/js/tiny_mce/plugins/table/js/table.js
+++ b/program/js/tiny_mce/plugins/table/js/table.js
@@ -247,7 +247,10 @@ function insertTable() {
// Fixes a bug in IE where the caret cannot be placed after the table if the table is at the end of the document
if (tinymce.isIE && node.nextSibling == null) {
- dom.insertAfter(dom.create('p'), node);
+ if (inst.settings.forced_root_block)
+ dom.insertAfter(dom.create(inst.settings.forced_root_block), node);
+ else
+ dom.insertAfter(dom.create('br', {'data-mce-bogus': '1'}), node);
}
try {
diff --git a/program/js/tiny_mce/themes/advanced/editor_template.js b/program/js/tiny_mce/themes/advanced/editor_template.js
index 4d5acfb3e..9ab712cb5 100644
--- a/program/js/tiny_mce/themes/advanced/editor_template.js
+++ b/program/js/tiny_mce/themes/advanced/editor_template.js
@@ -1 +1 @@
-(function(h){var i=h.DOM,g=h.dom.Event,c=h.extend,f=h.each,a=h.util.Cookie,e,d=h.explode;function b(m,k){var q,p=m.dom,n="",o,l;previewStyles=m.settings.preview_styles;if(previewStyles===false){return""}if(!previewStyles){previewStyles="font-family font-size font-weight text-decoration text-transform color background-color"}function j(r){return r.replace(/%(\w+)/g,"")}name=k.block||k.inline||"span";q=p.create(name);f(k.styles,function(s,r){s=j(s);if(s){p.setStyle(q,r,s)}});f(k.attributes,function(s,r){s=j(s);if(s){p.setAttrib(q,r,s)}});f(k.classes,function(r){r=j(r);if(!p.hasClass(q,r)){p.addClass(q,r)}});p.setStyles(q,{position:"absolute",left:-65535});m.getBody().appendChild(q);o=p.getStyle(m.getBody(),"fontSize",true);o=/px$/.test(o)?parseInt(o,10):0;f(previewStyles.split(" "),function(r){var s=p.getStyle(q,r,true);if(r=="background-color"&&/transparent|rgba\s*\([^)]+,\s*0\)/.test(s)){s=p.getStyle(m.getBody(),r,true);if(p.toHex(s).toLowerCase()=="#ffffff"){return}}if(r=="font-size"){if(/em|%$/.test(s)){if(o===0){return}s=parseFloat(s,10)/(/%$/.test(s)?100:1);s=(s*o)+"px"}}n+=r+":"+s+";"});p.remove(q);return n}h.ThemeManager.requireLangPack("advanced");h.create("tinymce.themes.AdvancedTheme",{sizes:[8,10,12,14,18,24,36],controls:{bold:["bold_desc","Bold"],italic:["italic_desc","Italic"],underline:["underline_desc","Underline"],strikethrough:["striketrough_desc","Strikethrough"],justifyleft:["justifyleft_desc","JustifyLeft"],justifycenter:["justifycenter_desc","JustifyCenter"],justifyright:["justifyright_desc","JustifyRight"],justifyfull:["justifyfull_desc","JustifyFull"],bullist:["bullist_desc","InsertUnorderedList"],numlist:["numlist_desc","InsertOrderedList"],outdent:["outdent_desc","Outdent"],indent:["indent_desc","Indent"],cut:["cut_desc","Cut"],copy:["copy_desc","Copy"],paste:["paste_desc","Paste"],undo:["undo_desc","Undo"],redo:["redo_desc","Redo"],link:["link_desc","mceLink"],unlink:["unlink_desc","unlink"],image:["image_desc","mceImage"],cleanup:["cleanup_desc","mceCleanup"],help:["help_desc","mceHelp"],code:["code_desc","mceCodeEditor"],hr:["hr_desc","InsertHorizontalRule"],removeformat:["removeformat_desc","RemoveFormat"],sub:["sub_desc","subscript"],sup:["sup_desc","superscript"],forecolor:["forecolor_desc","ForeColor"],forecolorpicker:["forecolor_desc","mceForeColor"],backcolor:["backcolor_desc","HiliteColor"],backcolorpicker:["backcolor_desc","mceBackColor"],charmap:["charmap_desc","mceCharMap"],visualaid:["visualaid_desc","mceToggleVisualAid"],anchor:["anchor_desc","mceInsertAnchor"],newdocument:["newdocument_desc","mceNewDocument"],blockquote:["blockquote_desc","mceBlockQuote"]},stateControls:["bold","italic","underline","strikethrough","bullist","numlist","justifyleft","justifycenter","justifyright","justifyfull","sub","sup","blockquote"],init:function(k,l){var m=this,n,j,p;m.editor=k;m.url=l;m.onResolveName=new h.util.Dispatcher(this);n=k.settings;k.forcedHighContrastMode=k.settings.detect_highcontrast&&m._isHighContrast();k.settings.skin=k.forcedHighContrastMode?"highcontrast":k.settings.skin;if(!n.theme_advanced_buttons1){n=c({theme_advanced_buttons1:"bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,styleselect,formatselect",theme_advanced_buttons2:"bullist,numlist,|,outdent,indent,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code",theme_advanced_buttons3:"hr,removeformat,visualaid,|,sub,sup,|,charmap"},n)}m.settings=n=c({theme_advanced_path:true,theme_advanced_toolbar_location:"top",theme_advanced_blockformats:"p,address,pre,h1,h2,h3,h4,h5,h6",theme_advanced_toolbar_align:"left",theme_advanced_statusbar_location:"bottom",theme_advanced_fonts:"Andale Mono=andale mono,times;Arial=arial,helvetica,sans-serif;Arial Black=arial black,avant garde;Book Antiqua=book antiqua,palatino;Comic Sans MS=comic sans ms,sans-serif;Courier New=courier new,courier;Georgia=georgia,palatino;Helvetica=helvetica;Impact=impact,chicago;Symbol=symbol;Tahoma=tahoma,arial,helvetica,sans-serif;Terminal=terminal,monaco;Times New Roman=times new roman,times;Trebuchet MS=trebuchet ms,geneva;Verdana=verdana,geneva;Webdings=webdings;Wingdings=wingdings,zapf dingbats",theme_advanced_more_colors:1,theme_advanced_row_height:23,theme_advanced_resize_horizontal:1,theme_advanced_resizing_use_cookie:1,theme_advanced_font_sizes:"1,2,3,4,5,6,7",theme_advanced_font_selector:"span",theme_advanced_show_current_color:0,readonly:k.settings.readonly},n);if(!n.font_size_style_values){n.font_size_style_values="8pt,10pt,12pt,14pt,18pt,24pt,36pt"}if(h.is(n.theme_advanced_font_sizes,"string")){n.font_size_style_values=h.explode(n.font_size_style_values);n.font_size_classes=h.explode(n.font_size_classes||"");p={};k.settings.theme_advanced_font_sizes=n.theme_advanced_font_sizes;f(k.getParam("theme_advanced_font_sizes","","hash"),function(r,q){var o;if(q==r&&r>=1&&r<=7){q=r+" ("+m.sizes[r-1]+"pt)";o=n.font_size_classes[r-1];r=n.font_size_style_values[r-1]||(m.sizes[r-1]+"pt")}if(/^\s*\./.test(r)){o=r.replace(/\./g,"")}p[q]=o?{"class":o}:{fontSize:r}});n.theme_advanced_font_sizes=p}if((j=n.theme_advanced_path_location)&&j!="none"){n.theme_advanced_statusbar_location=n.theme_advanced_path_location}if(n.theme_advanced_statusbar_location=="none"){n.theme_advanced_statusbar_location=0}if(k.settings.content_css!==false){k.contentCSS.push(k.baseURI.toAbsolute(l+"/skins/"+k.settings.skin+"/content.css"))}k.onInit.add(function(){if(!k.settings.readonly){k.onNodeChange.add(m._nodeChanged,m);k.onKeyUp.add(m._updateUndoStatus,m);k.onMouseUp.add(m._updateUndoStatus,m);k.dom.bind(k.dom.getRoot(),"dragend",function(){m._updateUndoStatus(k)})}});k.onSetProgressState.add(function(r,o,s){var t,u=r.id,q;if(o){m.progressTimer=setTimeout(function(){t=r.getContainer();t=t.insertBefore(i.create("DIV",{style:"position:relative"}),t.firstChild);q=i.get(r.id+"_tbl");i.add(t,"div",{id:u+"_blocker","class":"mceBlocker",style:{width:q.clientWidth+2,height:q.clientHeight+2}});i.add(t,"div",{id:u+"_progress","class":"mceProgress",style:{left:q.clientWidth/2,top:q.clientHeight/2}})},s||0)}else{i.remove(u+"_blocker");i.remove(u+"_progress");clearTimeout(m.progressTimer)}});i.loadCSS(n.editor_css?k.documentBaseURI.toAbsolute(n.editor_css):l+"/skins/"+k.settings.skin+"/ui.css");if(n.skin_variant){i.loadCSS(l+"/skins/"+k.settings.skin+"/ui_"+n.skin_variant+".css")}},_isHighContrast:function(){var j,k=i.add(i.getRoot(),"div",{style:"background-color: rgb(171,239,86);"});j=(i.getStyle(k,"background-color",true)+"").toLowerCase().replace(/ /g,"");i.remove(k);return j!="rgb(171,239,86)"&&j!="#abef56"},createControl:function(m,j){var k,l;if(l=j.createControl(m)){return l}switch(m){case"styleselect":return this._createStyleSelect();case"formatselect":return this._createBlockFormats();case"fontselect":return this._createFontSelect();case"fontsizeselect":return this._createFontSizeSelect();case"forecolor":return this._createForeColorMenu();case"backcolor":return this._createBackColorMenu()}if((k=this.controls[m])){return j.createButton(m,{title:"advanced."+k[0],cmd:k[1],ui:k[2],value:k[3]})}},execCommand:function(l,k,m){var j=this["_"+l];if(j){j.call(this,k,m);return true}return false},_importClasses:function(l){var j=this.editor,k=j.controlManager.get("styleselect");if(k.getLength()==0){f(j.dom.getClasses(),function(q,m){var p="style_"+m,n;n={inline:"span",attributes:{"class":q["class"]},selector:"*"};j.formatter.register(p,n);k.add(q["class"],p,{style:function(){return b(j,n)}})})}},_createStyleSelect:function(o){var l=this,j=l.editor,k=j.controlManager,m;m=k.createListBox("styleselect",{title:"advanced.style_select",onselect:function(q){var r,n=[],p;f(m.items,function(s){n.push(s.value)});j.focus();j.undoManager.add();r=j.formatter.matchAll(n);h.each(r,function(s){if(!q||s==q){if(s){j.formatter.remove(s)}p=true}});if(!p){j.formatter.apply(q)}j.undoManager.add();j.nodeChanged();return false}});j.onPreInit.add(function(){var p=0,n=j.getParam("style_formats");if(n){f(n,function(q){var r,s=0;f(q,function(){s++});if(s>1){r=q.name=q.name||"style_"+(p++);j.formatter.register(r,q);m.add(q.title,r,{style:function(){return b(j,q)}})}else{m.add(q.title)}})}else{f(j.getParam("theme_advanced_styles","","hash"),function(t,s){var r,q;if(t){r="style_"+(p++);q={inline:"span",classes:t,selector:"*"};j.formatter.register(r,q);m.add(l.editor.translate(s),r,{style:function(){return b(j,q)}})}})}});if(m.getLength()==0){m.onPostRender.add(function(p,q){if(!m.NativeListBox){g.add(q.id+"_text","focus",l._importClasses,l);g.add(q.id+"_text","mousedown",l._importClasses,l);g.add(q.id+"_open","focus",l._importClasses,l);g.add(q.id+"_open","mousedown",l._importClasses,l)}else{g.add(q.id,"focus",l._importClasses,l)}})}return m},_createFontSelect:function(){var l,k=this,j=k.editor;l=j.controlManager.createListBox("fontselect",{title:"advanced.fontdefault",onselect:function(m){var n=l.items[l.selectedIndex];if(!m&&n){j.execCommand("FontName",false,n.value);return}j.execCommand("FontName",false,m);l.select(function(o){return m==o});if(n&&n.value==m){l.select(null)}return false}});if(l){f(j.getParam("theme_advanced_fonts",k.settings.theme_advanced_fonts,"hash"),function(n,m){l.add(j.translate(m),n,{style:n.indexOf("dings")==-1?"font-family:"+n:""})})}return l},_createFontSizeSelect:function(){var m=this,k=m.editor,n,l=0,j=[];n=k.controlManager.createListBox("fontsizeselect",{title:"advanced.font_size",onselect:function(o){var p=n.items[n.selectedIndex];if(!o&&p){p=p.value;if(p["class"]){k.formatter.toggle("fontsize_class",{value:p["class"]});k.undoManager.add();k.nodeChanged()}else{k.execCommand("FontSize",false,p.fontSize)}return}if(o["class"]){k.focus();k.undoManager.add();k.formatter.toggle("fontsize_class",{value:o["class"]});k.undoManager.add();k.nodeChanged()}else{k.execCommand("FontSize",false,o.fontSize)}n.select(function(q){return o==q});if(p&&(p.value.fontSize==o.fontSize||p.value["class"]&&p.value["class"]==o["class"])){n.select(null)}return false}});if(n){f(m.settings.theme_advanced_font_sizes,function(p,o){var q=p.fontSize;if(q>=1&&q<=7){q=m.sizes[parseInt(q)-1]+"pt"}n.add(o,p,{style:"font-size:"+q,"class":"mceFontSize"+(l++)+(" "+(p["class"]||""))})})}return n},_createBlockFormats:function(){var l,j={p:"advanced.paragraph",address:"advanced.address",pre:"advanced.pre",h1:"advanced.h1",h2:"advanced.h2",h3:"advanced.h3",h4:"advanced.h4",h5:"advanced.h5",h6:"advanced.h6",div:"advanced.div",blockquote:"advanced.blockquote",code:"advanced.code",dt:"advanced.dt",dd:"advanced.dd",samp:"advanced.samp"},k=this;l=k.editor.controlManager.createListBox("formatselect",{title:"advanced.block",onselect:function(m){k.editor.execCommand("FormatBlock",false,m);return false}});if(l){f(k.editor.getParam("theme_advanced_blockformats",k.settings.theme_advanced_blockformats,"hash"),function(n,m){l.add(k.editor.translate(m!=n?m:j[n]),n,{"class":"mce_formatPreview mce_"+n,style:function(){return b(k.editor,{block:n})}})})}return l},_createForeColorMenu:function(){var n,k=this,l=k.settings,m={},j;if(l.theme_advanced_more_colors){m.more_colors_func=function(){k._mceColorPicker(0,{color:n.value,func:function(o){n.setColor(o)}})}}if(j=l.theme_advanced_text_colors){m.colors=j}if(l.theme_advanced_default_foreground_color){m.default_color=l.theme_advanced_default_foreground_color}m.title="advanced.forecolor_desc";m.cmd="ForeColor";m.scope=this;n=k.editor.controlManager.createColorSplitButton("forecolor",m);return n},_createBackColorMenu:function(){var n,k=this,l=k.settings,m={},j;if(l.theme_advanced_more_colors){m.more_colors_func=function(){k._mceColorPicker(0,{color:n.value,func:function(o){n.setColor(o)}})}}if(j=l.theme_advanced_background_colors){m.colors=j}if(l.theme_advanced_default_background_color){m.default_color=l.theme_advanced_default_background_color}m.title="advanced.backcolor_desc";m.cmd="HiliteColor";m.scope=this;n=k.editor.controlManager.createColorSplitButton("backcolor",m);return n},renderUI:function(l){var q,m,r,w=this,u=w.editor,x=w.settings,v,k,j;if(u.settings){u.settings.aria_label=x.aria_label+u.getLang("advanced.help_shortcut")}q=k=i.create("span",{role:"application","aria-labelledby":u.id+"_voice",id:u.id+"_parent","class":"mceEditor "+u.settings.skin+"Skin"+(x.skin_variant?" "+u.settings.skin+"Skin"+w._ufirst(x.skin_variant):"")+(u.settings.directionality=="rtl"?" mceRtl":"")});i.add(q,"span",{"class":"mceVoiceLabel",style:"display:none;",id:u.id+"_voice"},x.aria_label);if(!i.boxModel){q=i.add(q,"div",{"class":"mceOldBoxModel"})}q=v=i.add(q,"table",{role:"presentation",id:u.id+"_tbl","class":"mceLayout",cellSpacing:0,cellPadding:0});q=r=i.add(q,"tbody");switch((x.theme_advanced_layout_manager||"").toLowerCase()){case"rowlayout":m=w._rowLayout(x,r,l);break;case"customlayout":m=u.execCallback("theme_advanced_custom_layout",x,r,l,k);break;default:m=w._simpleLayout(x,r,l,k)}q=l.targetNode;j=v.rows;i.addClass(j[0],"mceFirst");i.addClass(j[j.length-1],"mceLast");f(i.select("tr",r),function(o){i.addClass(o.firstChild,"mceFirst");i.addClass(o.childNodes[o.childNodes.length-1],"mceLast")});if(i.get(x.theme_advanced_toolbar_container)){i.get(x.theme_advanced_toolbar_container).appendChild(k)}else{i.insertAfter(k,q)}g.add(u.id+"_path_row","click",function(n){n=n.target;if(n.nodeName=="A"){w._sel(n.className.replace(/^.*mcePath_([0-9]+).*$/,"$1"));return false}});if(!u.getParam("accessibility_focus")){g.add(i.add(k,"a",{href:"#"},"<!-- IE -->"),"focus",function(){tinyMCE.get(u.id).focus()})}if(x.theme_advanced_toolbar_location=="external"){l.deltaHeight=0}w.deltaHeight=l.deltaHeight;l.targetNode=null;u.onKeyDown.add(function(p,n){var s=121,o=122;if(n.altKey){if(n.keyCode===s){if(h.isWebKit){window.focus()}w.toolbarGroup.focus();return g.cancel(n)}else{if(n.keyCode===o){i.get(p.id+"_path_row").focus();return g.cancel(n)}}}});u.addShortcut("alt+0","","mceShortcuts",w);return{iframeContainer:m,editorContainer:u.id+"_parent",sizeContainer:v,deltaHeight:l.deltaHeight}},getInfo:function(){return{longname:"Advanced theme",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",version:h.majorVersion+"."+h.minorVersion}},resizeBy:function(j,k){var l=i.get(this.editor.id+"_ifr");this.resizeTo(l.clientWidth+j,l.clientHeight+k)},resizeTo:function(j,n,l){var k=this.editor,m=this.settings,o=i.get(k.id+"_tbl"),p=i.get(k.id+"_ifr");j=Math.max(m.theme_advanced_resizing_min_width||100,j);n=Math.max(m.theme_advanced_resizing_min_height||100,n);j=Math.min(m.theme_advanced_resizing_max_width||65535,j);n=Math.min(m.theme_advanced_resizing_max_height||65535,n);i.setStyle(o,"height","");i.setStyle(p,"height",n);if(m.theme_advanced_resize_horizontal){i.setStyle(o,"width","");i.setStyle(p,"width",j);if(j<o.clientWidth){j=o.clientWidth;i.setStyle(p,"width",o.clientWidth)}}if(l&&m.theme_advanced_resizing_use_cookie){a.setHash("TinyMCE_"+k.id+"_size",{cw:j,ch:n})}},destroy:function(){var j=this.editor.id;g.clear(j+"_resize");g.clear(j+"_path_row");g.clear(j+"_external_close")},_simpleLayout:function(z,u,l,j){var y=this,v=y.editor,w=z.theme_advanced_toolbar_location,q=z.theme_advanced_statusbar_location,m,k,r,x;if(z.readonly){m=i.add(u,"tr");m=k=i.add(m,"td",{"class":"mceIframeContainer"});return k}if(w=="top"){y._addToolbars(u,l)}if(w=="external"){m=x=i.create("div",{style:"position:relative"});m=i.add(m,"div",{id:v.id+"_external","class":"mceExternalToolbar"});i.add(m,"a",{id:v.id+"_external_close",href:"javascript:;","class":"mceExternalClose"});m=i.add(m,"table",{id:v.id+"_tblext",cellSpacing:0,cellPadding:0});r=i.add(m,"tbody");if(j.firstChild.className=="mceOldBoxModel"){j.firstChild.appendChild(x)}else{j.insertBefore(x,j.firstChild)}y._addToolbars(r,l);v.onMouseUp.add(function(){var o=i.get(v.id+"_external");i.show(o);i.hide(e);var n=g.add(v.id+"_external_close","click",function(){i.hide(v.id+"_external");g.remove(v.id+"_external_close","click",n)});i.show(o);i.setStyle(o,"top",0-i.getRect(v.id+"_tblext").h-1);i.hide(o);i.show(o);o.style.filter="";e=v.id+"_external";o=null})}if(q=="top"){y._addStatusBar(u,l)}if(!z.theme_advanced_toolbar_container){m=i.add(u,"tr");m=k=i.add(m,"td",{"class":"mceIframeContainer"})}if(w=="bottom"){y._addToolbars(u,l)}if(q=="bottom"){y._addStatusBar(u,l)}return k},_rowLayout:function(x,p,l){var w=this,q=w.editor,v,y,j=q.controlManager,m,k,u,r;v=x.theme_advanced_containers_default_class||"";y=x.theme_advanced_containers_default_align||"center";f(d(x.theme_advanced_containers||""),function(s,o){var n=x["theme_advanced_container_"+s]||"";switch(s.toLowerCase()){case"mceeditor":m=i.add(p,"tr");m=k=i.add(m,"td",{"class":"mceIframeContainer"});break;case"mceelementpath":w._addStatusBar(p,l);break;default:r=(x["theme_advanced_container_"+s+"_align"]||y).toLowerCase();r="mce"+w._ufirst(r);m=i.add(i.add(p,"tr"),"td",{"class":"mceToolbar "+(x["theme_advanced_container_"+s+"_class"]||v)+" "+r||y});u=j.createToolbar("toolbar"+o);w._addControls(n,u);i.setHTML(m,u.renderHTML());l.deltaHeight-=x.theme_advanced_row_height}});return k},_addControls:function(k,j){var l=this,m=l.settings,n,o=l.editor.controlManager;if(m.theme_advanced_disable&&!l._disabled){n={};f(d(m.theme_advanced_disable),function(p){n[p]=1});l._disabled=n}else{n=l._disabled}f(d(k),function(q){var p;if(n&&n[q]){return}if(q=="tablecontrols"){f(["table","|","row_props","cell_props","|","row_before","row_after","delete_row","|","col_before","col_after","delete_col","|","split_cells","merge_cells"],function(r){r=l.createControl(r,o);if(r){j.add(r)}});return}p=l.createControl(q,o);if(p){j.add(p)}})},_addToolbars:function(y,k){var B=this,q,p,u=B.editor,C=B.settings,A,j=u.controlManager,w,l,r=[],z,x,m=false;x=j.createToolbarGroup("toolbargroup",{name:u.getLang("advanced.toolbar"),tab_focus_toolbar:u.getParam("theme_advanced_tab_focus_toolbar")});B.toolbarGroup=x;z=C.theme_advanced_toolbar_align.toLowerCase();z="mce"+B._ufirst(z);l=i.add(i.add(y,"tr",{role:"presentation"}),"td",{"class":"mceToolbar "+z,role:"presentation"});for(q=1;(A=C["theme_advanced_buttons"+q]);q++){m=true;p=j.createToolbar("toolbar"+q,{"class":"mceToolbarRow"+q});if(C["theme_advanced_buttons"+q+"_add"]){A+=","+C["theme_advanced_buttons"+q+"_add"]}if(C["theme_advanced_buttons"+q+"_add_before"]){A=C["theme_advanced_buttons"+q+"_add_before"]+","+A}B._addControls(A,p);x.add(p);k.deltaHeight-=C.theme_advanced_row_height}if(!m){k.deltaHeight-=C.theme_advanced_row_height}r.push(x.renderHTML());r.push(i.createHTML("a",{href:"#",accesskey:"z",title:u.getLang("advanced.toolbar_focus"),onfocus:"tinyMCE.getInstanceById('"+u.id+"').focus();"},"<!-- IE -->"));i.setHTML(l,r.join(""))},_addStatusBar:function(p,k){var l,w=this,q=w.editor,x=w.settings,j,u,v,m;l=i.add(p,"tr");l=m=i.add(l,"td",{"class":"mceStatusbar"});l=i.add(l,"div",{id:q.id+"_path_row",role:"group","aria-labelledby":q.id+"_path_voice"});if(x.theme_advanced_path){i.add(l,"span",{id:q.id+"_path_voice"},q.translate("advanced.path"));i.add(l,"span",{},": ")}else{i.add(l,"span",{},"&#160;")}if(x.theme_advanced_resizing){i.add(m,"a",{id:q.id+"_resize",href:"javascript:;",onclick:"return false;","class":"mceResize",tabIndex:"-1"});if(x.theme_advanced_resizing_use_cookie){q.onPostRender.add(function(){var n=a.getHash("TinyMCE_"+q.id+"_size"),r=i.get(q.id+"_tbl");if(!n){return}w.resizeTo(n.cw,n.ch)})}q.onPostRender.add(function(){g.add(q.id+"_resize","click",function(n){n.preventDefault()});g.add(q.id+"_resize","mousedown",function(E){var t,r,s,o,D,A,B,G,n,F,y;function z(H){H.preventDefault();n=B+(H.screenX-D);F=G+(H.screenY-A);w.resizeTo(n,F)}function C(H){g.remove(i.doc,"mousemove",t);g.remove(q.getDoc(),"mousemove",r);g.remove(i.doc,"mouseup",s);g.remove(q.getDoc(),"mouseup",o);n=B+(H.screenX-D);F=G+(H.screenY-A);w.resizeTo(n,F,true)}E.preventDefault();D=E.screenX;A=E.screenY;y=i.get(w.editor.id+"_ifr");B=n=y.clientWidth;G=F=y.clientHeight;t=g.add(i.doc,"mousemove",z);r=g.add(q.getDoc(),"mousemove",z);s=g.add(i.doc,"mouseup",C);o=g.add(q.getDoc(),"mouseup",C)})})}k.deltaHeight-=21;l=p=null},_updateUndoStatus:function(k){var j=k.controlManager,l=k.undoManager;j.setDisabled("undo",!l.hasUndo()&&!l.typing);j.setDisabled("redo",!l.hasRedo())},_nodeChanged:function(o,u,E,r,F){var z=this,D,G=0,y,H,A=z.settings,x,l,w,C,m,k,j;h.each(z.stateControls,function(n){u.setActive(n,o.queryCommandState(z.controls[n][1]))});function q(p){var s,n=F.parents,t=p;if(typeof(p)=="string"){t=function(v){return v.nodeName==p}}for(s=0;s<n.length;s++){if(t(n[s])){return n[s]}}}u.setActive("visualaid",o.hasVisual);z._updateUndoStatus(o);u.setDisabled("outdent",!o.queryCommandState("Outdent"));D=q("A");if(H=u.get("link")){H.setDisabled((!D&&r)||(D&&!D.href));H.setActive(!!D&&(!D.name&&!D.id))}if(H=u.get("unlink")){H.setDisabled(!D&&r);H.setActive(!!D&&!D.name&&!D.id)}if(H=u.get("anchor")){H.setActive(!r&&!!D&&(D.name||(D.id&&!D.href)))}D=q("IMG");if(H=u.get("image")){H.setActive(!r&&!!D&&E.className.indexOf("mceItem")==-1)}if(H=u.get("styleselect")){z._importClasses();k=[];f(H.items,function(n){k.push(n.value)});j=o.formatter.matchAll(k);H.select(j[0]);h.each(j,function(p,n){if(n>0){H.mark(p)}})}if(H=u.get("formatselect")){D=q(o.dom.isBlock);if(D){H.select(D.nodeName.toLowerCase())}}q(function(p){if(p.nodeName==="SPAN"){if(!x&&p.className){x=p.className}}if(o.dom.is(p,A.theme_advanced_font_selector)){if(!l&&p.style.fontSize){l=p.style.fontSize}if(!w&&p.style.fontFamily){w=p.style.fontFamily.replace(/[\"\']+/g,"").replace(/^([^,]+).*/,"$1").toLowerCase()}if(!C&&p.style.color){C=p.style.color}if(!m&&p.style.backgroundColor){m=p.style.backgroundColor}}return false});if(H=u.get("fontselect")){H.select(function(n){return n.replace(/^([^,]+).*/,"$1").toLowerCase()==w})}if(H=u.get("fontsizeselect")){if(A.theme_advanced_runtime_fontsize&&!l&&!x){l=o.dom.getStyle(E,"fontSize",true)}H.select(function(n){if(n.fontSize&&n.fontSize===l){return true}if(n["class"]&&n["class"]===x){return true}})}if(A.theme_advanced_show_current_color){function B(p,n){if(H=u.get(p)){if(!n){n=H.settings.default_color}if(n!==H.value){H.displayColor(n)}}}B("forecolor",C);B("backcolor",m)}if(A.theme_advanced_show_current_color){function B(p,n){if(H=u.get(p)){if(!n){n=H.settings.default_color}if(n!==H.value){H.displayColor(n)}}}B("forecolor",C);B("backcolor",m)}if(A.theme_advanced_path&&A.theme_advanced_statusbar_location){D=i.get(o.id+"_path")||i.add(o.id+"_path_row","span",{id:o.id+"_path"});if(z.statusKeyboardNavigation){z.statusKeyboardNavigation.destroy();z.statusKeyboardNavigation=null}i.setHTML(D,"");q(function(I){var p=I.nodeName.toLowerCase(),s,v,t="";if(I.nodeType!=1||p==="br"||I.getAttribute("data-mce-bogus")||i.hasClass(I,"mceItemHidden")||i.hasClass(I,"mceItemRemoved")){return}if(h.isIE&&I.scopeName!=="HTML"&&I.scopeName){p=I.scopeName+":"+p}p=p.replace(/mce\:/g,"");switch(p){case"b":p="strong";break;case"i":p="em";break;case"img":if(y=i.getAttrib(I,"src")){t+="src: "+y+" "}break;case"a":if(y=i.getAttrib(I,"name")){t+="name: "+y+" ";p+="#"+y}if(y=i.getAttrib(I,"href")){t+="href: "+y+" "}break;case"font":if(y=i.getAttrib(I,"face")){t+="font: "+y+" "}if(y=i.getAttrib(I,"size")){t+="size: "+y+" "}if(y=i.getAttrib(I,"color")){t+="color: "+y+" "}break;case"span":if(y=i.getAttrib(I,"style")){t+="style: "+y+" "}break}if(y=i.getAttrib(I,"id")){t+="id: "+y+" "}if(y=I.className){y=y.replace(/\b\s*(webkit|mce|Apple-)\w+\s*\b/g,"");if(y){t+="class: "+y+" ";if(o.dom.isBlock(I)||p=="img"||p=="span"){p+="."+y}}}p=p.replace(/(html:)/g,"");p={name:p,node:I,title:t};z.onResolveName.dispatch(z,p);t=p.title;p=p.name;v=i.create("a",{href:"javascript:;",role:"button",onmousedown:"return false;",title:t,"class":"mcePath_"+(G++)},p);if(D.hasChildNodes()){D.insertBefore(i.create("span",{"aria-hidden":"true"},"\u00a0\u00bb "),D.firstChild);D.insertBefore(v,D.firstChild)}else{D.appendChild(v)}},o.getBody());if(i.select("a",D).length>0){z.statusKeyboardNavigation=new h.ui.KeyboardNavigation({root:o.id+"_path_row",items:i.select("a",D),excludeFromTabOrder:true,onCancel:function(){o.focus()}},i)}}},_sel:function(j){this.editor.execCommand("mceSelectNodeDepth",false,j)},_mceInsertAnchor:function(l,k){var j=this.editor;j.windowManager.open({url:this.url+"/anchor.htm",width:320+parseInt(j.getLang("advanced.anchor_delta_width",0)),height:90+parseInt(j.getLang("advanced.anchor_delta_height",0)),inline:true},{theme_url:this.url})},_mceCharMap:function(){var j=this.editor;j.windowManager.open({url:this.url+"/charmap.htm",width:550+parseInt(j.getLang("advanced.charmap_delta_width",0)),height:265+parseInt(j.getLang("advanced.charmap_delta_height",0)),inline:true},{theme_url:this.url})},_mceHelp:function(){var j=this.editor;j.windowManager.open({url:this.url+"/about.htm",width:480,height:380,inline:true},{theme_url:this.url})},_mceShortcuts:function(){var j=this.editor;j.windowManager.open({url:this.url+"/shortcuts.htm",width:480,height:380,inline:true},{theme_url:this.url})},_mceColorPicker:function(l,k){var j=this.editor;k=k||{};j.windowManager.open({url:this.url+"/color_picker.htm",width:375+parseInt(j.getLang("advanced.colorpicker_delta_width",0)),height:250+parseInt(j.getLang("advanced.colorpicker_delta_height",0)),close_previous:false,inline:true},{input_color:k.color,func:k.func,theme_url:this.url})},_mceCodeEditor:function(k,l){var j=this.editor;j.windowManager.open({url:this.url+"/source_editor.htm",width:parseInt(j.getParam("theme_advanced_source_editor_width",720)),height:parseInt(j.getParam("theme_advanced_source_editor_height",580)),inline:true,resizable:true,maximizable:true},{theme_url:this.url})},_mceImage:function(k,l){var j=this.editor;if(j.dom.getAttrib(j.selection.getNode(),"class","").indexOf("mceItem")!=-1){return}j.windowManager.open({url:this.url+"/image.htm",width:355+parseInt(j.getLang("advanced.image_delta_width",0)),height:275+parseInt(j.getLang("advanced.image_delta_height",0)),inline:true},{theme_url:this.url})},_mceLink:function(k,l){var j=this.editor;j.windowManager.open({url:this.url+"/link.htm",width:310+parseInt(j.getLang("advanced.link_delta_width",0)),height:200+parseInt(j.getLang("advanced.link_delta_height",0)),inline:true},{theme_url:this.url})},_mceNewDocument:function(){var j=this.editor;j.windowManager.confirm("advanced.newdocument",function(k){if(k){j.execCommand("mceSetContent",false,"")}})},_mceForeColor:function(){var j=this;this._mceColorPicker(0,{color:j.fgColor,func:function(k){j.fgColor=k;j.editor.execCommand("ForeColor",false,k)}})},_mceBackColor:function(){var j=this;this._mceColorPicker(0,{color:j.bgColor,func:function(k){j.bgColor=k;j.editor.execCommand("HiliteColor",false,k)}})},_ufirst:function(j){return j.substring(0,1).toUpperCase()+j.substring(1)}});h.ThemeManager.add("advanced",h.themes.AdvancedTheme)}(tinymce)); \ No newline at end of file
+(function(h){var i=h.DOM,g=h.dom.Event,c=h.extend,f=h.each,a=h.util.Cookie,e,d=h.explode;function b(p,m){var k,l,o=p.dom,j="",n,r;previewStyles=p.settings.preview_styles;if(previewStyles===false){return""}if(!previewStyles){previewStyles="font-family font-size font-weight text-decoration text-transform color background-color"}function q(s){return s.replace(/%(\w+)/g,"")}k=m.block||m.inline||"span";l=o.create(k);f(m.styles,function(t,s){t=q(t);if(t){o.setStyle(l,s,t)}});f(m.attributes,function(t,s){t=q(t);if(t){o.setAttrib(l,s,t)}});f(m.classes,function(s){s=q(s);if(!o.hasClass(l,s)){o.addClass(l,s)}});o.setStyles(l,{position:"absolute",left:-65535});p.getBody().appendChild(l);n=o.getStyle(p.getBody(),"fontSize",true);n=/px$/.test(n)?parseInt(n,10):0;f(previewStyles.split(" "),function(s){var t=o.getStyle(l,s,true);if(s=="background-color"&&/transparent|rgba\s*\([^)]+,\s*0\)/.test(t)){t=o.getStyle(p.getBody(),s,true);if(o.toHex(t).toLowerCase()=="#ffffff"){return}}if(s=="font-size"){if(/em|%$/.test(t)){if(n===0){return}t=parseFloat(t,10)/(/%$/.test(t)?100:1);t=(t*n)+"px"}}j+=s+":"+t+";"});o.remove(l);return j}h.ThemeManager.requireLangPack("advanced");h.create("tinymce.themes.AdvancedTheme",{sizes:[8,10,12,14,18,24,36],controls:{bold:["bold_desc","Bold"],italic:["italic_desc","Italic"],underline:["underline_desc","Underline"],strikethrough:["striketrough_desc","Strikethrough"],justifyleft:["justifyleft_desc","JustifyLeft"],justifycenter:["justifycenter_desc","JustifyCenter"],justifyright:["justifyright_desc","JustifyRight"],justifyfull:["justifyfull_desc","JustifyFull"],bullist:["bullist_desc","InsertUnorderedList"],numlist:["numlist_desc","InsertOrderedList"],outdent:["outdent_desc","Outdent"],indent:["indent_desc","Indent"],cut:["cut_desc","Cut"],copy:["copy_desc","Copy"],paste:["paste_desc","Paste"],undo:["undo_desc","Undo"],redo:["redo_desc","Redo"],link:["link_desc","mceLink"],unlink:["unlink_desc","unlink"],image:["image_desc","mceImage"],cleanup:["cleanup_desc","mceCleanup"],help:["help_desc","mceHelp"],code:["code_desc","mceCodeEditor"],hr:["hr_desc","InsertHorizontalRule"],removeformat:["removeformat_desc","RemoveFormat"],sub:["sub_desc","subscript"],sup:["sup_desc","superscript"],forecolor:["forecolor_desc","ForeColor"],forecolorpicker:["forecolor_desc","mceForeColor"],backcolor:["backcolor_desc","HiliteColor"],backcolorpicker:["backcolor_desc","mceBackColor"],charmap:["charmap_desc","mceCharMap"],visualaid:["visualaid_desc","mceToggleVisualAid"],anchor:["anchor_desc","mceInsertAnchor"],newdocument:["newdocument_desc","mceNewDocument"],blockquote:["blockquote_desc","mceBlockQuote"]},stateControls:["bold","italic","underline","strikethrough","bullist","numlist","justifyleft","justifycenter","justifyright","justifyfull","sub","sup","blockquote"],init:function(k,l){var m=this,n,j,p;m.editor=k;m.url=l;m.onResolveName=new h.util.Dispatcher(this);n=k.settings;k.forcedHighContrastMode=k.settings.detect_highcontrast&&m._isHighContrast();k.settings.skin=k.forcedHighContrastMode?"highcontrast":k.settings.skin;if(!n.theme_advanced_buttons1){n=c({theme_advanced_buttons1:"bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,styleselect,formatselect",theme_advanced_buttons2:"bullist,numlist,|,outdent,indent,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code",theme_advanced_buttons3:"hr,removeformat,visualaid,|,sub,sup,|,charmap"},n)}m.settings=n=c({theme_advanced_path:true,theme_advanced_toolbar_location:"top",theme_advanced_blockformats:"p,address,pre,h1,h2,h3,h4,h5,h6",theme_advanced_toolbar_align:"left",theme_advanced_statusbar_location:"bottom",theme_advanced_fonts:"Andale Mono=andale mono,times;Arial=arial,helvetica,sans-serif;Arial Black=arial black,avant garde;Book Antiqua=book antiqua,palatino;Comic Sans MS=comic sans ms,sans-serif;Courier New=courier new,courier;Georgia=georgia,palatino;Helvetica=helvetica;Impact=impact,chicago;Symbol=symbol;Tahoma=tahoma,arial,helvetica,sans-serif;Terminal=terminal,monaco;Times New Roman=times new roman,times;Trebuchet MS=trebuchet ms,geneva;Verdana=verdana,geneva;Webdings=webdings;Wingdings=wingdings,zapf dingbats",theme_advanced_more_colors:1,theme_advanced_row_height:23,theme_advanced_resize_horizontal:1,theme_advanced_resizing_use_cookie:1,theme_advanced_font_sizes:"1,2,3,4,5,6,7",theme_advanced_font_selector:"span",theme_advanced_show_current_color:0,readonly:k.settings.readonly},n);if(!n.font_size_style_values){n.font_size_style_values="8pt,10pt,12pt,14pt,18pt,24pt,36pt"}if(h.is(n.theme_advanced_font_sizes,"string")){n.font_size_style_values=h.explode(n.font_size_style_values);n.font_size_classes=h.explode(n.font_size_classes||"");p={};k.settings.theme_advanced_font_sizes=n.theme_advanced_font_sizes;f(k.getParam("theme_advanced_font_sizes","","hash"),function(r,q){var o;if(q==r&&r>=1&&r<=7){q=r+" ("+m.sizes[r-1]+"pt)";o=n.font_size_classes[r-1];r=n.font_size_style_values[r-1]||(m.sizes[r-1]+"pt")}if(/^\s*\./.test(r)){o=r.replace(/\./g,"")}p[q]=o?{"class":o}:{fontSize:r}});n.theme_advanced_font_sizes=p}if((j=n.theme_advanced_path_location)&&j!="none"){n.theme_advanced_statusbar_location=n.theme_advanced_path_location}if(n.theme_advanced_statusbar_location=="none"){n.theme_advanced_statusbar_location=0}if(k.settings.content_css!==false){k.contentCSS.push(k.baseURI.toAbsolute(l+"/skins/"+k.settings.skin+"/content.css"))}k.onInit.add(function(){if(!k.settings.readonly){k.onNodeChange.add(m._nodeChanged,m);k.onKeyUp.add(m._updateUndoStatus,m);k.onMouseUp.add(m._updateUndoStatus,m);k.dom.bind(k.dom.getRoot(),"dragend",function(){m._updateUndoStatus(k)})}});k.onSetProgressState.add(function(r,o,s){var t,u=r.id,q;if(o){m.progressTimer=setTimeout(function(){t=r.getContainer();t=t.insertBefore(i.create("DIV",{style:"position:relative"}),t.firstChild);q=i.get(r.id+"_tbl");i.add(t,"div",{id:u+"_blocker","class":"mceBlocker",style:{width:q.clientWidth+2,height:q.clientHeight+2}});i.add(t,"div",{id:u+"_progress","class":"mceProgress",style:{left:q.clientWidth/2,top:q.clientHeight/2}})},s||0)}else{i.remove(u+"_blocker");i.remove(u+"_progress");clearTimeout(m.progressTimer)}});i.loadCSS(n.editor_css?k.documentBaseURI.toAbsolute(n.editor_css):l+"/skins/"+k.settings.skin+"/ui.css");if(n.skin_variant){i.loadCSS(l+"/skins/"+k.settings.skin+"/ui_"+n.skin_variant+".css")}},_isHighContrast:function(){var j,k=i.add(i.getRoot(),"div",{style:"background-color: rgb(171,239,86);"});j=(i.getStyle(k,"background-color",true)+"").toLowerCase().replace(/ /g,"");i.remove(k);return j!="rgb(171,239,86)"&&j!="#abef56"},createControl:function(m,j){var k,l;if(l=j.createControl(m)){return l}switch(m){case"styleselect":return this._createStyleSelect();case"formatselect":return this._createBlockFormats();case"fontselect":return this._createFontSelect();case"fontsizeselect":return this._createFontSizeSelect();case"forecolor":return this._createForeColorMenu();case"backcolor":return this._createBackColorMenu()}if((k=this.controls[m])){return j.createButton(m,{title:"advanced."+k[0],cmd:k[1],ui:k[2],value:k[3]})}},execCommand:function(l,k,m){var j=this["_"+l];if(j){j.call(this,k,m);return true}return false},_importClasses:function(l){var j=this.editor,k=j.controlManager.get("styleselect");if(k.getLength()==0){f(j.dom.getClasses(),function(q,m){var p="style_"+m,n;n={inline:"span",attributes:{"class":q["class"]},selector:"*"};j.formatter.register(p,n);k.add(q["class"],p,{style:function(){return b(j,n)}})})}},_createStyleSelect:function(o){var l=this,j=l.editor,k=j.controlManager,m;m=k.createListBox("styleselect",{title:"advanced.style_select",onselect:function(q){var r,n=[],p;f(m.items,function(s){n.push(s.value)});j.focus();j.undoManager.add();r=j.formatter.matchAll(n);h.each(r,function(s){if(!q||s==q){if(s){j.formatter.remove(s)}p=true}});if(!p){j.formatter.apply(q)}j.undoManager.add();j.nodeChanged();return false}});j.onPreInit.add(function(){var p=0,n=j.getParam("style_formats");if(n){f(n,function(q){var r,s=0;f(q,function(){s++});if(s>1){r=q.name=q.name||"style_"+(p++);j.formatter.register(r,q);m.add(q.title,r,{style:function(){return b(j,q)}})}else{m.add(q.title)}})}else{f(j.getParam("theme_advanced_styles","","hash"),function(t,s){var r,q;if(t){r="style_"+(p++);q={inline:"span",classes:t,selector:"*"};j.formatter.register(r,q);m.add(l.editor.translate(s),r,{style:function(){return b(j,q)}})}})}});if(m.getLength()==0){m.onPostRender.add(function(p,q){if(!m.NativeListBox){g.add(q.id+"_text","focus",l._importClasses,l);g.add(q.id+"_text","mousedown",l._importClasses,l);g.add(q.id+"_open","focus",l._importClasses,l);g.add(q.id+"_open","mousedown",l._importClasses,l)}else{g.add(q.id,"focus",l._importClasses,l)}})}return m},_createFontSelect:function(){var l,k=this,j=k.editor;l=j.controlManager.createListBox("fontselect",{title:"advanced.fontdefault",onselect:function(m){var n=l.items[l.selectedIndex];if(!m&&n){j.execCommand("FontName",false,n.value);return}j.execCommand("FontName",false,m);l.select(function(o){return m==o});if(n&&n.value==m){l.select(null)}return false}});if(l){f(j.getParam("theme_advanced_fonts",k.settings.theme_advanced_fonts,"hash"),function(n,m){l.add(j.translate(m),n,{style:n.indexOf("dings")==-1?"font-family:"+n:""})})}return l},_createFontSizeSelect:function(){var m=this,k=m.editor,n,l=0,j=[];n=k.controlManager.createListBox("fontsizeselect",{title:"advanced.font_size",onselect:function(o){var p=n.items[n.selectedIndex];if(!o&&p){p=p.value;if(p["class"]){k.formatter.toggle("fontsize_class",{value:p["class"]});k.undoManager.add();k.nodeChanged()}else{k.execCommand("FontSize",false,p.fontSize)}return}if(o["class"]){k.focus();k.undoManager.add();k.formatter.toggle("fontsize_class",{value:o["class"]});k.undoManager.add();k.nodeChanged()}else{k.execCommand("FontSize",false,o.fontSize)}n.select(function(q){return o==q});if(p&&(p.value.fontSize==o.fontSize||p.value["class"]&&p.value["class"]==o["class"])){n.select(null)}return false}});if(n){f(m.settings.theme_advanced_font_sizes,function(p,o){var q=p.fontSize;if(q>=1&&q<=7){q=m.sizes[parseInt(q)-1]+"pt"}n.add(o,p,{style:"font-size:"+q,"class":"mceFontSize"+(l++)+(" "+(p["class"]||""))})})}return n},_createBlockFormats:function(){var l,j={p:"advanced.paragraph",address:"advanced.address",pre:"advanced.pre",h1:"advanced.h1",h2:"advanced.h2",h3:"advanced.h3",h4:"advanced.h4",h5:"advanced.h5",h6:"advanced.h6",div:"advanced.div",blockquote:"advanced.blockquote",code:"advanced.code",dt:"advanced.dt",dd:"advanced.dd",samp:"advanced.samp"},k=this;l=k.editor.controlManager.createListBox("formatselect",{title:"advanced.block",onselect:function(m){k.editor.execCommand("FormatBlock",false,m);return false}});if(l){f(k.editor.getParam("theme_advanced_blockformats",k.settings.theme_advanced_blockformats,"hash"),function(n,m){l.add(k.editor.translate(m!=n?m:j[n]),n,{"class":"mce_formatPreview mce_"+n,style:function(){return b(k.editor,{block:n})}})})}return l},_createForeColorMenu:function(){var n,k=this,l=k.settings,m={},j;if(l.theme_advanced_more_colors){m.more_colors_func=function(){k._mceColorPicker(0,{color:n.value,func:function(o){n.setColor(o)}})}}if(j=l.theme_advanced_text_colors){m.colors=j}if(l.theme_advanced_default_foreground_color){m.default_color=l.theme_advanced_default_foreground_color}m.title="advanced.forecolor_desc";m.cmd="ForeColor";m.scope=this;n=k.editor.controlManager.createColorSplitButton("forecolor",m);return n},_createBackColorMenu:function(){var n,k=this,l=k.settings,m={},j;if(l.theme_advanced_more_colors){m.more_colors_func=function(){k._mceColorPicker(0,{color:n.value,func:function(o){n.setColor(o)}})}}if(j=l.theme_advanced_background_colors){m.colors=j}if(l.theme_advanced_default_background_color){m.default_color=l.theme_advanced_default_background_color}m.title="advanced.backcolor_desc";m.cmd="HiliteColor";m.scope=this;n=k.editor.controlManager.createColorSplitButton("backcolor",m);return n},renderUI:function(l){var q,m,r,w=this,u=w.editor,x=w.settings,v,k,j;if(u.settings){u.settings.aria_label=x.aria_label+u.getLang("advanced.help_shortcut")}q=k=i.create("span",{role:"application","aria-labelledby":u.id+"_voice",id:u.id+"_parent","class":"mceEditor "+u.settings.skin+"Skin"+(x.skin_variant?" "+u.settings.skin+"Skin"+w._ufirst(x.skin_variant):"")+(u.settings.directionality=="rtl"?" mceRtl":"")});i.add(q,"span",{"class":"mceVoiceLabel",style:"display:none;",id:u.id+"_voice"},x.aria_label);if(!i.boxModel){q=i.add(q,"div",{"class":"mceOldBoxModel"})}q=v=i.add(q,"table",{role:"presentation",id:u.id+"_tbl","class":"mceLayout",cellSpacing:0,cellPadding:0});q=r=i.add(q,"tbody");switch((x.theme_advanced_layout_manager||"").toLowerCase()){case"rowlayout":m=w._rowLayout(x,r,l);break;case"customlayout":m=u.execCallback("theme_advanced_custom_layout",x,r,l,k);break;default:m=w._simpleLayout(x,r,l,k)}q=l.targetNode;j=v.rows;i.addClass(j[0],"mceFirst");i.addClass(j[j.length-1],"mceLast");f(i.select("tr",r),function(o){i.addClass(o.firstChild,"mceFirst");i.addClass(o.childNodes[o.childNodes.length-1],"mceLast")});if(i.get(x.theme_advanced_toolbar_container)){i.get(x.theme_advanced_toolbar_container).appendChild(k)}else{i.insertAfter(k,q)}g.add(u.id+"_path_row","click",function(n){n=n.target;if(n.nodeName=="A"){w._sel(n.className.replace(/^.*mcePath_([0-9]+).*$/,"$1"));return false}});if(!u.getParam("accessibility_focus")){g.add(i.add(k,"a",{href:"#"},"<!-- IE -->"),"focus",function(){tinyMCE.get(u.id).focus()})}if(x.theme_advanced_toolbar_location=="external"){l.deltaHeight=0}w.deltaHeight=l.deltaHeight;l.targetNode=null;u.onKeyDown.add(function(p,n){var s=121,o=122;if(n.altKey){if(n.keyCode===s){if(h.isWebKit){window.focus()}w.toolbarGroup.focus();return g.cancel(n)}else{if(n.keyCode===o){i.get(p.id+"_path_row").focus();return g.cancel(n)}}}});u.addShortcut("alt+0","","mceShortcuts",w);return{iframeContainer:m,editorContainer:u.id+"_parent",sizeContainer:v,deltaHeight:l.deltaHeight}},getInfo:function(){return{longname:"Advanced theme",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",version:h.majorVersion+"."+h.minorVersion}},resizeBy:function(j,k){var l=i.get(this.editor.id+"_ifr");this.resizeTo(l.clientWidth+j,l.clientHeight+k)},resizeTo:function(j,n,l){var k=this.editor,m=this.settings,o=i.get(k.id+"_tbl"),p=i.get(k.id+"_ifr");j=Math.max(m.theme_advanced_resizing_min_width||100,j);n=Math.max(m.theme_advanced_resizing_min_height||100,n);j=Math.min(m.theme_advanced_resizing_max_width||65535,j);n=Math.min(m.theme_advanced_resizing_max_height||65535,n);i.setStyle(o,"height","");i.setStyle(p,"height",n);if(m.theme_advanced_resize_horizontal){i.setStyle(o,"width","");i.setStyle(p,"width",j);if(j<o.clientWidth){j=o.clientWidth;i.setStyle(p,"width",o.clientWidth)}}if(l&&m.theme_advanced_resizing_use_cookie){a.setHash("TinyMCE_"+k.id+"_size",{cw:j,ch:n})}},destroy:function(){var j=this.editor.id;g.clear(j+"_resize");g.clear(j+"_path_row");g.clear(j+"_external_close")},_simpleLayout:function(z,u,l,j){var y=this,v=y.editor,w=z.theme_advanced_toolbar_location,q=z.theme_advanced_statusbar_location,m,k,r,x;if(z.readonly){m=i.add(u,"tr");m=k=i.add(m,"td",{"class":"mceIframeContainer"});return k}if(w=="top"){y._addToolbars(u,l)}if(w=="external"){m=x=i.create("div",{style:"position:relative"});m=i.add(m,"div",{id:v.id+"_external","class":"mceExternalToolbar"});i.add(m,"a",{id:v.id+"_external_close",href:"javascript:;","class":"mceExternalClose"});m=i.add(m,"table",{id:v.id+"_tblext",cellSpacing:0,cellPadding:0});r=i.add(m,"tbody");if(j.firstChild.className=="mceOldBoxModel"){j.firstChild.appendChild(x)}else{j.insertBefore(x,j.firstChild)}y._addToolbars(r,l);v.onMouseUp.add(function(){var o=i.get(v.id+"_external");i.show(o);i.hide(e);var n=g.add(v.id+"_external_close","click",function(){i.hide(v.id+"_external");g.remove(v.id+"_external_close","click",n);return false});i.show(o);i.setStyle(o,"top",0-i.getRect(v.id+"_tblext").h-1);i.hide(o);i.show(o);o.style.filter="";e=v.id+"_external";o=null})}if(q=="top"){y._addStatusBar(u,l)}if(!z.theme_advanced_toolbar_container){m=i.add(u,"tr");m=k=i.add(m,"td",{"class":"mceIframeContainer"})}if(w=="bottom"){y._addToolbars(u,l)}if(q=="bottom"){y._addStatusBar(u,l)}return k},_rowLayout:function(x,p,l){var w=this,q=w.editor,v,y,j=q.controlManager,m,k,u,r;v=x.theme_advanced_containers_default_class||"";y=x.theme_advanced_containers_default_align||"center";f(d(x.theme_advanced_containers||""),function(s,o){var n=x["theme_advanced_container_"+s]||"";switch(s.toLowerCase()){case"mceeditor":m=i.add(p,"tr");m=k=i.add(m,"td",{"class":"mceIframeContainer"});break;case"mceelementpath":w._addStatusBar(p,l);break;default:r=(x["theme_advanced_container_"+s+"_align"]||y).toLowerCase();r="mce"+w._ufirst(r);m=i.add(i.add(p,"tr"),"td",{"class":"mceToolbar "+(x["theme_advanced_container_"+s+"_class"]||v)+" "+r||y});u=j.createToolbar("toolbar"+o);w._addControls(n,u);i.setHTML(m,u.renderHTML());l.deltaHeight-=x.theme_advanced_row_height}});return k},_addControls:function(k,j){var l=this,m=l.settings,n,o=l.editor.controlManager;if(m.theme_advanced_disable&&!l._disabled){n={};f(d(m.theme_advanced_disable),function(p){n[p]=1});l._disabled=n}else{n=l._disabled}f(d(k),function(q){var p;if(n&&n[q]){return}if(q=="tablecontrols"){f(["table","|","row_props","cell_props","|","row_before","row_after","delete_row","|","col_before","col_after","delete_col","|","split_cells","merge_cells"],function(r){r=l.createControl(r,o);if(r){j.add(r)}});return}p=l.createControl(q,o);if(p){j.add(p)}})},_addToolbars:function(y,k){var B=this,q,p,u=B.editor,C=B.settings,A,j=u.controlManager,w,l,r=[],z,x,m=false;x=j.createToolbarGroup("toolbargroup",{name:u.getLang("advanced.toolbar"),tab_focus_toolbar:u.getParam("theme_advanced_tab_focus_toolbar")});B.toolbarGroup=x;z=C.theme_advanced_toolbar_align.toLowerCase();z="mce"+B._ufirst(z);l=i.add(i.add(y,"tr",{role:"presentation"}),"td",{"class":"mceToolbar "+z,role:"presentation"});for(q=1;(A=C["theme_advanced_buttons"+q]);q++){m=true;p=j.createToolbar("toolbar"+q,{"class":"mceToolbarRow"+q});if(C["theme_advanced_buttons"+q+"_add"]){A+=","+C["theme_advanced_buttons"+q+"_add"]}if(C["theme_advanced_buttons"+q+"_add_before"]){A=C["theme_advanced_buttons"+q+"_add_before"]+","+A}B._addControls(A,p);x.add(p);k.deltaHeight-=C.theme_advanced_row_height}if(!m){k.deltaHeight-=C.theme_advanced_row_height}r.push(x.renderHTML());r.push(i.createHTML("a",{href:"#",accesskey:"z",title:u.getLang("advanced.toolbar_focus"),onfocus:"tinyMCE.getInstanceById('"+u.id+"').focus();"},"<!-- IE -->"));i.setHTML(l,r.join(""))},_addStatusBar:function(p,k){var l,w=this,q=w.editor,x=w.settings,j,u,v,m;l=i.add(p,"tr");l=m=i.add(l,"td",{"class":"mceStatusbar"});l=i.add(l,"div",{id:q.id+"_path_row",role:"group","aria-labelledby":q.id+"_path_voice"});if(x.theme_advanced_path){i.add(l,"span",{id:q.id+"_path_voice"},q.translate("advanced.path"));i.add(l,"span",{},": ")}else{i.add(l,"span",{},"&#160;")}if(x.theme_advanced_resizing){i.add(m,"a",{id:q.id+"_resize",href:"javascript:;",onclick:"return false;","class":"mceResize",tabIndex:"-1"});if(x.theme_advanced_resizing_use_cookie){q.onPostRender.add(function(){var n=a.getHash("TinyMCE_"+q.id+"_size"),r=i.get(q.id+"_tbl");if(!n){return}w.resizeTo(n.cw,n.ch)})}q.onPostRender.add(function(){g.add(q.id+"_resize","click",function(n){n.preventDefault()});g.add(q.id+"_resize","mousedown",function(E){var t,r,s,o,D,A,B,G,n,F,y;function z(H){H.preventDefault();n=B+(H.screenX-D);F=G+(H.screenY-A);w.resizeTo(n,F)}function C(H){g.remove(i.doc,"mousemove",t);g.remove(q.getDoc(),"mousemove",r);g.remove(i.doc,"mouseup",s);g.remove(q.getDoc(),"mouseup",o);n=B+(H.screenX-D);F=G+(H.screenY-A);w.resizeTo(n,F,true);q.nodeChanged()}E.preventDefault();D=E.screenX;A=E.screenY;y=i.get(w.editor.id+"_ifr");B=n=y.clientWidth;G=F=y.clientHeight;t=g.add(i.doc,"mousemove",z);r=g.add(q.getDoc(),"mousemove",z);s=g.add(i.doc,"mouseup",C);o=g.add(q.getDoc(),"mouseup",C)})})}k.deltaHeight-=21;l=p=null},_updateUndoStatus:function(k){var j=k.controlManager,l=k.undoManager;j.setDisabled("undo",!l.hasUndo()&&!l.typing);j.setDisabled("redo",!l.hasRedo())},_nodeChanged:function(o,u,E,r,F){var z=this,D,G=0,y,H,A=z.settings,x,l,w,C,m,k,j;h.each(z.stateControls,function(n){u.setActive(n,o.queryCommandState(z.controls[n][1]))});function q(p){var s,n=F.parents,t=p;if(typeof(p)=="string"){t=function(v){return v.nodeName==p}}for(s=0;s<n.length;s++){if(t(n[s])){return n[s]}}}u.setActive("visualaid",o.hasVisual);z._updateUndoStatus(o);u.setDisabled("outdent",!o.queryCommandState("Outdent"));D=q("A");if(H=u.get("link")){H.setDisabled((!D&&r)||(D&&!D.href));H.setActive(!!D&&(!D.name&&!D.id))}if(H=u.get("unlink")){H.setDisabled(!D&&r);H.setActive(!!D&&!D.name&&!D.id)}if(H=u.get("anchor")){H.setActive(!r&&!!D&&(D.name||(D.id&&!D.href)))}D=q("IMG");if(H=u.get("image")){H.setActive(!r&&!!D&&E.className.indexOf("mceItem")==-1)}if(H=u.get("styleselect")){z._importClasses();k=[];f(H.items,function(n){k.push(n.value)});j=o.formatter.matchAll(k);H.select(j[0]);h.each(j,function(p,n){if(n>0){H.mark(p)}})}if(H=u.get("formatselect")){D=q(o.dom.isBlock);if(D){H.select(D.nodeName.toLowerCase())}}q(function(p){if(p.nodeName==="SPAN"){if(!x&&p.className){x=p.className}}if(o.dom.is(p,A.theme_advanced_font_selector)){if(!l&&p.style.fontSize){l=p.style.fontSize}if(!w&&p.style.fontFamily){w=p.style.fontFamily.replace(/[\"\']+/g,"").replace(/^([^,]+).*/,"$1").toLowerCase()}if(!C&&p.style.color){C=p.style.color}if(!m&&p.style.backgroundColor){m=p.style.backgroundColor}}return false});if(H=u.get("fontselect")){H.select(function(n){return n.replace(/^([^,]+).*/,"$1").toLowerCase()==w})}if(H=u.get("fontsizeselect")){if(A.theme_advanced_runtime_fontsize&&!l&&!x){l=o.dom.getStyle(E,"fontSize",true)}H.select(function(n){if(n.fontSize&&n.fontSize===l){return true}if(n["class"]&&n["class"]===x){return true}})}if(A.theme_advanced_show_current_color){function B(p,n){if(H=u.get(p)){if(!n){n=H.settings.default_color}if(n!==H.value){H.displayColor(n)}}}B("forecolor",C);B("backcolor",m)}if(A.theme_advanced_show_current_color){function B(p,n){if(H=u.get(p)){if(!n){n=H.settings.default_color}if(n!==H.value){H.displayColor(n)}}}B("forecolor",C);B("backcolor",m)}if(A.theme_advanced_path&&A.theme_advanced_statusbar_location){D=i.get(o.id+"_path")||i.add(o.id+"_path_row","span",{id:o.id+"_path"});if(z.statusKeyboardNavigation){z.statusKeyboardNavigation.destroy();z.statusKeyboardNavigation=null}i.setHTML(D,"");q(function(I){var p=I.nodeName.toLowerCase(),s,v,t="";if(I.nodeType!=1||p==="br"||I.getAttribute("data-mce-bogus")||i.hasClass(I,"mceItemHidden")||i.hasClass(I,"mceItemRemoved")){return}if(h.isIE&&I.scopeName!=="HTML"&&I.scopeName){p=I.scopeName+":"+p}p=p.replace(/mce\:/g,"");switch(p){case"b":p="strong";break;case"i":p="em";break;case"img":if(y=i.getAttrib(I,"src")){t+="src: "+y+" "}break;case"a":if(y=i.getAttrib(I,"name")){t+="name: "+y+" ";p+="#"+y}if(y=i.getAttrib(I,"href")){t+="href: "+y+" "}break;case"font":if(y=i.getAttrib(I,"face")){t+="font: "+y+" "}if(y=i.getAttrib(I,"size")){t+="size: "+y+" "}if(y=i.getAttrib(I,"color")){t+="color: "+y+" "}break;case"span":if(y=i.getAttrib(I,"style")){t+="style: "+y+" "}break}if(y=i.getAttrib(I,"id")){t+="id: "+y+" "}if(y=I.className){y=y.replace(/\b\s*(webkit|mce|Apple-)\w+\s*\b/g,"");if(y){t+="class: "+y+" ";if(o.dom.isBlock(I)||p=="img"||p=="span"){p+="."+y}}}p=p.replace(/(html:)/g,"");p={name:p,node:I,title:t};z.onResolveName.dispatch(z,p);t=p.title;p=p.name;v=i.create("a",{href:"javascript:;",role:"button",onmousedown:"return false;",title:t,"class":"mcePath_"+(G++)},p);if(D.hasChildNodes()){D.insertBefore(i.create("span",{"aria-hidden":"true"},"\u00a0\u00bb "),D.firstChild);D.insertBefore(v,D.firstChild)}else{D.appendChild(v)}},o.getBody());if(i.select("a",D).length>0){z.statusKeyboardNavigation=new h.ui.KeyboardNavigation({root:o.id+"_path_row",items:i.select("a",D),excludeFromTabOrder:true,onCancel:function(){o.focus()}},i)}}},_sel:function(j){this.editor.execCommand("mceSelectNodeDepth",false,j)},_mceInsertAnchor:function(l,k){var j=this.editor;j.windowManager.open({url:this.url+"/anchor.htm",width:320+parseInt(j.getLang("advanced.anchor_delta_width",0)),height:90+parseInt(j.getLang("advanced.anchor_delta_height",0)),inline:true},{theme_url:this.url})},_mceCharMap:function(){var j=this.editor;j.windowManager.open({url:this.url+"/charmap.htm",width:550+parseInt(j.getLang("advanced.charmap_delta_width",0)),height:265+parseInt(j.getLang("advanced.charmap_delta_height",0)),inline:true},{theme_url:this.url})},_mceHelp:function(){var j=this.editor;j.windowManager.open({url:this.url+"/about.htm",width:480,height:380,inline:true},{theme_url:this.url})},_mceShortcuts:function(){var j=this.editor;j.windowManager.open({url:this.url+"/shortcuts.htm",width:480,height:380,inline:true},{theme_url:this.url})},_mceColorPicker:function(l,k){var j=this.editor;k=k||{};j.windowManager.open({url:this.url+"/color_picker.htm",width:375+parseInt(j.getLang("advanced.colorpicker_delta_width",0)),height:250+parseInt(j.getLang("advanced.colorpicker_delta_height",0)),close_previous:false,inline:true},{input_color:k.color,func:k.func,theme_url:this.url})},_mceCodeEditor:function(k,l){var j=this.editor;j.windowManager.open({url:this.url+"/source_editor.htm",width:parseInt(j.getParam("theme_advanced_source_editor_width",720)),height:parseInt(j.getParam("theme_advanced_source_editor_height",580)),inline:true,resizable:true,maximizable:true},{theme_url:this.url})},_mceImage:function(k,l){var j=this.editor;if(j.dom.getAttrib(j.selection.getNode(),"class","").indexOf("mceItem")!=-1){return}j.windowManager.open({url:this.url+"/image.htm",width:355+parseInt(j.getLang("advanced.image_delta_width",0)),height:275+parseInt(j.getLang("advanced.image_delta_height",0)),inline:true},{theme_url:this.url})},_mceLink:function(k,l){var j=this.editor;j.windowManager.open({url:this.url+"/link.htm",width:310+parseInt(j.getLang("advanced.link_delta_width",0)),height:200+parseInt(j.getLang("advanced.link_delta_height",0)),inline:true},{theme_url:this.url})},_mceNewDocument:function(){var j=this.editor;j.windowManager.confirm("advanced.newdocument",function(k){if(k){j.execCommand("mceSetContent",false,"")}})},_mceForeColor:function(){var j=this;this._mceColorPicker(0,{color:j.fgColor,func:function(k){j.fgColor=k;j.editor.execCommand("ForeColor",false,k)}})},_mceBackColor:function(){var j=this;this._mceColorPicker(0,{color:j.bgColor,func:function(k){j.bgColor=k;j.editor.execCommand("HiliteColor",false,k)}})},_ufirst:function(j){return j.substring(0,1).toUpperCase()+j.substring(1)}});h.ThemeManager.add("advanced",h.themes.AdvancedTheme)}(tinymce)); \ No newline at end of file
diff --git a/program/js/tiny_mce/themes/advanced/editor_template_src.js b/program/js/tiny_mce/themes/advanced/editor_template_src.js
index 28ba9828f..afd722d13 100644
--- a/program/js/tiny_mce/themes/advanced/editor_template_src.js
+++ b/program/js/tiny_mce/themes/advanced/editor_template_src.js
@@ -13,7 +13,7 @@
// Generates a preview for a format
function getPreviewCss(ed, fmt) {
- var previewElm, dom = ed.dom, previewCss = '', parentFontSize, previewStylesName;
+ var name, previewElm, dom = ed.dom, previewCss = '', parentFontSize, previewStylesName;
previewStyles = ed.settings.preview_styles;
@@ -831,6 +831,7 @@
var f = Event.add(ed.id + '_external_close', 'click', function() {
DOM.hide(ed.id + '_external');
Event.remove(ed.id + '_external_close', 'click', f);
+ return false;
});
DOM.show(e);
@@ -1038,6 +1039,8 @@
width = startWidth + (e.screenX - startX);
height = startHeight + (e.screenY - startY);
t.resizeTo(width, height, true);
+
+ ed.nodeChanged();
};
e.preventDefault();
@@ -1286,7 +1289,7 @@
ti += 'id: ' + v + ' ';
if (v = n.className) {
- v = v.replace(/\b\s*(webkit|mce|Apple-)\w+\s*\b/g, '')
+ v = v.replace(/\b\s*(webkit|mce|Apple-)\w+\s*\b/g, '');
if (v) {
ti += 'class: ' + v + ' ';
diff --git a/program/js/tiny_mce/themes/advanced/langs/he_dlg.js b/program/js/tiny_mce/themes/advanced/langs/he_dlg.js
index 7e84600f3..c27a31a22 100644
--- a/program/js/tiny_mce/themes/advanced/langs/he_dlg.js
+++ b/program/js/tiny_mce/themes/advanced/langs/he_dlg.js
@@ -1 +1 @@
-tinyMCE.addI18n('he.advanced_dlg',{"link_list":"\u05e8\u05e9\u05d9\u05de\u05ea \u05e7\u05d9\u05e9\u05d5\u05e8\u05d9\u05dd","link_is_external":"\u05db\u05ea\u05d5\u05d1\u05ea \u05d4-URL \u05e9\u05d4\u05d5\u05db\u05e0\u05e1\u05d4 \u05d4\u05d9\u05d0 \u05db\u05db\u05dc \u05d4\u05e0\u05e8\u05d0\u05d4 \u05e7\u05d9\u05e9\u05d5\u05e8 \u05d7\u05d9\u05e6\u05d5\u05e0\u05d9 \u05d4\u05d0\u05dd \u05d1\u05e8\u05e6\u05d5\u05e0\u05da \u05dc\u05d4\u05d5\u05e1\u05d9\u05e3 \u05d0\u05ea \u05d4\u05e7\u05d9\u05d3\u05d5\u05de\u05ea http:// \u05d4\u05e0\u05d3\u05e8\u05e9\u05ea?","link_is_email":"\u05db\u05ea\u05d5\u05d1\u05ea \u05d4-URL \u05e9\u05d4\u05d5\u05db\u05e0\u05e1\u05d4 \u05d4\u05d9\u05d0 \u05db\u05db\u05dc \u05d4\u05e0\u05e8\u05d0\u05d4 \u05db\u05ea\u05d5\u05d1\u05ea \u05de\u05d9\u05d9\u05dc \u05d4\u05d0\u05dd \u05d1\u05e8\u05e6\u05d5\u05e0\u05da \u05dc\u05d4\u05d5\u05e1\u05d9\u05e3 \u05d0\u05ea \u05d4\u05e7\u05d9\u05d3\u05d5\u05de\u05ea MAILTO \u05d4\u05e0\u05d3\u05e8\u05e9\u05ea?","link_titlefield":"\u05db\u05d5\u05ea\u05e8\u05ea","link_target_blank":"\u05e4\u05ea\u05d7 \u05e7\u05d9\u05e9\u05d5\u05e8 \u05d1\u05d7\u05dc\u05d5\u05df \u05d7\u05d3\u05e9","link_target_same":"\u05e4\u05ea\u05d7 \u05e7\u05d9\u05e9\u05d5\u05e8 \u05d1\u05d0\u05d5\u05ea\u05d5 \u05d7\u05dc\u05d5\u05df","link_target":"\u05d9\u05e2\u05d3","link_url":"\u05db\u05ea\u05d5\u05d1\u05ea \u05d4\u05e7\u05d9\u05e9\u05d5\u05e8","link_title":"\u05d4\u05d5\u05e1\u05e4\u05d4/\u05e2\u05e8\u05d9\u05db\u05ea \u05e7\u05d9\u05e9\u05d5\u05e8","image_align_right":"\u05d9\u05de\u05d9\u05df","image_align_left":"\u05e9\u05de\u05d0\u05dc","image_align_textbottom":"\u05e7\u05e6\u05d4 \u05d4\u05ea\u05d7\u05ea\u05d5\u05df \u05e9\u05dc \u05d4\u05d8\u05e7\u05e1\u05d8","image_align_texttop":"\u05e7\u05e6\u05d4 \u05d4\u05e2\u05dc\u05d9\u05d5\u05df \u05e9\u05dc \u05d4\u05d8\u05e7\u05e1\u05d8","image_align_bottom":"\u05e7\u05e6\u05d4 \u05d4\u05ea\u05d7\u05ea\u05d5\u05df","image_align_middle":"\u05d0\u05de\u05e6\u05e2","image_align_top":"\u05e7\u05e6\u05d4 \u05d4\u05e2\u05dc\u05d9\u05d5\u05df","image_align_baseline":"\u05e7\u05d5 \u05d4\u05d4\u05ea\u05d7\u05dc\u05d4","image_align":"\u05d9\u05d9\u05e9\u05d5\u05e8","image_hspace":"\u05e8\u05d5\u05d5\u05d7 \u05d0\u05d5\u05e4\u05e7\u05d9","image_vspace":"\u05e8\u05d5\u05d5\u05d7 \u05d0\u05e0\u05db\u05d9","image_dimensions":"\u05d2\u05d5\u05d3\u05dc","image_alt":"\u05ea\u05d9\u05d0\u05d5\u05e8","image_list":"\u05e8\u05e9\u05d9\u05de\u05d4","image_border":"\u05d2\u05d1\u05d5\u05dc","image_src":"\u05db\u05ea\u05d5\u05d1\u05ea:","image_title":"\u05d4\u05d5\u05e1\u05e4\u05d4/\u05e2\u05e8\u05d9\u05db\u05ea \u05ea\u05de\u05d5\u05e0\u05d4","charmap_title":"\u05d1\u05d7\u05d9\u05e8\u05ea \u05e1\u05d9\u05de\u05df","colorpicker_name":"\u05e9\u05dd:","colorpicker_color":"\u05e6\u05d1\u05e2:","colorpicker_named_title":"\u05e6\u05d1\u05e2\u05d9\u05dd \u05d1\u05e2\u05dc\u05d9 \u05e9\u05de\u05d5\u05ea","colorpicker_named_tab":"\u05e6\u05d1\u05e2\u05d9\u05dd \u05d1\u05e2\u05dc\u05d9 \u05e9\u05de\u05d5\u05ea","colorpicker_palette_title":"\u05dc\u05d5\u05d7 \u05e6\u05d1\u05e2\u05d9\u05dd","colorpicker_palette_tab":"\u05dc\u05d5\u05d7 \u05e6\u05d1\u05e2\u05d9\u05dd","colorpicker_picker_title":"\u05d1\u05d5\u05e8\u05e8 \u05d4\u05e6\u05d1\u05e2\u05d9\u05dd","colorpicker_picker_tab":"\u05d1\u05d5\u05e8\u05e8","colorpicker_title":"\u05d1\u05d7\u05d9\u05e8\u05ea \u05e6\u05d1\u05e2","code_wordwrap":"\u05d2\u05dc\u05d9\u05e9\u05ea \u05d8\u05e7\u05e1\u05d8","code_title":"\u05e2\u05d5\u05e8\u05da \u05d4-HTML","anchor_name":"\u05e9\u05dd \u05d4\u05e1\u05d9\u05de\u05e0\u05d9\u05d4","anchor_title":"\u05d4\u05d5\u05e1\u05e4\u05d4/\u05e2\u05e8\u05d9\u05db\u05ea \u05e1\u05d9\u05de\u05e0\u05d9\u05d4","about_loaded":"\u05ea\u05d5\u05e1\u05e4\u05d5\u05ea \u05e4\u05e2\u05d9\u05dc\u05d5\u05ea","about_version":"\u05d2\u05d9\u05e8\u05e1\u05d4","about_author":"\u05d9\u05d5\u05e6\u05e8","about_plugin":"\u05ea\u05d5\u05e1\u05e4\u05ea","about_plugins":"\u05ea\u05d5\u05e1\u05e4\u05d5\u05ea","about_license":"\u05e8\u05e9\u05d9\u05d5\u05df","about_help":"\u05e2\u05d6\u05e8\u05d4","about_general":"\u05d0\u05d5\u05d3\u05d5\u05ea","about_title":"\u05d0\u05d5\u05d3\u05d5\u05ea TinyMCE","charmap_usage":"\u05d4\u05e9\u05ea\u05de\u05e9/\u05d9 \u05d1\u05d7\u05d9\u05e6\u05d9\u05dd \u05dc\u05e0\u05d9\u05d5\u05d5\u05d8 \u05d9\u05de\u05d9\u05e0\u05d4 \u05d5\u05e9\u05de\u05d0\u05dc\u05d4","anchor_invalid":"\u05e0\u05d0 \u05dc\u05e6\u05d9\u05d9\u05df \u05e9\u05dd \u05d7\u05d5\u05e7\u05d9","accessibility_help":"\u05e2\u05d6\u05e8\u05d4 \u05d1\u05e0\u05d2\u05d9\u05e9\u05d5\u05ea","accessibility_usage_title":"\u05e9\u05d9\u05de\u05d5\u05e9 \u05db\u05dc\u05dc\u05d9"}); \ No newline at end of file
+tinyMCE.addI18n('he.advanced_dlg',{"link_list":"\u05e8\u05e9\u05d9\u05de\u05ea \u05e7\u05d9\u05e9\u05d5\u05e8\u05d9\u05dd","link_is_external":"\u05db\u05ea\u05d5\u05d1\u05ea \u05d4-URL \u05e9\u05d4\u05d5\u05db\u05e0\u05e1\u05d4 \u05d4\u05d9\u05d0 \u05db\u05db\u05dc \u05d4\u05e0\u05e8\u05d0\u05d4 \u05e7\u05d9\u05e9\u05d5\u05e8 \u05d7\u05d9\u05e6\u05d5\u05e0\u05d9 \u05d4\u05d0\u05dd \u05d1\u05e8\u05e6\u05d5\u05e0\u05da \u05dc\u05d4\u05d5\u05e1\u05d9\u05e3 \u05d0\u05ea \u05d4\u05e7\u05d9\u05d3\u05d5\u05de\u05ea http:// \u05d4\u05e0\u05d3\u05e8\u05e9\u05ea?","link_is_email":"\u05db\u05ea\u05d5\u05d1\u05ea \u05d4-URL \u05e9\u05d4\u05d5\u05db\u05e0\u05e1\u05d4 \u05d4\u05d9\u05d0 \u05db\u05db\u05dc \u05d4\u05e0\u05e8\u05d0\u05d4 \u05db\u05ea\u05d5\u05d1\u05ea \u05de\u05d9\u05d9\u05dc \u05d4\u05d0\u05dd \u05d1\u05e8\u05e6\u05d5\u05e0\u05da \u05dc\u05d4\u05d5\u05e1\u05d9\u05e3 \u05d0\u05ea \u05d4\u05e7\u05d9\u05d3\u05d5\u05de\u05ea MAILTO \u05d4\u05e0\u05d3\u05e8\u05e9\u05ea?","link_titlefield":"\u05db\u05d5\u05ea\u05e8\u05ea","link_target_blank":"\u05e4\u05ea\u05d7 \u05e7\u05d9\u05e9\u05d5\u05e8 \u05d1\u05d7\u05dc\u05d5\u05df \u05d7\u05d3\u05e9","link_target_same":"\u05e4\u05ea\u05d7 \u05e7\u05d9\u05e9\u05d5\u05e8 \u05d1\u05d0\u05d5\u05ea\u05d5 \u05d7\u05dc\u05d5\u05df","link_target":"\u05d9\u05e2\u05d3","link_url":"\u05db\u05ea\u05d5\u05d1\u05ea \u05d4\u05e7\u05d9\u05e9\u05d5\u05e8","link_title":"\u05d4\u05d5\u05e1\u05e4\u05d4/\u05e2\u05e8\u05d9\u05db\u05ea \u05e7\u05d9\u05e9\u05d5\u05e8","image_align_right":"\u05d9\u05de\u05d9\u05df","image_align_left":"\u05e9\u05de\u05d0\u05dc","image_align_textbottom":"\u05e7\u05e6\u05d4 \u05d4\u05ea\u05d7\u05ea\u05d5\u05df \u05e9\u05dc \u05d4\u05d8\u05e7\u05e1\u05d8","image_align_texttop":"\u05e7\u05e6\u05d4 \u05d4\u05e2\u05dc\u05d9\u05d5\u05df \u05e9\u05dc \u05d4\u05d8\u05e7\u05e1\u05d8","image_align_bottom":"\u05e7\u05e6\u05d4 \u05d4\u05ea\u05d7\u05ea\u05d5\u05df","image_align_middle":"\u05d0\u05de\u05e6\u05e2","image_align_top":"\u05e7\u05e6\u05d4 \u05d4\u05e2\u05dc\u05d9\u05d5\u05df","image_align_baseline":"\u05e7\u05d5 \u05d4\u05d4\u05ea\u05d7\u05dc\u05d4","image_align":"\u05d9\u05d9\u05e9\u05d5\u05e8","image_hspace":"\u05e8\u05d5\u05d5\u05d7 \u05d0\u05d5\u05e4\u05e7\u05d9","image_vspace":"\u05e8\u05d5\u05d5\u05d7 \u05d0\u05e0\u05db\u05d9","image_dimensions":"\u05d2\u05d5\u05d3\u05dc","image_alt":"\u05ea\u05d9\u05d0\u05d5\u05e8","image_list":"\u05e8\u05e9\u05d9\u05de\u05d4","image_border":"\u05d2\u05d1\u05d5\u05dc","image_src":"\u05db\u05ea\u05d5\u05d1\u05ea:","image_title":"\u05d4\u05d5\u05e1\u05e4\u05d4/\u05e2\u05e8\u05d9\u05db\u05ea \u05ea\u05de\u05d5\u05e0\u05d4","charmap_title":"\u05d1\u05d7\u05d9\u05e8\u05ea \u05e1\u05d9\u05de\u05df","colorpicker_name":"\u05e9\u05dd:","colorpicker_color":"\u05e6\u05d1\u05e2:","colorpicker_named_title":"\u05e6\u05d1\u05e2\u05d9\u05dd \u05d1\u05e2\u05dc\u05d9 \u05e9\u05de\u05d5\u05ea","colorpicker_named_tab":"\u05e6\u05d1\u05e2\u05d9\u05dd \u05d1\u05e2\u05dc\u05d9 \u05e9\u05de\u05d5\u05ea","colorpicker_palette_title":"\u05dc\u05d5\u05d7 \u05e6\u05d1\u05e2\u05d9\u05dd","colorpicker_palette_tab":"\u05dc\u05d5\u05d7 \u05e6\u05d1\u05e2\u05d9\u05dd","colorpicker_picker_title":"\u05d1\u05d5\u05e8\u05e8 \u05d4\u05e6\u05d1\u05e2\u05d9\u05dd","colorpicker_picker_tab":"\u05d1\u05d5\u05e8\u05e8","colorpicker_title":"\u05d1\u05d7\u05d9\u05e8\u05ea \u05e6\u05d1\u05e2","code_wordwrap":"\u05d2\u05dc\u05d9\u05e9\u05ea \u05d8\u05e7\u05e1\u05d8","code_title":"\u05e2\u05d5\u05e8\u05da \u05d4-HTML","anchor_name":"\u05e9\u05dd \u05d4\u05e1\u05d9\u05de\u05e0\u05d9\u05d4","anchor_title":"\u05d4\u05d5\u05e1\u05e4\u05d4/\u05e2\u05e8\u05d9\u05db\u05ea \u05e1\u05d9\u05de\u05e0\u05d9\u05d4","about_loaded":"\u05ea\u05d5\u05e1\u05e4\u05d5\u05ea \u05e4\u05e2\u05d9\u05dc\u05d5\u05ea","about_version":"\u05d2\u05d9\u05e8\u05e1\u05d4","about_author":"\u05d9\u05d5\u05e6\u05e8","about_plugin":"\u05ea\u05d5\u05e1\u05e4\u05ea","about_plugins":"\u05ea\u05d5\u05e1\u05e4\u05d5\u05ea","about_license":"\u05e8\u05e9\u05d9\u05d5\u05df","about_help":"\u05e2\u05d6\u05e8\u05d4","about_general":"\u05d0\u05d5\u05d3\u05d5\u05ea","about_title":"\u05d0\u05d5\u05d3\u05d5\u05ea TinyMCE","charmap_usage":"\u05d4\u05e9\u05ea\u05de\u05e9/\u05d9 \u05d1\u05d7\u05d9\u05e6\u05d9\u05dd \u05dc\u05e0\u05d9\u05d5\u05d5\u05d8 \u05d9\u05de\u05d9\u05e0\u05d4 \u05d5\u05e9\u05de\u05d0\u05dc\u05d4","anchor_invalid":"\u05e0\u05d0 \u05dc\u05e6\u05d9\u05d9\u05df \u05e9\u05dd \u05d7\u05d5\u05e7\u05d9","accessibility_help":"\u05e2\u05d6\u05e8\u05d4 \u05d1\u05e0\u05d2\u05d9\u05e9\u05d5\u05ea","accessibility_usage_title":"\u05e9\u05d9\u05de\u05d5\u05e9 \u05db\u05dc\u05dc\u05d9","invalid_color_value":"\u05e2\u05e8\u05da \u05d4\u05e6\u05d1\u05e2 \u05dc\u05d0 \u05ea\u05e7\u05d9\u05df"}); \ No newline at end of file
diff --git a/program/js/tiny_mce/themes/advanced/langs/nb_dlg.js b/program/js/tiny_mce/themes/advanced/langs/nb_dlg.js
index 16d817cb7..16b3d18b0 100644
--- a/program/js/tiny_mce/themes/advanced/langs/nb_dlg.js
+++ b/program/js/tiny_mce/themes/advanced/langs/nb_dlg.js
@@ -1 +1 @@
-tinyMCE.addI18n('nb.advanced_dlg',{"link_list":"Lenkeliste","link_is_external":"Nettadressen du skrev inn ser ut til \u00e5 v\u00e6re en ekstern nettadresse. \u00d8nsker du \u00e5 legge til det p\u00e5krevde http://-prefikset?","link_is_email":"Nettadressen du skrev inn ser ut til \u00e5 v\u00e6re en e-postadresse. \u00d8nsker du \u00e5 legge til det p\u00e5krevde mailto:-prefikset?","link_titlefield":"Tittel","link_target_blank":"\u00c5pne i nytt vindu","link_target_same":"\u00c5pne i dette vinduet","link_target":"M\u00e5lside","link_url":"Lenkens URL","link_title":"Sett inn /endre lenke","image_align_right":"H\u00f8yre","image_align_left":"Venstre","image_align_textbottom":"Tekstbunn","image_align_texttop":"Teksttopp","image_align_bottom":"Bunn","image_align_middle":"Midtstilt","image_align_top":"Topp","image_align_baseline":"Bunnlinje","image_align":"Justering","image_hspace":"Horisontal avstand","image_vspace":"Vertikal avstand","image_dimensions":"Dimensjoner","image_alt":"Bildebeskrivelse","image_list":"Bildeliste","image_border":"Ramme","image_src":"Bildets URL","image_title":"Sett inn / endre bilde","charmap_title":"Velg spesialtegn","colorpicker_name":"Navn:","colorpicker_color":"Farge:","colorpicker_named_title":"Fargenavn","colorpicker_named_tab":"Navnevalg","colorpicker_palette_title":"Palettfarger","colorpicker_palette_tab":"Palett","colorpicker_picker_title":"Fargevalg","colorpicker_picker_tab":"Velg farge","colorpicker_title":"Velg en farge","code_wordwrap":"Tekstbryting","code_title":"HTML-editor","anchor_name":"Ankernavn","anchor_title":"Sett inn / endre anker","about_loaded":"Lastede programtillegg","about_version":"Versjon","about_author":"Utvikler","about_plugin":"Programtillegg","about_plugins":"Programtillegg","about_license":"Lisens","about_help":"Hjelp","about_general":"Om","about_title":"Om TinyMCE","charmap_usage":"Bruk venstre og h\u00f8yre piltast for \u00e5 navigere.","anchor_invalid":"Du m\u00e5 angi et gyldig ankernavn.","accessibility_help":"Tilhjengelighetshjelp","accessibility_usage_title":"Generell bruk"}); \ No newline at end of file
+tinyMCE.addI18n('nb.advanced_dlg',{"link_list":"Lenkeliste","link_is_external":"Nettadressen du skrev inn ser ut til \u00e5 v\u00e6re en ekstern nettadresse. \u00d8nsker du \u00e5 legge til det p\u00e5krevde http://-prefikset?","link_is_email":"Nettadressen du skrev inn ser ut til \u00e5 v\u00e6re en e-postadresse. \u00d8nsker du \u00e5 legge til det p\u00e5krevde mailto:-prefikset?","link_titlefield":"Tittel","link_target_blank":"\u00c5pne i nytt vindu","link_target_same":"\u00c5pne i dette vinduet","link_target":"M\u00e5lside","link_url":"Lenkens URL","link_title":"Sett inn /endre lenke","image_align_right":"H\u00f8yre","image_align_left":"Venstre","image_align_textbottom":"Tekstbunn","image_align_texttop":"Teksttopp","image_align_bottom":"Bunn","image_align_middle":"Midtstilt","image_align_top":"Topp","image_align_baseline":"Bunnlinje","image_align":"Justering","image_hspace":"Horisontal avstand","image_vspace":"Vertikal avstand","image_dimensions":"Dimensjoner","image_alt":"Bildebeskrivelse","image_list":"Bildeliste","image_border":"Ramme","image_src":"Bildets URL","image_title":"Sett inn / endre bilde","charmap_title":"Velg spesialtegn","colorpicker_name":"Navn:","colorpicker_color":"Farge:","colorpicker_named_title":"Fargenavn","colorpicker_named_tab":"Navnevalg","colorpicker_palette_title":"Palettfarger","colorpicker_palette_tab":"Palett","colorpicker_picker_title":"Fargevalg","colorpicker_picker_tab":"Velg farge","colorpicker_title":"Velg en farge","code_wordwrap":"Tekstbryting","code_title":"HTML-editor","anchor_name":"Ankernavn","anchor_title":"Sett inn / endre anker","about_loaded":"Lastede programtillegg","about_version":"Versjon","about_author":"Utvikler","about_plugin":"Programtillegg","about_plugins":"Programtillegg","about_license":"Lisens","about_help":"Hjelp","about_general":"Om","about_title":"Om TinyMCE","charmap_usage":"Bruk venstre og h\u00f8yre piltast for \u00e5 navigere.","anchor_invalid":"Du m\u00e5 angi et gyldig ankernavn.","accessibility_help":"Tilhjengelighetshjelp","accessibility_usage_title":"Generell bruk","invalid_color_value":"Ugyldig fargeverdi"}); \ No newline at end of file
diff --git a/program/js/tiny_mce/themes/advanced/langs/ru.js b/program/js/tiny_mce/themes/advanced/langs/ru.js
index 85fe89995..5dcf47ad9 100644
--- a/program/js/tiny_mce/themes/advanced/langs/ru.js
+++ b/program/js/tiny_mce/themes/advanced/langs/ru.js
@@ -1 +1 @@
-tinyMCE.addI18n('ru.advanced',{"underline_desc":"\u041f\u043e\u0434\u0447\u0435\u0440\u043a\u043d\u0443\u0442\u044b\u0439 (Ctrl+U)","italic_desc":"\u041a\u0443\u0440\u0441\u0438\u0432 (Ctrl+I)","bold_desc":"\u041f\u043e\u043b\u0443\u0436\u0438\u0440\u043d\u044b\u0439 (Ctrl+B)",dd:"\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a\u0430",dt:"\u0422\u0435\u0440\u043c\u0438\u043d \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a\u0430",samp:"\u041f\u0440\u0438\u043c\u0435\u0440 \u043a\u043e\u0434\u0430",code:"\u041a\u043e\u0434",blockquote:"\u0426\u0438\u0442\u0430\u0442\u0430",h6:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 6",h5:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 5",h4:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 4",h3:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 3",h2:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 2",h1:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 1",pre:"\u041f\u0440\u0435\u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439",address:"\u0410\u0434\u0440\u0435\u0441",div:"Div",paragraph:"\u0410\u0431\u0437\u0430\u0446",block:"\u0424\u043e\u0440\u043c\u0430\u0442",fontdefault:"\u0428\u0440\u0438\u0444\u0442","font_size":"\u0420\u0430\u0437\u043c\u0435\u0440","style_select":"\u0421\u0442\u0438\u043b\u044c","more_colors":"\u0414\u0440\u0443\u0433\u0438\u0435 \u0446\u0432\u0435\u0442\u0430...","toolbar_focus":"\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043d\u0430 \u043f\u0430\u043d\u0435\u043b\u044c \u043a\u043d\u043e\u043f\u043e\u043a (Alt+Q). \u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043a \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0443 (Alt+Z). \u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043a \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0443 \u043f\u0443\u0442\u0438 (Alt+X).",newdocument:"\u0412\u044b \u0443\u0432\u0435\u0440\u0435\u043d\u044b, \u0447\u0442\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0432\u0441\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c?",path:"\u0422\u0435\u0433\u0438","clipboard_msg":"\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435, \u0432\u044b\u0440\u0435\u0437\u043a\u0430 \u0438 \u0432\u0441\u0442\u0430\u0432\u043a\u0430 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u0432 Firefox. \u0425\u043e\u0442\u0438\u0442\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e?","blockquote_desc":"\u0426\u0438\u0442\u0430\u0442\u0430","help_desc":"\u041f\u043e\u043c\u043e\u0449\u044c","newdocument_desc":"\u041d\u043e\u0432\u044b\u0439 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442","image_props_desc":"\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f","paste_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c","copy_desc":"\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c","cut_desc":"\u0412\u044b\u0440\u0435\u0437\u0430\u0442\u044c","anchor_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c/\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u044f\u043a\u043e\u0440\u044c","visualaid_desc":"\u0412\u0441\u0435 \u0437\u043d\u0430\u043a\u0438","charmap_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0438\u043c\u0432\u043e\u043b","backcolor_desc":"\u0426\u0432\u0435\u0442 \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0442\u0435\u043a\u0441\u0442\u0430","forecolor_desc":"\u0426\u0432\u0435\u0442 \u0442\u0435\u043a\u0441\u0442\u0430","custom1_desc":"\u0421\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435","removeformat_desc":"\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u044c \u0444\u043e\u0440\u043c\u0430\u0442","hr_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0447\u0435\u0440\u0442\u0443","sup_desc":"\u041d\u0430\u0434\u0441\u0442\u0440\u043e\u0447\u043d\u044b\u0439","sub_desc":"\u041f\u043e\u0434\u0441\u0442\u0440\u043e\u0447\u043d\u044b\u0439","code_desc":"\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c HTML \u043a\u043e\u0434","cleanup_desc":"\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u044c \u043b\u0438\u0448\u043d\u0438\u0439 \u043a\u043e\u0434","image_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c/\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435","unlink_desc":"\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0441\u0441\u044b\u043b\u043a\u0443","link_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c/\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0441\u0441\u044b\u043b\u043a\u0443","redo_desc":"\u0412\u0435\u0440\u043d\u0443\u0442\u044c (Ctrl+Y)","undo_desc":"\u041e\u0442\u043c\u0435\u043d\u0438\u0442\u044c (Ctrl+Z)","indent_desc":"\u0423\u0432\u0435\u043b\u0438\u0447\u0438\u0442\u044c \u043e\u0442\u0441\u0442\u0443\u043f","outdent_desc":"\u0423\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c \u043e\u0442\u0441\u0442\u0443\u043f","numlist_desc":"\u041d\u0443\u043c\u0435\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a","bullist_desc":"\u041c\u0430\u0440\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a","justifyfull_desc":"\u041f\u043e \u0448\u0438\u0440\u0438\u043d\u0435","justifyright_desc":"\u041f\u043e \u043f\u0440\u0430\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","justifycenter_desc":"\u041f\u043e \u0446\u0435\u043d\u0442\u0440\u0443","justifyleft_desc":"\u041f\u043e \u043b\u0435\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","striketrough_desc":"\u0417\u0430\u0447\u0435\u0440\u043a\u043d\u0443\u0442\u044b\u0439","help_shortcut":"\u041d\u0430\u0436\u043c\u0438\u0442\u0435 ALT-F10 \u0434\u043b\u044f \u043f\u0430\u043d\u0435\u043b\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432. \u041d\u0430\u0436\u043c\u0438\u0442\u0435 ALT-0 \u0434\u043b\u044f \u0441\u043f\u0440\u0430\u0432\u043a\u0438.","rich_text_area":"\u0412\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440","shortcuts_desc":"\u041f\u043e\u043c\u043e\u0449\u044c \u043f\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438",toolbar:"\u041f\u0430\u043d\u0435\u043b\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432","anchor_delta_height":"","anchor_delta_width":"","charmap_delta_height":"","charmap_delta_width":"","colorpicker_delta_height":"","colorpicker_delta_width":"","link_delta_height":"","link_delta_width":"","image_delta_height":"","image_delta_width":""}); \ No newline at end of file
+tinyMCE.addI18n('ru.advanced',{"underline_desc":"\u041f\u043e\u0434\u0447\u0435\u0440\u043a\u043d\u0443\u0442\u044b\u0439 (Ctrl+U)","italic_desc":"\u041a\u0443\u0440\u0441\u0438\u0432 (Ctrl+I)","bold_desc":"\u041f\u043e\u043b\u0443\u0436\u0438\u0440\u043d\u044b\u0439 (Ctrl+B)",dd:"\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a\u0430",dt:"\u0422\u0435\u0440\u043c\u0438\u043d \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a\u0430",samp:"\u041f\u0440\u0438\u043c\u0435\u0440 \u043a\u043e\u0434\u0430",code:"\u041a\u043e\u0434",blockquote:"\u0426\u0438\u0442\u0430\u0442\u0430",h6:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 6",h5:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 5",h4:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 4",h3:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 3",h2:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 2",h1:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 1",pre:"\u041f\u0440\u0435\u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439",address:"\u0410\u0434\u0440\u0435\u0441",div:"Div",paragraph:"\u0410\u0431\u0437\u0430\u0446",block:"\u0424\u043e\u0440\u043c\u0430\u0442",fontdefault:"\u0428\u0440\u0438\u0444\u0442","font_size":"\u0420\u0430\u0437\u043c\u0435\u0440","style_select":"\u0421\u0442\u0438\u043b\u044c","more_colors":"\u0414\u0440\u0443\u0433\u0438\u0435 \u0446\u0432\u0435\u0442\u0430...","toolbar_focus":"\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043d\u0430 \u043f\u0430\u043d\u0435\u043b\u044c \u043a\u043d\u043e\u043f\u043e\u043a (Alt+Q). \u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043a \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0443 (Alt+Z). \u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043a \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0443 \u043f\u0443\u0442\u0438 (Alt+X).",newdocument:"\u0412\u044b \u0443\u0432\u0435\u0440\u0435\u043d\u044b, \u0447\u0442\u043e \u0445\u043e\u0442\u0438\u0442\u0435 \u0432\u0441\u0435 \u0443\u0434\u0430\u043b\u0438\u0442\u044c?",path:"\u0422\u0435\u0433\u0438","clipboard_msg":"\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435, \u0432\u044b\u0440\u0435\u0437\u043a\u0430 \u0438 \u0432\u0441\u0442\u0430\u0432\u043a\u0430 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u0432 Firefox. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u043a\u043b\u0430\u0432\u0438\u0448\u0438: Ctrl C \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c, Ctrl V \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u044c. \u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e?","blockquote_desc":"\u0426\u0438\u0442\u0430\u0442\u0430","help_desc":"\u041f\u043e\u043c\u043e\u0449\u044c","newdocument_desc":"\u041d\u043e\u0432\u044b\u0439 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442","image_props_desc":"\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f","paste_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c","copy_desc":"\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c","cut_desc":"\u0412\u044b\u0440\u0435\u0437\u0430\u0442\u044c","anchor_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c/\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u044f\u043a\u043e\u0440\u044c","visualaid_desc":"\u0412\u0441\u0435 \u0437\u043d\u0430\u043a\u0438","charmap_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0438\u043c\u0432\u043e\u043b","backcolor_desc":"\u0426\u0432\u0435\u0442 \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0442\u0435\u043a\u0441\u0442\u0430","forecolor_desc":"\u0426\u0432\u0435\u0442 \u0442\u0435\u043a\u0441\u0442\u0430","custom1_desc":"\u0421\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435","removeformat_desc":"\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u044c \u0444\u043e\u0440\u043c\u0430\u0442","hr_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0447\u0435\u0440\u0442\u0443","sup_desc":"\u041d\u0430\u0434\u0441\u0442\u0440\u043e\u0447\u043d\u044b\u0439","sub_desc":"\u041f\u043e\u0434\u0441\u0442\u0440\u043e\u0447\u043d\u044b\u0439","code_desc":"\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c HTML \u043a\u043e\u0434","cleanup_desc":"\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u044c \u043b\u0438\u0448\u043d\u0438\u0439 \u043a\u043e\u0434","image_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c/\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435","unlink_desc":"\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0441\u0441\u044b\u043b\u043a\u0443","link_desc":"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c/\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u0441\u0441\u044b\u043b\u043a\u0443","redo_desc":"\u0412\u0435\u0440\u043d\u0443\u0442\u044c (Ctrl+Y)","undo_desc":"\u041e\u0442\u043c\u0435\u043d\u0438\u0442\u044c (Ctrl+Z)","indent_desc":"\u0423\u0432\u0435\u043b\u0438\u0447\u0438\u0442\u044c \u043e\u0442\u0441\u0442\u0443\u043f","outdent_desc":"\u0423\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c \u043e\u0442\u0441\u0442\u0443\u043f","numlist_desc":"\u041d\u0443\u043c\u0435\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a","bullist_desc":"\u041c\u0430\u0440\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a","justifyfull_desc":"\u041f\u043e \u0448\u0438\u0440\u0438\u043d\u0435","justifyright_desc":"\u041f\u043e \u043f\u0440\u0430\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","justifycenter_desc":"\u041f\u043e \u0446\u0435\u043d\u0442\u0440\u0443","justifyleft_desc":"\u041f\u043e \u043b\u0435\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","striketrough_desc":"\u0417\u0430\u0447\u0435\u0440\u043a\u043d\u0443\u0442\u044b\u0439","help_shortcut":"\u041d\u0430\u0436\u043c\u0438\u0442\u0435 ALT-F10 \u0434\u043b\u044f \u043f\u0430\u043d\u0435\u043b\u0438 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432. \u041d\u0430\u0436\u043c\u0438\u0442\u0435 ALT-0 \u0434\u043b\u044f \u0441\u043f\u0440\u0430\u0432\u043a\u0438.","rich_text_area":"\u0412\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440","shortcuts_desc":"\u041f\u043e\u043c\u043e\u0449\u044c \u043f\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438",toolbar:"\u041f\u0430\u043d\u0435\u043b\u044c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432","anchor_delta_height":"","anchor_delta_width":"","charmap_delta_height":"","charmap_delta_width":"","colorpicker_delta_height":"","colorpicker_delta_width":"","link_delta_height":"","link_delta_width":"","image_delta_height":"","image_delta_width":""}); \ No newline at end of file
diff --git a/program/js/tiny_mce/themes/advanced/langs/uk.js b/program/js/tiny_mce/themes/advanced/langs/uk.js
index 5998e2859..9988c60fa 100644
--- a/program/js/tiny_mce/themes/advanced/langs/uk.js
+++ b/program/js/tiny_mce/themes/advanced/langs/uk.js
@@ -1 +1 @@
-tinyMCE.addI18n('uk.advanced',{"underline_desc":"\u041f\u0456\u0434\u043a\u0440\u0435\u0441\u043b\u0435\u043d\u0438\u0439 (Ctrl+U)","italic_desc":"\u041a\u0443\u0440\u0441\u0438\u0432 (Ctrl+I)","bold_desc":"\u0416\u0438\u0440\u043d\u0438\u0439 (Ctrl+B)",dd:"\u0414\u043e\u0432\u0456\u0434\u043d\u0438\u043a, \u043e\u043f\u0438\u0441 ",dt:"\u0414\u043e\u0432\u0456\u0434\u043d\u0438\u043a, \u0442\u0435\u0440\u043c\u0456\u043d ",samp:"\u041f\u0440\u0438\u043a\u043b\u0430\u0434 \u043a\u043e\u0434\u0443",code:"\u041a\u043e\u0434",blockquote:"\u0426\u0438\u0442\u0430\u0442\u0430",h6:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 6",h5:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 5",h4:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 4",h3:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 3",h2:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 2",h1:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 1",pre:"\u041f\u043e\u043f\u0435\u0440\u0435\u0434\u043d\u044c\u043e \u0444\u043e\u0440\u043c\u0430\u0442\u043e\u0432\u0430\u043d\u0438\u0439",address:"\u0421\u0442\u0438\u043b\u044c \u0430\u0434\u0440\u0435\u0441\u0438",div:"Div",paragraph:"\u0410\u0431\u0437\u0430\u0446",block:"\u0424\u043e\u0440\u043c\u0430\u0442",fontdefault:"\u0428\u0440\u0438\u0444\u0442","font_size":"\u0420\u043e\u0437\u043c\u0456\u0440 \u0448\u0440\u0438\u0444\u0442\u0443","style_select":"\u0421\u0442\u0438\u043b\u0456","more_colors":"\u0411\u0456\u043b\u044c\u0448\u0435 \u043a\u043e\u043b\u044c\u043e\u0440\u0456\u0432","toolbar_focus":"\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043d\u0430 \u043f\u0430\u043d\u0435\u043b\u044c \u043a\u043d\u043e\u043f\u043e\u043a - Alt+Q, \u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u0434\u043e \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0443 - Alt-Z, \u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u0434\u043e \u0448\u043b\u044f\u0445\u0443 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0443 - Alt-X",newdocument:"\u0412\u0438 \u0432\u043f\u0435\u0432\u043d\u0435\u043d\u0456, \u0449\u043e \u0431\u0430\u0436\u0430\u0454\u0442\u0435 \u0432\u0441\u0435 \u0432\u0438\u0434\u0430\u043b\u0438\u0442\u0438?",path:"\u0428\u043b\u044f\u0445","clipboard_msg":"\u041a\u043e\u043f\u0456\u044e\u0432\u0430\u0442\u0438/\u0412\u0438\u0440\u0456\u0437\u0430\u0442\u0438/\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u043d\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0456 \u0432 Mozilla \u0438 Firefox.\n\u0412\u0430\u043c \u0446\u0456\u043a\u0430\u0432\u0430 \u0456\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0456\u044f \u043f\u0440\u043e \u0446\u0435?","blockquote_desc":"\u0426\u0438\u0442\u0430\u0442\u0430","help_desc":"\u0414\u043e\u043f\u043e\u043c\u043e\u0433\u0430","newdocument_desc":"\u041d\u043e\u0432\u0438\u0439 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442","image_props_desc":"\u0412\u043b\u0430\u0441\u0442\u0438\u0432\u043e\u0441\u0442\u0456 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f","paste_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438","copy_desc":"\u041a\u043e\u043f\u0456\u044e\u0432\u0430\u0442\u0438","cut_desc":"\u0412\u0438\u0440\u0456\u0437\u0430\u0442\u0438","anchor_desc":"\u0414\u043e\u0434\u0430\u0442\u0438/\u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u044f\u043a\u0456\u0440","visualaid_desc":"\u041f\u0435\u0440\u0435\u043c\u043a\u043d\u0443\u0442\u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u0456/\u043f\u0440\u0438\u0445\u043e\u0432\u0430\u043d\u0456 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438","charmap_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u0441\u0438\u043c\u0432\u043e\u043b","backcolor_desc":"\u0412\u0438\u0431\u0440\u0430\u0442\u0438 \u043a\u043e\u043b\u0456\u0440 \u0444\u043e\u043d\u0443","forecolor_desc":"\u0412\u0438\u0431\u0440\u0430\u0442\u0438 \u043a\u043e\u043b\u0456\u0440 \u0442\u0435\u043a\u0441\u0442\u0443","custom1_desc":"\u0412\u0430\u0448 \u0434\u043e\u0432\u0456\u043b\u044c\u043d\u0438\u0439 \u043e\u043f\u0438\u0441 \u0442\u0443\u0442","removeformat_desc":"\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u0438 \u0444\u043e\u0440\u043c\u0430\u0442\u0443\u0432\u0430\u043d\u043d\u044f","hr_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u0438\u0439 \u0440\u043e\u0437\u0434\u0456\u043b\u044c\u043d\u0438\u043a","sup_desc":"\u0412\u0435\u0440\u0445\u043d\u0456\u0439 \u0456\u043d\u0434\u0435\u043a\u0441","sub_desc":"\u041d\u0438\u0436\u043d\u0456\u0439 \u0456\u043d\u0434\u0435\u043a\u0441","code_desc":"\u0420\u0435\u0434\u0430\u0433\u0443\u0432\u0430\u0442\u0438 HTML \u043a\u043e\u0434","cleanup_desc":"\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u0438 \u0437\u0430\u0439\u0432\u0438\u0439 \u043a\u043e\u0434","image_desc":"\u0414\u043e\u0434\u0430\u0442\u0438/\u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f","unlink_desc":"\u0412\u0438\u0434\u0430\u043b\u0438\u0442\u0438 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f","link_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438/\u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f","redo_desc":"\u041f\u043e\u0432\u0435\u0440\u043d\u0443\u0442\u0438 (Ctrl+Y)","undo_desc":"\u0412\u0456\u0434\u043c\u0456\u043d\u0438\u0442\u0438 (Ctrl+Z)","indent_desc":"\u0417\u0431\u0456\u043b\u044c\u0448\u0438\u0442\u0438 \u0432\u0456\u0434\u0441\u0442\u0443\u043f","outdent_desc":"\u0417\u043c\u0435\u043d\u0448\u0442\u0438\u0442\u0438 \u0432\u0456\u0434\u0441\u0442\u0443\u043f","numlist_desc":"\u041d\u0443\u043c\u0435\u0440\u043e\u0432\u0430\u043d\u0438\u0439 \u0441\u043f\u0438\u0441\u043e\u043a","bullist_desc":"\u041d\u0435\u043d\u0443\u043c\u0435\u0440\u043e\u0432\u0430\u043d\u0438\u0439 \u0441\u043f\u0438\u0441\u043e\u043a","justifyfull_desc":"\u041f\u043e \u0448\u0438\u0440\u0438\u043d\u0456","justifyright_desc":"\u041f\u043e \u043f\u0440\u0430\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","justifycenter_desc":"\u041f\u043e \u0446\u0435\u043d\u0442\u0440\u0443","justifyleft_desc":"\u041f\u043e \u043b\u0456\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","striketrough_desc":"\u0417\u0430\u043a\u0440\u0435\u0441\u043b\u0435\u043d\u0438\u0439","help_shortcut":"\u041d\u0430\u0442\u0438\u0441\u043d\u0456\u0442\u044c ALT F10 \u0434\u043b\u044f \u0442\u0443\u043b\u0431\u0430\u0440\u0443. \u041d\u0430\u0442\u0438\u0441\u043d\u0456\u0442\u044c ALT 0 \u0434\u043b\u044f \u043e\u0442\u0440\u0438\u043c\u0430\u043d\u043d\u044f \u0434\u043e\u043f\u043e\u043c\u043e\u0433\u0438",toolbar:"\u0422\u0443\u043b\u0431\u0430\u0440","anchor_delta_height":"","anchor_delta_width":"","charmap_delta_height":"","charmap_delta_width":"","colorpicker_delta_height":"","colorpicker_delta_width":"","link_delta_height":"","link_delta_width":"","image_delta_height":"","image_delta_width":"","rich_text_area":"Rich Text Area","shortcuts_desc":"Accessability Help"}); \ No newline at end of file
+tinyMCE.addI18n('uk.advanced',{"underline_desc":"\u041f\u0456\u0434\u043a\u0440\u0435\u0441\u043b\u0435\u043d\u0438\u0439 (Ctrl+U)","italic_desc":"\u041a\u0443\u0440\u0441\u0438\u0432 (Ctrl+I)","bold_desc":"\u0416\u0438\u0440\u043d\u0438\u0439 (Ctrl+B)",dd:"\u0414\u043e\u0432\u0456\u0434\u043d\u0438\u043a, \u043e\u043f\u0438\u0441 ",dt:"\u0414\u043e\u0432\u0456\u0434\u043d\u0438\u043a, \u0442\u0435\u0440\u043c\u0456\u043d ",samp:"\u041f\u0440\u0438\u043a\u043b\u0430\u0434 \u043a\u043e\u0434\u0443",code:"\u041a\u043e\u0434",blockquote:"\u0426\u0438\u0442\u0430\u0442\u0430",h6:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 6",h5:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 5",h4:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 4",h3:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 3",h2:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 2",h1:"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a 1",pre:"\u041f\u043e\u043f\u0435\u0440\u0435\u0434\u043d\u044c\u043e \u0444\u043e\u0440\u043c\u0430\u0442\u043e\u0432\u0430\u043d\u0438\u0439",address:"\u0421\u0442\u0438\u043b\u044c \u0430\u0434\u0440\u0435\u0441\u0438",div:"Div",paragraph:"\u0410\u0431\u0437\u0430\u0446",block:"\u0424\u043e\u0440\u043c\u0430\u0442",fontdefault:"\u0428\u0440\u0438\u0444\u0442","font_size":"\u0420\u043e\u0437\u043c\u0456\u0440 \u0448\u0440\u0438\u0444\u0442\u0443","style_select":"\u0421\u0442\u0438\u043b\u0456","more_colors":"\u0411\u0456\u043b\u044c\u0448\u0435 \u043a\u043e\u043b\u044c\u043e\u0440\u0456\u0432","toolbar_focus":"\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043d\u0430 \u043f\u0430\u043d\u0435\u043b\u044c \u043a\u043d\u043e\u043f\u043e\u043a - Alt+Q, \u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u0434\u043e \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0443 - Alt-Z, \u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u0434\u043e \u0448\u043b\u044f\u0445\u0443 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0443 - Alt-X",newdocument:"\u0412\u0438 \u0432\u043f\u0435\u0432\u043d\u0435\u043d\u0456, \u0449\u043e \u0431\u0430\u0436\u0430\u0454\u0442\u0435 \u0432\u0441\u0435 \u0432\u0438\u0434\u0430\u043b\u0438\u0442\u0438?",path:"\u0428\u043b\u044f\u0445","clipboard_msg":"\u041a\u043e\u043f\u0456\u044e\u0432\u0430\u0442\u0438/\u0412\u0438\u0440\u0456\u0437\u0430\u0442\u0438/\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u043d\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0456 \u0432 Mozilla \u0438 Firefox.\n\u0412\u0430\u043c \u0446\u0456\u043a\u0430\u0432\u0430 \u0456\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0456\u044f \u043f\u0440\u043e \u0446\u0435?","blockquote_desc":"\u0426\u0438\u0442\u0430\u0442\u0430","help_desc":"\u0414\u043e\u043f\u043e\u043c\u043e\u0433\u0430","newdocument_desc":"\u041d\u043e\u0432\u0438\u0439 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442","image_props_desc":"\u0412\u043b\u0430\u0441\u0442\u0438\u0432\u043e\u0441\u0442\u0456 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f","paste_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438","copy_desc":"\u041a\u043e\u043f\u0456\u044e\u0432\u0430\u0442\u0438","cut_desc":"\u0412\u0438\u0440\u0456\u0437\u0430\u0442\u0438","anchor_desc":"\u0414\u043e\u0434\u0430\u0442\u0438/\u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u044f\u043a\u0456\u0440","visualaid_desc":"\u041f\u0435\u0440\u0435\u043c\u043a\u043d\u0443\u0442\u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u0456/\u043f\u0440\u0438\u0445\u043e\u0432\u0430\u043d\u0456 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438","charmap_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u0441\u0438\u043c\u0432\u043e\u043b","backcolor_desc":"\u0412\u0438\u0431\u0440\u0430\u0442\u0438 \u043a\u043e\u043b\u0456\u0440 \u0444\u043e\u043d\u0443","forecolor_desc":"\u0412\u0438\u0431\u0440\u0430\u0442\u0438 \u043a\u043e\u043b\u0456\u0440 \u0442\u0435\u043a\u0441\u0442\u0443","custom1_desc":"\u0412\u0430\u0448 \u0434\u043e\u0432\u0456\u043b\u044c\u043d\u0438\u0439 \u043e\u043f\u0438\u0441 \u0442\u0443\u0442","removeformat_desc":"\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u0438 \u0444\u043e\u0440\u043c\u0430\u0442\u0443\u0432\u0430\u043d\u043d\u044f","hr_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438 \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u0438\u0439 \u0440\u043e\u0437\u0434\u0456\u043b\u044c\u043d\u0438\u043a","sup_desc":"\u0412\u0435\u0440\u0445\u043d\u0456\u0439 \u0456\u043d\u0434\u0435\u043a\u0441","sub_desc":"\u041d\u0438\u0436\u043d\u0456\u0439 \u0456\u043d\u0434\u0435\u043a\u0441","code_desc":"\u0420\u0435\u0434\u0430\u0433\u0443\u0432\u0430\u0442\u0438 HTML \u043a\u043e\u0434","cleanup_desc":"\u041e\u0447\u0438\u0441\u0442\u0438\u0442\u0438 \u0437\u0430\u0439\u0432\u0438\u0439 \u043a\u043e\u0434","image_desc":"\u0414\u043e\u0434\u0430\u0442\u0438/\u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f","unlink_desc":"\u0412\u0438\u0434\u0430\u043b\u0438\u0442\u0438 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f","link_desc":"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438/\u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f","redo_desc":"\u041f\u043e\u0432\u0435\u0440\u043d\u0443\u0442\u0438 (Ctrl+Y)","undo_desc":"\u0412\u0456\u0434\u043c\u0456\u043d\u0438\u0442\u0438 (Ctrl+Z)","indent_desc":"\u0417\u0431\u0456\u043b\u044c\u0448\u0438\u0442\u0438 \u0432\u0456\u0434\u0441\u0442\u0443\u043f","outdent_desc":"\u0417\u043c\u0435\u043d\u0448\u0442\u0438\u0442\u0438 \u0432\u0456\u0434\u0441\u0442\u0443\u043f","numlist_desc":"\u041d\u0443\u043c\u0435\u0440\u043e\u0432\u0430\u043d\u0438\u0439 \u0441\u043f\u0438\u0441\u043e\u043a","bullist_desc":"\u041d\u0435\u043d\u0443\u043c\u0435\u0440\u043e\u0432\u0430\u043d\u0438\u0439 \u0441\u043f\u0438\u0441\u043e\u043a","justifyfull_desc":"\u041f\u043e \u0448\u0438\u0440\u0438\u043d\u0456","justifyright_desc":"\u041f\u043e \u043f\u0440\u0430\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","justifycenter_desc":"\u041f\u043e \u0446\u0435\u043d\u0442\u0440\u0443","justifyleft_desc":"\u041f\u043e \u043b\u0456\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","striketrough_desc":"\u0417\u0430\u043a\u0440\u0435\u0441\u043b\u0435\u043d\u0438\u0439","help_shortcut":"\u041d\u0430\u0442\u0438\u0441\u043d\u0456\u0442\u044c ALT F10 \u0434\u043b\u044f \u0442\u0443\u043b\u0431\u0430\u0440\u0443. \u041d\u0430\u0442\u0438\u0441\u043d\u0456\u0442\u044c ALT 0 \u0434\u043b\u044f \u043e\u0442\u0440\u0438\u043c\u0430\u043d\u043d\u044f \u0434\u043e\u043f\u043e\u043c\u043e\u0433\u0438","rich_text_area":"\u0412\u0456\u0437\u0443\u0430\u043b\u044c\u043d\u0438\u0439 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440","shortcuts_desc":"\u0414\u043e\u043f\u043e\u043c\u043e\u0433\u0430 \u043f\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0456",toolbar:"\u0422\u0443\u043b\u0431\u0430\u0440","anchor_delta_height":"","anchor_delta_width":"","charmap_delta_height":"","charmap_delta_width":"","colorpicker_delta_height":"","colorpicker_delta_width":"","link_delta_height":"","link_delta_width":"","image_delta_height":"","image_delta_width":""}); \ No newline at end of file
diff --git a/program/js/tiny_mce/themes/advanced/langs/uk_dlg.js b/program/js/tiny_mce/themes/advanced/langs/uk_dlg.js
index cfb143b8c..89e003142 100644
--- a/program/js/tiny_mce/themes/advanced/langs/uk_dlg.js
+++ b/program/js/tiny_mce/themes/advanced/langs/uk_dlg.js
@@ -1 +1 @@
-tinyMCE.addI18n('uk.advanced_dlg',{"link_list":"\u0421\u043f\u0438\u0441\u043e\u043a \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u044c","link_is_external":"\u0412\u0432\u0435\u0434\u0435\u043d\u0435 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f \u0441\u0445\u043e\u0436\u0435 \u043d\u0430 \u0437\u043e\u0432\u043d\u0456\u0448\u043d\u0454 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f, \u0432\u0438 \u0431\u0430\u0436\u0430\u0454\u0442\u0435 \u0434\u043e\u0434\u0430\u0442\u0438 \u043f\u043e\u0442\u0440\u0456\u0431\u043d\u0438\u0439 \u043f\u0440\u0435\u0444\u0456\u043a\u0441 http://?","link_is_email":"\u0412\u0432\u0435\u0434\u0435\u043d\u0435 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f \u0441\u0445\u043e\u0436\u0435 \u043d\u0430 \u0430\u0434\u0440\u0435\u0441\u0443 \u0435\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u0457 \u043f\u043e\u0448\u0442\u0438, \u0432\u0438 \u0431\u0430\u0436\u0430\u0454\u0442\u0435 \u0434\u043e\u0434\u0430\u0442\u0438 \u043f\u043e\u0442\u0440\u0456\u0431\u043d\u0438\u0439 \u043f\u0440\u0435\u0444\u0456\u043a\u0441 mailto:?","link_titlefield":"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a","link_target_blank":"\u043d\u043e\u0432\u043e\u043c\u0443 \u0432\u0456\u043a\u043d\u0456","link_target_same":"\u0446\u044c\u043e\u043c\u0443 \u0436 \u0432\u0456\u043a\u043d\u0456","link_target":"\u0412\u0456\u0434\u043a\u0440\u0438\u0442\u0438 \u0432","link_url":"\u0410\u0434\u0440\u0435\u0441\u0430 ","link_title":"\u0414\u043e\u0434\u0430\u0442\u0438/\u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f","image_align_right":"\u041f\u043e \u043f\u0440\u0430\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","image_align_left":"\u041f\u043e \u043b\u0456\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","image_align_textbottom":"\u041f\u043e \u043d\u0438\u0436\u043d\u044c\u043e\u043c\u0443 \u043a\u0440\u0430\u044e \u0442\u0435\u043a\u0441\u0442\u0443","image_align_texttop":"\u041f\u043e \u0432\u0435\u0440\u0445\u043d\u044c\u043e\u043c\u0443 \u043a\u0440\u0430\u044e \u0442\u0435\u043a\u0441\u0442\u0443","image_align_bottom":"\u041f\u043e \u043d\u0438\u0436\u043d\u044c\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","image_align_middle":"\u041f\u043e \u0446\u0435\u043d\u0442\u0440\u0443","image_align_top":"\u041f\u043e \u0432\u0435\u0440\u0445\u043d\u044c\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","image_align_baseline":"\u041f\u043e \u0431\u0430\u0437\u043e\u0432\u0456\u0439 \u043b\u0456\u043d\u0456\u0457","image_align":"\u0412\u0438\u0440\u0456\u0432\u043d\u044e\u0432\u0430\u043d\u043d\u044f","image_hspace":"\u0413\u043e\u0440\u0438\u0437. \u0432\u0456\u0434\u0441\u0442\u0443\u043f","image_vspace":"\u0412\u0435\u0440\u0442. \u0432\u0456\u0434\u0441\u0442\u0443\u043f","image_dimensions":"\u0420\u043e\u0437\u043c\u0456\u0440\u0438","image_alt":"\u041e\u043f\u0438\u0441","image_list":"\u0421\u043f\u0438\u0441\u043e\u043a \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u044c","image_border":"\u0420\u0430\u043c\u043a\u0430","image_src":"\u0410\u0434\u0440\u0435\u0441\u0430","image_title":"\u0414\u043e\u0434\u0430\u0442\u0438/\u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f","charmap_title":"\u0412\u0438\u0431\u0440\u0430\u0442\u0438 \u0434\u043e\u0432\u0456\u043b\u044c\u043d\u0438\u0439 \u0441\u0438\u043c\u0432\u043e\u043b","colorpicker_name":"\u041d\u0430\u0437\u0432\u0430:","colorpicker_color":"\u041a\u043e\u043b\u0456\u0440:","colorpicker_named_title":"\u0417\u0430 \u043d\u0430\u0437\u0432\u043e\u044e","colorpicker_named_tab":"\u0417\u0430 \u043d\u0430\u0437\u0432\u043e\u044e","colorpicker_palette_title":"\u041f\u0430\u043b\u0456\u0442\u0440\u0430 \u043a\u043e\u043b\u044c\u043e\u0440\u0456\u0432","colorpicker_palette_tab":"\u041f\u0430\u043b\u0456\u0442\u0440\u0430","colorpicker_picker_title":"\u041f\u0456\u043f\u0435\u0442\u043a\u0430 \u043a\u043e\u043b\u044c\u043e\u0440\u0443","colorpicker_picker_tab":"\u041f\u0456\u043f\u0435\u0442\u043a\u0430","colorpicker_title":"\u0412\u0438\u0431\u0440\u0430\u0442\u0438 \u043a\u043e\u043b\u0456\u0440","code_wordwrap":"\u041f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u0442\u0438 \u0441\u043b\u043e\u0432\u0430","code_title":"\u0420\u0435\u0434\u0430\u043a\u0442\u043e\u0440 HTML \u043a\u043e\u0434\u0443","anchor_name":"\u041d\u0430\u0437\u0432\u0430 \u044f\u043a\u043e\u0440\u044f","anchor_title":"\u0414\u043e\u0434\u0430\u0442\u0438/\u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u044f\u043a\u0456\u0440","about_loaded":"\u0417\u0430\u0432\u0430\u043d\u0442\u0430\u0436\u0435\u043d\u0456 \u0434\u043e\u0434\u0430\u0442\u043a\u0438","about_version":"\u0412\u0435\u0440\u0441\u0456\u044f","about_author":"\u0410\u0432\u0442\u043e\u0440","about_plugin":"\u0414\u043e\u0434\u0430\u0442\u043e\u043a","about_plugins":"\u0414\u043e\u0434\u0430\u0442\u043a\u0438","about_license":"\u041b\u0456\u0446\u0435\u043d\u0437\u0456\u044f","about_help":"\u0414\u043e\u043f\u043e\u043c\u043e\u0433\u0430","about_general":"\u041f\u0440\u043e \u043f\u0440\u043e\u0434\u0443\u043a\u0442...","about_title":"\u041f\u0440\u043e \u043f\u0440\u043e\u0434\u0443\u043a\u0442 TinyMCE","anchor_invalid":"\u0412\u0432\u0435\u0434\u0456\u0442\u044c \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u0435 \u0456\u043c\'\u044f \u0434\u043b\u044f \u044f\u043a\u0456\u0440\u0430.","accessibility_usage_title":"\u0417\u0430\u0433\u0430\u043b\u044c\u043d\u0435 \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u0430\u043d\u043d\u044f","charmap_usage":"Use left and right arrows to navigate.","accessibility_help":"Accessibility Help"}); \ No newline at end of file
+tinyMCE.addI18n('uk.advanced_dlg',{"link_list":"\u0421\u043f\u0438\u0441\u043e\u043a \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u044c","link_is_external":"\u0412\u0432\u0435\u0434\u0435\u043d\u0435 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f \u0441\u0445\u043e\u0436\u0435 \u043d\u0430 \u0437\u043e\u0432\u043d\u0456\u0448\u043d\u0454 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f, \u0432\u0438 \u0431\u0430\u0436\u0430\u0454\u0442\u0435 \u0434\u043e\u0434\u0430\u0442\u0438 \u043f\u043e\u0442\u0440\u0456\u0431\u043d\u0438\u0439 \u043f\u0440\u0435\u0444\u0456\u043a\u0441 http://?","link_is_email":"\u0412\u0432\u0435\u0434\u0435\u043d\u0435 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f \u0441\u0445\u043e\u0436\u0435 \u043d\u0430 \u0430\u0434\u0440\u0435\u0441\u0443 \u0435\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u0457 \u043f\u043e\u0448\u0442\u0438, \u0432\u0438 \u0431\u0430\u0436\u0430\u0454\u0442\u0435 \u0434\u043e\u0434\u0430\u0442\u0438 \u043f\u043e\u0442\u0440\u0456\u0431\u043d\u0438\u0439 \u043f\u0440\u0435\u0444\u0456\u043a\u0441 mailto:?","link_titlefield":"\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a","link_target_blank":"\u043d\u043e\u0432\u043e\u043c\u0443 \u0432\u0456\u043a\u043d\u0456","link_target_same":"\u0446\u044c\u043e\u043c\u0443 \u0436 \u0432\u0456\u043a\u043d\u0456","link_target":"\u0412\u0456\u0434\u043a\u0440\u0438\u0442\u0438 \u0432","link_url":"\u0410\u0434\u0440\u0435\u0441\u0430 ","link_title":"\u0414\u043e\u0434\u0430\u0442\u0438/\u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f","image_align_right":"\u041f\u043e \u043f\u0440\u0430\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","image_align_left":"\u041f\u043e \u043b\u0456\u0432\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","image_align_textbottom":"\u041f\u043e \u043d\u0438\u0436\u043d\u044c\u043e\u043c\u0443 \u043a\u0440\u0430\u044e \u0442\u0435\u043a\u0441\u0442\u0443","image_align_texttop":"\u041f\u043e \u0432\u0435\u0440\u0445\u043d\u044c\u043e\u043c\u0443 \u043a\u0440\u0430\u044e \u0442\u0435\u043a\u0441\u0442\u0443","image_align_bottom":"\u041f\u043e \u043d\u0438\u0436\u043d\u044c\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","image_align_middle":"\u041f\u043e \u0446\u0435\u043d\u0442\u0440\u0443","image_align_top":"\u041f\u043e \u0432\u0435\u0440\u0445\u043d\u044c\u043e\u043c\u0443 \u043a\u0440\u0430\u044e","image_align_baseline":"\u041f\u043e \u0431\u0430\u0437\u043e\u0432\u0456\u0439 \u043b\u0456\u043d\u0456\u0457","image_align":"\u0412\u0438\u0440\u0456\u0432\u043d\u044e\u0432\u0430\u043d\u043d\u044f","image_hspace":"\u0413\u043e\u0440\u0438\u0437. \u0432\u0456\u0434\u0441\u0442\u0443\u043f","image_vspace":"\u0412\u0435\u0440\u0442. \u0432\u0456\u0434\u0441\u0442\u0443\u043f","image_dimensions":"\u0420\u043e\u0437\u043c\u0456\u0440\u0438","image_alt":"\u041e\u043f\u0438\u0441","image_list":"\u0421\u043f\u0438\u0441\u043e\u043a \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u044c","image_border":"\u0420\u0430\u043c\u043a\u0430","image_src":"\u0410\u0434\u0440\u0435\u0441\u0430","image_title":"\u0414\u043e\u0434\u0430\u0442\u0438/\u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u043d\u044f","charmap_title":"\u0412\u0438\u0431\u0440\u0430\u0442\u0438 \u0434\u043e\u0432\u0456\u043b\u044c\u043d\u0438\u0439 \u0441\u0438\u043c\u0432\u043e\u043b","colorpicker_name":"\u041d\u0430\u0437\u0432\u0430:","colorpicker_color":"\u041a\u043e\u043b\u0456\u0440:","colorpicker_named_title":"\u0417\u0430 \u043d\u0430\u0437\u0432\u043e\u044e","colorpicker_named_tab":"\u0417\u0430 \u043d\u0430\u0437\u0432\u043e\u044e","colorpicker_palette_title":"\u041f\u0430\u043b\u0456\u0442\u0440\u0430 \u043a\u043e\u043b\u044c\u043e\u0440\u0456\u0432","colorpicker_palette_tab":"\u041f\u0430\u043b\u0456\u0442\u0440\u0430","colorpicker_picker_title":"\u041f\u0456\u043f\u0435\u0442\u043a\u0430 \u043a\u043e\u043b\u044c\u043e\u0440\u0443","colorpicker_picker_tab":"\u041f\u0456\u043f\u0435\u0442\u043a\u0430","colorpicker_title":"\u0412\u0438\u0431\u0440\u0430\u0442\u0438 \u043a\u043e\u043b\u0456\u0440","code_wordwrap":"\u041f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u0442\u0438 \u0441\u043b\u043e\u0432\u0430","code_title":"\u0420\u0435\u0434\u0430\u043a\u0442\u043e\u0440 HTML \u043a\u043e\u0434\u0443","anchor_name":"\u041d\u0430\u0437\u0432\u0430 \u044f\u043a\u043e\u0440\u044f","anchor_title":"\u0414\u043e\u0434\u0430\u0442\u0438/\u0437\u043c\u0456\u043d\u0438\u0442\u0438 \u044f\u043a\u0456\u0440","about_loaded":"\u0417\u0430\u0432\u0430\u043d\u0442\u0430\u0436\u0435\u043d\u0456 \u0434\u043e\u0434\u0430\u0442\u043a\u0438","about_version":"\u0412\u0435\u0440\u0441\u0456\u044f","about_author":"\u0410\u0432\u0442\u043e\u0440","about_plugin":"\u0414\u043e\u0434\u0430\u0442\u043e\u043a","about_plugins":"\u0414\u043e\u0434\u0430\u0442\u043a\u0438","about_license":"\u041b\u0456\u0446\u0435\u043d\u0437\u0456\u044f","about_help":"\u0414\u043e\u043f\u043e\u043c\u043e\u0433\u0430","about_general":"\u041f\u0440\u043e \u043f\u0440\u043e\u0434\u0443\u043a\u0442...","about_title":"\u041f\u0440\u043e \u043f\u0440\u043e\u0434\u0443\u043a\u0442 TinyMCE","charmap_usage":"\u0412\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u043e\u0432\u0443\u0439\u0442\u0435 \u0441\u0442\u0440\u0456\u043b\u043a\u0438 \u0432\u043b\u0456\u0432\u043e \u0442\u0430 \u0432\u043f\u0440\u0430\u0432\u043e \u0434\u043b\u044f \u043d\u0430\u0432\u0456\u0433\u0430\u0446\u0456\u0457","anchor_invalid":"\u0412\u0432\u0435\u0434\u0456\u0442\u044c \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u0435 \u0456\u043c\'\u044f \u0434\u043b\u044f \u044f\u043a\u0456\u0440\u0430.","accessibility_help":"\u0414\u043e\u043f\u043e\u043c\u043e\u0433\u0430 \u043f\u043e \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0456","accessibility_usage_title":"\u0417\u0430\u0433\u0430\u043b\u044c\u043d\u0435 \u0432\u0438\u043a\u043e\u0440\u0438\u0441\u0442\u0430\u043d\u043d\u044f","invalid_color_value":"\u041d\u0435\u043a\u043e\u0440\u0435\u043a\u0442\u043d\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u043d\u044f \u043a\u043e\u043b\u044c\u043e\u0440\u0443"}); \ No newline at end of file
diff --git a/program/js/tiny_mce/themes/advanced/skins/default/content.css b/program/js/tiny_mce/themes/advanced/skins/default/content.css
index 52a1d67e2..2fd94a1f9 100644
--- a/program/js/tiny_mce/themes/advanced/skins/default/content.css
+++ b/program/js/tiny_mce/themes/advanced/skins/default/content.css
@@ -48,4 +48,3 @@ font[face=mceinline] {font-family:inherit !important}
.mceItemEmbeddedAudio {background-image:url(../../img/video.gif)}
.mceItemIframe {background-image:url(../../img/iframe.gif)}
.mcePageBreak {display:block;border:0;width:100%;height:12px;border-top:1px dotted #ccc;margin-top:15px;background:#fff url(../../img/pagebreak.gif) no-repeat center top;}
-.mceHideBrInPre pre br {display: none}
diff --git a/program/js/tiny_mce/themes/advanced/skins/highcontrast/content.css b/program/js/tiny_mce/themes/advanced/skins/highcontrast/content.css
index fe09e2141..cbce6c6a2 100644
--- a/program/js/tiny_mce/themes/advanced/skins/highcontrast/content.css
+++ b/program/js/tiny_mce/themes/advanced/skins/highcontrast/content.css
@@ -22,4 +22,3 @@ abbr {border-bottom:1px dashed #CCC; cursor:help}
img:-moz-broken {-moz-force-broken-image-icon:1; width:24px; height:24px}
font[face=mceinline] {font-family:inherit !important}
*[contentEditable]:focus {outline:0}
-.mceHideBrInPre pre br {display: none}
diff --git a/program/js/tiny_mce/themes/advanced/skins/o2k7/content.css b/program/js/tiny_mce/themes/advanced/skins/o2k7/content.css
index 3537c8bc0..a1a8f9bd3 100644
--- a/program/js/tiny_mce/themes/advanced/skins/o2k7/content.css
+++ b/program/js/tiny_mce/themes/advanced/skins/o2k7/content.css
@@ -46,4 +46,3 @@ font[face=mceinline] {font-family:inherit !important}
.mceItemAudio {background-image:url(../../img/video.gif)}
.mceItemIframe {background-image:url(../../img/iframe.gif)}
.mcePageBreak {display:block;border:0;width:100%;height:12px;border-top:1px dotted #ccc;margin-top:15px;background:#fff url(../../img/pagebreak.gif) no-repeat center top;}
-.mceHideBrInPre pre br {display: none}
diff --git a/program/js/tiny_mce/themes/advanced/source_editor.htm b/program/js/tiny_mce/themes/advanced/source_editor.htm
index 3c6d65808..dd973fcc0 100644
--- a/program/js/tiny_mce/themes/advanced/source_editor.htm
+++ b/program/js/tiny_mce/themes/advanced/source_editor.htm
@@ -4,7 +4,7 @@
<script type="text/javascript" src="../../tiny_mce_popup.js"></script>
<script type="text/javascript" src="js/source_editor.js"></script>
</head>
-<body onresize="resizeInputs();" style="display:none; overflow:hidden;">
+<body onresize="resizeInputs();" style="display:none; overflow:hidden;" spellcheck="false">
<form name="source" onsubmit="saveContent();return false;" action="#">
<div style="float: left" class="title"><label for="htmlSource">{#advanced_dlg.code_title}</label></div>
diff --git a/program/js/tiny_mce/tiny_mce.js b/program/js/tiny_mce/tiny_mce.js
index ddf9c9476..af5a80293 100644
--- a/program/js/tiny_mce/tiny_mce.js
+++ b/program/js/tiny_mce/tiny_mce.js
@@ -1 +1 @@
-(function(e){var a=/^\s*|\s*$/g,b,d="B".replace(/A(.)|B/,"$1")==="$1";var c={majorVersion:"3",minorVersion:"5.2",releaseDate:"2012-05-31",_init:function(){var s=this,q=document,o=navigator,g=o.userAgent,m,f,l,k,j,r;s.isOpera=e.opera&&opera.buildNumber;s.isWebKit=/WebKit/.test(g);s.isIE=!s.isWebKit&&!s.isOpera&&(/MSIE/gi).test(g)&&(/Explorer/gi).test(o.appName);s.isIE6=s.isIE&&/MSIE [56]/.test(g);s.isIE7=s.isIE&&/MSIE [7]/.test(g);s.isIE8=s.isIE&&/MSIE [8]/.test(g);s.isIE9=s.isIE&&/MSIE [9]/.test(g);s.isGecko=!s.isWebKit&&/Gecko/.test(g);s.isMac=g.indexOf("Mac")!=-1;s.isAir=/adobeair/i.test(g);s.isIDevice=/(iPad|iPhone)/.test(g);s.isIOS5=s.isIDevice&&g.match(/AppleWebKit\/(\d*)/)[1]>=534;if(e.tinyMCEPreInit){s.suffix=tinyMCEPreInit.suffix;s.baseURL=tinyMCEPreInit.base;s.query=tinyMCEPreInit.query;return}s.suffix="";f=q.getElementsByTagName("base");for(m=0;m<f.length;m++){r=f[m].href;if(r){if(/^https?:\/\/[^\/]+$/.test(r)){r+="/"}k=r?r.match(/.*\//)[0]:""}}function h(i){if(i.src&&/tiny_mce(|_gzip|_jquery|_prototype|_full)(_dev|_src)?.js/.test(i.src)){if(/_(src|dev)\.js/g.test(i.src)){s.suffix="_src"}if((j=i.src.indexOf("?"))!=-1){s.query=i.src.substring(j+1)}s.baseURL=i.src.substring(0,i.src.lastIndexOf("/"));if(k&&s.baseURL.indexOf("://")==-1&&s.baseURL.indexOf("/")!==0){s.baseURL=k+s.baseURL}return s.baseURL}return null}f=q.getElementsByTagName("script");for(m=0;m<f.length;m++){if(h(f[m])){return}}l=q.getElementsByTagName("head")[0];if(l){f=l.getElementsByTagName("script");for(m=0;m<f.length;m++){if(h(f[m])){return}}}return},is:function(g,f){if(!f){return g!==b}if(f=="array"&&(g.hasOwnProperty&&g instanceof Array)){return true}return typeof(g)==f},makeMap:function(f,j,h){var g;f=f||[];j=j||",";if(typeof(f)=="string"){f=f.split(j)}h=h||{};g=f.length;while(g--){h[f[g]]={}}return h},each:function(i,f,h){var j,g;if(!i){return 0}h=h||i;if(i.length!==b){for(j=0,g=i.length;j<g;j++){if(f.call(h,i[j],j,i)===false){return 0}}}else{for(j in i){if(i.hasOwnProperty(j)){if(f.call(h,i[j],j,i)===false){return 0}}}}return 1},map:function(g,h){var i=[];c.each(g,function(f){i.push(h(f))});return i},grep:function(g,h){var i=[];c.each(g,function(f){if(!h||h(f)){i.push(f)}});return i},inArray:function(g,h){var j,f;if(g){for(j=0,f=g.length;j<f;j++){if(g[j]===h){return j}}}return -1},extend:function(n,k){var j,f,h,g=arguments,m;for(j=1,f=g.length;j<f;j++){k=g[j];for(h in k){if(k.hasOwnProperty(h)){m=k[h];if(m!==b){n[h]=m}}}}return n},trim:function(f){return(f?""+f:"").replace(a,"")},create:function(o,f,j){var n=this,g,i,k,l,h,m=0;o=/^((static) )?([\w.]+)(:([\w.]+))?/.exec(o);k=o[3].match(/(^|\.)(\w+)$/i)[2];i=n.createNS(o[3].replace(/\.\w+$/,""),j);if(i[k]){return}if(o[2]=="static"){i[k]=f;if(this.onCreate){this.onCreate(o[2],o[3],i[k])}return}if(!f[k]){f[k]=function(){};m=1}i[k]=f[k];n.extend(i[k].prototype,f);if(o[5]){g=n.resolve(o[5]).prototype;l=o[5].match(/\.(\w+)$/i)[1];h=i[k];if(m){i[k]=function(){return g[l].apply(this,arguments)}}else{i[k]=function(){this.parent=g[l];return h.apply(this,arguments)}}i[k].prototype[k]=i[k];n.each(g,function(p,q){i[k].prototype[q]=g[q]});n.each(f,function(p,q){if(g[q]){i[k].prototype[q]=function(){this.parent=g[q];return p.apply(this,arguments)}}else{if(q!=k){i[k].prototype[q]=p}}})}n.each(f["static"],function(p,q){i[k][q]=p});if(this.onCreate){this.onCreate(o[2],o[3],i[k].prototype)}},walk:function(i,h,j,g){g=g||this;if(i){if(j){i=i[j]}c.each(i,function(k,f){if(h.call(g,k,f,j)===false){return false}c.walk(k,h,j,g)})}},createNS:function(j,h){var g,f;h=h||e;j=j.split(".");for(g=0;g<j.length;g++){f=j[g];if(!h[f]){h[f]={}}h=h[f]}return h},resolve:function(j,h){var g,f;h=h||e;j=j.split(".");for(g=0,f=j.length;g<f;g++){h=h[j[g]];if(!h){break}}return h},addUnload:function(j,i){var h=this,g;g=function(){var f=h.unloads,l,m;if(f){for(m in f){l=f[m];if(l&&l.func){l.func.call(l.scope,1)}}if(e.detachEvent){e.detachEvent("onbeforeunload",k);e.detachEvent("onunload",g)}else{if(e.removeEventListener){e.removeEventListener("unload",g,false)}}h.unloads=l=f=w=g=0;if(e.CollectGarbage){CollectGarbage()}}};function k(){var l=document;function f(){l.detachEvent("onstop",f);if(g){g()}l=0}if(l.readyState=="interactive"){if(l){l.attachEvent("onstop",f)}e.setTimeout(function(){if(l){l.detachEvent("onstop",f)}},0)}}j={func:j,scope:i||this};if(!h.unloads){if(e.attachEvent){e.attachEvent("onunload",g);e.attachEvent("onbeforeunload",k)}else{if(e.addEventListener){e.addEventListener("unload",g,false)}}h.unloads=[j]}else{h.unloads.push(j)}return j},removeUnload:function(i){var g=this.unloads,h=null;c.each(g,function(j,f){if(j&&j.func==i){g.splice(f,1);h=i;return false}});return h},explode:function(f,g){if(!f||c.is(f,"array")){return f}return c.map(f.split(g||","),c.trim)},_addVer:function(g){var f;if(!this.query){return g}f=(g.indexOf("?")==-1?"?":"&")+this.query;if(g.indexOf("#")==-1){return g+f}return g.replace("#",f+"#")},_replace:function(h,f,g){if(d){return g.replace(h,function(){var l=f,j=arguments,k;for(k=0;k<j.length-2;k++){if(j[k]===b){l=l.replace(new RegExp("\\$"+k,"g"),"")}else{l=l.replace(new RegExp("\\$"+k,"g"),j[k])}}return l})}return g.replace(h,f)}};c._init();e.tinymce=e.tinyMCE=c})(window);tinymce.create("tinymce.util.Dispatcher",{scope:null,listeners:null,inDispatch:false,Dispatcher:function(a){this.scope=a||this;this.listeners=[]},add:function(b,a){this.listeners.push({cb:b,scope:a||this.scope});return b},addToTop:function(d,b){var a=this,c={cb:d,scope:b||a.scope};if(a.inDispatch){a.listeners=[c].concat(a.listeners)}else{a.listeners.unshift(c)}return d},remove:function(c){var b=this.listeners,a=null;tinymce.each(b,function(e,d){if(c==e.cb){a=e;b.splice(d,1);return false}});return a},dispatch:function(){var a=this,e,b=arguments,c,d=a.listeners,f;a.inDispatch=true;for(c=0;c<d.length;c++){f=d[c];e=f.cb.apply(f.scope,b.length>0?b:[f.scope]);if(e===false){break}}a.inDispatch=false;return e}});(function(){var a=tinymce.each;tinymce.create("tinymce.util.URI",{URI:function(e,g){var f=this,i,d,c,h;e=tinymce.trim(e);g=f.settings=g||{};if(/^([\w\-]+):([^\/]{2})/i.test(e)||/^\s*#/.test(e)){f.source=e;return}if(e.indexOf("/")===0&&e.indexOf("//")!==0){e=(g.base_uri?g.base_uri.protocol||"http":"http")+"://mce_host"+e}if(!/^[\w\-]*:?\/\//.test(e)){h=g.base_uri?g.base_uri.path:new tinymce.util.URI(location.href).directory;e=((g.base_uri&&g.base_uri.protocol)||"http")+"://mce_host"+f.toAbsPath(h,e)}e=e.replace(/@@/g,"(mce_at)");e=/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@\/]*):?([^:@\/]*))?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/.exec(e);a(["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],function(b,j){var k=e[j];if(k){k=k.replace(/\(mce_at\)/g,"@@")}f[b]=k});c=g.base_uri;if(c){if(!f.protocol){f.protocol=c.protocol}if(!f.userInfo){f.userInfo=c.userInfo}if(!f.port&&f.host==="mce_host"){f.port=c.port}if(!f.host||f.host==="mce_host"){f.host=c.host}f.source=""}},setPath:function(c){var b=this;c=/^(.*?)\/?(\w+)?$/.exec(c);b.path=c[0];b.directory=c[1];b.file=c[2];b.source="";b.getURI()},toRelative:function(b){var d=this,f;if(b==="./"){return b}b=new tinymce.util.URI(b,{base_uri:d});if((b.host!="mce_host"&&d.host!=b.host&&b.host)||d.port!=b.port||d.protocol!=b.protocol){return b.getURI()}var c=d.getURI(),e=b.getURI();if(c==e||(c.charAt(c.length-1)=="/"&&c.substr(0,c.length-1)==e)){return c}f=d.toRelPath(d.path,b.path);if(b.query){f+="?"+b.query}if(b.anchor){f+="#"+b.anchor}return f},toAbsolute:function(b,c){b=new tinymce.util.URI(b,{base_uri:this});return b.getURI(this.host==b.host&&this.protocol==b.protocol?c:0)},toRelPath:function(g,h){var c,f=0,d="",e,b;g=g.substring(0,g.lastIndexOf("/"));g=g.split("/");c=h.split("/");if(g.length>=c.length){for(e=0,b=g.length;e<b;e++){if(e>=c.length||g[e]!=c[e]){f=e+1;break}}}if(g.length<c.length){for(e=0,b=c.length;e<b;e++){if(e>=g.length||g[e]!=c[e]){f=e+1;break}}}if(f===1){return h}for(e=0,b=g.length-(f-1);e<b;e++){d+="../"}for(e=f-1,b=c.length;e<b;e++){if(e!=f-1){d+="/"+c[e]}else{d+=c[e]}}return d},toAbsPath:function(e,f){var c,b=0,h=[],d,g;d=/\/$/.test(f)?"/":"";e=e.split("/");f=f.split("/");a(e,function(i){if(i){h.push(i)}});e=h;for(c=f.length-1,h=[];c>=0;c--){if(f[c].length===0||f[c]==="."){continue}if(f[c]===".."){b++;continue}if(b>0){b--;continue}h.push(f[c])}c=e.length-b;if(c<=0){g=h.reverse().join("/")}else{g=e.slice(0,c).join("/")+"/"+h.reverse().join("/")}if(g.indexOf("/")!==0){g="/"+g}if(d&&g.lastIndexOf("/")!==g.length-1){g+=d}return g},getURI:function(d){var c,b=this;if(!b.source||d){c="";if(!d){if(b.protocol){c+=b.protocol+"://"}if(b.userInfo){c+=b.userInfo+"@"}if(b.host){c+=b.host}if(b.port){c+=":"+b.port}}if(b.path){c+=b.path}if(b.query){c+="?"+b.query}if(b.anchor){c+="#"+b.anchor}b.source=c}return b.source}})})();(function(){var a=tinymce.each;tinymce.create("static tinymce.util.Cookie",{getHash:function(d){var b=this.get(d),c;if(b){a(b.split("&"),function(e){e=e.split("=");c=c||{};c[unescape(e[0])]=unescape(e[1])})}return c},setHash:function(j,b,g,f,i,c){var h="";a(b,function(e,d){h+=(!h?"":"&")+escape(d)+"="+escape(e)});this.set(j,h,g,f,i,c)},get:function(i){var h=document.cookie,g,f=i+"=",d;if(!h){return}d=h.indexOf("; "+f);if(d==-1){d=h.indexOf(f);if(d!==0){return null}}else{d+=2}g=h.indexOf(";",d);if(g==-1){g=h.length}return unescape(h.substring(d+f.length,g))},set:function(i,b,g,f,h,c){document.cookie=i+"="+escape(b)+((g)?"; expires="+g.toGMTString():"")+((f)?"; path="+escape(f):"")+((h)?"; domain="+h:"")+((c)?"; secure":"")},remove:function(c,e,d){var b=new Date();b.setTime(b.getTime()-1000);this.set(c,"",b,e,d)}})})();(function(){function serialize(o,quote){var i,v,t,name;quote=quote||'"';if(o==null){return"null"}t=typeof o;if(t=="string"){v="\bb\tt\nn\ff\rr\"\"''\\\\";return quote+o.replace(/([\u0080-\uFFFF\x00-\x1f\"\'\\])/g,function(a,b){if(quote==='"'&&a==="'"){return a}i=v.indexOf(b);if(i+1){return"\\"+v.charAt(i+1)}a=b.charCodeAt().toString(16);return"\\u"+"0000".substring(a.length)+a})+quote}if(t=="object"){if(o.hasOwnProperty&&o instanceof Array){for(i=0,v="[";i<o.length;i++){v+=(i>0?",":"")+serialize(o[i],quote)}return v+"]"}v="{";for(name in o){if(o.hasOwnProperty(name)){v+=typeof o[name]!="function"?(v.length>1?","+quote:quote)+name+quote+":"+serialize(o[name],quote):""}}return v+"}"}return""+o}tinymce.util.JSON={serialize:serialize,parse:function(s){try{return eval("("+s+")")}catch(ex){}}}})();tinymce.create("static tinymce.util.XHR",{send:function(g){var a,e,b=window,h=0;function f(){if(!g.async||a.readyState==4||h++>10000){if(g.success&&h<10000&&a.status==200){g.success.call(g.success_scope,""+a.responseText,a,g)}else{if(g.error){g.error.call(g.error_scope,h>10000?"TIMED_OUT":"GENERAL",a,g)}}a=null}else{b.setTimeout(f,10)}}g.scope=g.scope||this;g.success_scope=g.success_scope||g.scope;g.error_scope=g.error_scope||g.scope;g.async=g.async===false?false:true;g.data=g.data||"";function d(i){a=0;try{a=new ActiveXObject(i)}catch(c){}return a}a=b.XMLHttpRequest?new XMLHttpRequest():d("Microsoft.XMLHTTP")||d("Msxml2.XMLHTTP");if(a){if(a.overrideMimeType){a.overrideMimeType(g.content_type)}a.open(g.type||(g.data?"POST":"GET"),g.url,g.async);if(g.content_type){a.setRequestHeader("Content-Type",g.content_type)}a.setRequestHeader("X-Requested-With","XMLHttpRequest");a.send(g.data);if(!g.async){return f()}e=b.setTimeout(f,10)}}});(function(){var c=tinymce.extend,b=tinymce.util.JSON,a=tinymce.util.XHR;tinymce.create("tinymce.util.JSONRequest",{JSONRequest:function(d){this.settings=c({},d);this.count=0},send:function(f){var e=f.error,d=f.success;f=c(this.settings,f);f.success=function(h,g){h=b.parse(h);if(typeof(h)=="undefined"){h={error:"JSON Parse error."}}if(h.error){e.call(f.error_scope||f.scope,h.error,g)}else{d.call(f.success_scope||f.scope,h.result)}};f.error=function(h,g){if(e){e.call(f.error_scope||f.scope,h,g)}};f.data=b.serialize({id:f.id||"c"+(this.count++),method:f.method,params:f.params});f.content_type="application/json";a.send(f)},"static":{sendRPC:function(d){return new tinymce.util.JSONRequest().send(d)}}})}());(function(a){a.VK={BACKSPACE:8,DELETE:46,DOWN:40,ENTER:13,LEFT:37,RIGHT:39,SPACEBAR:32,TAB:9,UP:38,modifierPressed:function(b){return b.shiftKey||b.ctrlKey||b.altKey}}})(tinymce);tinymce.util.Quirks=function(d){var l=tinymce.VK,r=l.BACKSPACE,s=l.DELETE,o=d.dom,A=d.selection,q=d.settings;function c(E,D){try{d.getDoc().execCommand(E,false,D)}catch(C){}}function h(){function C(F){var D,H,E,G;D=A.getRng();H=o.getParent(D.startContainer,o.isBlock);if(F){H=o.getNext(H,o.isBlock)}if(H){E=H.firstChild;while(E&&E.nodeType==3&&E.nodeValue.length===0){E=E.nextSibling}if(E&&E.nodeName==="SPAN"){G=E.cloneNode(false)}}d.getDoc().execCommand(F?"ForwardDelete":"Delete",false,null);H=o.getParent(D.startContainer,o.isBlock);tinymce.each(o.select("span.Apple-style-span,font.Apple-style-span",H),function(I){var J=A.getBookmark();if(G){o.replace(G.cloneNode(false),I,true)}else{o.remove(I,true)}A.moveToBookmark(J)})}d.onKeyDown.add(function(D,F){var E;E=F.keyCode==s;if(!F.isDefaultPrevented()&&(E||F.keyCode==r)&&!l.modifierPressed(F)){F.preventDefault();C(E)}});d.addCommand("Delete",function(){C()})}function B(){function D(F,I){var E,H,G=I?"start":"end";E=F[G+"Container"];H=F[G+"Offset"];if(E.nodeType==1&&E.hasChildNodes()){E=E.childNodes[Math.min(I?H:(H>0?H-1:0),E.childNodes.length-1)]}return E}function C(H,L){var G,K,F,I,J=L?"start":"end",E;G=H[J+"Container"];K=H[J+"Offset"];F=o.getRoot();if(G.nodeType==1){E=K>=G.childNodes.length;G=D(H,L);if(G.nodeType==3){K=L&&!E?0:G.nodeValue.length}}if(G.nodeType==3&&((L&&K>0)||(!L&&K<G.nodeValue.length))){return false}while(G!==F){I=G.parentNode[L?"firstChild":"lastChild"];if(I.nodeName=="BR"){I=I[L?"nextSibling":"previousSibling"]||I}if(I!==G){return false}G=G.parentNode}return true}d.onKeyDown.addToTop(function(F,H){var E,G=H.keyCode;if(!H.isDefaultPrevented()&&(G==s||G==r)){E=A.getRng(true);if(C(E,true)&&C(E,false)&&(E.collapsed||o.findCommonAncestor(D(E,true),D(E))===o.getRoot())){F.setContent("");F.nodeChanged();H.preventDefault()}}})}function u(){if(!d.settings.content_editable){o.bind(d.getDoc(),"focusin",function(C){A.setRng(A.getRng())});o.bind(d.getDoc(),"mousedown",function(C){if(C.target==d.getDoc().documentElement){d.getWin().focus();A.setRng(A.getRng())}})}}function m(){d.onKeyDown.add(function(C,F){if(!F.isDefaultPrevented()&&F.keyCode===r){if(A.isCollapsed()&&A.getRng(true).startOffset===0){var E=A.getNode();var D=E.previousSibling;if(D&&D.nodeName&&D.nodeName.toLowerCase()==="hr"){o.remove(D);tinymce.dom.Event.cancel(F)}}}})}function b(){if(!Range.prototype.getClientRects){d.onMouseDown.add(function(D,E){if(E.target.nodeName==="HTML"){var C=D.getBody();C.blur();setTimeout(function(){C.focus()},0)}})}}function x(){d.onClick.add(function(C,D){D=D.target;if(/^(IMG|HR)$/.test(D.nodeName)){A.getSel().setBaseAndExtent(D,0,D,1)}if(D.nodeName=="A"&&o.hasClass(D,"mceItemAnchor")){A.select(D)}C.nodeChanged()})}function y(){function D(){var F=o.getAttribs(A.getStart().cloneNode(false));return function(){var G=A.getStart();if(G!==d.getBody()){o.setAttrib(G,"style",null);tinymce.each(F,function(H){G.setAttributeNode(H.cloneNode(true))})}}}function C(){return !A.isCollapsed()&&A.getStart()!=A.getEnd()}function E(F,G){G.preventDefault();return false}d.onKeyPress.add(function(F,H){var G;if((H.keyCode==8||H.keyCode==46)&&C()){G=D();F.getDoc().execCommand("delete",false,null);G();H.preventDefault();return false}});o.bind(d.getDoc(),"cut",function(G){var F;if(C()){F=D();d.onKeyUp.addToTop(E);setTimeout(function(){F();d.onKeyUp.remove(E)},0)}})}function i(){var D,C;o.bind(d.getDoc(),"selectionchange",function(){if(C){clearTimeout(C);C=0}C=window.setTimeout(function(){var E=A.getRng();if(!D||!tinymce.dom.RangeUtils.compareRanges(E,D)){d.nodeChanged();D=E}},50)})}function z(){document.body.setAttribute("role","application")}function v(){d.onKeyDown.add(function(C,E){if(!E.isDefaultPrevented()&&E.keyCode===r){if(A.isCollapsed()&&A.getRng(true).startOffset===0){var D=A.getNode().previousSibling;if(D&&D.nodeName&&D.nodeName.toLowerCase()==="table"){return tinymce.dom.Event.cancel(E)}}}})}function g(){var C=d.getDoc().documentMode;if(C&&C>7){return}c("RespectVisibilityInDesign",true);o.addClass(d.getBody(),"mceHideBrInPre");d.parser.addNodeFilter("pre",function(D,F){var G=D.length,I,E,J,H;while(G--){I=D[G].getAll("br");E=I.length;while(E--){J=I[E];H=J.prev;if(H&&H.type===3&&H.value.charAt(H.value-1)!="\n"){H.value+="\n"}else{J.parent.insert(new tinymce.html.Node("#text",3),J,true).value="\n"}}}});d.serializer.addNodeFilter("pre",function(D,F){var G=D.length,I,E,J,H;while(G--){I=D[G].getAll("br");E=I.length;while(E--){J=I[E];H=J.prev;if(H&&H.type==3){H.value=H.value.replace(/\r?\n$/,"")}}}})}function f(){o.bind(d.getBody(),"mouseup",function(E){var D,C=A.getNode();if(C.nodeName=="IMG"){if(D=o.getStyle(C,"width")){o.setAttrib(C,"width",D.replace(/[^0-9%]+/g,""));o.setStyle(C,"width","")}if(D=o.getStyle(C,"height")){o.setAttrib(C,"height",D.replace(/[^0-9%]+/g,""));o.setStyle(C,"height","")}}})}function p(){d.onKeyDown.add(function(I,J){var H,C,D,F,G,K,E;H=J.keyCode==s;if(!J.isDefaultPrevented()&&(H||J.keyCode==r)&&!l.modifierPressed(J)){C=A.getRng();D=C.startContainer;F=C.startOffset;E=C.collapsed;if(D.nodeType==3&&D.nodeValue.length>0&&((F===0&&!E)||(E&&F===(H?0:1)))){nonEmptyElements=I.schema.getNonEmptyElements();J.preventDefault();G=o.create("br",{id:"__tmp"});D.parentNode.insertBefore(G,D);I.getDoc().execCommand(H?"ForwardDelete":"Delete",false,null);D=A.getRng().startContainer;K=D.previousSibling;if(K&&K.nodeType==1&&!o.isBlock(K)&&o.isEmpty(K)&&!nonEmptyElements[K.nodeName.toLowerCase()]){o.remove(K)}o.remove("__tmp")}}})}function e(){d.onKeyDown.add(function(G,H){var E,D,I,C,F;if(H.isDefaultPrevented()||H.keyCode!=l.BACKSPACE){return}E=A.getRng();D=E.startContainer;I=E.startOffset;C=o.getRoot();F=D;if(!E.collapsed||I!==0){return}while(F&&F.parentNode&&F.parentNode.firstChild==F&&F.parentNode!=C){F=F.parentNode}if(F.tagName==="BLOCKQUOTE"){G.formatter.toggle("blockquote",null,F);E.setStart(D,0);E.setEnd(D,0);A.setRng(E);A.collapse(false)}})}function k(){function C(){d._refreshContentEditable();c("StyleWithCSS",false);c("enableInlineTableEditing",false);if(!q.object_resizing){c("enableObjectResizing",false)}}if(!q.readonly){d.onBeforeExecCommand.add(C);d.onMouseDown.add(C)}}function n(){function C(D,E){tinymce.each(o.select("a"),function(H){var F=H.parentNode,G=o.getRoot();if(F.lastChild===H){while(F&&!o.isBlock(F)){if(F.parentNode.lastChild!==F||F===G){return}F=F.parentNode}o.add(F,"br",{"data-mce-bogus":1})}})}d.onExecCommand.add(function(D,E){if(E==="CreateLink"){C(D)}});d.onSetContent.add(A.onSetContent.add(C))}function t(){if(q.forced_root_block){d.onInit.add(function(){c("DefaultParagraphSeparator",q.forced_root_block)})}}function a(){function C(E,D){if(!E||!D.initial){d.execCommand("mceRepaint")}}d.onUndo.add(C);d.onRedo.add(C);d.onSetContent.add(C)}function j(){d.onKeyDown.add(function(C,D){if(!D.isDefaultPrevented()&&D.keyCode==8&&A.getNode().nodeName=="IMG"){D.preventDefault();C.undoManager.beforeChange();o.remove(A.getNode());C.undoManager.add()}})}v();e();B();if(tinymce.isWebKit){p();h();u();x();t();if(tinymce.isIDevice){i()}}if(tinymce.isIE){m();z();g();f();j()}if(tinymce.isGecko){m();b();y();k();n();a()}};(function(j){var a,g,d,k=/[&<>\"\u007E-\uD7FF\uE000-\uFFEF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,b=/[<>&\u007E-\uD7FF\uE000-\uFFEF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,f=/[<>&\"\']/g,c=/&(#x|#)?([\w]+);/g,i={128:"\u20AC",130:"\u201A",131:"\u0192",132:"\u201E",133:"\u2026",134:"\u2020",135:"\u2021",136:"\u02C6",137:"\u2030",138:"\u0160",139:"\u2039",140:"\u0152",142:"\u017D",145:"\u2018",146:"\u2019",147:"\u201C",148:"\u201D",149:"\u2022",150:"\u2013",151:"\u2014",152:"\u02DC",153:"\u2122",154:"\u0161",155:"\u203A",156:"\u0153",158:"\u017E",159:"\u0178"};g={'"':"&quot;","'":"&#39;","<":"&lt;",">":"&gt;","&":"&amp;"};d={"&lt;":"<","&gt;":">","&amp;":"&","&quot;":'"',"&apos;":"'"};function h(l){var m;m=document.createElement("div");m.innerHTML=l;return m.textContent||m.innerText||l}function e(m,p){var n,o,l,q={};if(m){m=m.split(",");p=p||10;for(n=0;n<m.length;n+=2){o=String.fromCharCode(parseInt(m[n],p));if(!g[o]){l="&"+m[n+1]+";";q[o]=l;q[l]=o}}return q}}a=e("50,nbsp,51,iexcl,52,cent,53,pound,54,curren,55,yen,56,brvbar,57,sect,58,uml,59,copy,5a,ordf,5b,laquo,5c,not,5d,shy,5e,reg,5f,macr,5g,deg,5h,plusmn,5i,sup2,5j,sup3,5k,acute,5l,micro,5m,para,5n,middot,5o,cedil,5p,sup1,5q,ordm,5r,raquo,5s,frac14,5t,frac12,5u,frac34,5v,iquest,60,Agrave,61,Aacute,62,Acirc,63,Atilde,64,Auml,65,Aring,66,AElig,67,Ccedil,68,Egrave,69,Eacute,6a,Ecirc,6b,Euml,6c,Igrave,6d,Iacute,6e,Icirc,6f,Iuml,6g,ETH,6h,Ntilde,6i,Ograve,6j,Oacute,6k,Ocirc,6l,Otilde,6m,Ouml,6n,times,6o,Oslash,6p,Ugrave,6q,Uacute,6r,Ucirc,6s,Uuml,6t,Yacute,6u,THORN,6v,szlig,70,agrave,71,aacute,72,acirc,73,atilde,74,auml,75,aring,76,aelig,77,ccedil,78,egrave,79,eacute,7a,ecirc,7b,euml,7c,igrave,7d,iacute,7e,icirc,7f,iuml,7g,eth,7h,ntilde,7i,ograve,7j,oacute,7k,ocirc,7l,otilde,7m,ouml,7n,divide,7o,oslash,7p,ugrave,7q,uacute,7r,ucirc,7s,uuml,7t,yacute,7u,thorn,7v,yuml,ci,fnof,sh,Alpha,si,Beta,sj,Gamma,sk,Delta,sl,Epsilon,sm,Zeta,sn,Eta,so,Theta,sp,Iota,sq,Kappa,sr,Lambda,ss,Mu,st,Nu,su,Xi,sv,Omicron,t0,Pi,t1,Rho,t3,Sigma,t4,Tau,t5,Upsilon,t6,Phi,t7,Chi,t8,Psi,t9,Omega,th,alpha,ti,beta,tj,gamma,tk,delta,tl,epsilon,tm,zeta,tn,eta,to,theta,tp,iota,tq,kappa,tr,lambda,ts,mu,tt,nu,tu,xi,tv,omicron,u0,pi,u1,rho,u2,sigmaf,u3,sigma,u4,tau,u5,upsilon,u6,phi,u7,chi,u8,psi,u9,omega,uh,thetasym,ui,upsih,um,piv,812,bull,816,hellip,81i,prime,81j,Prime,81u,oline,824,frasl,88o,weierp,88h,image,88s,real,892,trade,89l,alefsym,8cg,larr,8ch,uarr,8ci,rarr,8cj,darr,8ck,harr,8dl,crarr,8eg,lArr,8eh,uArr,8ei,rArr,8ej,dArr,8ek,hArr,8g0,forall,8g2,part,8g3,exist,8g5,empty,8g7,nabla,8g8,isin,8g9,notin,8gb,ni,8gf,prod,8gh,sum,8gi,minus,8gn,lowast,8gq,radic,8gt,prop,8gu,infin,8h0,ang,8h7,and,8h8,or,8h9,cap,8ha,cup,8hb,int,8hk,there4,8hs,sim,8i5,cong,8i8,asymp,8j0,ne,8j1,equiv,8j4,le,8j5,ge,8k2,sub,8k3,sup,8k4,nsub,8k6,sube,8k7,supe,8kl,oplus,8kn,otimes,8l5,perp,8m5,sdot,8o8,lceil,8o9,rceil,8oa,lfloor,8ob,rfloor,8p9,lang,8pa,rang,9ea,loz,9j0,spades,9j3,clubs,9j5,hearts,9j6,diams,ai,OElig,aj,oelig,b0,Scaron,b1,scaron,bo,Yuml,m6,circ,ms,tilde,802,ensp,803,emsp,809,thinsp,80c,zwnj,80d,zwj,80e,lrm,80f,rlm,80j,ndash,80k,mdash,80o,lsquo,80p,rsquo,80q,sbquo,80s,ldquo,80t,rdquo,80u,bdquo,810,dagger,811,Dagger,81g,permil,81p,lsaquo,81q,rsaquo,85c,euro",32);j.html=j.html||{};j.html.Entities={encodeRaw:function(m,l){return m.replace(l?k:b,function(n){return g[n]||n})},encodeAllRaw:function(l){return(""+l).replace(f,function(m){return g[m]||m})},encodeNumeric:function(m,l){return m.replace(l?k:b,function(n){if(n.length>1){return"&#"+(((n.charCodeAt(0)-55296)*1024)+(n.charCodeAt(1)-56320)+65536)+";"}return g[n]||"&#"+n.charCodeAt(0)+";"})},encodeNamed:function(n,l,m){m=m||a;return n.replace(l?k:b,function(o){return g[o]||m[o]||o})},getEncodeFunc:function(l,o){var p=j.html.Entities;o=e(o)||a;function m(r,q){return r.replace(q?k:b,function(s){return g[s]||o[s]||"&#"+s.charCodeAt(0)+";"||s})}function n(r,q){return p.encodeNamed(r,q,o)}l=j.makeMap(l.replace(/\+/g,","));if(l.named&&l.numeric){return m}if(l.named){if(o){return n}return p.encodeNamed}if(l.numeric){return p.encodeNumeric}return p.encodeRaw},decode:function(l){return l.replace(c,function(n,m,o){if(m){o=parseInt(o,m.length===2?16:10);if(o>65535){o-=65536;return String.fromCharCode(55296+(o>>10),56320+(o&1023))}else{return i[o]||String.fromCharCode(o)}}return d[n]||a[n]||h(n)})}}})(tinymce);tinymce.html.Styles=function(d,f){var k=/rgb\s*\(\s*([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\s*\)/gi,h=/(?:url(?:(?:\(\s*\"([^\"]+)\"\s*\))|(?:\(\s*\'([^\']+)\'\s*\))|(?:\(\s*([^)\s]+)\s*\))))|(?:\'([^\']+)\')|(?:\"([^\"]+)\")/gi,b=/\s*([^:]+):\s*([^;]+);?/g,l=/\s+$/,m=/rgb/,e,g,a={},j;d=d||{};j="\\\" \\' \\; \\: ; : \uFEFF".split(" ");for(g=0;g<j.length;g++){a[j[g]]="\uFEFF"+g;a["\uFEFF"+g]=j[g]}function c(n,q,p,i){function o(r){r=parseInt(r).toString(16);return r.length>1?r:"0"+r}return"#"+o(q)+o(p)+o(i)}return{toHex:function(i){return i.replace(k,c)},parse:function(s){var z={},q,n,x,r,v=d.url_converter,y=d.url_converter_scope||this;function p(D,G){var F,C,B,E;F=z[D+"-top"+G];if(!F){return}C=z[D+"-right"+G];if(F!=C){return}B=z[D+"-bottom"+G];if(C!=B){return}E=z[D+"-left"+G];if(B!=E){return}z[D+G]=E;delete z[D+"-top"+G];delete z[D+"-right"+G];delete z[D+"-bottom"+G];delete z[D+"-left"+G]}function u(C){var D=z[C],B;if(!D||D.indexOf(" ")<0){return}D=D.split(" ");B=D.length;while(B--){if(D[B]!==D[0]){return false}}z[C]=D[0];return true}function A(D,C,B,E){if(!u(C)){return}if(!u(B)){return}if(!u(E)){return}z[D]=z[C]+" "+z[B]+" "+z[E];delete z[C];delete z[B];delete z[E]}function t(B){r=true;return a[B]}function i(C,B){if(r){C=C.replace(/\uFEFF[0-9]/g,function(D){return a[D]})}if(!B){C=C.replace(/\\([\'\";:])/g,"$1")}return C}function o(C,B,F,E,G,D){G=G||D;if(G){G=i(G);return"'"+G.replace(/\'/g,"\\'")+"'"}B=i(B||F||E);if(v){B=v.call(y,B,"style")}return"url('"+B.replace(/\'/g,"\\'")+"')"}if(s){s=s.replace(/\\[\"\';:\uFEFF]/g,t).replace(/\"[^\"]+\"|\'[^\']+\'/g,function(B){return B.replace(/[;:]/g,t)});while(q=b.exec(s)){n=q[1].replace(l,"").toLowerCase();x=q[2].replace(l,"");if(n&&x.length>0){if(n==="font-weight"&&x==="700"){x="bold"}else{if(n==="color"||n==="background-color"){x=x.toLowerCase()}}x=x.replace(k,c);x=x.replace(h,o);z[n]=r?i(x,true):x}b.lastIndex=q.index+q[0].length}p("border","");p("border","-width");p("border","-color");p("border","-style");p("padding","");p("margin","");A("border","border-width","border-style","border-color");if(z.border==="medium none"){delete z.border}}return z},serialize:function(p,r){var o="",n,q;function i(t){var x,u,s,v;x=f.styles[t];if(x){for(u=0,s=x.length;u<s;u++){t=x[u];v=p[t];if(v!==e&&v.length>0){o+=(o.length>0?" ":"")+t+": "+v+";"}}}}if(r&&f&&f.styles){i("*");i(r)}else{for(n in p){q=p[n];if(q!==e&&q.length>0){o+=(o.length>0?" ":"")+n+": "+q+";"}}}return o}}};(function(f){var a={},e=f.makeMap,g=f.each;function d(j,i){return j.split(i||",")}function h(m,l){var j,k={};function i(n){return n.replace(/[A-Z]+/g,function(o){return i(m[o])})}for(j in m){if(m.hasOwnProperty(j)){m[j]=i(m[j])}}i(l).replace(/#/g,"#text").replace(/(\w+)\[([^\]]+)\]\[([^\]]*)\]/g,function(q,o,n,p){n=d(n,"|");k[o]={attributes:e(n),attributesOrder:n,children:e(p,"|",{"#comment":{}})}});return k}function b(){var i=a.html5;if(!i){i=a.html5=h({A:"id|accesskey|class|dir|draggable|item|hidden|itemprop|role|spellcheck|style|subject|title",B:"#|a|abbr|area|audio|b|bdo|br|button|canvas|cite|code|command|datalist|del|dfn|em|embed|i|iframe|img|input|ins|kbd|keygen|label|link|map|mark|meta|meter|noscript|object|output|progress|q|ruby|samp|script|select|small|span|strong|sub|sup|svg|textarea|time|var|video",C:"#|a|abbr|area|address|article|aside|audio|b|bdo|blockquote|br|button|canvas|cite|code|command|datalist|del|details|dfn|dialog|div|dl|em|embed|fieldset|figure|footer|form|h1|h2|h3|h4|h5|h6|header|hgroup|hr|i|iframe|img|input|ins|kbd|keygen|label|link|map|mark|menu|meta|meter|nav|noscript|ol|object|output|p|pre|progress|q|ruby|samp|script|section|select|small|span|strong|style|sub|sup|svg|table|textarea|time|ul|var|video"},"html[A|manifest][body|head]head[A][base|command|link|meta|noscript|script|style|title]title[A][#]base[A|href|target][]link[A|href|rel|media|type|sizes][]meta[A|http-equiv|name|content|charset][]style[A|type|media|scoped][#]script[A|charset|type|src|defer|async][#]noscript[A][C]body[A][C]section[A][C]nav[A][C]article[A][C]aside[A][C]h1[A][B]h2[A][B]h3[A][B]h4[A][B]h5[A][B]h6[A][B]hgroup[A][h1|h2|h3|h4|h5|h6]header[A][C]footer[A][C]address[A][C]p[A][B]br[A][]pre[A][B]dialog[A][dd|dt]blockquote[A|cite][C]ol[A|start|reversed][li]ul[A][li]li[A|value][C]dl[A][dd|dt]dt[A][B]dd[A][C]a[A|href|target|ping|rel|media|type][B]em[A][B]strong[A][B]small[A][B]cite[A][B]q[A|cite][B]dfn[A][B]abbr[A][B]code[A][B]var[A][B]samp[A][B]kbd[A][B]sub[A][B]sup[A][B]i[A][B]b[A][B]mark[A][B]progress[A|value|max][B]meter[A|value|min|max|low|high|optimum][B]time[A|datetime][B]ruby[A][B|rt|rp]rt[A][B]rp[A][B]bdo[A][B]span[A][B]ins[A|cite|datetime][B]del[A|cite|datetime][B]figure[A][C|legend|figcaption]figcaption[A][C]img[A|alt|src|height|width|usemap|ismap][]iframe[A|name|src|height|width|sandbox|seamless][]embed[A|src|height|width|type][]object[A|data|type|height|width|usemap|name|form|classid][param]param[A|name|value][]details[A|open][C|legend]command[A|type|label|icon|disabled|checked|radiogroup][]menu[A|type|label][C|li]legend[A][C|B]div[A][C]source[A|src|type|media][]audio[A|src|autobuffer|autoplay|loop|controls][source]video[A|src|autobuffer|autoplay|loop|controls|width|height|poster][source]hr[A][]form[A|accept-charset|action|autocomplete|enctype|method|name|novalidate|target][C]fieldset[A|disabled|form|name][C|legend]label[A|form|for][B]input[A|type|accept|alt|autocomplete|checked|disabled|form|formaction|formenctype|formmethod|formnovalidate|formtarget|height|list|max|maxlength|min|multiple|pattern|placeholder|readonly|required|size|src|step|width|files|value|name][]button[A|autofocus|disabled|form|formaction|formenctype|formmethod|formnovalidate|formtarget|name|value|type][B]select[A|autofocus|disabled|form|multiple|name|size][option|optgroup]datalist[A][B|option]optgroup[A|disabled|label][option]option[A|disabled|selected|label|value][]textarea[A|autofocus|disabled|form|maxlength|name|placeholder|readonly|required|rows|cols|wrap][]keygen[A|autofocus|challenge|disabled|form|keytype|name][]output[A|for|form|name][B]canvas[A|width|height][]map[A|name][B|C]area[A|shape|coords|href|alt|target|media|rel|ping|type][]mathml[A][]svg[A][]table[A|border][caption|colgroup|thead|tfoot|tbody|tr]caption[A][C]colgroup[A|span][col]col[A|span][]thead[A][tr]tfoot[A][tr]tbody[A][tr]tr[A][th|td]th[A|headers|rowspan|colspan|scope][B]td[A|headers|rowspan|colspan][C]")}return i}function c(){var i=a.html4;if(!i){i=a.html4=h({Z:"H|K|N|O|P",Y:"X|form|R|Q",ZG:"E|span|width|align|char|charoff|valign",X:"p|T|div|U|W|isindex|fieldset|table",ZF:"E|align|char|charoff|valign",W:"pre|hr|blockquote|address|center|noframes",ZE:"abbr|axis|headers|scope|rowspan|colspan|align|char|charoff|valign|nowrap|bgcolor|width|height",ZD:"[E][S]",U:"ul|ol|dl|menu|dir",ZC:"p|Y|div|U|W|table|br|span|bdo|object|applet|img|map|K|N|Q",T:"h1|h2|h3|h4|h5|h6",ZB:"X|S|Q",S:"R|P",ZA:"a|G|J|M|O|P",R:"a|H|K|N|O",Q:"noscript|P",P:"ins|del|script",O:"input|select|textarea|label|button",N:"M|L",M:"em|strong|dfn|code|q|samp|kbd|var|cite|abbr|acronym",L:"sub|sup",K:"J|I",J:"tt|i|b|u|s|strike",I:"big|small|font|basefont",H:"G|F",G:"br|span|bdo",F:"object|applet|img|map|iframe",E:"A|B|C",D:"accesskey|tabindex|onfocus|onblur",C:"onclick|ondblclick|onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup",B:"lang|xml:lang|dir",A:"id|class|style|title"},"script[id|charset|type|language|src|defer|xml:space][]style[B|id|type|media|title|xml:space][]object[E|declare|classid|codebase|data|type|codetype|archive|standby|width|height|usemap|name|tabindex|align|border|hspace|vspace][#|param|Y]param[id|name|value|valuetype|type][]p[E|align][#|S]a[E|D|charset|type|name|href|hreflang|rel|rev|shape|coords|target][#|Z]br[A|clear][]span[E][#|S]bdo[A|C|B][#|S]applet[A|codebase|archive|code|object|alt|name|width|height|align|hspace|vspace][#|param|Y]h1[E|align][#|S]img[E|src|alt|name|longdesc|width|height|usemap|ismap|align|border|hspace|vspace][]map[B|C|A|name][X|form|Q|area]h2[E|align][#|S]iframe[A|longdesc|name|src|frameborder|marginwidth|marginheight|scrolling|align|width|height][#|Y]h3[E|align][#|S]tt[E][#|S]i[E][#|S]b[E][#|S]u[E][#|S]s[E][#|S]strike[E][#|S]big[E][#|S]small[E][#|S]font[A|B|size|color|face][#|S]basefont[id|size|color|face][]em[E][#|S]strong[E][#|S]dfn[E][#|S]code[E][#|S]q[E|cite][#|S]samp[E][#|S]kbd[E][#|S]var[E][#|S]cite[E][#|S]abbr[E][#|S]acronym[E][#|S]sub[E][#|S]sup[E][#|S]input[E|D|type|name|value|checked|disabled|readonly|size|maxlength|src|alt|usemap|onselect|onchange|accept|align][]select[E|name|size|multiple|disabled|tabindex|onfocus|onblur|onchange][optgroup|option]optgroup[E|disabled|label][option]option[E|selected|disabled|label|value][]textarea[E|D|name|rows|cols|disabled|readonly|onselect|onchange][]label[E|for|accesskey|onfocus|onblur][#|S]button[E|D|name|value|type|disabled][#|p|T|div|U|W|table|G|object|applet|img|map|K|N|Q]h4[E|align][#|S]ins[E|cite|datetime][#|Y]h5[E|align][#|S]del[E|cite|datetime][#|Y]h6[E|align][#|S]div[E|align][#|Y]ul[E|type|compact][li]li[E|type|value][#|Y]ol[E|type|compact|start][li]dl[E|compact][dt|dd]dt[E][#|S]dd[E][#|Y]menu[E|compact][li]dir[E|compact][li]pre[E|width|xml:space][#|ZA]hr[E|align|noshade|size|width][]blockquote[E|cite][#|Y]address[E][#|S|p]center[E][#|Y]noframes[E][#|Y]isindex[A|B|prompt][]fieldset[E][#|legend|Y]legend[E|accesskey|align][#|S]table[E|summary|width|border|frame|rules|cellspacing|cellpadding|align|bgcolor][caption|col|colgroup|thead|tfoot|tbody|tr]caption[E|align][#|S]col[ZG][]colgroup[ZG][col]thead[ZF][tr]tr[ZF|bgcolor][th|td]th[E|ZE][#|Y]form[E|action|method|name|enctype|onsubmit|onreset|accept|accept-charset|target][#|X|R|Q]noscript[E][#|Y]td[E|ZE][#|Y]tfoot[ZF][tr]tbody[ZF][tr]area[E|D|shape|coords|href|nohref|alt|target][]base[id|href|target][]body[E|onload|onunload|background|bgcolor|text|link|vlink|alink][#|Y]")}return i}f.html.Schema=function(A){var u=this,s={},k={},j=[],D,y;var o,q,z,r,v,n,p={};function m(F,E,H){var G=A[F];if(!G){G=a[F];if(!G){G=e(E," ",e(E.toUpperCase()," "));G=f.extend(G,H);a[F]=G}}else{G=e(G,",",e(G.toUpperCase()," "))}return G}A=A||{};y=A.schema=="html5"?b():c();if(A.verify_html===false){A.valid_elements="*[*]"}if(A.valid_styles){D={};g(A.valid_styles,function(F,E){D[E]=f.explode(F)})}o=m("whitespace_elements","pre script style textarea");q=m("self_closing_elements","colgroup dd dt li option p td tfoot th thead tr");z=m("short_ended_elements","area base basefont br col frame hr img input isindex link meta param embed source");r=m("boolean_attributes","checked compact declare defer disabled ismap multiple nohref noresize noshade nowrap readonly selected autoplay loop controls");n=m("non_empty_elements","td th iframe video audio object",z);v=m("block_elements","h1 h2 h3 h4 h5 h6 hr p div address pre form table tbody thead tfoot th tr td li ol ul caption blockquote center dl dt dd dir fieldset noscript menu isindex samp header footer article section hgroup aside nav figure option datalist select optgroup");function i(E){return new RegExp("^"+E.replace(/([?+*])/g,".$1")+"$")}function C(L){var K,G,Z,V,aa,F,I,U,X,Q,Y,ac,O,J,W,E,S,H,ab,ad,P,T,N=/^([#+\-])?([^\[\/]+)(?:\/([^\[]+))?(?:\[([^\]]+)\])?$/,R=/^([!\-])?(\w+::\w+|[^=:<]+)?(?:([=:<])(.*))?$/,M=/[*?+]/;if(L){L=d(L);if(s["@"]){S=s["@"].attributes;H=s["@"].attributesOrder}for(K=0,G=L.length;K<G;K++){F=N.exec(L[K]);if(F){W=F[1];Q=F[2];E=F[3];X=F[4];O={};J=[];I={attributes:O,attributesOrder:J};if(W==="#"){I.paddEmpty=true}if(W==="-"){I.removeEmpty=true}if(S){for(ad in S){O[ad]=S[ad]}J.push.apply(J,H)}if(X){X=d(X,"|");for(Z=0,V=X.length;Z<V;Z++){F=R.exec(X[Z]);if(F){U={};ac=F[1];Y=F[2].replace(/::/g,":");W=F[3];T=F[4];if(ac==="!"){I.attributesRequired=I.attributesRequired||[];I.attributesRequired.push(Y);U.required=true}if(ac==="-"){delete O[Y];J.splice(f.inArray(J,Y),1);continue}if(W){if(W==="="){I.attributesDefault=I.attributesDefault||[];I.attributesDefault.push({name:Y,value:T});U.defaultValue=T}if(W===":"){I.attributesForced=I.attributesForced||[];I.attributesForced.push({name:Y,value:T});U.forcedValue=T}if(W==="<"){U.validValues=e(T,"?")}}if(M.test(Y)){I.attributePatterns=I.attributePatterns||[];U.pattern=i(Y);I.attributePatterns.push(U)}else{if(!O[Y]){J.push(Y)}O[Y]=U}}}}if(!S&&Q=="@"){S=O;H=J}if(E){I.outputName=Q;s[E]=I}if(M.test(Q)){I.pattern=i(Q);j.push(I)}else{s[Q]=I}}}}}function t(E){s={};j=[];C(E);g(y,function(G,F){k[F]=G.children})}function l(F){var E=/^(~)?(.+)$/;if(F){g(d(F),function(J){var H=E.exec(J),I=H[1]==="~",K=I?"span":"div",G=H[2];k[G]=k[K];p[G]=K;if(!I){v[G]={}}g(k,function(L,M){if(L[K]){L[G]=L[K]}})})}}function x(F){var E=/^([+\-]?)(\w+)\[([^\]]+)\]$/;if(F){g(d(F),function(J){var I=E.exec(J),G,H;if(I){H=I[1];if(H){G=k[I[2]]}else{G=k[I[2]]={"#comment":{}}}G=k[I[2]];g(d(I[3],"|"),function(K){if(H==="-"){delete G[K]}else{G[K]={}}})}})}}function B(E){var G=s[E],F;if(G){return G}F=j.length;while(F--){G=j[F];if(G.pattern.test(E)){return G}}}if(!A.valid_elements){g(y,function(F,E){s[E]={attributes:F.attributes,attributesOrder:F.attributesOrder};k[E]=F.children});if(A.schema!="html5"){g(d("strong/b,em/i"),function(E){E=d(E,"/");s[E[1]].outputName=E[0]})}s.img.attributesDefault=[{name:"alt",value:""}];g(d("ol,ul,sub,sup,blockquote,span,font,a,table,tbody,tr,strong,em,b,i"),function(E){if(s[E]){s[E].removeEmpty=true}});g(d("p,h1,h2,h3,h4,h5,h6,th,td,pre,div,address,caption"),function(E){s[E].paddEmpty=true})}else{t(A.valid_elements)}l(A.custom_elements);x(A.valid_children);C(A.extended_valid_elements);x("+ol[ul|ol],+ul[ul|ol]");if(A.invalid_elements){f.each(f.explode(A.invalid_elements),function(E){if(s[E]){delete s[E]}})}if(!B("span")){C("span[!data-mce-type|*]")}u.children=k;u.styles=D;u.getBoolAttrs=function(){return r};u.getBlockElements=function(){return v};u.getShortEndedElements=function(){return z};u.getSelfClosingElements=function(){return q};u.getNonEmptyElements=function(){return n};u.getWhiteSpaceElements=function(){return o};u.isValidChild=function(E,G){var F=k[E];return !!(F&&F[G])};u.isValid=function(F,E){var H,G,I=B(F);if(I){if(E){if(I.attributes[E]){return true}H=I.attributePatterns;if(H){G=H.length;while(G--){if(H[G].pattern.test(F)){return true}}}}else{return true}}return false};u.getElementRule=B;u.getCustomElements=function(){return p};u.addValidElements=C;u.setValidElements=t;u.addCustomElements=l;u.addValidChildren=x}})(tinymce);(function(a){a.html.SaxParser=function(c,e){var b=this,d=function(){};c=c||{};b.schema=e=e||new a.html.Schema();if(c.fix_self_closing!==false){c.fix_self_closing=true}a.each("comment cdata text start end pi doctype".split(" "),function(f){if(f){b[f]=c[f]||d}});b.parse=function(E){var n=this,g,G=0,I,B,A=[],N,Q,C,r,z,s,M,H,O,v,m,k,t,R,o,P,F,S,L,f,J,l,D,K,h,x=0,j=a.html.Entities.decode,y,q;function u(T){var V,U;V=A.length;while(V--){if(A[V].name===T){break}}if(V>=0){for(U=A.length-1;U>=V;U--){T=A[U];if(T.valid){n.end(T.name)}}A.length=V}}function p(U,T,Y,X,W){var Z,V;T=T.toLowerCase();Y=T in H?T:j(Y||X||W||"");if(v&&!z&&T.indexOf("data-")!==0){Z=P[T];if(!Z&&F){V=F.length;while(V--){Z=F[V];if(Z.pattern.test(T)){break}}if(V===-1){Z=null}}if(!Z){return}if(Z.validValues&&!(Y in Z.validValues)){return}}N.map[T]=Y;N.push({name:T,value:Y})}l=new RegExp("<(?:(?:!--([\\w\\W]*?)-->)|(?:!\\[CDATA\\[([\\w\\W]*?)\\]\\]>)|(?:!DOCTYPE([\\w\\W]*?)>)|(?:\\?([^\\s\\/<>]+) ?([\\w\\W]*?)[?/]>)|(?:\\/([^>]+)>)|(?:([A-Za-z0-9\\-\\:]+)((?:\\s+[^\"'>]+(?:(?:\"[^\"]*\")|(?:'[^']*')|[^>]*))*|\\/|\\s+)>))","g");D=/([\w:\-]+)(?:\s*=\s*(?:(?:\"((?:\\.|[^\"])*)\")|(?:\'((?:\\.|[^\'])*)\')|([^>\s]+)))?/g;K={script:/<\/script[^>]*>/gi,style:/<\/style[^>]*>/gi,noscript:/<\/noscript[^>]*>/gi};M=e.getShortEndedElements();J=c.self_closing_elements||e.getSelfClosingElements();H=e.getBoolAttrs();v=c.validate;s=c.remove_internals;y=c.fix_self_closing;q=a.isIE;o=/^:/;while(g=l.exec(E)){if(G<g.index){n.text(j(E.substr(G,g.index-G)))}if(I=g[6]){I=I.toLowerCase();if(q&&o.test(I)){I=I.substr(1)}u(I)}else{if(I=g[7]){I=I.toLowerCase();if(q&&o.test(I)){I=I.substr(1)}O=I in M;if(y&&J[I]&&A.length>0&&A[A.length-1].name===I){u(I)}if(!v||(m=e.getElementRule(I))){k=true;if(v){P=m.attributes;F=m.attributePatterns}if(R=g[8]){z=R.indexOf("data-mce-type")!==-1;if(z&&s){k=false}N=[];N.map={};R.replace(D,p)}else{N=[];N.map={}}if(v&&!z){S=m.attributesRequired;L=m.attributesDefault;f=m.attributesForced;if(f){Q=f.length;while(Q--){t=f[Q];r=t.name;h=t.value;if(h==="{$uid}"){h="mce_"+x++}N.map[r]=h;N.push({name:r,value:h})}}if(L){Q=L.length;while(Q--){t=L[Q];r=t.name;if(!(r in N.map)){h=t.value;if(h==="{$uid}"){h="mce_"+x++}N.map[r]=h;N.push({name:r,value:h})}}}if(S){Q=S.length;while(Q--){if(S[Q] in N.map){break}}if(Q===-1){k=false}}if(N.map["data-mce-bogus"]){k=false}}if(k){n.start(I,N,O)}}else{k=false}if(B=K[I]){B.lastIndex=G=g.index+g[0].length;if(g=B.exec(E)){if(k){C=E.substr(G,g.index-G)}G=g.index+g[0].length}else{C=E.substr(G);G=E.length}if(k&&C.length>0){n.text(C,true)}if(k){n.end(I)}l.lastIndex=G;continue}if(!O){if(!R||R.indexOf("/")!=R.length-1){A.push({name:I,valid:k})}else{if(k){n.end(I)}}}}else{if(I=g[1]){n.comment(I)}else{if(I=g[2]){n.cdata(I)}else{if(I=g[3]){n.doctype(I)}else{if(I=g[4]){n.pi(I,g[5])}}}}}}G=g.index+g[0].length}if(G<E.length){n.text(j(E.substr(G)))}for(Q=A.length-1;Q>=0;Q--){I=A[Q];if(I.valid){n.end(I.name)}}}}})(tinymce);(function(d){var c=/^[ \t\r\n]*$/,e={"#text":3,"#comment":8,"#cdata":4,"#pi":7,"#doctype":10,"#document-fragment":11};function a(k,l,j){var i,h,f=j?"lastChild":"firstChild",g=j?"prev":"next";if(k[f]){return k[f]}if(k!==l){i=k[g];if(i){return i}for(h=k.parent;h&&h!==l;h=h.parent){i=h[g];if(i){return i}}}}function b(f,g){this.name=f;this.type=g;if(g===1){this.attributes=[];this.attributes.map={}}}d.extend(b.prototype,{replace:function(g){var f=this;if(g.parent){g.remove()}f.insert(g,f);f.remove();return f},attr:function(h,l){var f=this,g,j,k;if(typeof h!=="string"){for(j in h){f.attr(j,h[j])}return f}if(g=f.attributes){if(l!==k){if(l===null){if(h in g.map){delete g.map[h];j=g.length;while(j--){if(g[j].name===h){g=g.splice(j,1);return f}}}return f}if(h in g.map){j=g.length;while(j--){if(g[j].name===h){g[j].value=l;break}}}else{g.push({name:h,value:l})}g.map[h]=l;return f}else{return g.map[h]}}},clone:function(){var g=this,n=new b(g.name,g.type),h,f,m,j,k;if(m=g.attributes){k=[];k.map={};for(h=0,f=m.length;h<f;h++){j=m[h];if(j.name!=="id"){k[k.length]={name:j.name,value:j.value};k.map[j.name]=j.value}}n.attributes=k}n.value=g.value;n.shortEnded=g.shortEnded;return n},wrap:function(g){var f=this;f.parent.insert(g,f);g.append(f);return f},unwrap:function(){var f=this,h,g;for(h=f.firstChild;h;){g=h.next;f.insert(h,f,true);h=g}f.remove()},remove:function(){var f=this,h=f.parent,g=f.next,i=f.prev;if(h){if(h.firstChild===f){h.firstChild=g;if(g){g.prev=null}}else{i.next=g}if(h.lastChild===f){h.lastChild=i;if(i){i.next=null}}else{g.prev=i}f.parent=f.next=f.prev=null}return f},append:function(h){var f=this,g;if(h.parent){h.remove()}g=f.lastChild;if(g){g.next=h;h.prev=g;f.lastChild=h}else{f.lastChild=f.firstChild=h}h.parent=f;return h},insert:function(h,f,i){var g;if(h.parent){h.remove()}g=f.parent||this;if(i){if(f===g.firstChild){g.firstChild=h}else{f.prev.next=h}h.prev=f.prev;h.next=f;f.prev=h}else{if(f===g.lastChild){g.lastChild=h}else{f.next.prev=h}h.next=f.next;h.prev=f;f.next=h}h.parent=g;return h},getAll:function(g){var f=this,h,i=[];for(h=f.firstChild;h;h=a(h,f)){if(h.name===g){i.push(h)}}return i},empty:function(){var g=this,f,h,j;if(g.firstChild){f=[];for(j=g.firstChild;j;j=a(j,g)){f.push(j)}h=f.length;while(h--){j=f[h];j.parent=j.firstChild=j.lastChild=j.next=j.prev=null}}g.firstChild=g.lastChild=null;return g},isEmpty:function(k){var f=this,j=f.firstChild,h,g;if(j){do{if(j.type===1){if(j.attributes.map["data-mce-bogus"]){continue}if(k[j.name]){return false}h=j.attributes.length;while(h--){g=j.attributes[h].name;if(g==="name"||g.indexOf("data-")===0){return false}}}if(j.type===8){return false}if((j.type===3&&!c.test(j.value))){return false}}while(j=a(j,f))}return true},walk:function(f){return a(this,null,f)}});d.extend(b,{create:function(g,f){var i,h;i=new b(g,e[g]||1);if(f){for(h in f){i.attr(h,f[h])}}return i}});d.html.Node=b})(tinymce);(function(b){var a=b.html.Node;b.html.DomParser=function(g,h){var f=this,e={},d=[],i={},c={};g=g||{};g.validate="validate" in g?g.validate:true;g.root_name=g.root_name||"body";f.schema=h=h||new b.html.Schema();function j(m){var o,p,x,v,z,n,q,l,t,u,k,s,y,r;s=b.makeMap("tr,td,th,tbody,thead,tfoot,table");k=h.getNonEmptyElements();for(o=0;o<m.length;o++){p=m[o];if(!p.parent){continue}v=[p];for(x=p.parent;x&&!h.isValidChild(x.name,p.name)&&!s[x.name];x=x.parent){v.push(x)}if(x&&v.length>1){v.reverse();z=n=f.filterNode(v[0].clone());for(t=0;t<v.length-1;t++){if(h.isValidChild(n.name,v[t].name)){q=f.filterNode(v[t].clone());n.append(q)}else{q=n}for(l=v[t].firstChild;l&&l!=v[t+1];){r=l.next;q.append(l);l=r}n=q}if(!z.isEmpty(k)){x.insert(z,v[0],true);x.insert(p,z)}else{x.insert(p,v[0],true)}x=v[0];if(x.isEmpty(k)||x.firstChild===x.lastChild&&x.firstChild.name==="br"){x.empty().remove()}}else{if(p.parent){if(p.name==="li"){y=p.prev;if(y&&(y.name==="ul"||y.name==="ul")){y.append(p);continue}y=p.next;if(y&&(y.name==="ul"||y.name==="ul")){y.insert(p,y.firstChild,true);continue}p.wrap(f.filterNode(new a("ul",1)));continue}if(h.isValidChild(p.parent.name,"div")&&h.isValidChild("div",p.name)){p.wrap(f.filterNode(new a("div",1)))}else{if(p.name==="style"||p.name==="script"){p.empty().remove()}else{p.unwrap()}}}}}}f.filterNode=function(m){var l,k,n;if(k in e){n=i[k];if(n){n.push(m)}else{i[k]=[m]}}l=d.length;while(l--){k=d[l].name;if(k in m.attributes.map){n=c[k];if(n){n.push(m)}else{c[k]=[m]}}}return m};f.addNodeFilter=function(k,l){b.each(b.explode(k),function(m){var n=e[m];if(!n){e[m]=n=[]}n.push(l)})};f.addAttributeFilter=function(k,l){b.each(b.explode(k),function(m){var n;for(n=0;n<d.length;n++){if(d[n].name===m){d[n].callbacks.push(l);return}}d.push({name:m,callbacks:[l]})})};f.parse=function(v,m){var n,J,B,A,D,C,x,r,F,N,z,o,E,M=[],L,t,k,y,s,p,u,q;m=m||{};i={};c={};o=b.extend(b.makeMap("script,style,head,html,body,title,meta,param"),h.getBlockElements());u=h.getNonEmptyElements();p=h.children;z=g.validate;q="forced_root_block" in m?m.forced_root_block:g.forced_root_block;s=h.getWhiteSpaceElements();E=/^[ \t\r\n]+/;t=/[ \t\r\n]+$/;k=/[ \t\r\n]+/g;y=/^[ \t\r\n]+$/;function G(){var O=J.firstChild,l,P;while(O){l=O.next;if(O.type==3||(O.type==1&&O.name!=="p"&&!o[O.name]&&!O.attr("data-mce-type"))){if(!P){P=K(q,1);J.insert(P,O);P.append(O)}else{P.append(O)}}else{P=null}O=l}}function K(l,O){var P=new a(l,O),Q;if(l in e){Q=i[l];if(Q){Q.push(P)}else{i[l]=[P]}}return P}function I(P){var Q,l,O;for(Q=P.prev;Q&&Q.type===3;){l=Q.value.replace(t,"");if(l.length>0){Q.value=l;Q=Q.prev}else{O=Q.prev;Q.remove();Q=O}}}function H(O){var P,l={};for(P in O){if(P!=="li"&&P!="p"){l[P]=O[P]}}return l}n=new b.html.SaxParser({validate:z,self_closing_elements:H(h.getSelfClosingElements()),cdata:function(l){B.append(K("#cdata",4)).value=l},text:function(P,l){var O;if(!L){P=P.replace(k," ");if(B.lastChild&&o[B.lastChild.name]){P=P.replace(E,"")}}if(P.length!==0){O=K("#text",3);O.raw=!!l;B.append(O).value=P}},comment:function(l){B.append(K("#comment",8)).value=l},pi:function(l,O){B.append(K(l,7)).value=O;I(B)},doctype:function(O){var l;l=B.append(K("#doctype",10));l.value=O;I(B)},start:function(l,W,P){var U,R,Q,O,S,X,V,T;Q=z?h.getElementRule(l):{};if(Q){U=K(Q.outputName||l,1);U.attributes=W;U.shortEnded=P;B.append(U);T=p[B.name];if(T&&p[U.name]&&!T[U.name]){M.push(U)}R=d.length;while(R--){S=d[R].name;if(S in W.map){F=c[S];if(F){F.push(U)}else{c[S]=[U]}}}if(o[l]){I(U)}if(!P){B=U}if(!L&&s[l]){L=true}}},end:function(l){var S,P,R,O,Q;P=z?h.getElementRule(l):{};if(P){if(o[l]){if(!L){S=B.firstChild;if(S&&S.type===3){R=S.value.replace(E,"");if(R.length>0){S.value=R;S=S.next}else{O=S.next;S.remove();S=O}while(S&&S.type===3){R=S.value;O=S.next;if(R.length===0||y.test(R)){S.remove();S=O}S=O}}S=B.lastChild;if(S&&S.type===3){R=S.value.replace(t,"");if(R.length>0){S.value=R;S=S.prev}else{O=S.prev;S.remove();S=O}while(S&&S.type===3){R=S.value;O=S.prev;if(R.length===0||y.test(R)){S.remove();S=O}S=O}}}S=B.prev;if(S&&S.type===3){R=S.value.replace(E,"");if(R.length>0){S.value=R}else{S.remove()}}}if(L&&s[l]){L=false}if(P.removeEmpty||P.paddEmpty){if(B.isEmpty(u)){if(P.paddEmpty){B.empty().append(new a("#text","3")).value="\u00a0"}else{if(!B.attributes.map.name&&!B.attributes.map.id){Q=B.parent;B.empty().remove();B=Q;return}}}}B=B.parent}}},h);J=B=new a(m.context||g.root_name,11);n.parse(v);if(z&&M.length){if(!m.context){j(M)}else{m.invalid=true}}if(q&&J.name=="body"){G()}if(!m.invalid){for(N in i){F=e[N];A=i[N];x=A.length;while(x--){if(!A[x].parent){A.splice(x,1)}}for(D=0,C=F.length;D<C;D++){F[D](A,N,m)}}for(D=0,C=d.length;D<C;D++){F=d[D];if(F.name in c){A=c[F.name];x=A.length;while(x--){if(!A[x].parent){A.splice(x,1)}}for(x=0,r=F.callbacks.length;x<r;x++){F.callbacks[x](A,F.name,m)}}}}return J};if(g.remove_trailing_brs){f.addNodeFilter("br",function(n,m){var r,q=n.length,o,v=b.extend({},h.getBlockElements()),k=h.getNonEmptyElements(),t,s,p,u;v.body=1;for(r=0;r<q;r++){o=n[r];t=o.parent;if(v[o.parent.name]&&o===t.lastChild){p=o.prev;while(p){u=p.name;if(u!=="span"||p.attr("data-mce-type")!=="bookmark"){if(u!=="br"){break}if(u==="br"){o=null;break}}p=p.prev}if(o){o.remove();if(t.isEmpty(k)){elementRule=h.getElementRule(t.name);if(elementRule){if(elementRule.removeEmpty){t.remove()}else{if(elementRule.paddEmpty){t.empty().append(new b.html.Node("#text",3)).value="\u00a0"}}}}}}else{s=o;while(t.firstChild===s&&t.lastChild===s){s=t;if(v[t.name]){break}t=t.parent}if(s===t){textNode=new b.html.Node("#text",3);textNode.value="\u00a0";o.replace(textNode)}}}})}if(!g.allow_html_in_named_anchor){f.addAttributeFilter("id,name",function(k,l){var n=k.length,p,m,o,q;while(n--){q=k[n];if(q.name==="a"&&q.firstChild&&!q.attr("href")){o=q.parent;p=q.lastChild;do{m=p.prev;o.insert(p,q);p=m}while(p)}}})}}})(tinymce);tinymce.html.Writer=function(e){var c=[],a,b,d,f,g;e=e||{};a=e.indent;b=tinymce.makeMap(e.indent_before||"");d=tinymce.makeMap(e.indent_after||"");f=tinymce.html.Entities.getEncodeFunc(e.entity_encoding||"raw",e.entities);g=e.element_format=="html";return{start:function(m,k,p){var n,j,h,o;if(a&&b[m]&&c.length>0){o=c[c.length-1];if(o.length>0&&o!=="\n"){c.push("\n")}}c.push("<",m);if(k){for(n=0,j=k.length;n<j;n++){h=k[n];c.push(" ",h.name,'="',f(h.value,true),'"')}}if(!p||g){c[c.length]=">"}else{c[c.length]=" />"}if(p&&a&&d[m]&&c.length>0){o=c[c.length-1];if(o.length>0&&o!=="\n"){c.push("\n")}}},end:function(h){var i;c.push("</",h,">");if(a&&d[h]&&c.length>0){i=c[c.length-1];if(i.length>0&&i!=="\n"){c.push("\n")}}},text:function(i,h){if(i.length>0){c[c.length]=h?i:f(i)}},cdata:function(h){c.push("<![CDATA[",h,"]]>")},comment:function(h){c.push("<!--",h,"-->")},pi:function(h,i){if(i){c.push("<?",h," ",i,"?>")}else{c.push("<?",h,"?>")}if(a){c.push("\n")}},doctype:function(h){c.push("<!DOCTYPE",h,">",a?"\n":"")},reset:function(){c.length=0},getContent:function(){return c.join("").replace(/\n$/,"")}}};(function(a){a.html.Serializer=function(c,d){var b=this,e=new a.html.Writer(c);c=c||{};c.validate="validate" in c?c.validate:true;b.schema=d=d||new a.html.Schema();b.writer=e;b.serialize=function(h){var g,i;i=c.validate;g={3:function(k,j){e.text(k.value,k.raw)},8:function(j){e.comment(j.value)},7:function(j){e.pi(j.name,j.value)},10:function(j){e.doctype(j.value)},4:function(j){e.cdata(j.value)},11:function(j){if((j=j.firstChild)){do{f(j)}while(j=j.next)}}};e.reset();function f(k){var t=g[k.type],j,o,s,r,p,u,n,m,q;if(!t){j=k.name;o=k.shortEnded;s=k.attributes;if(i&&s&&s.length>1){u=[];u.map={};q=d.getElementRule(k.name);for(n=0,m=q.attributesOrder.length;n<m;n++){r=q.attributesOrder[n];if(r in s.map){p=s.map[r];u.map[r]=p;u.push({name:r,value:p})}}for(n=0,m=s.length;n<m;n++){r=s[n].name;if(!(r in u.map)){p=s.map[r];u.map[r]=p;u.push({name:r,value:p})}}s=u}e.start(k.name,s,o);if(!o){if((k=k.firstChild)){do{f(k)}while(k=k.next)}e.end(j)}}else{t(k)}}if(h.type==1&&!c.inner){f(h)}else{g[11](h)}return e.getContent()}}})(tinymce);tinymce.dom={};(function(b,h){var g=!!document.addEventListener;function c(k,j,l,i){if(k.addEventListener){k.addEventListener(j,l,i||false)}else{if(k.attachEvent){k.attachEvent("on"+j,l)}}}function e(k,j,l,i){if(k.removeEventListener){k.removeEventListener(j,l,i||false)}else{if(k.detachEvent){k.detachEvent("on"+j,l)}}}function a(n,l){var i,k=l||{};function j(){return false}function m(){return true}for(i in n){if(i!=="layerX"&&i!=="layerY"){k[i]=n[i]}}if(!k.target){k.target=k.srcElement||document}k.preventDefault=function(){k.isDefaultPrevented=m;if(n){if(n.preventDefault){n.preventDefault()}else{n.returnValue=false}}};k.stopPropagation=function(){k.isPropagationStopped=m;if(n){if(n.stopPropagation){n.stopPropagation()}else{n.cancelBubble=true}}};k.stopImmediatePropagation=function(){k.isImmediatePropagationStopped=m;k.stopPropagation()};if(!k.isDefaultPrevented){k.isDefaultPrevented=j;k.isPropagationStopped=j;k.isImmediatePropagationStopped=j}return k}function d(m,n,l){var k=m.document,j={type:"ready"};function i(){if(!l.domLoaded){l.domLoaded=true;n(j)}}if(g){c(m,"DOMContentLoaded",i)}else{c(k,"readystatechange",function(){if(k.readyState==="complete"){e(k,"readystatechange",arguments.callee);i()}});if(k.documentElement.doScroll&&m===m.top){(function(){try{k.documentElement.doScroll("left")}catch(o){setTimeout(arguments.callee,0);return}i()})()}}c(m,"load",i)}function f(k){var q=this,p={},i,o,n,m,l;m="onmouseenter" in document.documentElement;n="onfocusin" in document.documentElement;l={mouseenter:"mouseover",mouseleave:"mouseout"};i=1;q.domLoaded=false;q.events=p;function j(t,x){var s,u,r,v;s=p[x][t.type];if(s){for(u=0,r=s.length;u<r;u++){v=s[u];if(v&&v.func.call(v.scope,t)===false){t.preventDefault()}if(t.isImmediatePropagationStopped()){return}}}}q.bind=function(x,A,D,E){var s,t,u,r,B,z,C,v=window;function y(F){j(a(F||v.event),s)}if(!x||x.nodeType===3||x.nodeType===8){return}if(!x[h]){s=i++;x[h]=s;p[s]={}}else{s=x[h];if(!p[s]){p[s]={}}}E=E||x;A=A.split(" ");u=A.length;while(u--){r=A[u];z=y;B=C=false;if(r==="DOMContentLoaded"){r="ready"}if((q.domLoaded||x.readyState=="complete")&&r==="ready"){q.domLoaded=true;D.call(E,a({type:r}));continue}if(!m){B=l[r];if(B){z=function(F){var H,G;H=F.currentTarget;G=F.relatedTarget;if(G&&H.contains){G=H.contains(G)}else{while(G&&G!==H){G=G.parentNode}}if(!G){F=a(F||v.event);F.type=F.type==="mouseout"?"mouseleave":"mouseenter";F.target=H;j(F,s)}}}}if(!n&&(r==="focusin"||r==="focusout")){C=true;B=r==="focusin"?"focus":"blur";z=function(F){F=a(F||v.event);F.type=F.type==="focus"?"focusin":"focusout";j(F,s)}}t=p[s][r];if(!t){p[s][r]=t=[{func:D,scope:E}];t.fakeName=B;t.capture=C;t.nativeHandler=z;if(!g){t.proxyHandler=k(s)}if(r==="ready"){d(x,z,q)}else{c(x,B||r,g?z:t.proxyHandler,C)}}else{t.push({func:D,scope:E})}}x=t=0;return D};q.unbind=function(x,z,A){var s,u,v,B,r,t;if(!x||x.nodeType===3||x.nodeType===8){return q}s=x[h];if(s){t=p[s];if(z){z=z.split(" ");v=z.length;while(v--){r=z[v];u=t[r];if(u){if(A){B=u.length;while(B--){if(u[B].func===A){u.splice(B,1)}}}if(!A||u.length===0){delete t[r];e(x,u.fakeName||r,g?u.nativeHandler:u.proxyHandler,u.capture)}}}}else{for(r in t){u=t[r];e(x,u.fakeName||r,g?u.nativeHandler:u.proxyHandler,u.capture)}t={}}for(r in t){return q}delete p[s];try{delete x[h]}catch(y){x[h]=null}}return q};q.fire=function(u,s,r){var v,t;if(!u||u.nodeType===3||u.nodeType===8){return q}t=a(null,r);t.type=s;do{v=u[h];if(v){j(t,v)}u=u.parentNode||u.ownerDocument||u.defaultView||u.parentWindow}while(u&&!t.isPropagationStopped());return q};q.clean=function(u){var s,r,t=q.unbind;if(!u||u.nodeType===3||u.nodeType===8){return q}if(u[h]){t(u)}if(!u.getElementsByTagName){u=u.document}if(u&&u.getElementsByTagName){t(u);r=u.getElementsByTagName("*");s=r.length;while(s--){u=r[s];if(u[h]){t(u)}}}return q};q.callNativeHandler=function(s,r){if(p){p[s][r.type].nativeHandler(r)}};q.destory=function(){p={}};q.add=function(v,s,u,t){if(typeof(v)==="string"){v=document.getElementById(v)}if(v&&v instanceof Array){var r=v;while(r--){q.add(v[r],s,u,t)}return}if(s==="init"){s="ready"}return q.bind(v,s instanceof Array?s.join(" "):s,u,t)};q.remove=function(v,s,u,t){if(!v){return q}if(typeof(v)==="string"){v=document.getElementById(v)}if(v instanceof Array){var r=v.length;while(r--){q.remove(v[r],s,u,t)}return q}return q.unbind(v,s instanceof Array?s.join(" "):s,u)};q.clear=function(r){if(typeof(r)==="string"){r=document.getElementById(r)}return q.clean(r)};q.cancel=function(r){if(r){q.prevent(r);q.stop(r)}return false};q.prevent=function(r){if(!r.preventDefault){r=a(r)}r.preventDefault();return false};q.stop=function(r){if(!r.stopPropagation){r=a(r)}r.stopPropagation();return false}}b.EventUtils=f;b.Event=new f(function(i){return function(j){tinymce.dom.Event.callNativeHandler(i,j)}});b.Event.bind(window,"ready",function(){});b=0})(tinymce.dom,"data-mce-expando");tinymce.dom.TreeWalker=function(a,c){var b=a;function d(i,f,e,j){var h,g;if(i){if(!j&&i[f]){return i[f]}if(i!=c){h=i[e];if(h){return h}for(g=i.parentNode;g&&g!=c;g=g.parentNode){h=g[e];if(h){return h}}}}}this.current=function(){return b};this.next=function(e){return(b=d(b,"firstChild","nextSibling",e))};this.prev=function(e){return(b=d(b,"lastChild","previousSibling",e))}};(function(e){var g=e.each,d=e.is,f=e.isWebKit,b=e.isIE,h=e.html.Entities,c=/^([a-z0-9],?)+$/i,a=/^[ \t\r\n]*$/;e.create("tinymce.dom.DOMUtils",{doc:null,root:null,files:null,pixelStyles:/^(top|left|bottom|right|width|height|borderWidth)$/,props:{"for":"htmlFor","class":"className",className:"className",checked:"checked",disabled:"disabled",maxlength:"maxLength",readonly:"readOnly",selected:"selected",value:"value",id:"id",name:"name",type:"type"},DOMUtils:function(o,l){var k=this,i,j,n;k.doc=o;k.win=window;k.files={};k.cssFlicker=false;k.counter=0;k.stdMode=!e.isIE||o.documentMode>=8;k.boxModel=!e.isIE||o.compatMode=="CSS1Compat"||k.stdMode;k.hasOuterHTML="outerHTML" in o.createElement("a");k.settings=l=e.extend({keep_values:false,hex_colors:1},l);k.schema=l.schema;k.styles=new e.html.Styles({url_converter:l.url_converter,url_converter_scope:l.url_converter_scope},l.schema);if(e.isIE6){try{o.execCommand("BackgroundImageCache",false,true)}catch(m){k.cssFlicker=true}}k.fixDoc(o);k.events=l.ownEvents?new e.dom.EventUtils(l.proxy):e.dom.Event;e.addUnload(k.destroy,k);n=l.schema?l.schema.getBlockElements():{};k.isBlock=function(q){var p=q.nodeType;if(p){return !!(p===1&&n[q.nodeName])}return !!n[q]}},fixDoc:function(k){var j=this.settings,i;if(b&&j.schema){("abbr article aside audio canvas details figcaption figure footer header hgroup mark menu meter nav output progress section summary time video").replace(/\w+/g,function(l){k.createElement(l)});for(i in j.schema.getCustomElements()){k.createElement(i)}}},clone:function(k,i){var j=this,m,l;if(!b||k.nodeType!==1||i){return k.cloneNode(i)}l=j.doc;if(!i){m=l.createElement(k.nodeName);g(j.getAttribs(k),function(n){j.setAttrib(m,n.nodeName,j.getAttrib(k,n.nodeName))});return m}return m.firstChild},getRoot:function(){var i=this,j=i.settings;return(j&&i.get(j.root_element))||i.doc.body},getViewPort:function(j){var k,i;j=!j?this.win:j;k=j.document;i=this.boxModel?k.documentElement:k.body;return{x:j.pageXOffset||i.scrollLeft,y:j.pageYOffset||i.scrollTop,w:j.innerWidth||i.clientWidth,h:j.innerHeight||i.clientHeight}},getRect:function(l){var k,i=this,j;l=i.get(l);k=i.getPos(l);j=i.getSize(l);return{x:k.x,y:k.y,w:j.w,h:j.h}},getSize:function(l){var j=this,i,k;l=j.get(l);i=j.getStyle(l,"width");k=j.getStyle(l,"height");if(i.indexOf("px")===-1){i=0}if(k.indexOf("px")===-1){k=0}return{w:parseInt(i,10)||l.offsetWidth||l.clientWidth,h:parseInt(k,10)||l.offsetHeight||l.clientHeight}},getParent:function(k,j,i){return this.getParents(k,j,i,false)},getParents:function(s,m,k,q){var j=this,i,l=j.settings,p=[];s=j.get(s);q=q===undefined;if(l.strict_root){k=k||j.getRoot()}if(d(m,"string")){i=m;if(m==="*"){m=function(o){return o.nodeType==1}}else{m=function(o){return j.is(o,i)}}}while(s){if(s==k||!s.nodeType||s.nodeType===9){break}if(!m||m(s)){if(q){p.push(s)}else{return s}}s=s.parentNode}return q?p:null},get:function(i){var j;if(i&&this.doc&&typeof(i)=="string"){j=i;i=this.doc.getElementById(i);if(i&&i.id!==j){return this.doc.getElementsByName(j)[1]}}return i},getNext:function(j,i){return this._findSib(j,i,"nextSibling")},getPrev:function(j,i){return this._findSib(j,i,"previousSibling")},select:function(k,j){var i=this;return e.dom.Sizzle(k,i.get(j)||i.get(i.settings.root_element)||i.doc,[])},is:function(l,j){var k;if(l.length===undefined){if(j==="*"){return l.nodeType==1}if(c.test(j)){j=j.toLowerCase().split(/,/);l=l.nodeName.toLowerCase();for(k=j.length-1;k>=0;k--){if(j[k]==l){return true}}return false}}return e.dom.Sizzle.matches(j,l.nodeType?[l]:l).length>0},add:function(l,o,i,k,m){var j=this;return this.run(l,function(r){var q,n;q=d(o,"string")?j.doc.createElement(o):o;j.setAttribs(q,i);if(k){if(k.nodeType){q.appendChild(k)}else{j.setHTML(q,k)}}return !m?r.appendChild(q):q})},create:function(k,i,j){return this.add(this.doc.createElement(k),k,i,j,1)},createHTML:function(q,i,m){var p="",l=this,j;p+="<"+q;for(j in i){if(i.hasOwnProperty(j)){p+=" "+j+'="'+l.encode(i[j])+'"'}}if(typeof(m)!="undefined"){return p+">"+m+"</"+q+">"}return p+" />"},remove:function(i,j){return this.run(i,function(l){var m,k=l.parentNode;if(!k){return null}if(j){while(m=l.firstChild){if(!e.isIE||m.nodeType!==3||m.nodeValue){k.insertBefore(m,l)}else{l.removeChild(m)}}}return k.removeChild(l)})},setStyle:function(l,i,j){var k=this;return k.run(l,function(o){var n,m;n=o.style;i=i.replace(/-(\D)/g,function(q,p){return p.toUpperCase()});if(k.pixelStyles.test(i)&&(e.is(j,"number")||/^[\-0-9\.]+$/.test(j))){j+="px"}switch(i){case"opacity":if(b){n.filter=j===""?"":"alpha(opacity="+(j*100)+")";if(!l.currentStyle||!l.currentStyle.hasLayout){n.display="inline-block"}}n[i]=n["-moz-opacity"]=n["-khtml-opacity"]=j||"";break;case"float":b?n.styleFloat=j:n.cssFloat=j;break;default:n[i]=j||""}if(k.settings.update_styles){k.setAttrib(o,"data-mce-style")}})},getStyle:function(l,i,k){l=this.get(l);if(!l){return}if(this.doc.defaultView&&k){i=i.replace(/[A-Z]/g,function(m){return"-"+m});try{return this.doc.defaultView.getComputedStyle(l,null).getPropertyValue(i)}catch(j){return null}}i=i.replace(/-(\D)/g,function(n,m){return m.toUpperCase()});if(i=="float"){i=b?"styleFloat":"cssFloat"}if(l.currentStyle&&k){return l.currentStyle[i]}return l.style?l.style[i]:undefined},setStyles:function(l,m){var j=this,k=j.settings,i;i=k.update_styles;k.update_styles=0;g(m,function(o,p){j.setStyle(l,p,o)});k.update_styles=i;if(k.update_styles){j.setAttrib(l,k.cssText)}},removeAllAttribs:function(i){return this.run(i,function(l){var k,j=l.attributes;for(k=j.length-1;k>=0;k--){l.removeAttributeNode(j.item(k))}})},setAttrib:function(k,l,i){var j=this;if(!k||!l){return}if(j.settings.strict){l=l.toLowerCase()}return this.run(k,function(p){var o=j.settings;var m=p.getAttribute(l);if(i!==null){switch(l){case"style":if(!d(i,"string")){g(i,function(q,r){j.setStyle(p,r,q)});return}if(o.keep_values){if(i&&!j._isRes(i)){p.setAttribute("data-mce-style",i,2)}else{p.removeAttribute("data-mce-style",2)}}p.style.cssText=i;break;case"class":p.className=i||"";break;case"src":case"href":if(o.keep_values){if(o.url_converter){i=o.url_converter.call(o.url_converter_scope||j,i,l,p)}j.setAttrib(p,"data-mce-"+l,i,2)}break;case"shape":p.setAttribute("data-mce-style",i);break}}if(d(i)&&i!==null&&i.length!==0){p.setAttribute(l,""+i,2)}else{p.removeAttribute(l,2)}if(tinyMCE.activeEditor&&m!=i){var n=tinyMCE.activeEditor;n.onSetAttrib.dispatch(n,p,l,i)}})},setAttribs:function(j,k){var i=this;return this.run(j,function(l){g(k,function(m,o){i.setAttrib(l,o,m)})})},getAttrib:function(m,o,k){var i,j=this,l;m=j.get(m);if(!m||m.nodeType!==1){return k===l?false:k}if(!d(k)){k=""}if(/^(src|href|style|coords|shape)$/.test(o)){i=m.getAttribute("data-mce-"+o);if(i){return i}}if(b&&j.props[o]){i=m[j.props[o]];i=i&&i.nodeValue?i.nodeValue:i}if(!i){i=m.getAttribute(o,2)}if(/^(checked|compact|declare|defer|disabled|ismap|multiple|nohref|noshade|nowrap|readonly|selected)$/.test(o)){if(m[j.props[o]]===true&&i===""){return o}return i?o:""}if(m.nodeName==="FORM"&&m.getAttributeNode(o)){return m.getAttributeNode(o).nodeValue}if(o==="style"){i=i||m.style.cssText;if(i){i=j.serializeStyle(j.parseStyle(i),m.nodeName);if(j.settings.keep_values&&!j._isRes(i)){m.setAttribute("data-mce-style",i)}}}if(f&&o==="class"&&i){i=i.replace(/(apple|webkit)\-[a-z\-]+/gi,"")}if(b){switch(o){case"rowspan":case"colspan":if(i===1){i=""}break;case"size":if(i==="+0"||i===20||i===0){i=""}break;case"width":case"height":case"vspace":case"checked":case"disabled":case"readonly":if(i===0){i=""}break;case"hspace":if(i===-1){i=""}break;case"maxlength":case"tabindex":if(i===32768||i===2147483647||i==="32768"){i=""}break;case"multiple":case"compact":case"noshade":case"nowrap":if(i===65535){return o}return k;case"shape":i=i.toLowerCase();break;default:if(o.indexOf("on")===0&&i){i=e._replace(/^function\s+\w+\(\)\s+\{\s+(.*)\s+\}$/,"$1",""+i)}}}return(i!==l&&i!==null&&i!=="")?""+i:k},getPos:function(q,l){var j=this,i=0,p=0,m,o=j.doc,k;q=j.get(q);l=l||o.body;if(q){if(q.getBoundingClientRect){q=q.getBoundingClientRect();m=j.boxModel?o.documentElement:o.body;i=q.left+(o.documentElement.scrollLeft||o.body.scrollLeft)-m.clientTop;p=q.top+(o.documentElement.scrollTop||o.body.scrollTop)-m.clientLeft;return{x:i,y:p}}k=q;while(k&&k!=l&&k.nodeType){i+=k.offsetLeft||0;p+=k.offsetTop||0;k=k.offsetParent}k=q.parentNode;while(k&&k!=l&&k.nodeType){i-=k.scrollLeft||0;p-=k.scrollTop||0;k=k.parentNode}}return{x:i,y:p}},parseStyle:function(i){return this.styles.parse(i)},serializeStyle:function(j,i){return this.styles.serialize(j,i)},loadCSS:function(i){var k=this,l=k.doc,j;if(!i){i=""}j=l.getElementsByTagName("head")[0];g(i.split(","),function(m){var n;if(k.files[m]){return}k.files[m]=true;n=k.create("link",{rel:"stylesheet",href:e._addVer(m)});if(b&&l.documentMode&&l.recalc){n.onload=function(){if(l.recalc){l.recalc()}n.onload=null}}j.appendChild(n)})},addClass:function(i,j){return this.run(i,function(k){var l;if(!j){return 0}if(this.hasClass(k,j)){return k.className}l=this.removeClass(k,j);return k.className=(l!=""?(l+" "):"")+j})},removeClass:function(k,l){var i=this,j;return i.run(k,function(n){var m;if(i.hasClass(n,l)){if(!j){j=new RegExp("(^|\\s+)"+l+"(\\s+|$)","g")}m=n.className.replace(j," ");m=e.trim(m!=" "?m:"");n.className=m;if(!m){n.removeAttribute("class");n.removeAttribute("className")}return m}return n.className})},hasClass:function(j,i){j=this.get(j);if(!j||!i){return false}return(" "+j.className+" ").indexOf(" "+i+" ")!==-1},show:function(i){return this.setStyle(i,"display","block")},hide:function(i){return this.setStyle(i,"display","none")},isHidden:function(i){i=this.get(i);return !i||i.style.display=="none"||this.getStyle(i,"display")=="none"},uniqueId:function(i){return(!i?"mce_":i)+(this.counter++)},setHTML:function(k,j){var i=this;return i.run(k,function(m){if(b){while(m.firstChild){m.removeChild(m.firstChild)}try{m.innerHTML="<br />"+j;m.removeChild(m.firstChild)}catch(l){m=i.create("div");m.innerHTML="<br />"+j;g(m.childNodes,function(o,n){if(n){m.appendChild(o)}})}}else{m.innerHTML=j}return j})},getOuterHTML:function(k){var j,i=this;k=i.get(k);if(!k){return null}if(k.nodeType===1&&i.hasOuterHTML){return k.outerHTML}j=(k.ownerDocument||i.doc).createElement("body");j.appendChild(k.cloneNode(true));return j.innerHTML},setOuterHTML:function(l,j,m){var i=this;function k(p,o,r){var s,q;q=r.createElement("body");q.innerHTML=o;s=q.lastChild;while(s){i.insertAfter(s.cloneNode(true),p);s=s.previousSibling}i.remove(p)}return this.run(l,function(o){o=i.get(o);if(o.nodeType==1){m=m||o.ownerDocument||i.doc;if(b){try{if(b&&o.nodeType==1){o.outerHTML=j}else{k(o,j,m)}}catch(n){k(o,j,m)}}else{k(o,j,m)}}})},decode:h.decode,encode:h.encodeAllRaw,insertAfter:function(i,j){j=this.get(j);return this.run(i,function(l){var k,m;k=j.parentNode;m=j.nextSibling;if(m){k.insertBefore(l,m)}else{k.appendChild(l)}return l})},replace:function(m,l,i){var j=this;if(d(l,"array")){m=m.cloneNode(true)}return j.run(l,function(k){if(i){g(e.grep(k.childNodes),function(n){m.appendChild(n)})}return k.parentNode.replaceChild(m,k)})},rename:function(l,i){var k=this,j;if(l.nodeName!=i.toUpperCase()){j=k.create(i);g(k.getAttribs(l),function(m){k.setAttrib(j,m.nodeName,k.getAttrib(l,m.nodeName))});k.replace(j,l,1)}return j||l},findCommonAncestor:function(k,i){var l=k,j;while(l){j=i;while(j&&l!=j){j=j.parentNode}if(l==j){break}l=l.parentNode}if(!l&&k.ownerDocument){return k.ownerDocument.documentElement}return l},toHex:function(i){var k=/^\s*rgb\s*?\(\s*?([0-9]+)\s*?,\s*?([0-9]+)\s*?,\s*?([0-9]+)\s*?\)\s*$/i.exec(i);function j(l){l=parseInt(l,10).toString(16);return l.length>1?l:"0"+l}if(k){i="#"+j(k[1])+j(k[2])+j(k[3]);return i}return i},getClasses:function(){var n=this,j=[],m,o={},p=n.settings.class_filter,l;if(n.classes){return n.classes}function q(i){g(i.imports,function(s){q(s)});g(i.cssRules||i.rules,function(s){switch(s.type||1){case 1:if(s.selectorText){g(s.selectorText.split(","),function(r){r=r.replace(/^\s*|\s*$|^\s\./g,"");if(/\.mce/.test(r)||!/\.[\w\-]+$/.test(r)){return}l=r;r=e._replace(/.*\.([a-z0-9_\-]+).*/i,"$1",r);if(p&&!(r=p(r,l))){return}if(!o[r]){j.push({"class":r});o[r]=1}})}break;case 3:q(s.styleSheet);break}})}try{g(n.doc.styleSheets,q)}catch(k){}if(j.length>0){n.classes=j}return j},run:function(l,k,j){var i=this,m;if(i.doc&&typeof(l)==="string"){l=i.get(l)}if(!l){return false}j=j||this;if(!l.nodeType&&(l.length||l.length===0)){m=[];g(l,function(o,n){if(o){if(typeof(o)=="string"){o=i.doc.getElementById(o)}m.push(k.call(j,o,n))}});return m}return k.call(j,l)},getAttribs:function(j){var i;j=this.get(j);if(!j){return[]}if(b){i=[];if(j.nodeName=="OBJECT"){return j.attributes}if(j.nodeName==="OPTION"&&this.getAttrib(j,"selected")){i.push({specified:1,nodeName:"selected"})}j.cloneNode(false).outerHTML.replace(/<\/?[\w:\-]+ ?|=[\"][^\"]+\"|=\'[^\']+\'|=[\w\-]+|>/gi,"").replace(/[\w:\-]+/gi,function(k){i.push({specified:1,nodeName:k})});return i}return j.attributes},isEmpty:function(m,k){var r=this,o,n,q,j,l,p=0;m=m.firstChild;if(m){j=new e.dom.TreeWalker(m,m.parentNode);k=k||r.schema?r.schema.getNonEmptyElements():null;do{q=m.nodeType;if(q===1){if(m.getAttribute("data-mce-bogus")){continue}l=m.nodeName.toLowerCase();if(k&&k[l]){if(l==="br"){p++;continue}return false}n=r.getAttribs(m);o=m.attributes.length;while(o--){l=m.attributes[o].nodeName;if(l==="name"||l==="data-mce-bookmark"){return false}}}if(q==8){return false}if((q===3&&!a.test(m.nodeValue))){return false}}while(m=j.next())}return p<=1},destroy:function(j){var i=this;i.win=i.doc=i.root=i.events=i.frag=null;if(!j){e.removeUnload(i.destroy)}},createRng:function(){var i=this.doc;return i.createRange?i.createRange():new e.dom.Range(this)},nodeIndex:function(m,n){var i=0,k,l,j;if(m){for(k=m.nodeType,m=m.previousSibling,l=m;m;m=m.previousSibling){j=m.nodeType;if(n&&j==3){if(j==k||!m.nodeValue.length){continue}}i++;k=j}}return i},split:function(m,l,p){var q=this,i=q.createRng(),n,k,o;function j(v){var t,s=v.childNodes,u=v.nodeType;function x(A){var z=A.previousSibling&&A.previousSibling.nodeName=="SPAN";var y=A.nextSibling&&A.nextSibling.nodeName=="SPAN";return z&&y}if(u==1&&v.getAttribute("data-mce-type")=="bookmark"){return}for(t=s.length-1;t>=0;t--){j(s[t])}if(u!=9){if(u==3&&v.nodeValue.length>0){var r=e.trim(v.nodeValue).length;if(!q.isBlock(v.parentNode)||r>0||r===0&&x(v)){return}}else{if(u==1){s=v.childNodes;if(s.length==1&&s[0]&&s[0].nodeType==1&&s[0].getAttribute("data-mce-type")=="bookmark"){v.parentNode.insertBefore(s[0],v)}if(s.length||/^(br|hr|input|img)$/i.test(v.nodeName)){return}}}q.remove(v)}return v}if(m&&l){i.setStart(m.parentNode,q.nodeIndex(m));i.setEnd(l.parentNode,q.nodeIndex(l));n=i.extractContents();i=q.createRng();i.setStart(l.parentNode,q.nodeIndex(l)+1);i.setEnd(m.parentNode,q.nodeIndex(m)+1);k=i.extractContents();o=m.parentNode;o.insertBefore(j(n),m);if(p){o.replaceChild(p,l)}else{o.insertBefore(l,m)}o.insertBefore(j(k),m);q.remove(m);return p||l}},bind:function(l,i,k,j){return this.events.add(l,i,k,j||this)},unbind:function(k,i,j){return this.events.remove(k,i,j)},fire:function(k,j,i){return this.events.fire(k,j,i)},getContentEditable:function(j){var i;if(j.nodeType!=1){return null}i=j.getAttribute("data-mce-contenteditable");if(i&&i!=="inherit"){return i}return j.contentEditable!=="inherit"?j.contentEditable:null},_findSib:function(l,i,j){var k=this,m=i;if(l){if(d(m,"string")){m=function(n){return k.is(n,i)}}for(l=l[j];l;l=l[j]){if(m(l)){return l}}}return null},_isRes:function(i){return/^(top|left|bottom|right|width|height)/i.test(i)||/;\s*(top|left|bottom|right|width|height)/i.test(i)}});e.DOM=new e.dom.DOMUtils(document,{process_html:0})})(tinymce);(function(a){function b(c){var O=this,e=c.doc,U=0,F=1,j=2,E=true,S=false,W="startOffset",h="startContainer",Q="endContainer",A="endOffset",k=tinymce.extend,n=c.nodeIndex;k(O,{startContainer:e,startOffset:0,endContainer:e,endOffset:0,collapsed:E,commonAncestorContainer:e,START_TO_START:0,START_TO_END:1,END_TO_END:2,END_TO_START:3,setStart:q,setEnd:s,setStartBefore:g,setStartAfter:J,setEndBefore:K,setEndAfter:u,collapse:B,selectNode:y,selectNodeContents:G,compareBoundaryPoints:v,deleteContents:p,extractContents:I,cloneContents:d,insertNode:D,surroundContents:N,cloneRange:L,toStringIE:T});function x(){return e.createDocumentFragment()}function q(X,t){C(E,X,t)}function s(X,t){C(S,X,t)}function g(t){q(t.parentNode,n(t))}function J(t){q(t.parentNode,n(t)+1)}function K(t){s(t.parentNode,n(t))}function u(t){s(t.parentNode,n(t)+1)}function B(t){if(t){O[Q]=O[h];O[A]=O[W]}else{O[h]=O[Q];O[W]=O[A]}O.collapsed=E}function y(t){g(t);u(t)}function G(t){q(t,0);s(t,t.nodeType===1?t.childNodes.length:t.nodeValue.length)}function v(aa,t){var ad=O[h],Y=O[W],ac=O[Q],X=O[A],ab=t.startContainer,af=t.startOffset,Z=t.endContainer,ae=t.endOffset;if(aa===0){return H(ad,Y,ab,af)}if(aa===1){return H(ac,X,ab,af)}if(aa===2){return H(ac,X,Z,ae)}if(aa===3){return H(ad,Y,Z,ae)}}function p(){l(j)}function I(){return l(U)}function d(){return l(F)}function D(aa){var X=this[h],t=this[W],Z,Y;if((X.nodeType===3||X.nodeType===4)&&X.nodeValue){if(!t){X.parentNode.insertBefore(aa,X)}else{if(t>=X.nodeValue.length){c.insertAfter(aa,X)}else{Z=X.splitText(t);X.parentNode.insertBefore(aa,Z)}}}else{if(X.childNodes.length>0){Y=X.childNodes[t]}if(Y){X.insertBefore(aa,Y)}else{X.appendChild(aa)}}}function N(X){var t=O.extractContents();O.insertNode(X);X.appendChild(t);O.selectNode(X)}function L(){return k(new b(c),{startContainer:O[h],startOffset:O[W],endContainer:O[Q],endOffset:O[A],collapsed:O.collapsed,commonAncestorContainer:O.commonAncestorContainer})}function P(t,X){var Y;if(t.nodeType==3){return t}if(X<0){return t}Y=t.firstChild;while(Y&&X>0){--X;Y=Y.nextSibling}if(Y){return Y}return t}function m(){return(O[h]==O[Q]&&O[W]==O[A])}function H(Z,ab,X,aa){var ac,Y,t,ad,af,ae;if(Z==X){if(ab==aa){return 0}if(ab<aa){return -1}return 1}ac=X;while(ac&&ac.parentNode!=Z){ac=ac.parentNode}if(ac){Y=0;t=Z.firstChild;while(t!=ac&&Y<ab){Y++;t=t.nextSibling}if(ab<=Y){return -1}return 1}ac=Z;while(ac&&ac.parentNode!=X){ac=ac.parentNode}if(ac){Y=0;t=X.firstChild;while(t!=ac&&Y<aa){Y++;t=t.nextSibling}if(Y<aa){return -1}return 1}ad=c.findCommonAncestor(Z,X);af=Z;while(af&&af.parentNode!=ad){af=af.parentNode}if(!af){af=ad}ae=X;while(ae&&ae.parentNode!=ad){ae=ae.parentNode}if(!ae){ae=ad}if(af==ae){return 0}t=ad.firstChild;while(t){if(t==af){return -1}if(t==ae){return 1}t=t.nextSibling}}function C(X,aa,Z){var t,Y;if(X){O[h]=aa;O[W]=Z}else{O[Q]=aa;O[A]=Z}t=O[Q];while(t.parentNode){t=t.parentNode}Y=O[h];while(Y.parentNode){Y=Y.parentNode}if(Y==t){if(H(O[h],O[W],O[Q],O[A])>0){O.collapse(X)}}else{O.collapse(X)}O.collapsed=m();O.commonAncestorContainer=c.findCommonAncestor(O[h],O[Q])}function l(ad){var ac,Z=0,af=0,X,ab,Y,aa,t,ae;if(O[h]==O[Q]){return f(ad)}for(ac=O[Q],X=ac.parentNode;X;ac=X,X=X.parentNode){if(X==O[h]){return r(ac,ad)}++Z}for(ac=O[h],X=ac.parentNode;X;ac=X,X=X.parentNode){if(X==O[Q]){return V(ac,ad)}++af}ab=af-Z;Y=O[h];while(ab>0){Y=Y.parentNode;ab--}aa=O[Q];while(ab<0){aa=aa.parentNode;ab++}for(t=Y.parentNode,ae=aa.parentNode;t!=ae;t=t.parentNode,ae=ae.parentNode){Y=t;aa=ae}return o(Y,aa,ad)}function f(ac){var ae,af,t,Y,Z,ad,aa,X,ab;if(ac!=j){ae=x()}if(O[W]==O[A]){return ae}if(O[h].nodeType==3){af=O[h].nodeValue;t=af.substring(O[W],O[A]);if(ac!=F){Y=O[h];X=O[W];ab=O[A]-O[W];if(X===0&&ab>=Y.nodeValue.length-1){Y.parentNode.removeChild(Y)}else{Y.deleteData(X,ab)}O.collapse(E)}if(ac==j){return}if(t.length>0){ae.appendChild(e.createTextNode(t))}return ae}Y=P(O[h],O[W]);Z=O[A]-O[W];while(Y&&Z>0){ad=Y.nextSibling;aa=z(Y,ac);if(ae){ae.appendChild(aa)}--Z;Y=ad}if(ac!=F){O.collapse(E)}return ae}function r(ad,aa){var ac,ab,X,t,Z,Y;if(aa!=j){ac=x()}ab=i(ad,aa);if(ac){ac.appendChild(ab)}X=n(ad);t=X-O[W];if(t<=0){if(aa!=F){O.setEndBefore(ad);O.collapse(S)}return ac}ab=ad.previousSibling;while(t>0){Z=ab.previousSibling;Y=z(ab,aa);if(ac){ac.insertBefore(Y,ac.firstChild)}--t;ab=Z}if(aa!=F){O.setEndBefore(ad);O.collapse(S)}return ac}function V(ab,aa){var ad,X,ac,t,Z,Y;if(aa!=j){ad=x()}ac=R(ab,aa);if(ad){ad.appendChild(ac)}X=n(ab);++X;t=O[A]-X;ac=ab.nextSibling;while(ac&&t>0){Z=ac.nextSibling;Y=z(ac,aa);if(ad){ad.appendChild(Y)}--t;ac=Z}if(aa!=F){O.setStartAfter(ab);O.collapse(E)}return ad}function o(ab,t,ae){var Y,ag,aa,ac,ad,X,af,Z;if(ae!=j){ag=x()}Y=R(ab,ae);if(ag){ag.appendChild(Y)}aa=ab.parentNode;ac=n(ab);ad=n(t);++ac;X=ad-ac;af=ab.nextSibling;while(X>0){Z=af.nextSibling;Y=z(af,ae);if(ag){ag.appendChild(Y)}af=Z;--X}Y=i(t,ae);if(ag){ag.appendChild(Y)}if(ae!=F){O.setStartAfter(ab);O.collapse(E)}return ag}function i(ac,ad){var Y=P(O[Q],O[A]-1),ae,ab,aa,t,X,Z=Y!=O[Q];if(Y==ac){return M(Y,Z,S,ad)}ae=Y.parentNode;ab=M(ae,S,S,ad);while(ae){while(Y){aa=Y.previousSibling;t=M(Y,Z,S,ad);if(ad!=j){ab.insertBefore(t,ab.firstChild)}Z=E;Y=aa}if(ae==ac){return ab}Y=ae.previousSibling;ae=ae.parentNode;X=M(ae,S,S,ad);if(ad!=j){X.appendChild(ab)}ab=X}}function R(ac,ad){var Z=P(O[h],O[W]),aa=Z!=O[h],ae,ab,Y,t,X;if(Z==ac){return M(Z,aa,E,ad)}ae=Z.parentNode;ab=M(ae,S,E,ad);while(ae){while(Z){Y=Z.nextSibling;t=M(Z,aa,E,ad);if(ad!=j){ab.appendChild(t)}aa=E;Z=Y}if(ae==ac){return ab}Z=ae.nextSibling;ae=ae.parentNode;X=M(ae,S,E,ad);if(ad!=j){X.appendChild(ab)}ab=X}}function M(t,aa,ad,ae){var Z,Y,ab,X,ac;if(aa){return z(t,ae)}if(t.nodeType==3){Z=t.nodeValue;if(ad){X=O[W];Y=Z.substring(X);ab=Z.substring(0,X)}else{X=O[A];Y=Z.substring(0,X);ab=Z.substring(X)}if(ae!=F){t.nodeValue=ab}if(ae==j){return}ac=c.clone(t,S);ac.nodeValue=Y;return ac}if(ae==j){return}return c.clone(t,S)}function z(X,t){if(t!=j){return t==F?c.clone(X,E):X}X.parentNode.removeChild(X)}function T(){return c.create("body",null,d()).outerText}return O}a.Range=b;b.prototype.toString=function(){return this.toStringIE()}})(tinymce.dom);(function(){function a(d){var b=this,h=d.dom,c=true,f=false;function e(i,j){var k,t=0,q,n,m,l,o,r,p=-1,s;k=i.duplicate();k.collapse(j);s=k.parentElement();if(s.ownerDocument!==d.dom.doc){return}while(s.contentEditable==="false"){s=s.parentNode}if(!s.hasChildNodes()){return{node:s,inside:1}}m=s.children;q=m.length-1;while(t<=q){r=Math.floor((t+q)/2);l=m[r];k.moveToElementText(l);p=k.compareEndPoints(j?"StartToStart":"EndToEnd",i);if(p>0){q=r-1}else{if(p<0){t=r+1}else{return{node:l}}}}if(p<0){if(!l){k.moveToElementText(s);k.collapse(true);l=s;n=true}else{k.collapse(false)}o=0;while(k.compareEndPoints(j?"StartToStart":"StartToEnd",i)!==0){if(k.move("character",1)===0||s!=k.parentElement()){break}o++}}else{k.collapse(true);o=0;while(k.compareEndPoints(j?"StartToStart":"StartToEnd",i)!==0){if(k.move("character",-1)===0||s!=k.parentElement()){break}o++}}return{node:l,position:p,offset:o,inside:n}}function g(){var i=d.getRng(),r=h.createRng(),l,k,p,q,m,j;l=i.item?i.item(0):i.parentElement();if(l.ownerDocument!=h.doc){return r}k=d.isCollapsed();if(i.item){r.setStart(l.parentNode,h.nodeIndex(l));r.setEnd(r.startContainer,r.startOffset+1);return r}function o(A){var u=e(i,A),s,y,z=0,x,v,t;s=u.node;y=u.offset;if(u.inside&&!s.hasChildNodes()){r[A?"setStart":"setEnd"](s,0);return}if(y===v){r[A?"setStartBefore":"setEndAfter"](s);return}if(u.position<0){x=u.inside?s.firstChild:s.nextSibling;if(!x){r[A?"setStartAfter":"setEndAfter"](s);return}if(!y){if(x.nodeType==3){r[A?"setStart":"setEnd"](x,0)}else{r[A?"setStartBefore":"setEndBefore"](x)}return}while(x){t=x.nodeValue;z+=t.length;if(z>=y){s=x;z-=y;z=t.length-z;break}x=x.nextSibling}}else{x=s.previousSibling;if(!x){return r[A?"setStartBefore":"setEndBefore"](s)}if(!y){if(s.nodeType==3){r[A?"setStart":"setEnd"](x,s.nodeValue.length)}else{r[A?"setStartAfter":"setEndAfter"](x)}return}while(x){z+=x.nodeValue.length;if(z>=y){s=x;z-=y;break}x=x.previousSibling}}r[A?"setStart":"setEnd"](s,z)}try{o(true);if(!k){o()}}catch(n){if(n.number==-2147024809){m=b.getBookmark(2);p=i.duplicate();p.collapse(true);l=p.parentElement();if(!k){p=i.duplicate();p.collapse(false);q=p.parentElement();q.innerHTML=q.innerHTML}l.innerHTML=l.innerHTML;b.moveToBookmark(m);i=d.getRng();o(true);if(!k){o()}}else{throw n}}return r}this.getBookmark=function(m){var j=d.getRng(),o,i,l={};function n(u){var t,p,s,r,q=[];t=u.parentNode;p=h.getRoot().parentNode;while(t!=p&&t.nodeType!==9){s=t.children;r=s.length;while(r--){if(u===s[r]){q.push(r);break}}u=t;t=t.parentNode}return q}function k(q){var p;p=e(j,q);if(p){return{position:p.position,offset:p.offset,indexes:n(p.node),inside:p.inside}}}if(m===2){if(!j.item){l.start=k(true);if(!d.isCollapsed()){l.end=k()}}else{l.start={ctrl:true,indexes:n(j.item(0))}}}return l};this.moveToBookmark=function(k){var j,i=h.doc.body;function m(o){var r,q,n,p;r=h.getRoot();for(q=o.length-1;q>=0;q--){p=r.children;n=o[q];if(n<=p.length-1){r=p[n]}}return r}function l(r){var n=k[r?"start":"end"],q,p,o;if(n){q=n.position>0;p=i.createTextRange();p.moveToElementText(m(n.indexes));offset=n.offset;if(offset!==o){p.collapse(n.inside||q);p.moveStart("character",q?-offset:offset)}else{p.collapse(r)}j.setEndPoint(r?"StartToStart":"EndToStart",p);if(r){j.collapse(true)}}}if(k.start){if(k.start.ctrl){j=i.createControlRange();j.addElement(m(k.start.indexes));j.select()}else{j=i.createTextRange();l(true);l();j.select()}}};this.addRange=function(i){var n,l,k,p,t,q,s,r=d.dom.doc,m=r.body;function j(A){var v,z,u,y,x;u=h.create("a");v=A?k:t;z=A?p:q;y=n.duplicate();if(v==r||v==r.documentElement){v=m;z=0}if(v.nodeType==3){v.parentNode.insertBefore(u,v);y.moveToElementText(u);y.moveStart("character",z);h.remove(u);n.setEndPoint(A?"StartToStart":"EndToEnd",y)}else{x=v.childNodes;if(x.length){if(z>=x.length){h.insertAfter(u,x[x.length-1])}else{v.insertBefore(u,x[z])}y.moveToElementText(u)}else{if(v.canHaveHTML){v.innerHTML="<span>\uFEFF</span>";u=v.firstChild;y.moveToElementText(u);y.collapse(f)}}n.setEndPoint(A?"StartToStart":"EndToEnd",y);h.remove(u)}}k=i.startContainer;p=i.startOffset;t=i.endContainer;q=i.endOffset;n=m.createTextRange();if(k==t&&k.nodeType==1){if(p==q&&!k.hasChildNodes()){if(k.canHaveHTML){s=k.previousSibling;if(s&&!s.hasChildNodes()&&h.isBlock(s)){s.innerHTML="\uFEFF"}else{s=null}k.innerHTML="<span>\uFEFF</span><span>\uFEFF</span>";n.moveToElementText(k.lastChild);n.select();h.doc.selection.clear();k.innerHTML="";if(s){s.innerHTML=""}return}else{p=h.nodeIndex(k);k=k.parentNode}}if(p==q-1){try{l=m.createControlRange();l.addElement(k.childNodes[p]);l.select();return}catch(o){}}}j(true);j();n.select()};this.getRangeAt=g}tinymce.dom.TridentSelection=a})();(function(){var n=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,i="sizcache",o=0,r=Object.prototype.toString,h=false,g=true,q=/\\/g,u=/\r\n/g,x=/\W/;[0,0].sort(function(){g=false;return 0});var d=function(C,e,F,G){F=F||[];e=e||document;var I=e;if(e.nodeType!==1&&e.nodeType!==9){return[]}if(!C||typeof C!=="string"){return F}var z,K,N,y,J,M,L,E,B=true,A=d.isXML(e),D=[],H=C;do{n.exec("");z=n.exec(H);if(z){H=z[3];D.push(z[1]);if(z[2]){y=z[3];break}}}while(z);if(D.length>1&&j.exec(C)){if(D.length===2&&k.relative[D[0]]){K=s(D[0]+D[1],e,G)}else{K=k.relative[D[0]]?[e]:d(D.shift(),e);while(D.length){C=D.shift();if(k.relative[C]){C+=D.shift()}K=s(C,K,G)}}}else{if(!G&&D.length>1&&e.nodeType===9&&!A&&k.match.ID.test(D[0])&&!k.match.ID.test(D[D.length-1])){J=d.find(D.shift(),e,A);e=J.expr?d.filter(J.expr,J.set)[0]:J.set[0]}if(e){J=G?{expr:D.pop(),set:l(G)}:d.find(D.pop(),D.length===1&&(D[0]==="~"||D[0]==="+")&&e.parentNode?e.parentNode:e,A);K=J.expr?d.filter(J.expr,J.set):J.set;if(D.length>0){N=l(K)}else{B=false}while(D.length){M=D.pop();L=M;if(!k.relative[M]){M=""}else{L=D.pop()}if(L==null){L=e}k.relative[M](N,L,A)}}else{N=D=[]}}if(!N){N=K}if(!N){d.error(M||C)}if(r.call(N)==="[object Array]"){if(!B){F.push.apply(F,N)}else{if(e&&e.nodeType===1){for(E=0;N[E]!=null;E++){if(N[E]&&(N[E]===true||N[E].nodeType===1&&d.contains(e,N[E]))){F.push(K[E])}}}else{for(E=0;N[E]!=null;E++){if(N[E]&&N[E].nodeType===1){F.push(K[E])}}}}}else{l(N,F)}if(y){d(y,I,F,G);d.uniqueSort(F)}return F};d.uniqueSort=function(y){if(p){h=g;y.sort(p);if(h){for(var e=1;e<y.length;e++){if(y[e]===y[e-1]){y.splice(e--,1)}}}}return y};d.matches=function(e,y){return d(e,null,null,y)};d.matchesSelector=function(e,y){return d(y,null,null,[e]).length>0};d.find=function(E,e,F){var D,z,B,A,C,y;if(!E){return[]}for(z=0,B=k.order.length;z<B;z++){C=k.order[z];if((A=k.leftMatch[C].exec(E))){y=A[1];A.splice(1,1);if(y.substr(y.length-1)!=="\\"){A[1]=(A[1]||"").replace(q,"");D=k.find[C](A,e,F);if(D!=null){E=E.replace(k.match[C],"");break}}}}if(!D){D=typeof e.getElementsByTagName!=="undefined"?e.getElementsByTagName("*"):[]}return{set:D,expr:E}};d.filter=function(I,H,L,B){var D,e,G,N,K,y,A,C,J,z=I,M=[],F=H,E=H&&H[0]&&d.isXML(H[0]);while(I&&H.length){for(G in k.filter){if((D=k.leftMatch[G].exec(I))!=null&&D[2]){y=k.filter[G];A=D[1];e=false;D.splice(1,1);if(A.substr(A.length-1)==="\\"){continue}if(F===M){M=[]}if(k.preFilter[G]){D=k.preFilter[G](D,F,L,M,B,E);if(!D){e=N=true}else{if(D===true){continue}}}if(D){for(C=0;(K=F[C])!=null;C++){if(K){N=y(K,D,C,F);J=B^N;if(L&&N!=null){if(J){e=true}else{F[C]=false}}else{if(J){M.push(K);e=true}}}}}if(N!==undefined){if(!L){F=M}I=I.replace(k.match[G],"");if(!e){return[]}break}}}if(I===z){if(e==null){d.error(I)}else{break}}z=I}return F};d.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)};var b=d.getText=function(B){var z,A,e=B.nodeType,y="";if(e){if(e===1||e===9||e===11){if(typeof B.textContent==="string"){return B.textContent}else{if(typeof B.innerText==="string"){return B.innerText.replace(u,"")}else{for(B=B.firstChild;B;B=B.nextSibling){y+=b(B)}}}}else{if(e===3||e===4){return B.nodeValue}}}else{for(z=0;(A=B[z]);z++){if(A.nodeType!==8){y+=b(A)}}}return y};var k=d.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(e){return e.getAttribute("href")},type:function(e){return e.getAttribute("type")}},relative:{"+":function(D,y){var A=typeof y==="string",C=A&&!x.test(y),E=A&&!C;if(C){y=y.toLowerCase()}for(var z=0,e=D.length,B;z<e;z++){if((B=D[z])){while((B=B.previousSibling)&&B.nodeType!==1){}D[z]=E||B&&B.nodeName.toLowerCase()===y?B||false:B===y}}if(E){d.filter(y,D,true)}},">":function(D,y){var C,B=typeof y==="string",z=0,e=D.length;if(B&&!x.test(y)){y=y.toLowerCase();for(;z<e;z++){C=D[z];if(C){var A=C.parentNode;D[z]=A.nodeName.toLowerCase()===y?A:false}}}else{for(;z<e;z++){C=D[z];if(C){D[z]=B?C.parentNode:C.parentNode===y}}if(B){d.filter(y,D,true)}}},"":function(A,y,C){var B,z=o++,e=t;if(typeof y==="string"&&!x.test(y)){y=y.toLowerCase();B=y;e=a}e("parentNode",y,z,A,B,C)},"~":function(A,y,C){var B,z=o++,e=t;if(typeof y==="string"&&!x.test(y)){y=y.toLowerCase();B=y;e=a}e("previousSibling",y,z,A,B,C)}},find:{ID:function(y,z,A){if(typeof z.getElementById!=="undefined"&&!A){var e=z.getElementById(y[1]);return e&&e.parentNode?[e]:[]}},NAME:function(z,C){if(typeof C.getElementsByName!=="undefined"){var y=[],B=C.getElementsByName(z[1]);for(var A=0,e=B.length;A<e;A++){if(B[A].getAttribute("name")===z[1]){y.push(B[A])}}return y.length===0?null:y}},TAG:function(e,y){if(typeof y.getElementsByTagName!=="undefined"){return y.getElementsByTagName(e[1])}}},preFilter:{CLASS:function(A,y,z,e,D,E){A=" "+A[1].replace(q,"")+" ";if(E){return A}for(var B=0,C;(C=y[B])!=null;B++){if(C){if(D^(C.className&&(" "+C.className+" ").replace(/[\t\n\r]/g," ").indexOf(A)>=0)){if(!z){e.push(C)}}else{if(z){y[B]=false}}}}return false},ID:function(e){return e[1].replace(q,"")},TAG:function(y,e){return y[1].replace(q,"").toLowerCase()},CHILD:function(e){if(e[1]==="nth"){if(!e[2]){d.error(e[0])}e[2]=e[2].replace(/^\+|\s*/g,"");var y=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(e[2]==="even"&&"2n"||e[2]==="odd"&&"2n+1"||!/\D/.test(e[2])&&"0n+"+e[2]||e[2]);e[2]=(y[1]+(y[2]||1))-0;e[3]=y[3]-0}else{if(e[2]){d.error(e[0])}}e[0]=o++;return e},ATTR:function(B,y,z,e,C,D){var A=B[1]=B[1].replace(q,"");if(!D&&k.attrMap[A]){B[1]=k.attrMap[A]}B[4]=(B[4]||B[5]||"").replace(q,"");if(B[2]==="~="){B[4]=" "+B[4]+" "}return B},PSEUDO:function(B,y,z,e,C){if(B[1]==="not"){if((n.exec(B[3])||"").length>1||/^\w/.test(B[3])){B[3]=d(B[3],null,null,y)}else{var A=d.filter(B[3],y,z,true^C);if(!z){e.push.apply(e,A)}return false}}else{if(k.match.POS.test(B[0])||k.match.CHILD.test(B[0])){return true}}return B},POS:function(e){e.unshift(true);return e}},filters:{enabled:function(e){return e.disabled===false&&e.type!=="hidden"},disabled:function(e){return e.disabled===true},checked:function(e){return e.checked===true},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !!e.firstChild},empty:function(e){return !e.firstChild},has:function(z,y,e){return !!d(e[3],z).length},header:function(e){return(/h\d/i).test(e.nodeName)},text:function(z){var e=z.getAttribute("type"),y=z.type;return z.nodeName.toLowerCase()==="input"&&"text"===y&&(e===y||e===null)},radio:function(e){return e.nodeName.toLowerCase()==="input"&&"radio"===e.type},checkbox:function(e){return e.nodeName.toLowerCase()==="input"&&"checkbox"===e.type},file:function(e){return e.nodeName.toLowerCase()==="input"&&"file"===e.type},password:function(e){return e.nodeName.toLowerCase()==="input"&&"password"===e.type},submit:function(y){var e=y.nodeName.toLowerCase();return(e==="input"||e==="button")&&"submit"===y.type},image:function(e){return e.nodeName.toLowerCase()==="input"&&"image"===e.type},reset:function(y){var e=y.nodeName.toLowerCase();return(e==="input"||e==="button")&&"reset"===y.type},button:function(y){var e=y.nodeName.toLowerCase();return e==="input"&&"button"===y.type||e==="button"},input:function(e){return(/input|select|textarea|button/i).test(e.nodeName)},focus:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(y,e){return e===0},last:function(z,y,e,A){return y===A.length-1},even:function(y,e){return e%2===0},odd:function(y,e){return e%2===1},lt:function(z,y,e){return y<e[3]-0},gt:function(z,y,e){return y>e[3]-0},nth:function(z,y,e){return e[3]-0===y},eq:function(z,y,e){return e[3]-0===y}},filter:{PSEUDO:function(z,E,D,F){var e=E[1],y=k.filters[e];if(y){return y(z,D,E,F)}else{if(e==="contains"){return(z.textContent||z.innerText||b([z])||"").indexOf(E[3])>=0}else{if(e==="not"){var A=E[3];for(var C=0,B=A.length;C<B;C++){if(A[C]===z){return false}}return true}else{d.error(e)}}}},CHILD:function(z,B){var A,H,D,G,e,C,F,E=B[1],y=z;switch(E){case"only":case"first":while((y=y.previousSibling)){if(y.nodeType===1){return false}}if(E==="first"){return true}y=z;case"last":while((y=y.nextSibling)){if(y.nodeType===1){return false}}return true;case"nth":A=B[2];H=B[3];if(A===1&&H===0){return true}D=B[0];G=z.parentNode;if(G&&(G[i]!==D||!z.nodeIndex)){C=0;for(y=G.firstChild;y;y=y.nextSibling){if(y.nodeType===1){y.nodeIndex=++C}}G[i]=D}F=z.nodeIndex-H;if(A===0){return F===0}else{return(F%A===0&&F/A>=0)}}},ID:function(y,e){return y.nodeType===1&&y.getAttribute("id")===e},TAG:function(y,e){return(e==="*"&&y.nodeType===1)||!!y.nodeName&&y.nodeName.toLowerCase()===e},CLASS:function(y,e){return(" "+(y.className||y.getAttribute("class"))+" ").indexOf(e)>-1},ATTR:function(C,A){var z=A[1],e=d.attr?d.attr(C,z):k.attrHandle[z]?k.attrHandle[z](C):C[z]!=null?C[z]:C.getAttribute(z),D=e+"",B=A[2],y=A[4];return e==null?B==="!=":!B&&d.attr?e!=null:B==="="?D===y:B==="*="?D.indexOf(y)>=0:B==="~="?(" "+D+" ").indexOf(y)>=0:!y?D&&e!==false:B==="!="?D!==y:B==="^="?D.indexOf(y)===0:B==="$="?D.substr(D.length-y.length)===y:B==="|="?D===y||D.substr(0,y.length+1)===y+"-":false},POS:function(B,y,z,C){var e=y[2],A=k.setFilters[e];if(A){return A(B,z,y,C)}}}};var j=k.match.POS,c=function(y,e){return"\\"+(e-0+1)};for(var f in k.match){k.match[f]=new RegExp(k.match[f].source+(/(?![^\[]*\])(?![^\(]*\))/.source));k.leftMatch[f]=new RegExp(/(^(?:.|\r|\n)*?)/.source+k.match[f].source.replace(/\\(\d+)/g,c))}k.match.globalPOS=j;var l=function(y,e){y=Array.prototype.slice.call(y,0);if(e){e.push.apply(e,y);return e}return y};try{Array.prototype.slice.call(document.documentElement.childNodes,0)[0].nodeType}catch(v){l=function(B,A){var z=0,y=A||[];if(r.call(B)==="[object Array]"){Array.prototype.push.apply(y,B)}else{if(typeof B.length==="number"){for(var e=B.length;z<e;z++){y.push(B[z])}}else{for(;B[z];z++){y.push(B[z])}}}return y}}var p,m;if(document.documentElement.compareDocumentPosition){p=function(y,e){if(y===e){h=true;return 0}if(!y.compareDocumentPosition||!e.compareDocumentPosition){return y.compareDocumentPosition?-1:1}return y.compareDocumentPosition(e)&4?-1:1}}else{p=function(F,E){if(F===E){h=true;return 0}else{if(F.sourceIndex&&E.sourceIndex){return F.sourceIndex-E.sourceIndex}}var C,y,z=[],e=[],B=F.parentNode,D=E.parentNode,G=B;if(B===D){return m(F,E)}else{if(!B){return -1}else{if(!D){return 1}}}while(G){z.unshift(G);G=G.parentNode}G=D;while(G){e.unshift(G);G=G.parentNode}C=z.length;y=e.length;for(var A=0;A<C&&A<y;A++){if(z[A]!==e[A]){return m(z[A],e[A])}}return A===C?m(F,e[A],-1):m(z[A],E,1)};m=function(y,e,z){if(y===e){return z}var A=y.nextSibling;while(A){if(A===e){return -1}A=A.nextSibling}return 1}}(function(){var y=document.createElement("div"),z="script"+(new Date()).getTime(),e=document.documentElement;y.innerHTML="<a name='"+z+"'/>";e.insertBefore(y,e.firstChild);if(document.getElementById(z)){k.find.ID=function(B,C,D){if(typeof C.getElementById!=="undefined"&&!D){var A=C.getElementById(B[1]);return A?A.id===B[1]||typeof A.getAttributeNode!=="undefined"&&A.getAttributeNode("id").nodeValue===B[1]?[A]:undefined:[]}};k.filter.ID=function(C,A){var B=typeof C.getAttributeNode!=="undefined"&&C.getAttributeNode("id");return C.nodeType===1&&B&&B.nodeValue===A}}e.removeChild(y);e=y=null})();(function(){var e=document.createElement("div");e.appendChild(document.createComment(""));if(e.getElementsByTagName("*").length>0){k.find.TAG=function(y,C){var B=C.getElementsByTagName(y[1]);if(y[1]==="*"){var A=[];for(var z=0;B[z];z++){if(B[z].nodeType===1){A.push(B[z])}}B=A}return B}}e.innerHTML="<a href='#'></a>";if(e.firstChild&&typeof e.firstChild.getAttribute!=="undefined"&&e.firstChild.getAttribute("href")!=="#"){k.attrHandle.href=function(y){return y.getAttribute("href",2)}}e=null})();if(document.querySelectorAll){(function(){var e=d,A=document.createElement("div"),z="__sizzle__";A.innerHTML="<p class='TEST'></p>";if(A.querySelectorAll&&A.querySelectorAll(".TEST").length===0){return}d=function(L,C,G,K){C=C||document;if(!K&&!d.isXML(C)){var J=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(L);if(J&&(C.nodeType===1||C.nodeType===9)){if(J[1]){return l(C.getElementsByTagName(L),G)}else{if(J[2]&&k.find.CLASS&&C.getElementsByClassName){return l(C.getElementsByClassName(J[2]),G)}}}if(C.nodeType===9){if(L==="body"&&C.body){return l([C.body],G)}else{if(J&&J[3]){var F=C.getElementById(J[3]);if(F&&F.parentNode){if(F.id===J[3]){return l([F],G)}}else{return l([],G)}}}try{return l(C.querySelectorAll(L),G)}catch(H){}}else{if(C.nodeType===1&&C.nodeName.toLowerCase()!=="object"){var D=C,E=C.getAttribute("id"),B=E||z,N=C.parentNode,M=/^\s*[+~]/.test(L);if(!E){C.setAttribute("id",B)}else{B=B.replace(/'/g,"\\$&")}if(M&&N){C=C.parentNode}try{if(!M||N){return l(C.querySelectorAll("[id='"+B+"'] "+L),G)}}catch(I){}finally{if(!E){D.removeAttribute("id")}}}}}return e(L,C,G,K)};for(var y in e){d[y]=e[y]}A=null})()}(function(){var e=document.documentElement,z=e.matchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.msMatchesSelector;if(z){var B=!z.call(document.createElement("div"),"div"),y=false;try{z.call(document.documentElement,"[test!='']:sizzle")}catch(A){y=true}d.matchesSelector=function(D,F){F=F.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!d.isXML(D)){try{if(y||!k.match.PSEUDO.test(F)&&!/!=/.test(F)){var C=z.call(D,F);if(C||!B||D.document&&D.document.nodeType!==11){return C}}}catch(E){}}return d(F,null,null,[D]).length>0}}})();(function(){var e=document.createElement("div");e.innerHTML="<div class='test e'></div><div class='test'></div>";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return}e.lastChild.className="e";if(e.getElementsByClassName("e").length===1){return}k.order.splice(1,0,"CLASS");k.find.CLASS=function(y,z,A){if(typeof z.getElementsByClassName!=="undefined"&&!A){return z.getElementsByClassName(y[1])}};e=null})();function a(y,D,C,G,E,F){for(var A=0,z=G.length;A<z;A++){var e=G[A];if(e){var B=false;e=e[y];while(e){if(e[i]===C){B=G[e.sizset];break}if(e.nodeType===1&&!F){e[i]=C;e.sizset=A}if(e.nodeName.toLowerCase()===D){B=e;break}e=e[y]}G[A]=B}}}function t(y,D,C,G,E,F){for(var A=0,z=G.length;A<z;A++){var e=G[A];if(e){var B=false;e=e[y];while(e){if(e[i]===C){B=G[e.sizset];break}if(e.nodeType===1){if(!F){e[i]=C;e.sizset=A}if(typeof D!=="string"){if(e===D){B=true;break}}else{if(d.filter(D,[e]).length>0){B=e;break}}}e=e[y]}G[A]=B}}}if(document.documentElement.contains){d.contains=function(y,e){return y!==e&&(y.contains?y.contains(e):true)}}else{if(document.documentElement.compareDocumentPosition){d.contains=function(y,e){return !!(y.compareDocumentPosition(e)&16)}}else{d.contains=function(){return false}}}d.isXML=function(e){var y=(e?e.ownerDocument||e:0).documentElement;return y?y.nodeName!=="HTML":false};var s=function(z,e,D){var C,E=[],B="",F=e.nodeType?[e]:e;while((C=k.match.PSEUDO.exec(z))){B+=C[0];z=z.replace(k.match.PSEUDO,"")}z=k.relative[z]?z+"*":z;for(var A=0,y=F.length;A<y;A++){d(z,F[A],E,D)}return d.filter(B,E)};window.tinymce.dom.Sizzle=d})();(function(a){a.dom.Element=function(f,d){var b=this,e,c;b.settings=d=d||{};b.id=f;b.dom=e=d.dom||a.DOM;if(!a.isIE){c=e.get(b.id)}a.each(("getPos,getRect,getParent,add,setStyle,getStyle,setStyles,setAttrib,setAttribs,getAttrib,addClass,removeClass,hasClass,getOuterHTML,setOuterHTML,remove,show,hide,isHidden,setHTML,get").split(/,/),function(g){b[g]=function(){var h=[f],j;for(j=0;j<arguments.length;j++){h.push(arguments[j])}h=e[g].apply(e,h);b.update(g);return h}});a.extend(b,{on:function(i,h,g){return a.dom.Event.add(b.id,i,h,g)},getXY:function(){return{x:parseInt(b.getStyle("left")),y:parseInt(b.getStyle("top"))}},getSize:function(){var g=e.get(b.id);return{w:parseInt(b.getStyle("width")||g.clientWidth),h:parseInt(b.getStyle("height")||g.clientHeight)}},moveTo:function(g,h){b.setStyles({left:g,top:h})},moveBy:function(g,i){var h=b.getXY();b.moveTo(h.x+g,h.y+i)},resizeTo:function(g,i){b.setStyles({width:g,height:i})},resizeBy:function(g,j){var i=b.getSize();b.resizeTo(i.w+g,i.h+j)},update:function(h){var g;if(a.isIE6&&d.blocker){h=h||"";if(h.indexOf("get")===0||h.indexOf("has")===0||h.indexOf("is")===0){return}if(h=="remove"){e.remove(b.blocker);return}if(!b.blocker){b.blocker=e.uniqueId();g=e.add(d.container||e.getRoot(),"iframe",{id:b.blocker,style:"position:absolute;",frameBorder:0,src:'javascript:""'});e.setStyle(g,"opacity",0)}else{g=e.get(b.blocker)}e.setStyles(g,{left:b.getStyle("left",1),top:b.getStyle("top",1),width:b.getStyle("width",1),height:b.getStyle("height",1),display:b.getStyle("display",1),zIndex:parseInt(b.getStyle("zIndex",1)||0)-1})}}})}})(tinymce);(function(d){function f(g){return g.replace(/[\n\r]+/g,"")}var c=d.is,b=d.isIE,e=d.each,a=d.dom.TreeWalker;d.create("tinymce.dom.Selection",{Selection:function(k,j,i,h){var g=this;g.dom=k;g.win=j;g.serializer=i;g.editor=h;e(["onBeforeSetContent","onBeforeGetContent","onSetContent","onGetContent"],function(l){g[l]=new d.util.Dispatcher(g)});if(!g.win.getSelection){g.tridentSel=new d.dom.TridentSelection(g)}if(d.isIE&&k.boxModel){this._fixIESelection()}d.addUnload(g.destroy,g)},setCursorLocation:function(i,j){var g=this;var h=g.dom.createRng();h.setStart(i,j);h.setEnd(i,j);g.setRng(h);g.collapse(false)},getContent:function(h){var g=this,i=g.getRng(),m=g.dom.create("body"),k=g.getSel(),j,l,o;h=h||{};j=l="";h.get=true;h.format=h.format||"html";h.forced_root_block="";g.onBeforeGetContent.dispatch(g,h);if(h.format=="text"){return g.isCollapsed()?"":(i.text||(k.toString?k.toString():""))}if(i.cloneContents){o=i.cloneContents();if(o){m.appendChild(o)}}else{if(c(i.item)||c(i.htmlText)){m.innerHTML="<br>"+(i.item?i.item(0).outerHTML:i.htmlText);m.removeChild(m.firstChild)}else{m.innerHTML=i.toString()}}if(/^\s/.test(m.innerHTML)){j=" "}if(/\s+$/.test(m.innerHTML)){l=" "}h.getInner=true;h.content=g.isCollapsed()?"":j+g.serializer.serialize(m,h)+l;g.onGetContent.dispatch(g,h);return h.content},setContent:function(h,j){var o=this,g=o.getRng(),k,l=o.win.document,n,m;j=j||{format:"html"};j.set=true;h=j.content=h;if(!j.no_events){o.onBeforeSetContent.dispatch(o,j)}h=j.content;if(g.insertNode){h+='<span id="__caret">_</span>';if(g.startContainer==l&&g.endContainer==l){l.body.innerHTML=h}else{g.deleteContents();if(l.body.childNodes.length===0){l.body.innerHTML=h}else{if(g.createContextualFragment){g.insertNode(g.createContextualFragment(h))}else{n=l.createDocumentFragment();m=l.createElement("div");n.appendChild(m);m.outerHTML=h;g.insertNode(n)}}}k=o.dom.get("__caret");g=l.createRange();g.setStartBefore(k);g.setEndBefore(k);o.setRng(g);o.dom.remove("__caret");try{o.setRng(g)}catch(i){}}else{if(g.item){l.execCommand("Delete",false,null);g=o.getRng()}if(/^\s+/.test(h)){g.pasteHTML('<span id="__mce_tmp">_</span>'+h);o.dom.remove("__mce_tmp")}else{g.pasteHTML(h)}}if(!j.no_events){o.onSetContent.dispatch(o,j)}},getStart:function(){var h=this.getRng(),i,g,k,j;if(h.duplicate||h.item){if(h.item){return h.item(0)}k=h.duplicate();k.collapse(1);i=k.parentElement();g=j=h.parentElement();while(j=j.parentNode){if(j==i){i=g;break}}return i}else{i=h.startContainer;if(i.nodeType==1&&i.hasChildNodes()){i=i.childNodes[Math.min(i.childNodes.length-1,h.startOffset)]}if(i&&i.nodeType==3){return i.parentNode}return i}},getEnd:function(){var h=this,i=h.getRng(),j,g;if(i.duplicate||i.item){if(i.item){return i.item(0)}i=i.duplicate();i.collapse(0);j=i.parentElement();if(j&&j.nodeName=="BODY"){return j.lastChild||j}return j}else{j=i.endContainer;g=i.endOffset;if(j.nodeType==1&&j.hasChildNodes()){j=j.childNodes[g>0?g-1:g]}if(j&&j.nodeType==3){return j.parentNode}return j}},getBookmark:function(s,v){var y=this,n=y.dom,h,k,j,o,i,p,q,m="\uFEFF",x;function g(z,A){var t=0;e(n.select(z),function(C,B){if(C==A){t=B}});return t}function u(t){function z(E){var A,D,C,B=E?"start":"end";A=t[B+"Container"];D=t[B+"Offset"];if(A.nodeType==1&&A.nodeName=="TR"){C=A.childNodes;A=C[Math.min(E?D:D-1,C.length-1)];if(A){D=E?0:A.childNodes.length;t["set"+(E?"Start":"End")](A,D)}}}z(true);z();return t}function l(){var z=y.getRng(true),t=n.getRoot(),A={};function B(E,J){var D=E[J?"startContainer":"endContainer"],I=E[J?"startOffset":"endOffset"],C=[],F,H,G=0;if(D.nodeType==3){if(v){for(F=D.previousSibling;F&&F.nodeType==3;F=F.previousSibling){I+=F.nodeValue.length}}C.push(I)}else{H=D.childNodes;if(I>=H.length&&H.length){G=1;I=Math.max(0,H.length-1)}C.push(y.dom.nodeIndex(H[I],v)+G)}for(;D&&D!=t;D=D.parentNode){C.push(y.dom.nodeIndex(D,v))}return C}A.start=B(z,true);if(!y.isCollapsed()){A.end=B(z)}return A}if(s==2){if(y.tridentSel){return y.tridentSel.getBookmark(s)}return l()}if(s){return{rng:y.getRng()}}h=y.getRng();j=n.uniqueId();o=tinyMCE.activeEditor.selection.isCollapsed();x="overflow:hidden;line-height:0px";if(h.duplicate||h.item){if(!h.item){k=h.duplicate();try{h.collapse();h.pasteHTML('<span data-mce-type="bookmark" id="'+j+'_start" style="'+x+'">'+m+"</span>");if(!o){k.collapse(false);h.moveToElementText(k.parentElement());if(h.compareEndPoints("StartToEnd",k)===0){k.move("character",-1)}k.pasteHTML('<span data-mce-type="bookmark" id="'+j+'_end" style="'+x+'">'+m+"</span>")}}catch(r){return null}}else{p=h.item(0);i=p.nodeName;return{name:i,index:g(i,p)}}}else{p=y.getNode();i=p.nodeName;if(i=="IMG"){return{name:i,index:g(i,p)}}k=u(h.cloneRange());if(!o){k.collapse(false);k.insertNode(n.create("span",{"data-mce-type":"bookmark",id:j+"_end",style:x},m))}h=u(h);h.collapse(true);h.insertNode(n.create("span",{"data-mce-type":"bookmark",id:j+"_start",style:x},m))}y.moveToBookmark({id:j,keep:1});return{id:j}},moveToBookmark:function(o){var s=this,m=s.dom,j,i,g,r,k,u,p,q;function h(A){var t=o[A?"start":"end"],x,y,z,v;if(t){z=t[0];for(y=r,x=t.length-1;x>=1;x--){v=y.childNodes;if(t[x]>v.length-1){return}y=v[t[x]]}if(y.nodeType===3){z=Math.min(t[0],y.nodeValue.length)}if(y.nodeType===1){z=Math.min(t[0],y.childNodes.length)}if(A){g.setStart(y,z)}else{g.setEnd(y,z)}}return true}function l(B){var v=m.get(o.id+"_"+B),A,t,y,z,x=o.keep;if(v){A=v.parentNode;if(B=="start"){if(!x){t=m.nodeIndex(v)}else{A=v.firstChild;t=1}k=u=A;p=q=t}else{if(!x){t=m.nodeIndex(v)}else{A=v.firstChild;t=1}u=A;q=t}if(!x){z=v.previousSibling;y=v.nextSibling;e(d.grep(v.childNodes),function(C){if(C.nodeType==3){C.nodeValue=C.nodeValue.replace(/\uFEFF/g,"")}});while(v=m.get(o.id+"_"+B)){m.remove(v,1)}if(z&&y&&z.nodeType==y.nodeType&&z.nodeType==3&&!d.isOpera){t=z.nodeValue.length;z.appendData(y.nodeValue);m.remove(y);if(B=="start"){k=u=z;p=q=t}else{u=z;q=t}}}}}function n(t){if(m.isBlock(t)&&!t.innerHTML&&!b){t.innerHTML='<br data-mce-bogus="1" />'}return t}if(o){if(o.start){g=m.createRng();r=m.getRoot();if(s.tridentSel){return s.tridentSel.moveToBookmark(o)}if(h(true)&&h()){s.setRng(g)}}else{if(o.id){l("start");l("end");if(k){g=m.createRng();g.setStart(n(k),p);g.setEnd(n(u),q);s.setRng(g)}}else{if(o.name){s.select(m.select(o.name)[o.index])}else{if(o.rng){s.setRng(o.rng)}}}}}},select:function(l,k){var j=this,m=j.dom,h=m.createRng(),g;function i(n,p){var o=new a(n,n);do{if(n.nodeType==3&&d.trim(n.nodeValue).length!==0){if(p){h.setStart(n,0)}else{h.setEnd(n,n.nodeValue.length)}return}if(n.nodeName=="BR"){if(p){h.setStartBefore(n)}else{h.setEndBefore(n)}return}}while(n=(p?o.next():o.prev()))}if(l){g=m.nodeIndex(l);h.setStart(l.parentNode,g);h.setEnd(l.parentNode,g+1);if(k){i(l,1);i(l)}j.setRng(h)}return l},isCollapsed:function(){var g=this,i=g.getRng(),h=g.getSel();if(!i||i.item){return false}if(i.compareEndPoints){return i.compareEndPoints("StartToEnd",i)===0}return !h||i.collapsed},collapse:function(g){var i=this,h=i.getRng(),j;if(h.item){j=h.item(0);h=i.win.document.body.createTextRange();h.moveToElementText(j)}h.collapse(!!g);i.setRng(h)},getSel:function(){var h=this,g=this.win;return g.getSelection?g.getSelection():g.document.selection},getRng:function(m){var h=this,j,g,l,k=h.win.document;if(m&&h.tridentSel){return h.tridentSel.getRangeAt(0)}try{if(j=h.getSel()){g=j.rangeCount>0?j.getRangeAt(0):(j.createRange?j.createRange():k.createRange())}}catch(i){}if(d.isIE&&g&&g.setStart&&k.selection.createRange().item){l=k.selection.createRange().item(0);g=k.createRange();g.setStartBefore(l);g.setEndAfter(l)}if(!g){g=k.createRange?k.createRange():k.body.createTextRange()}if(g.setStart&&g.startContainer.nodeType===9&&g.collapsed){l=h.dom.getRoot();g.setStart(l,0);g.setEnd(l,0)}if(h.selectedRange&&h.explicitRange){if(g.compareBoundaryPoints(g.START_TO_START,h.selectedRange)===0&&g.compareBoundaryPoints(g.END_TO_END,h.selectedRange)===0){g=h.explicitRange}else{h.selectedRange=null;h.explicitRange=null}}return g},setRng:function(k,g){var j,i=this;if(!i.tridentSel){j=i.getSel();if(j){i.explicitRange=k;try{j.removeAllRanges()}catch(h){}j.addRange(k);if(g===false&&j.extend){j.collapse(k.endContainer,k.endOffset);j.extend(k.startContainer,k.startOffset)}i.selectedRange=j.rangeCount>0?j.getRangeAt(0):null}}else{if(k.cloneRange){try{i.tridentSel.addRange(k);return}catch(h){}}try{k.select()}catch(h){}}},setNode:function(h){var g=this;g.setContent(g.dom.getOuterHTML(h));return h},getNode:function(){var i=this,h=i.getRng(),j=i.getSel(),m,l=h.startContainer,g=h.endContainer;function k(q,o){var p=q;while(q&&q.nodeType===3&&q.length===0){q=o?q.nextSibling:q.previousSibling}return q||p}if(!h){return i.dom.getRoot()}if(h.setStart){m=h.commonAncestorContainer;if(!h.collapsed){if(h.startContainer==h.endContainer){if(h.endOffset-h.startOffset<2){if(h.startContainer.hasChildNodes()){m=h.startContainer.childNodes[h.startOffset]}}}if(l.nodeType===3&&g.nodeType===3){if(l.length===h.startOffset){l=k(l.nextSibling,true)}else{l=l.parentNode}if(h.endOffset===0){g=k(g.previousSibling,false)}else{g=g.parentNode}if(l&&l===g){return l}}}if(m&&m.nodeType==3){return m.parentNode}return m}return h.item?h.item(0):h.parentElement()},getSelectedBlocks:function(p,h){var o=this,k=o.dom,m,l,i,j=[];m=k.getParent(p||o.getStart(),k.isBlock);l=k.getParent(h||o.getEnd(),k.isBlock);if(m){j.push(m)}if(m&&l&&m!=l){i=m;var g=new a(m,k.getRoot());while((i=g.next())&&i!=l){if(k.isBlock(i)){j.push(i)}}}if(l&&m!=l){j.push(l)}return j},isForward:function(){var i=this.dom,g=this.getSel(),j,h;if(!g||g.anchorNode==null||g.focusNode==null){return true}j=i.createRng();j.setStart(g.anchorNode,g.anchorOffset);j.collapse(true);h=i.createRng();h.setStart(g.focusNode,g.focusOffset);h.collapse(true);return j.compareBoundaryPoints(j.START_TO_START,h)<=0},normalize:function(){var h=this,g,m,l,j,i;function k(p){var o,r,n,s=h.dom,u=s.getRoot(),q,t,v;function y(z,A){var B=new a(z,s.getParent(z.parentNode,s.isBlock)||u);while(z=B[A?"prev":"next"]()){if(z.nodeName==="BR"){return true}}}function x(B,z){var C,A;z=z||o;C=new a(z,s.getParent(z.parentNode,s.isBlock)||u);while(q=C[B?"prev":"next"]()){if(q.nodeType===3&&q.nodeValue.length>0){o=q;r=B?q.nodeValue.length:0;m=true;return}if(s.isBlock(q)||t[q.nodeName.toLowerCase()]){return}A=q}if(l&&A){o=A;m=true;r=0}}o=g[(p?"start":"end")+"Container"];r=g[(p?"start":"end")+"Offset"];t=s.schema.getNonEmptyElements();if(o.nodeType===9){o=s.getRoot();r=0}if(o===u){if(p){q=o.childNodes[r>0?r-1:0];if(q){v=q.nodeName.toLowerCase();if(t[q.nodeName]||q.nodeName=="TABLE"){return}}}if(o.hasChildNodes()){o=o.childNodes[Math.min(!p&&r>0?r-1:r,o.childNodes.length-1)];r=0;if(o.hasChildNodes()&&!/TABLE/.test(o.nodeName)){q=o;n=new a(o,u);do{if(q.nodeType===3&&q.nodeValue.length>0){r=p?0:q.nodeValue.length;o=q;m=true;break}if(t[q.nodeName.toLowerCase()]){r=s.nodeIndex(q);o=q.parentNode;if(q.nodeName=="IMG"&&!p){r++}m=true;break}}while(q=(p?n.next():n.prev()))}}}if(l){if(o.nodeType===3&&r===0){x(true)}if(o.nodeType===1){q=o.childNodes[r];if(q&&q.nodeName==="BR"&&!y(q)&&!y(q,true)){x(true,o.childNodes[r])}}}if(p&&!l&&o.nodeType===3&&r===o.nodeValue.length){x(false)}if(m){g["set"+(p?"Start":"End")](o,r)}}if(d.isIE){return}g=h.getRng();l=g.collapsed;k(true);if(!l){k()}if(m){if(l){g.collapse(true)}h.setRng(g,h.isForward())}},selectorChanged:function(g,j){var h=this,i;if(!h.selectorChangedData){h.selectorChangedData={};i={};h.editor.onNodeChange.addToTop(function(l,k,o){var p=h.dom,m=p.getParents(o,null,p.getRoot()),n={};e(h.selectorChangedData,function(r,q){e(m,function(s){if(p.is(s,q)){if(!i[q]){e(r,function(t){t(true,{node:s,selector:q,parents:m})});i[q]=r}n[q]=r;return false}})});e(i,function(r,q){if(!n[q]){delete i[q];e(r,function(s){s(false,{node:o,selector:q,parents:m})})}})})}if(!h.selectorChangedData[g]){h.selectorChangedData[g]=[]}h.selectorChangedData[g].push(j);return h},destroy:function(h){var g=this;g.win=null;if(!h){d.removeUnload(g.destroy)}},_fixIESelection:function(){var h=this.dom,n=h.doc,i=n.body,k,o,g;function j(p,s){var q=i.createTextRange();try{q.moveToPoint(p,s)}catch(r){q=null}return q}function m(q){var p;if(q.button){p=j(q.x,q.y);if(p){if(p.compareEndPoints("StartToStart",o)>0){p.setEndPoint("StartToStart",o)}else{p.setEndPoint("EndToEnd",o)}p.select()}}else{l()}}function l(){var p=n.selection.createRange();if(o&&!p.item&&p.compareEndPoints("StartToEnd",p)===0){o.select()}h.unbind(n,"mouseup",l);h.unbind(n,"mousemove",m);o=k=0}n.documentElement.unselectable=true;h.bind(n,["mousedown","contextmenu"],function(p){if(p.target.nodeName==="HTML"){if(k){l()}g=n.documentElement;if(g.scrollHeight>g.clientHeight){return}k=1;o=j(p.x,p.y);if(o){h.bind(n,"mouseup",l);h.bind(n,"mousemove",m);h.win.focus();o.select()}}})}})})(tinymce);(function(a){a.dom.Serializer=function(e,i,f){var h,b,d=a.isIE,g=a.each,c;if(!e.apply_source_formatting){e.indent=false}i=i||a.DOM;f=f||new a.html.Schema(e);e.entity_encoding=e.entity_encoding||"named";e.remove_trailing_brs="remove_trailing_brs" in e?e.remove_trailing_brs:true;h=new a.util.Dispatcher(self);b=new a.util.Dispatcher(self);c=new a.html.DomParser(e,f);c.addAttributeFilter("src,href,style",function(k,j){var o=k.length,l,q,n="data-mce-"+j,p=e.url_converter,r=e.url_converter_scope,m;while(o--){l=k[o];q=l.attributes.map[n];if(q!==m){l.attr(j,q.length>0?q:null);l.attr(n,null)}else{q=l.attributes.map[j];if(j==="style"){q=i.serializeStyle(i.parseStyle(q),l.name)}else{if(p){q=p.call(r,q,j,l.name)}}l.attr(j,q.length>0?q:null)}}});c.addAttributeFilter("class",function(j,k){var l=j.length,m,n;while(l--){m=j[l];n=m.attr("class").replace(/(?:^|\s)mce(Item\w+|Selected)(?!\S)/g,"");m.attr("class",n.length>0?n:null)}});c.addAttributeFilter("data-mce-type",function(j,l,k){var m=j.length,n;while(m--){n=j[m];if(n.attributes.map["data-mce-type"]==="bookmark"&&!k.cleanup){n.remove()}}});c.addAttributeFilter("data-mce-expando",function(j,l,k){var m=j.length;while(m--){j[m].attr(l,null)}});c.addNodeFilter("script,style",function(k,l){var m=k.length,n,o;function j(p){return p.replace(/(<!--\[CDATA\[|\]\]-->)/g,"\n").replace(/^[\r\n]*|[\r\n]*$/g,"").replace(/^\s*((<!--)?(\s*\/\/)?\s*<!\[CDATA\[|(<!--\s*)?\/\*\s*<!\[CDATA\[\s*\*\/|(\/\/)?\s*<!--|\/\*\s*<!--\s*\*\/)\s*[\r\n]*/gi,"").replace(/\s*(\/\*\s*\]\]>\s*\*\/(-->)?|\s*\/\/\s*\]\]>(-->)?|\/\/\s*(-->)?|\]\]>|\/\*\s*-->\s*\*\/|\s*-->\s*)\s*$/g,"")}while(m--){n=k[m];o=n.firstChild?n.firstChild.value:"";if(l==="script"){n.attr("type",(n.attr("type")||"text/javascript").replace(/^mce\-/,""));if(o.length>0){n.firstChild.value="// <![CDATA[\n"+j(o)+"\n// ]]>"}}else{if(o.length>0){n.firstChild.value="<!--\n"+j(o)+"\n-->"}}}});c.addNodeFilter("#comment",function(j,k){var l=j.length,m;while(l--){m=j[l];if(m.value.indexOf("[CDATA[")===0){m.name="#cdata";m.type=4;m.value=m.value.replace(/^\[CDATA\[|\]\]$/g,"")}else{if(m.value.indexOf("mce:protected ")===0){m.name="#text";m.type=3;m.raw=true;m.value=unescape(m.value).substr(14)}}}});c.addNodeFilter("xml:namespace,input",function(j,k){var l=j.length,m;while(l--){m=j[l];if(m.type===7){m.remove()}else{if(m.type===1){if(k==="input"&&!("type" in m.attributes.map)){m.attr("type","text")}}}}});if(e.fix_list_elements){c.addNodeFilter("ul,ol",function(k,l){var m=k.length,n,j;while(m--){n=k[m];j=n.parent;if(j.name==="ul"||j.name==="ol"){if(n.prev&&n.prev.name==="li"){n.prev.append(n)}}}})}c.addAttributeFilter("data-mce-src,data-mce-href,data-mce-style",function(j,k){var l=j.length;while(l--){j[l].attr(k,null)}});return{schema:f,addNodeFilter:c.addNodeFilter,addAttributeFilter:c.addAttributeFilter,onPreProcess:h,onPostProcess:b,serialize:function(o,m){var l,p,k,j,n;if(d&&i.select("script,style,select,map").length>0){n=o.innerHTML;o=o.cloneNode(false);i.setHTML(o,n)}else{o=o.cloneNode(true)}l=o.ownerDocument.implementation;if(l.createHTMLDocument){p=l.createHTMLDocument("");g(o.nodeName=="BODY"?o.childNodes:[o],function(q){p.body.appendChild(p.importNode(q,true))});if(o.nodeName!="BODY"){o=p.body.firstChild}else{o=p.body}k=i.doc;i.doc=p}m=m||{};m.format=m.format||"html";if(!m.no_events){m.node=o;h.dispatch(self,m)}j=new a.html.Serializer(e,f);m.content=j.serialize(c.parse(a.trim(m.getInner?o.innerHTML:i.getOuterHTML(o)),m));if(!m.cleanup){m.content=m.content.replace(/\uFEFF|\u200B/g,"")}if(!m.no_events){b.dispatch(self,m)}if(k){i.doc=k}m.node=null;return m.content},addRules:function(j){f.addValidElements(j)},setRules:function(j){f.setValidElements(j)}}}})(tinymce);(function(a){a.dom.ScriptLoader=function(h){var c=0,k=1,i=2,l={},j=[],e={},d=[],g=0,f;function b(m,v){var x=this,q=a.DOM,s,o,r,n;function p(){q.remove(n);if(s){s.onreadystatechange=s.onload=s=null}v()}function u(){if(typeof(console)!=="undefined"&&console.log){console.log("Failed to load: "+m)}}n=q.uniqueId();if(a.isIE6){o=new a.util.URI(m);r=location;if(o.host==r.hostname&&o.port==r.port&&(o.protocol+":")==r.protocol&&o.protocol.toLowerCase()!="file"){a.util.XHR.send({url:a._addVer(o.getURI()),success:function(y){var t=q.create("script",{type:"text/javascript"});t.text=y;document.getElementsByTagName("head")[0].appendChild(t);q.remove(t);p()},error:u});return}}s=document.createElement("script");s.id=n;s.type="text/javascript";s.src=a._addVer(m);if(!a.isIE){s.onload=p}s.onerror=u;if(!a.isOpera){s.onreadystatechange=function(){var t=s.readyState;if(t=="complete"||t=="loaded"){p()}}}(document.getElementsByTagName("head")[0]||document.body).appendChild(s)}this.isDone=function(m){return l[m]==i};this.markDone=function(m){l[m]=i};this.add=this.load=function(m,q,n){var o,p=l[m];if(p==f){j.push(m);l[m]=c}if(q){if(!e[m]){e[m]=[]}e[m].push({func:q,scope:n||this})}};this.loadQueue=function(n,m){this.loadScripts(j,n,m)};this.loadScripts=function(m,q,p){var o;function n(r){a.each(e[r],function(s){s.func.call(s.scope)});e[r]=f}d.push({func:q,scope:p||this});o=function(){var r=a.grep(m);m.length=0;a.each(r,function(s){if(l[s]==i){n(s);return}if(l[s]!=k){l[s]=k;g++;b(s,function(){l[s]=i;g--;n(s);o()})}});if(!g){a.each(d,function(s){s.func.call(s.scope)});d.length=0}};o()}};a.ScriptLoader=new a.dom.ScriptLoader()})(tinymce);(function(a){a.dom.RangeUtils=function(c){var b="\uFEFF";this.walk=function(d,s){var i=d.startContainer,l=d.startOffset,t=d.endContainer,m=d.endOffset,j,g,o,h,r,q,e;e=c.select("td.mceSelected,th.mceSelected");if(e.length>0){a.each(e,function(u){s([u])});return}function f(u){var v;v=u[0];if(v.nodeType===3&&v===i&&l>=v.nodeValue.length){u.splice(0,1)}v=u[u.length-1];if(m===0&&u.length>0&&v===t&&v.nodeType===3){u.splice(u.length-1,1)}return u}function p(x,v,u){var y=[];for(;x&&x!=u;x=x[v]){y.push(x)}return y}function n(v,u){do{if(v.parentNode==u){return v}v=v.parentNode}while(v)}function k(x,v,y){var u=y?"nextSibling":"previousSibling";for(h=x,r=h.parentNode;h&&h!=v;h=r){r=h.parentNode;q=p(h==x?h:h[u],u);if(q.length){if(!y){q.reverse()}s(f(q))}}}if(i.nodeType==1&&i.hasChildNodes()){i=i.childNodes[l]}if(t.nodeType==1&&t.hasChildNodes()){t=t.childNodes[Math.min(m-1,t.childNodes.length-1)]}if(i==t){return s(f([i]))}j=c.findCommonAncestor(i,t);for(h=i;h;h=h.parentNode){if(h===t){return k(i,j,true)}if(h===j){break}}for(h=t;h;h=h.parentNode){if(h===i){return k(t,j)}if(h===j){break}}g=n(i,j)||i;o=n(t,j)||t;k(i,g,true);q=p(g==i?g:g.nextSibling,"nextSibling",o==t?o.nextSibling:o);if(q.length){s(f(q))}k(t,o)};this.split=function(e){var h=e.startContainer,d=e.startOffset,i=e.endContainer,g=e.endOffset;function f(j,k){return j.splitText(k)}if(h==i&&h.nodeType==3){if(d>0&&d<h.nodeValue.length){i=f(h,d);h=i.previousSibling;if(g>d){g=g-d;h=i=f(i,g).previousSibling;g=i.nodeValue.length;d=0}else{g=0}}}else{if(h.nodeType==3&&d>0&&d<h.nodeValue.length){h=f(h,d);d=0}if(i.nodeType==3&&g>0&&g<i.nodeValue.length){i=f(i,g).previousSibling;g=i.nodeValue.length}}return{startContainer:h,startOffset:d,endContainer:i,endOffset:g}}};a.dom.RangeUtils.compareRanges=function(c,b){if(c&&b){if(c.item||c.duplicate){if(c.item&&b.item&&c.item(0)===b.item(0)){return true}if(c.isEqual&&b.isEqual&&b.isEqual(c)){return true}}else{return c.startContainer==b.startContainer&&c.startOffset==b.startOffset}}return false}})(tinymce);(function(b){var a=b.dom.Event,c=b.each;b.create("tinymce.ui.KeyboardNavigation",{KeyboardNavigation:function(e,f){var q=this,n=e.root,m=e.items,o=e.enableUpDown,i=e.enableLeftRight||!e.enableUpDown,l=e.excludeFromTabOrder,k,h,p,d,g;f=f||b.DOM;k=function(r){g=r.target.id};h=function(r){f.setAttrib(r.target.id,"tabindex","-1")};d=function(r){var s=f.get(g);f.setAttrib(s,"tabindex","0");s.focus()};q.focus=function(){f.get(g).focus()};q.destroy=function(){c(m,function(s){var t=f.get(s.id);f.unbind(t,"focus",k);f.unbind(t,"blur",h)});var r=f.get(n);f.unbind(r,"focus",d);f.unbind(r,"keydown",p);m=f=n=q.focus=k=h=p=d=null;q.destroy=function(){}};q.moveFocus=function(v,s){var r=-1,u=q.controls,t;if(!g){return}c(m,function(y,x){if(y.id===g){r=x;return false}});r+=v;if(r<0){r=m.length-1}else{if(r>=m.length){r=0}}t=m[r];f.setAttrib(g,"tabindex","-1");f.setAttrib(t.id,"tabindex","0");f.get(t.id).focus();if(e.actOnFocus){e.onAction(t.id)}if(s){a.cancel(s)}};p=function(z){var v=37,u=39,y=38,A=40,r=27,t=14,s=13,x=32;switch(z.keyCode){case v:if(i){q.moveFocus(-1)}break;case u:if(i){q.moveFocus(1)}break;case y:if(o){q.moveFocus(-1)}break;case A:if(o){q.moveFocus(1)}break;case r:if(e.onCancel){e.onCancel();a.cancel(z)}break;case t:case s:case x:if(e.onAction){e.onAction(g);a.cancel(z)}break}};c(m,function(t,r){var s,u;if(!t.id){t.id=f.uniqueId("_mce_item_")}u=f.get(t.id);if(l){f.bind(u,"blur",h);s="-1"}else{s=(r===0?"0":"-1")}u.setAttribute("tabindex",s);f.bind(u,"focus",k)});if(m[0]){g=m[0].id}f.setAttrib(n,"tabindex","-1");var j=f.get(n);f.bind(j,"focus",d);f.bind(j,"keydown",p)}})})(tinymce);(function(c){var b=c.DOM,a=c.is;c.create("tinymce.ui.Control",{Control:function(f,e,d){this.id=f;this.settings=e=e||{};this.rendered=false;this.onRender=new c.util.Dispatcher(this);this.classPrefix="";this.scope=e.scope||this;this.disabled=0;this.active=0;this.editor=d},setAriaProperty:function(f,e){var d=b.get(this.id+"_aria")||b.get(this.id);if(d){b.setAttrib(d,"aria-"+f,!!e)}},focus:function(){b.get(this.id).focus()},setDisabled:function(d){if(d!=this.disabled){this.setAriaProperty("disabled",d);this.setState("Disabled",d);this.setState("Enabled",!d);this.disabled=d}},isDisabled:function(){return this.disabled},setActive:function(d){if(d!=this.active){this.setState("Active",d);this.active=d;this.setAriaProperty("pressed",d)}},isActive:function(){return this.active},setState:function(f,d){var e=b.get(this.id);f=this.classPrefix+f;if(d){b.addClass(e,f)}else{b.removeClass(e,f)}},isRendered:function(){return this.rendered},renderHTML:function(){},renderTo:function(d){b.setHTML(d,this.renderHTML())},postRender:function(){var e=this,d;if(a(e.disabled)){d=e.disabled;e.disabled=-1;e.setDisabled(d)}if(a(e.active)){d=e.active;e.active=-1;e.setActive(d)}},remove:function(){b.remove(this.id);this.destroy()},destroy:function(){c.dom.Event.clear(this.id)}})})(tinymce);tinymce.create("tinymce.ui.Container:tinymce.ui.Control",{Container:function(c,b,a){this.parent(c,b,a);this.controls=[];this.lookup={}},add:function(a){this.lookup[a.id]=a;this.controls.push(a);return a},get:function(a){return this.lookup[a]}});tinymce.create("tinymce.ui.Separator:tinymce.ui.Control",{Separator:function(b,a){this.parent(b,a);this.classPrefix="mceSeparator";this.setDisabled(true)},renderHTML:function(){return tinymce.DOM.createHTML("span",{"class":this.classPrefix,role:"separator","aria-orientation":"vertical",tabindex:"-1"})}});(function(d){var c=d.is,b=d.DOM,e=d.each,a=d.walk;d.create("tinymce.ui.MenuItem:tinymce.ui.Control",{MenuItem:function(g,f){this.parent(g,f);this.classPrefix="mceMenuItem"},setSelected:function(f){this.setState("Selected",f);this.setAriaProperty("checked",!!f);this.selected=f},isSelected:function(){return this.selected},postRender:function(){var f=this;f.parent();if(c(f.selected)){f.setSelected(f.selected)}}})})(tinymce);(function(d){var c=d.is,b=d.DOM,e=d.each,a=d.walk;d.create("tinymce.ui.Menu:tinymce.ui.MenuItem",{Menu:function(h,g){var f=this;f.parent(h,g);f.items={};f.collapsed=false;f.menuCount=0;f.onAddItem=new d.util.Dispatcher(this)},expand:function(g){var f=this;if(g){a(f,function(h){if(h.expand){h.expand()}},"items",f)}f.collapsed=false},collapse:function(g){var f=this;if(g){a(f,function(h){if(h.collapse){h.collapse()}},"items",f)}f.collapsed=true},isCollapsed:function(){return this.collapsed},add:function(f){if(!f.settings){f=new d.ui.MenuItem(f.id||b.uniqueId(),f)}this.onAddItem.dispatch(this,f);return this.items[f.id]=f},addSeparator:function(){return this.add({separator:true})},addMenu:function(f){if(!f.collapse){f=this.createMenu(f)}this.menuCount++;return this.add(f)},hasMenus:function(){return this.menuCount!==0},remove:function(f){delete this.items[f.id]},removeAll:function(){var f=this;a(f,function(g){if(g.removeAll){g.removeAll()}else{g.remove()}g.destroy()},"items",f);f.items={}},createMenu:function(g){var f=new d.ui.Menu(g.id||b.uniqueId(),g);f.onAddItem.add(this.onAddItem.dispatch,this.onAddItem);return f}})})(tinymce);(function(e){var d=e.is,c=e.DOM,f=e.each,a=e.dom.Event,b=e.dom.Element;e.create("tinymce.ui.DropMenu:tinymce.ui.Menu",{DropMenu:function(h,g){g=g||{};g.container=g.container||c.doc.body;g.offset_x=g.offset_x||0;g.offset_y=g.offset_y||0;g.vp_offset_x=g.vp_offset_x||0;g.vp_offset_y=g.vp_offset_y||0;if(d(g.icons)&&!g.icons){g["class"]+=" mceNoIcons"}this.parent(h,g);this.onShowMenu=new e.util.Dispatcher(this);this.onHideMenu=new e.util.Dispatcher(this);this.classPrefix="mceMenu"},createMenu:function(j){var h=this,i=h.settings,g;j.container=j.container||i.container;j.parent=h;j.constrain=j.constrain||i.constrain;j["class"]=j["class"]||i["class"];j.vp_offset_x=j.vp_offset_x||i.vp_offset_x;j.vp_offset_y=j.vp_offset_y||i.vp_offset_y;j.keyboard_focus=i.keyboard_focus;g=new e.ui.DropMenu(j.id||c.uniqueId(),j);g.onAddItem.add(h.onAddItem.dispatch,h.onAddItem);return g},focus:function(){var g=this;if(g.keyboardNav){g.keyboardNav.focus()}},update:function(){var i=this,j=i.settings,g=c.get("menu_"+i.id+"_tbl"),l=c.get("menu_"+i.id+"_co"),h,k;h=j.max_width?Math.min(g.offsetWidth,j.max_width):g.offsetWidth;k=j.max_height?Math.min(g.offsetHeight,j.max_height):g.offsetHeight;if(!c.boxModel){i.element.setStyles({width:h+2,height:k+2})}else{i.element.setStyles({width:h,height:k})}if(j.max_width){c.setStyle(l,"width",h)}if(j.max_height){c.setStyle(l,"height",k);if(g.clientHeight<j.max_height){c.setStyle(l,"overflow","hidden")}}},showMenu:function(p,n,r){var z=this,A=z.settings,o,g=c.getViewPort(),u,l,v,q,i=2,k,j,m=z.classPrefix;z.collapse(1);if(z.isMenuVisible){return}if(!z.rendered){o=c.add(z.settings.container,z.renderNode());f(z.items,function(h){h.postRender()});z.element=new b("menu_"+z.id,{blocker:1,container:A.container})}else{o=c.get("menu_"+z.id)}if(!e.isOpera){c.setStyles(o,{left:-65535,top:-65535})}c.show(o);z.update();p+=A.offset_x||0;n+=A.offset_y||0;g.w-=4;g.h-=4;if(A.constrain){u=o.clientWidth-i;l=o.clientHeight-i;v=g.x+g.w;q=g.y+g.h;if((p+A.vp_offset_x+u)>v){p=r?r-u:Math.max(0,(v-A.vp_offset_x)-u)}if((n+A.vp_offset_y+l)>q){n=Math.max(0,(q-A.vp_offset_y)-l)}}c.setStyles(o,{left:p,top:n});z.element.update();z.isMenuVisible=1;z.mouseClickFunc=a.add(o,"click",function(s){var h;s=s.target;if(s&&(s=c.getParent(s,"tr"))&&!c.hasClass(s,m+"ItemSub")){h=z.items[s.id];if(h.isDisabled()){return}k=z;while(k){if(k.hideMenu){k.hideMenu()}k=k.settings.parent}if(h.settings.onclick){h.settings.onclick(s)}return false}});if(z.hasMenus()){z.mouseOverFunc=a.add(o,"mouseover",function(x){var h,t,s;x=x.target;if(x&&(x=c.getParent(x,"tr"))){h=z.items[x.id];if(z.lastMenu){z.lastMenu.collapse(1)}if(h.isDisabled()){return}if(x&&c.hasClass(x,m+"ItemSub")){t=c.getRect(x);h.showMenu((t.x+t.w-i),t.y-i,t.x);z.lastMenu=h;c.addClass(c.get(h.id).firstChild,m+"ItemActive")}}})}a.add(o,"keydown",z._keyHandler,z);z.onShowMenu.dispatch(z);if(A.keyboard_focus){z._setupKeyboardNav()}},hideMenu:function(j){var g=this,i=c.get("menu_"+g.id),h;if(!g.isMenuVisible){return}if(g.keyboardNav){g.keyboardNav.destroy()}a.remove(i,"mouseover",g.mouseOverFunc);a.remove(i,"click",g.mouseClickFunc);a.remove(i,"keydown",g._keyHandler);c.hide(i);g.isMenuVisible=0;if(!j){g.collapse(1)}if(g.element){g.element.hide()}if(h=c.get(g.id)){c.removeClass(h.firstChild,g.classPrefix+"ItemActive")}g.onHideMenu.dispatch(g)},add:function(i){var g=this,h;i=g.parent(i);if(g.isRendered&&(h=c.get("menu_"+g.id))){g._add(c.select("tbody",h)[0],i)}return i},collapse:function(g){this.parent(g);this.hideMenu(1)},remove:function(g){c.remove(g.id);this.destroy();return this.parent(g)},destroy:function(){var g=this,h=c.get("menu_"+g.id);if(g.keyboardNav){g.keyboardNav.destroy()}a.remove(h,"mouseover",g.mouseOverFunc);a.remove(c.select("a",h),"focus",g.mouseOverFunc);a.remove(h,"click",g.mouseClickFunc);a.remove(h,"keydown",g._keyHandler);if(g.element){g.element.remove()}c.remove(h)},renderNode:function(){var i=this,j=i.settings,l,h,k,g;g=c.create("div",{role:"listbox",id:"menu_"+i.id,"class":j["class"],style:"position:absolute;left:0;top:0;z-index:200000;outline:0"});if(i.settings.parent){c.setAttrib(g,"aria-parent","menu_"+i.settings.parent.id)}k=c.add(g,"div",{role:"presentation",id:"menu_"+i.id+"_co","class":i.classPrefix+(j["class"]?" "+j["class"]:"")});i.element=new b("menu_"+i.id,{blocker:1,container:j.container});if(j.menu_line){c.add(k,"span",{"class":i.classPrefix+"Line"})}l=c.add(k,"table",{role:"presentation",id:"menu_"+i.id+"_tbl",border:0,cellPadding:0,cellSpacing:0});h=c.add(l,"tbody");f(i.items,function(m){i._add(h,m)});i.rendered=true;return g},_setupKeyboardNav:function(){var i,h,g=this;i=c.get("menu_"+g.id);h=c.select("a[role=option]","menu_"+g.id);h.splice(0,0,i);g.keyboardNav=new e.ui.KeyboardNavigation({root:"menu_"+g.id,items:h,onCancel:function(){g.hideMenu()},enableUpDown:true});i.focus()},_keyHandler:function(g){var h=this,i;switch(g.keyCode){case 37:if(h.settings.parent){h.hideMenu();h.settings.parent.focus();a.cancel(g)}break;case 39:if(h.mouseOverFunc){h.mouseOverFunc(g)}break}},_add:function(j,h){var i,q=h.settings,p,l,k,m=this.classPrefix,g;if(q.separator){l=c.add(j,"tr",{id:h.id,"class":m+"ItemSeparator"});c.add(l,"td",{"class":m+"ItemSeparator"});if(i=l.previousSibling){c.addClass(i,"mceLast")}return}i=l=c.add(j,"tr",{id:h.id,"class":m+"Item "+m+"ItemEnabled"});i=k=c.add(i,q.titleItem?"th":"td");i=p=c.add(i,"a",{id:h.id+"_aria",role:q.titleItem?"presentation":"option",href:"javascript:;",onclick:"return false;",onmousedown:"return false;"});if(q.parent){c.setAttrib(p,"aria-haspopup","true");c.setAttrib(p,"aria-owns","menu_"+h.id)}c.addClass(k,q["class"]);g=c.add(i,"span",{"class":"mceIcon"+(q.icon?" mce_"+q.icon:"")});if(q.icon_src){c.add(g,"img",{src:q.icon_src})}i=c.add(i,q.element||"span",{"class":"mceText",title:h.settings.title},h.settings.title);if(h.settings.style){if(typeof h.settings.style=="function"){h.settings.style=h.settings.style()}c.setAttrib(i,"style",h.settings.style)}if(j.childNodes.length==1){c.addClass(l,"mceFirst")}if((i=l.previousSibling)&&c.hasClass(i,m+"ItemSeparator")){c.addClass(l,"mceFirst")}if(h.collapse){c.addClass(l,m+"ItemSub")}if(i=l.previousSibling){c.removeClass(i,"mceLast")}c.addClass(l,"mceLast")}})})(tinymce);(function(b){var a=b.DOM;b.create("tinymce.ui.Button:tinymce.ui.Control",{Button:function(e,d,c){this.parent(e,d,c);this.classPrefix="mceButton"},renderHTML:function(){var f=this.classPrefix,e=this.settings,d,c;c=a.encode(e.label||"");d='<a role="button" id="'+this.id+'" href="javascript:;" class="'+f+" "+f+"Enabled "+e["class"]+(c?" "+f+"Labeled":"")+'" onmousedown="return false;" onclick="return false;" aria-labelledby="'+this.id+'_voice" title="'+a.encode(e.title)+'">';if(e.image&&!(this.editor&&this.editor.forcedHighContrastMode)){d+='<img class="mceIcon" src="'+e.image+'" alt="'+a.encode(e.title)+'" />'+c}else{d+='<span class="mceIcon '+e["class"]+'"></span>'+(c?'<span class="'+f+'Label">'+c+"</span>":"")}d+='<span class="mceVoiceLabel mceIconOnly" style="display: none;" id="'+this.id+'_voice">'+e.title+"</span>";d+="</a>";return d},postRender:function(){var d=this,e=d.settings,c;if(b.isIE&&d.editor){b.dom.Event.add(d.id,"mousedown",function(f){var g=d.editor.selection.getNode().nodeName;c=g==="IMG"?d.editor.selection.getBookmark():null})}b.dom.Event.add(d.id,"click",function(f){if(!d.isDisabled()){if(b.isIE&&d.editor&&c!==null){d.editor.selection.moveToBookmark(c)}return e.onclick.call(e.scope,f)}});b.dom.Event.add(d.id,"keyup",function(f){if(!d.isDisabled()&&f.keyCode==b.VK.SPACEBAR){return e.onclick.call(e.scope,f)}})}})})(tinymce);(function(e){var d=e.DOM,b=e.dom.Event,f=e.each,a=e.util.Dispatcher,c;e.create("tinymce.ui.ListBox:tinymce.ui.Control",{ListBox:function(j,i,g){var h=this;h.parent(j,i,g);h.items=[];h.onChange=new a(h);h.onPostRender=new a(h);h.onAdd=new a(h);h.onRenderMenu=new e.util.Dispatcher(this);h.classPrefix="mceListBox";h.marked={}},select:function(h){var g=this,j,i;g.marked={};if(h==c){return g.selectByIndex(-1)}if(h&&typeof(h)=="function"){i=h}else{i=function(k){return k==h}}if(h!=g.selectedValue){f(g.items,function(l,k){if(i(l.value)){j=1;g.selectByIndex(k);return false}});if(!j){g.selectByIndex(-1)}}},selectByIndex:function(g){var i=this,j,k,h;i.marked={};if(g!=i.selectedIndex){j=d.get(i.id+"_text");h=d.get(i.id+"_voiceDesc");k=i.items[g];if(k){i.selectedValue=k.value;i.selectedIndex=g;d.setHTML(j,d.encode(k.title));d.setHTML(h,i.settings.title+" - "+k.title);d.removeClass(j,"mceTitle");d.setAttrib(i.id,"aria-valuenow",k.title)}else{d.setHTML(j,d.encode(i.settings.title));d.setHTML(h,d.encode(i.settings.title));d.addClass(j,"mceTitle");i.selectedValue=i.selectedIndex=null;d.setAttrib(i.id,"aria-valuenow",i.settings.title)}j=0}},mark:function(g){this.marked[g]=true},add:function(j,g,i){var h=this;i=i||{};i=e.extend(i,{title:j,value:g});h.items.push(i);h.onAdd.dispatch(h,i)},getLength:function(){return this.items.length},renderHTML:function(){var j="",g=this,i=g.settings,k=g.classPrefix;j='<span role="listbox" aria-haspopup="true" aria-labelledby="'+g.id+'_voiceDesc" aria-describedby="'+g.id+'_voiceDesc"><table role="presentation" tabindex="0" id="'+g.id+'" cellpadding="0" cellspacing="0" class="'+k+" "+k+"Enabled"+(i["class"]?(" "+i["class"]):"")+'"><tbody><tr>';j+="<td>"+d.createHTML("span",{id:g.id+"_voiceDesc","class":"voiceLabel",style:"display:none;"},g.settings.title);j+=d.createHTML("a",{id:g.id+"_text",tabindex:-1,href:"javascript:;","class":"mceText",onclick:"return false;",onmousedown:"return false;"},d.encode(g.settings.title))+"</td>";j+="<td>"+d.createHTML("a",{id:g.id+"_open",tabindex:-1,href:"javascript:;","class":"mceOpen",onclick:"return false;",onmousedown:"return false;"},'<span><span style="display:none;" class="mceIconOnly" aria-hidden="true">\u25BC</span></span>')+"</td>";j+="</tr></tbody></table></span>";return j},showMenu:function(){var h=this,j,i=d.get(this.id),g;if(h.isDisabled()||h.items.length===0){return}if(h.menu&&h.menu.isMenuVisible){return h.hideMenu()}if(!h.isMenuRendered){h.renderMenu();h.isMenuRendered=true}j=d.getPos(i);g=h.menu;g.settings.offset_x=j.x;g.settings.offset_y=j.y;g.settings.keyboard_focus=!e.isOpera;f(h.items,function(k){if(g.items[k.id]){g.items[k.id].setSelected(0)}});f(h.items,function(k){if(g.items[k.id]&&h.marked[k.value]){g.items[k.id].setSelected(1)}if(k.value===h.selectedValue){g.items[k.id].setSelected(1)}});g.showMenu(0,i.clientHeight);b.add(d.doc,"mousedown",h.hideMenu,h);d.addClass(h.id,h.classPrefix+"Selected")},hideMenu:function(h){var g=this;if(g.menu&&g.menu.isMenuVisible){d.removeClass(g.id,g.classPrefix+"Selected");if(h&&h.type=="mousedown"&&(h.target.id==g.id+"_text"||h.target.id==g.id+"_open")){return}if(!h||!d.getParent(h.target,".mceMenu")){d.removeClass(g.id,g.classPrefix+"Selected");b.remove(d.doc,"mousedown",g.hideMenu,g);g.menu.hideMenu()}}},renderMenu:function(){var h=this,g;g=h.settings.control_manager.createDropMenu(h.id+"_menu",{menu_line:1,"class":h.classPrefix+"Menu mceNoIcons",max_width:250,max_height:150});g.onHideMenu.add(function(){h.hideMenu();h.focus()});g.add({title:h.settings.title,"class":"mceMenuItemTitle",onclick:function(){if(h.settings.onselect("")!==false){h.select("")}}});f(h.items,function(i){if(i.value===c){g.add({title:i.title,role:"option","class":"mceMenuItemTitle",onclick:function(){if(h.settings.onselect("")!==false){h.select("")}}})}else{i.id=d.uniqueId();i.role="option";i.onclick=function(){if(h.settings.onselect(i.value)!==false){h.select(i.value)}};g.add(i)}});h.onRenderMenu.dispatch(h,g);h.menu=g},postRender:function(){var g=this,h=g.classPrefix;b.add(g.id,"click",g.showMenu,g);b.add(g.id,"keydown",function(i){if(i.keyCode==32){g.showMenu(i);b.cancel(i)}});b.add(g.id,"focus",function(){if(!g._focused){g.keyDownHandler=b.add(g.id,"keydown",function(i){if(i.keyCode==40){g.showMenu();b.cancel(i)}});g.keyPressHandler=b.add(g.id,"keypress",function(j){var i;if(j.keyCode==13){i=g.selectedValue;g.selectedValue=null;b.cancel(j);g.settings.onselect(i)}})}g._focused=1});b.add(g.id,"blur",function(){b.remove(g.id,"keydown",g.keyDownHandler);b.remove(g.id,"keypress",g.keyPressHandler);g._focused=0});if(e.isIE6||!d.boxModel){b.add(g.id,"mouseover",function(){if(!d.hasClass(g.id,h+"Disabled")){d.addClass(g.id,h+"Hover")}});b.add(g.id,"mouseout",function(){if(!d.hasClass(g.id,h+"Disabled")){d.removeClass(g.id,h+"Hover")}})}g.onPostRender.dispatch(g,d.get(g.id))},destroy:function(){this.parent();b.clear(this.id+"_text");b.clear(this.id+"_open")}})})(tinymce);(function(e){var d=e.DOM,b=e.dom.Event,f=e.each,a=e.util.Dispatcher,c;e.create("tinymce.ui.NativeListBox:tinymce.ui.ListBox",{NativeListBox:function(h,g){this.parent(h,g);this.classPrefix="mceNativeListBox"},setDisabled:function(g){d.get(this.id).disabled=g;this.setAriaProperty("disabled",g)},isDisabled:function(){return d.get(this.id).disabled},select:function(h){var g=this,j,i;if(h==c){return g.selectByIndex(-1)}if(h&&typeof(h)=="function"){i=h}else{i=function(k){return k==h}}if(h!=g.selectedValue){f(g.items,function(l,k){if(i(l.value)){j=1;g.selectByIndex(k);return false}});if(!j){g.selectByIndex(-1)}}},selectByIndex:function(g){d.get(this.id).selectedIndex=g+1;this.selectedValue=this.items[g]?this.items[g].value:null},add:function(k,h,g){var j,i=this;g=g||{};g.value=h;if(i.isRendered()){d.add(d.get(this.id),"option",g,k)}j={title:k,value:h,attribs:g};i.items.push(j);i.onAdd.dispatch(i,j)},getLength:function(){return this.items.length},renderHTML:function(){var i,g=this;i=d.createHTML("option",{value:""},"-- "+g.settings.title+" --");f(g.items,function(h){i+=d.createHTML("option",{value:h.value},h.title)});i=d.createHTML("select",{id:g.id,"class":"mceNativeListBox","aria-labelledby":g.id+"_aria"},i);i+=d.createHTML("span",{id:g.id+"_aria",style:"display: none"},g.settings.title);return i},postRender:function(){var h=this,i,j=true;h.rendered=true;function g(l){var k=h.items[l.target.selectedIndex-1];if(k&&(k=k.value)){h.onChange.dispatch(h,k);if(h.settings.onselect){h.settings.onselect(k)}}}b.add(h.id,"change",g);b.add(h.id,"keydown",function(l){var k;b.remove(h.id,"change",i);j=false;k=b.add(h.id,"blur",function(){if(j){return}j=true;b.add(h.id,"change",g);b.remove(h.id,"blur",k)});if(e.isWebKit&&(l.keyCode==37||l.keyCode==39)){return b.prevent(l)}if(l.keyCode==13||l.keyCode==32){g(l);return b.cancel(l)}});h.onPostRender.dispatch(h,d.get(h.id))}})})(tinymce);(function(c){var b=c.DOM,a=c.dom.Event,d=c.each;c.create("tinymce.ui.MenuButton:tinymce.ui.Button",{MenuButton:function(g,f,e){this.parent(g,f,e);this.onRenderMenu=new c.util.Dispatcher(this);f.menu_container=f.menu_container||b.doc.body},showMenu:function(){var g=this,j,i,h=b.get(g.id),f;if(g.isDisabled()){return}if(!g.isMenuRendered){g.renderMenu();g.isMenuRendered=true}if(g.isMenuVisible){return g.hideMenu()}j=b.getPos(g.settings.menu_container);i=b.getPos(h);f=g.menu;f.settings.offset_x=i.x;f.settings.offset_y=i.y;f.settings.vp_offset_x=i.x;f.settings.vp_offset_y=i.y;f.settings.keyboard_focus=g._focused;f.showMenu(0,h.firstChild.clientHeight);a.add(b.doc,"mousedown",g.hideMenu,g);g.setState("Selected",1);g.isMenuVisible=1},renderMenu:function(){var f=this,e;e=f.settings.control_manager.createDropMenu(f.id+"_menu",{menu_line:1,"class":this.classPrefix+"Menu",icons:f.settings.icons});e.onHideMenu.add(function(){f.hideMenu();f.focus()});f.onRenderMenu.dispatch(f,e);f.menu=e},hideMenu:function(g){var f=this;if(g&&g.type=="mousedown"&&b.getParent(g.target,function(h){return h.id===f.id||h.id===f.id+"_open"})){return}if(!g||!b.getParent(g.target,".mceMenu")){f.setState("Selected",0);a.remove(b.doc,"mousedown",f.hideMenu,f);if(f.menu){f.menu.hideMenu()}}f.isMenuVisible=0},postRender:function(){var e=this,f=e.settings;a.add(e.id,"click",function(){if(!e.isDisabled()){if(f.onclick){f.onclick(e.value)}e.showMenu()}})}})})(tinymce);(function(c){var b=c.DOM,a=c.dom.Event,d=c.each;c.create("tinymce.ui.SplitButton:tinymce.ui.MenuButton",{SplitButton:function(g,f,e){this.parent(g,f,e);this.classPrefix="mceSplitButton"},renderHTML:function(){var i,f=this,g=f.settings,e;i="<tbody><tr>";if(g.image){e=b.createHTML("img ",{src:g.image,role:"presentation","class":"mceAction "+g["class"]})}else{e=b.createHTML("span",{"class":"mceAction "+g["class"]},"")}e+=b.createHTML("span",{"class":"mceVoiceLabel mceIconOnly",id:f.id+"_voice",style:"display:none;"},g.title);i+="<td >"+b.createHTML("a",{role:"button",id:f.id+"_action",tabindex:"-1",href:"javascript:;","class":"mceAction "+g["class"],onclick:"return false;",onmousedown:"return false;",title:g.title},e)+"</td>";e=b.createHTML("span",{"class":"mceOpen "+g["class"]},'<span style="display:none;" class="mceIconOnly" aria-hidden="true">\u25BC</span>');i+="<td >"+b.createHTML("a",{role:"button",id:f.id+"_open",tabindex:"-1",href:"javascript:;","class":"mceOpen "+g["class"],onclick:"return false;",onmousedown:"return false;",title:g.title},e)+"</td>";i+="</tr></tbody>";i=b.createHTML("table",{role:"presentation","class":"mceSplitButton mceSplitButtonEnabled "+g["class"],cellpadding:"0",cellspacing:"0",title:g.title},i);return b.createHTML("div",{id:f.id,role:"button",tabindex:"0","aria-labelledby":f.id+"_voice","aria-haspopup":"true"},i)},postRender:function(){var e=this,g=e.settings,f;if(g.onclick){f=function(h){if(!e.isDisabled()){g.onclick(e.value);a.cancel(h)}};a.add(e.id+"_action","click",f);a.add(e.id,["click","keydown"],function(h){var k=32,m=14,i=13,j=38,l=40;if((h.keyCode===32||h.keyCode===13||h.keyCode===14)&&!h.altKey&&!h.ctrlKey&&!h.metaKey){f();a.cancel(h)}else{if(h.type==="click"||h.keyCode===l){e.showMenu();a.cancel(h)}}})}a.add(e.id+"_open","click",function(h){e.showMenu();a.cancel(h)});a.add([e.id,e.id+"_open"],"focus",function(){e._focused=1});a.add([e.id,e.id+"_open"],"blur",function(){e._focused=0});if(c.isIE6||!b.boxModel){a.add(e.id,"mouseover",function(){if(!b.hasClass(e.id,"mceSplitButtonDisabled")){b.addClass(e.id,"mceSplitButtonHover")}});a.add(e.id,"mouseout",function(){if(!b.hasClass(e.id,"mceSplitButtonDisabled")){b.removeClass(e.id,"mceSplitButtonHover")}})}},destroy:function(){this.parent();a.clear(this.id+"_action");a.clear(this.id+"_open");a.clear(this.id)}})})(tinymce);(function(d){var c=d.DOM,a=d.dom.Event,b=d.is,e=d.each;d.create("tinymce.ui.ColorSplitButton:tinymce.ui.SplitButton",{ColorSplitButton:function(i,h,f){var g=this;g.parent(i,h,f);g.settings=h=d.extend({colors:"000000,993300,333300,003300,003366,000080,333399,333333,800000,FF6600,808000,008000,008080,0000FF,666699,808080,FF0000,FF9900,99CC00,339966,33CCCC,3366FF,800080,999999,FF00FF,FFCC00,FFFF00,00FF00,00FFFF,00CCFF,993366,C0C0C0,FF99CC,FFCC99,FFFF99,CCFFCC,CCFFFF,99CCFF,CC99FF,FFFFFF",grid_width:8,default_color:"#888888"},g.settings);g.onShowMenu=new d.util.Dispatcher(g);g.onHideMenu=new d.util.Dispatcher(g);g.value=h.default_color},showMenu:function(){var f=this,g,j,i,h;if(f.isDisabled()){return}if(!f.isMenuRendered){f.renderMenu();f.isMenuRendered=true}if(f.isMenuVisible){return f.hideMenu()}i=c.get(f.id);c.show(f.id+"_menu");c.addClass(i,"mceSplitButtonSelected");h=c.getPos(i);c.setStyles(f.id+"_menu",{left:h.x,top:h.y+i.firstChild.clientHeight,zIndex:200000});i=0;a.add(c.doc,"mousedown",f.hideMenu,f);f.onShowMenu.dispatch(f);if(f._focused){f._keyHandler=a.add(f.id+"_menu","keydown",function(k){if(k.keyCode==27){f.hideMenu()}});c.select("a",f.id+"_menu")[0].focus()}f.isMenuVisible=1},hideMenu:function(g){var f=this;if(f.isMenuVisible){if(g&&g.type=="mousedown"&&c.getParent(g.target,function(h){return h.id===f.id+"_open"})){return}if(!g||!c.getParent(g.target,".mceSplitButtonMenu")){c.removeClass(f.id,"mceSplitButtonSelected");a.remove(c.doc,"mousedown",f.hideMenu,f);a.remove(f.id+"_menu","keydown",f._keyHandler);c.hide(f.id+"_menu")}f.isMenuVisible=0;f.onHideMenu.dispatch()}},renderMenu:function(){var p=this,h,k=0,q=p.settings,g,j,l,o,f;o=c.add(q.menu_container,"div",{role:"listbox",id:p.id+"_menu","class":q.menu_class+" "+q["class"],style:"position:absolute;left:0;top:-1000px;"});h=c.add(o,"div",{"class":q["class"]+" mceSplitButtonMenu"});c.add(h,"span",{"class":"mceMenuLine"});g=c.add(h,"table",{role:"presentation","class":"mceColorSplitMenu"});j=c.add(g,"tbody");k=0;e(b(q.colors,"array")?q.colors:q.colors.split(","),function(m){m=m.replace(/^#/,"");if(!k--){l=c.add(j,"tr");k=q.grid_width-1}g=c.add(l,"td");var i={href:"javascript:;",style:{backgroundColor:"#"+m},title:p.editor.getLang("colors."+m,m),"data-mce-color":"#"+m};if(!d.isIE){i.role="option"}g=c.add(g,"a",i);if(p.editor.forcedHighContrastMode){g=c.add(g,"canvas",{width:16,height:16,"aria-hidden":"true"});if(g.getContext&&(f=g.getContext("2d"))){f.fillStyle="#"+m;f.fillRect(0,0,16,16)}else{c.remove(g)}}});if(q.more_colors_func){g=c.add(j,"tr");g=c.add(g,"td",{colspan:q.grid_width,"class":"mceMoreColors"});g=c.add(g,"a",{role:"option",id:p.id+"_more",href:"javascript:;",onclick:"return false;","class":"mceMoreColors"},q.more_colors_title);a.add(g,"click",function(i){q.more_colors_func.call(q.more_colors_scope||this);return a.cancel(i)})}c.addClass(h,"mceColorSplitMenu");new d.ui.KeyboardNavigation({root:p.id+"_menu",items:c.select("a",p.id+"_menu"),onCancel:function(){p.hideMenu();p.focus()}});a.add(p.id+"_menu","mousedown",function(i){return a.cancel(i)});a.add(p.id+"_menu","click",function(i){var m;i=c.getParent(i.target,"a",j);if(i&&i.nodeName.toLowerCase()=="a"&&(m=i.getAttribute("data-mce-color"))){p.setColor(m)}return false});return o},setColor:function(f){this.displayColor(f);this.hideMenu();this.settings.onselect(f)},displayColor:function(g){var f=this;c.setStyle(f.id+"_preview","backgroundColor",g);f.value=g},postRender:function(){var f=this,g=f.id;f.parent();c.add(g+"_action","div",{id:g+"_preview","class":"mceColorPreview"});c.setStyle(f.id+"_preview","backgroundColor",f.value)},destroy:function(){this.parent();a.clear(this.id+"_menu");a.clear(this.id+"_more");c.remove(this.id+"_menu")}})})(tinymce);(function(b){var d=b.DOM,c=b.each,a=b.dom.Event;b.create("tinymce.ui.ToolbarGroup:tinymce.ui.Container",{renderHTML:function(){var f=this,i=[],e=f.controls,j=b.each,g=f.settings;i.push('<div id="'+f.id+'" role="group" aria-labelledby="'+f.id+'_voice">');i.push("<span role='application'>");i.push('<span id="'+f.id+'_voice" class="mceVoiceLabel" style="display:none;">'+d.encode(g.name)+"</span>");j(e,function(h){i.push(h.renderHTML())});i.push("</span>");i.push("</div>");return i.join("")},focus:function(){var e=this;d.get(e.id).focus()},postRender:function(){var f=this,e=[];c(f.controls,function(g){c(g.controls,function(h){if(h.id){e.push(h)}})});f.keyNav=new b.ui.KeyboardNavigation({root:f.id,items:e,onCancel:function(){if(b.isWebKit){d.get(f.editor.id+"_ifr").focus()}f.editor.focus()},excludeFromTabOrder:!f.settings.tab_focus_toolbar})},destroy:function(){var e=this;e.parent();e.keyNav.destroy();a.clear(e.id)}})})(tinymce);(function(a){var c=a.DOM,b=a.each;a.create("tinymce.ui.Toolbar:tinymce.ui.Container",{renderHTML:function(){var m=this,f="",j,k,n=m.settings,e,d,g,l;l=m.controls;for(e=0;e<l.length;e++){k=l[e];d=l[e-1];g=l[e+1];if(e===0){j="mceToolbarStart";if(k.Button){j+=" mceToolbarStartButton"}else{if(k.SplitButton){j+=" mceToolbarStartSplitButton"}else{if(k.ListBox){j+=" mceToolbarStartListBox"}}}f+=c.createHTML("td",{"class":j},c.createHTML("span",null,"<!-- IE -->"))}if(d&&k.ListBox){if(d.Button||d.SplitButton){f+=c.createHTML("td",{"class":"mceToolbarEnd"},c.createHTML("span",null,"<!-- IE -->"))}}if(c.stdMode){f+='<td style="position: relative">'+k.renderHTML()+"</td>"}else{f+="<td>"+k.renderHTML()+"</td>"}if(g&&k.ListBox){if(g.Button||g.SplitButton){f+=c.createHTML("td",{"class":"mceToolbarStart"},c.createHTML("span",null,"<!-- IE -->"))}}}j="mceToolbarEnd";if(k.Button){j+=" mceToolbarEndButton"}else{if(k.SplitButton){j+=" mceToolbarEndSplitButton"}else{if(k.ListBox){j+=" mceToolbarEndListBox"}}}f+=c.createHTML("td",{"class":j},c.createHTML("span",null,"<!-- IE -->"));return c.createHTML("table",{id:m.id,"class":"mceToolbar"+(n["class"]?" "+n["class"]:""),cellpadding:"0",cellspacing:"0",align:m.settings.align||"",role:"presentation",tabindex:"-1"},"<tbody><tr>"+f+"</tr></tbody>")}})})(tinymce);(function(b){var a=b.util.Dispatcher,c=b.each;b.create("tinymce.AddOnManager",{AddOnManager:function(){var d=this;d.items=[];d.urls={};d.lookup={};d.onAdd=new a(d)},get:function(d){if(this.lookup[d]){return this.lookup[d].instance}else{return undefined}},dependencies:function(e){var d;if(this.lookup[e]){d=this.lookup[e].dependencies}return d||[]},requireLangPack:function(e){var d=b.settings;if(d&&d.language&&d.language_load!==false){b.ScriptLoader.add(this.urls[e]+"/langs/"+d.language+".js")}},add:function(f,e,d){this.items.push(e);this.lookup[f]={instance:e,dependencies:d};this.onAdd.dispatch(this,f,e);return e},createUrl:function(d,e){if(typeof e==="object"){return e}else{return{prefix:d.prefix,resource:e,suffix:d.suffix}}},addComponents:function(f,d){var e=this.urls[f];b.each(d,function(g){b.ScriptLoader.add(e+"/"+g)})},load:function(j,f,d,h){var g=this,e=f;function i(){var k=g.dependencies(j);b.each(k,function(m){var l=g.createUrl(f,m);g.load(l.resource,l,undefined,undefined)});if(d){if(h){d.call(h)}else{d.call(b.ScriptLoader)}}}if(g.urls[j]){return}if(typeof f==="object"){e=f.prefix+f.resource+f.suffix}if(e.indexOf("/")!==0&&e.indexOf("://")==-1){e=b.baseURL+"/"+e}g.urls[j]=e.substring(0,e.lastIndexOf("/"));if(g.lookup[j]){i()}else{b.ScriptLoader.add(e,i,h)}}});b.PluginManager=new b.AddOnManager();b.ThemeManager=new b.AddOnManager()}(tinymce));(function(j){var g=j.each,d=j.extend,k=j.DOM,i=j.dom.Event,f=j.ThemeManager,b=j.PluginManager,e=j.explode,h=j.util.Dispatcher,a,c=0;j.documentBaseURL=window.location.href.replace(/[\?#].*$/,"").replace(/[\/\\][^\/]+$/,"");if(!/[\/\\]$/.test(j.documentBaseURL)){j.documentBaseURL+="/"}j.baseURL=new j.util.URI(j.documentBaseURL).toAbsolute(j.baseURL);j.baseURI=new j.util.URI(j.baseURL);j.onBeforeUnload=new h(j);i.add(window,"beforeunload",function(l){j.onBeforeUnload.dispatch(j,l)});j.onAddEditor=new h(j);j.onRemoveEditor=new h(j);j.EditorManager=d(j,{editors:[],i18n:{},activeEditor:null,init:function(x){var v=this,o,n=j.ScriptLoader,u,l=[],r;function q(t){var s=t.id;if(!s){s=t.name;if(s&&!k.get(s)){s=t.name}else{s=k.uniqueId()}t.setAttribute("id",s)}return s}function m(z,A,t){var y=z[A];if(!y){return}if(j.is(y,"string")){t=y.replace(/\.\w+$/,"");t=t?j.resolve(t):0;y=j.resolve(y)}return y.apply(t||this,Array.prototype.slice.call(arguments,2))}function p(t,s){return s.constructor===RegExp?s.test(t.className):k.hasClass(t,s)}v.settings=x;i.bind(window,"ready",function(){var s,t;m(x,"onpageload");switch(x.mode){case"exact":s=x.elements||"";if(s.length>0){g(e(s),function(y){if(k.get(y)){r=new j.Editor(y,x);l.push(r);r.render(1)}else{g(document.forms,function(z){g(z.elements,function(A){if(A.name===y){y="mce_editor_"+c++;k.setAttrib(A,"id",y);r=new j.Editor(y,x);l.push(r);r.render(1)}})})}})}break;case"textareas":case"specific_textareas":g(k.select("textarea"),function(y){if(x.editor_deselector&&p(y,x.editor_deselector)){return}if(!x.editor_selector||p(y,x.editor_selector)){r=new j.Editor(q(y),x);l.push(r);r.render(1)}});break;default:if(x.types){g(x.types,function(y){g(k.select(y.selector),function(A){var z=new j.Editor(q(A),j.extend({},x,y));l.push(z);z.render(1)})})}else{if(x.selector){g(k.select(x.selector),function(z){var y=new j.Editor(q(z),x);l.push(y);y.render(1)})}}}if(x.oninit){s=t=0;g(l,function(y){t++;if(!y.initialized){y.onInit.add(function(){s++;if(s==t){m(x,"oninit")}})}else{s++}if(s==t){m(x,"oninit")}})}})},get:function(l){if(l===a){return this.editors}return this.editors[l]},getInstanceById:function(l){return this.get(l)},add:function(m){var l=this,n=l.editors;n[m.id]=m;n.push(m);l._setActive(m);l.onAddEditor.dispatch(l,m);return m},remove:function(n){var m=this,l,o=m.editors;if(!o[n.id]){return null}delete o[n.id];for(l=0;l<o.length;l++){if(o[l]==n){o.splice(l,1);break}}if(m.activeEditor==n){m._setActive(o[0])}n.destroy();m.onRemoveEditor.dispatch(m,n);return n},execCommand:function(r,p,o){var q=this,n=q.get(o),l;function m(){n.destroy();l.detachEvent("onunload",m);l=l.tinyMCE=l.tinymce=null}switch(r){case"mceFocus":n.focus();return true;case"mceAddEditor":case"mceAddControl":if(!q.get(o)){new j.Editor(o,q.settings).render()}return true;case"mceAddFrameControl":l=o.window;l.tinyMCE=tinyMCE;l.tinymce=j;j.DOM.doc=l.document;j.DOM.win=l;n=new j.Editor(o.element_id,o);n.render();if(j.isIE){l.attachEvent("onunload",m)}o.page_window=null;return true;case"mceRemoveEditor":case"mceRemoveControl":if(n){n.remove()}return true;case"mceToggleEditor":if(!n){q.execCommand("mceAddControl",0,o);return true}if(n.isHidden()){n.show()}else{n.hide()}return true}if(q.activeEditor){return q.activeEditor.execCommand(r,p,o)}return false},execInstanceCommand:function(p,o,n,m){var l=this.get(p);if(l){return l.execCommand(o,n,m)}return false},triggerSave:function(){g(this.editors,function(l){l.save()})},addI18n:function(n,q){var l,m=this.i18n;if(!j.is(n,"string")){g(n,function(r,p){g(r,function(t,s){g(t,function(v,u){if(s==="common"){m[p+"."+u]=v}else{m[p+"."+s+"."+u]=v}})})})}else{g(q,function(r,p){m[n+"."+p]=r})}},_setActive:function(l){this.selectedInstance=this.activeEditor=l}})})(tinymce);(function(k){var l=k.DOM,j=k.dom.Event,f=k.extend,i=k.each,a=k.isGecko,b=k.isIE,e=k.isWebKit,d=k.is,h=k.ThemeManager,c=k.PluginManager,g=k.explode;k.create("tinymce.Editor",{Editor:function(p,o){var m=this,n=true;m.settings=o=f({id:p,language:"en",theme:"advanced",skin:"default",delta_width:0,delta_height:0,popup_css:"",plugins:"",document_base_url:k.documentBaseURL,add_form_submit_trigger:n,submit_patch:n,add_unload_trigger:n,convert_urls:n,relative_urls:n,remove_script_host:n,table_inline_editing:false,object_resizing:n,accessibility_focus:n,doctype:k.isIE6?'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">':"<!DOCTYPE>",visual:n,font_size_style_values:"xx-small,x-small,small,medium,large,x-large,xx-large",font_size_legacy_values:"xx-small,small,medium,large,x-large,xx-large,300%",apply_source_formatting:n,directionality:"ltr",forced_root_block:"p",hidden_input:n,padd_empty_editor:n,render_ui:n,indentation:"30px",fix_table_elements:n,inline_styles:n,convert_fonts_to_spans:n,indent:"simple",indent_before:"p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,ul,li,area,table,thead,tfoot,tbody,tr,section,article,hgroup,aside,figure,option,optgroup,datalist",indent_after:"p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,ul,li,area,table,thead,tfoot,tbody,tr,section,article,hgroup,aside,figure,option,optgroup,datalist",validate:n,entity_encoding:"named",url_converter:m.convertURL,url_converter_scope:m,ie7_compat:n},o);m.id=m.editorId=p;m.isNotDirty=false;m.plugins={};m.documentBaseURI=new k.util.URI(o.document_base_url||k.documentBaseURL,{base_uri:tinyMCE.baseURI});m.baseURI=k.baseURI;m.contentCSS=[];m.setupEvents();m.execCommands={};m.queryStateCommands={};m.queryValueCommands={};m.execCallback("setup",m)},render:function(o){var p=this,q=p.settings,r=p.id,m=k.ScriptLoader;if(!j.domLoaded){j.add(window,"ready",function(){p.render()});return}tinyMCE.settings=q;if(!p.getElement()){return}if(k.isIDevice&&!k.isIOS5){return}if(!/TEXTAREA|INPUT/i.test(p.getElement().nodeName)&&q.hidden_input&&l.getParent(r,"form")){l.insertAfter(l.create("input",{type:"hidden",name:r}),r)}if(!q.content_editable){p.orgVisibility=p.getElement().style.visibility;p.getElement().style.visibility="hidden"}if(k.WindowManager){p.windowManager=new k.WindowManager(p)}if(q.encoding=="xml"){p.onGetContent.add(function(s,t){if(t.save){t.content=l.encode(t.content)}})}if(q.add_form_submit_trigger){p.onSubmit.addToTop(function(){if(p.initialized){p.save();p.isNotDirty=1}})}if(q.add_unload_trigger){p._beforeUnload=tinyMCE.onBeforeUnload.add(function(){if(p.initialized&&!p.destroyed&&!p.isHidden()){p.save({format:"raw",no_events:true})}})}k.addUnload(p.destroy,p);if(q.submit_patch){p.onBeforeRenderUI.add(function(){var s=p.getElement().form;if(!s){return}if(s._mceOldSubmit){return}if(!s.submit.nodeType&&!s.submit.length){p.formElement=s;s._mceOldSubmit=s.submit;s.submit=function(){k.triggerSave();p.isNotDirty=1;return p.formElement._mceOldSubmit(p.formElement)}}s=null})}function n(){if(q.language&&q.language_load!==false){m.add(k.baseURL+"/langs/"+q.language+".js")}if(q.theme&&typeof q.theme!="function"&&q.theme.charAt(0)!="-"&&!h.urls[q.theme]){h.load(q.theme,"themes/"+q.theme+"/editor_template"+k.suffix+".js")}i(g(q.plugins),function(t){if(t&&!c.urls[t]){if(t.charAt(0)=="-"){t=t.substr(1,t.length);var s=c.dependencies(t);i(s,function(v){var u={prefix:"plugins/",resource:v,suffix:"/editor_plugin"+k.suffix+".js"};v=c.createUrl(u,v);c.load(v.resource,v)})}else{if(t=="safari"){return}c.load(t,{prefix:"plugins/",resource:t,suffix:"/editor_plugin"+k.suffix+".js"})}}});m.loadQueue(function(){if(!p.removed){p.init()}})}n()},init:function(){var q,G=this,H=G.settings,D,y,z,C=G.getElement(),p,m,E,v,B,F,x,r=[];k.add(G);H.aria_label=H.aria_label||l.getAttrib(C,"aria-label",G.getLang("aria.rich_text_area"));if(H.theme){if(typeof H.theme!="function"){H.theme=H.theme.replace(/-/,"");p=h.get(H.theme);G.theme=new p();if(G.theme.init){G.theme.init(G,h.urls[H.theme]||k.documentBaseURL.replace(/\/$/,""))}}else{G.theme=H.theme}}function A(s){var t=c.get(s),o=c.urls[s]||k.documentBaseURL.replace(/\/$/,""),n;if(t&&k.inArray(r,s)===-1){i(c.dependencies(s),function(u){A(u)});n=new t(G,o);G.plugins[s]=n;if(n.init){n.init(G,o);r.push(s)}}}i(g(H.plugins.replace(/\-/g,"")),A);if(H.popup_css!==false){if(H.popup_css){H.popup_css=G.documentBaseURI.toAbsolute(H.popup_css)}else{H.popup_css=G.baseURI.toAbsolute("themes/"+H.theme+"/skins/"+H.skin+"/dialog.css")}}if(H.popup_css_add){H.popup_css+=","+G.documentBaseURI.toAbsolute(H.popup_css_add)}G.controlManager=new k.ControlManager(G);G.onExecCommand.add(function(n,o){if(!/^(FontName|FontSize)$/.test(o)){G.nodeChanged()}});G.onBeforeRenderUI.dispatch(G,G.controlManager);if(H.render_ui&&G.theme){G.orgDisplay=C.style.display;if(typeof H.theme!="function"){D=H.width||C.style.width||C.offsetWidth;y=H.height||C.style.height||C.offsetHeight;z=H.min_height||100;F=/^[0-9\.]+(|px)$/i;if(F.test(""+D)){D=Math.max(parseInt(D,10)+(p.deltaWidth||0),100)}if(F.test(""+y)){y=Math.max(parseInt(y,10)+(p.deltaHeight||0),z)}p=G.theme.renderUI({targetNode:C,width:D,height:y,deltaWidth:H.delta_width,deltaHeight:H.delta_height});l.setStyles(p.sizeContainer||p.editorContainer,{width:D,height:y});y=(p.iframeHeight||y)+(typeof(y)=="number"?(p.deltaHeight||0):"");if(y<z){y=z}}else{p=H.theme(G,C);if(p.editorContainer.nodeType){p.editorContainer=p.editorContainer.id=p.editorContainer.id||G.id+"_parent"}if(p.iframeContainer.nodeType){p.iframeContainer=p.iframeContainer.id=p.iframeContainer.id||G.id+"_iframecontainer"}y=p.iframeHeight||C.offsetHeight;if(b){G.onInit.add(function(n){n.dom.bind(n.getBody(),"beforedeactivate keydown",function(){n.lastIERng=n.selection.getRng()})})}}G.editorContainer=p.editorContainer}if(H.content_css){i(g(H.content_css),function(n){G.contentCSS.push(G.documentBaseURI.toAbsolute(n))})}if(H.content_editable){C=q=p=null;return G.initContentBody()}if(document.domain&&location.hostname!=document.domain){k.relaxedDomain=document.domain}G.iframeHTML=H.doctype+'<html><head xmlns="http://www.w3.org/1999/xhtml">';if(H.document_base_url!=k.documentBaseURL){G.iframeHTML+='<base href="'+G.documentBaseURI.getURI()+'" />'}if(H.ie7_compat){G.iframeHTML+='<meta http-equiv="X-UA-Compatible" content="IE=7" />'}else{G.iframeHTML+='<meta http-equiv="X-UA-Compatible" content="IE=edge" />'}G.iframeHTML+='<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />';for(x=0;x<G.contentCSS.length;x++){G.iframeHTML+='<link type="text/css" rel="stylesheet" href="'+G.contentCSS[x]+'" />'}G.contentCSS=[];v=H.body_id||"tinymce";if(v.indexOf("=")!=-1){v=G.getParam("body_id","","hash");v=v[G.id]||v}B=H.body_class||"";if(B.indexOf("=")!=-1){B=G.getParam("body_class","","hash");B=B[G.id]||""}G.iframeHTML+='</head><body id="'+v+'" class="mceContentBody '+B+'" onload="window.parent.tinyMCE.get(\''+G.id+"').onLoad.dispatch();\"><br></body></html>";if(k.relaxedDomain&&(b||(k.isOpera&&parseFloat(opera.version())<11))){E='javascript:(function(){document.open();document.domain="'+document.domain+'";var ed = window.parent.tinyMCE.get("'+G.id+'");document.write(ed.iframeHTML);document.close();ed.initContentBody();})()'}q=l.add(p.iframeContainer,"iframe",{id:G.id+"_ifr",src:E||'javascript:""',frameBorder:"0",allowTransparency:"true",title:H.aria_label,style:{width:"100%",height:y,display:"block"}});G.contentAreaContainer=p.iframeContainer;if(p.editorContainer){l.get(p.editorContainer).style.display=G.orgDisplay}C.style.visibility=G.orgVisibility;l.get(G.id).style.display="none";l.setAttrib(G.id,"aria-hidden",true);if(!k.relaxedDomain||!E){G.initContentBody()}C=q=p=null},initContentBody:function(){var n=this,p=n.settings,q=l.get(n.id),r=n.getDoc(),o,m;if((!b||!k.relaxedDomain)&&!p.content_editable){r.open();r.write(n.iframeHTML);r.close();if(k.relaxedDomain){r.domain=k.relaxedDomain}}if(p.content_editable){l.addClass(q,"mceContentBody");n.contentDocument=r=p.content_document||document;n.contentWindow=p.content_window||window;n.bodyElement=q;p.content_document=p.content_window=null}m=n.getBody();m.disabled=true;if(!p.readonly){m.contentEditable=n.getParam("content_editable_state",true)}m.disabled=false;n.schema=new k.html.Schema(p);n.dom=new k.dom.DOMUtils(r,{keep_values:true,url_converter:n.convertURL,url_converter_scope:n,hex_colors:p.force_hex_style_colors,class_filter:p.class_filter,update_styles:true,root_element:p.content_editable?n.id:null,schema:n.schema});n.parser=new k.html.DomParser(p,n.schema);n.parser.addAttributeFilter("src,href,style",function(s,t){var u=s.length,x,z=n.dom,y,v;while(u--){x=s[u];y=x.attr(t);v="data-mce-"+t;if(!x.attributes.map[v]){if(t==="style"){x.attr(v,z.serializeStyle(z.parseStyle(y),x.name))}else{x.attr(v,n.convertURL(y,t,x.name))}}}});n.parser.addNodeFilter("script",function(s,t){var u=s.length,v;while(u--){v=s[u];v.attr("type","mce-"+(v.attr("type")||"text/javascript"))}});n.parser.addNodeFilter("#cdata",function(s,t){var u=s.length,v;while(u--){v=s[u];v.type=8;v.name="#comment";v.value="[CDATA["+v.value+"]]"}});n.parser.addNodeFilter("p,h1,h2,h3,h4,h5,h6,div",function(t,u){var v=t.length,x,s=n.schema.getNonEmptyElements();while(v--){x=t[v];if(x.isEmpty(s)){x.empty().append(new k.html.Node("br",1)).shortEnded=true}}});n.serializer=new k.dom.Serializer(p,n.dom,n.schema);n.selection=new k.dom.Selection(n.dom,n.getWin(),n.serializer,n);n.formatter=new k.Formatter(n);n.undoManager=new k.UndoManager(n);n.forceBlocks=new k.ForceBlocks(n);n.enterKey=new k.EnterKey(n);n.editorCommands=new k.EditorCommands(n);n.serializer.onPreProcess.add(function(s,t){return n.onPreProcess.dispatch(n,t,s)});n.serializer.onPostProcess.add(function(s,t){return n.onPostProcess.dispatch(n,t,s)});n.onPreInit.dispatch(n);if(!p.browser_spellcheck&&!p.gecko_spellcheck){r.body.spellcheck=false}if(!p.readonly){n.bindNativeEvents()}n.controlManager.onPostRender.dispatch(n,n.controlManager);n.onPostRender.dispatch(n);n.quirks=k.util.Quirks(n);if(p.directionality){m.dir=p.directionality}if(p.nowrap){m.style.whiteSpace="nowrap"}if(p.protect){n.onBeforeSetContent.add(function(s,t){i(p.protect,function(u){t.content=t.content.replace(u,function(v){return"<!--mce:protected "+escape(v)+"-->"})})})}n.onSetContent.add(function(){n.addVisual(n.getBody())});if(p.padd_empty_editor){n.onPostProcess.add(function(s,t){t.content=t.content.replace(/^(<p[^>]*>(&nbsp;|&#160;|\s|\u00a0|)<\/p>[\r\n]*|<br \/>[\r\n]*)$/,"")})}n.load({initial:true,format:"html"});n.startContent=n.getContent({format:"raw"});n.initialized=true;n.onInit.dispatch(n);n.execCallback("setupcontent_callback",n.id,m,r);n.execCallback("init_instance_callback",n);n.focus(true);n.nodeChanged({initial:true});i(n.contentCSS,function(s){n.dom.loadCSS(s)});if(p.auto_focus){setTimeout(function(){var s=k.get(p.auto_focus);s.selection.select(s.getBody(),1);s.selection.collapse(1);s.getBody().focus();s.getWin().focus()},100)}q=r=m=null},focus:function(p){var o,u=this,t=u.selection,q=u.settings.content_editable,n,r,s=u.getDoc(),m;if(!p){if(u.lastIERng){t.setRng(u.lastIERng)}n=t.getRng();if(n.item){r=n.item(0)}u._refreshContentEditable();if(!q){u.getWin().focus()}if(k.isGecko||q){m=u.getBody();if(m.setActive){m.setActive()}else{m.focus()}if(q){t.normalize()}}if(r&&r.ownerDocument==s){n=s.body.createControlRange();n.addElement(r);n.select()}}if(k.activeEditor!=u){if((o=k.activeEditor)!=null){o.onDeactivate.dispatch(o,u)}u.onActivate.dispatch(u,o)}k._setActive(u)},execCallback:function(q){var m=this,p=m.settings[q],o;if(!p){return}if(m.callbackLookup&&(o=m.callbackLookup[q])){p=o.func;o=o.scope}if(d(p,"string")){o=p.replace(/\.\w+$/,"");o=o?k.resolve(o):0;p=k.resolve(p);m.callbackLookup=m.callbackLookup||{};m.callbackLookup[q]={func:p,scope:o}}return p.apply(o||m,Array.prototype.slice.call(arguments,1))},translate:function(m){var o=this.settings.language||"en",n=k.i18n;if(!m){return""}return n[o+"."+m]||m.replace(/\{\#([^\}]+)\}/g,function(q,p){return n[o+"."+p]||"{#"+p+"}"})},getLang:function(o,m){return k.i18n[(this.settings.language||"en")+"."+o]||(d(m)?m:"{#"+o+"}")},getParam:function(t,q,m){var r=k.trim,p=d(this.settings[t])?this.settings[t]:q,s;if(m==="hash"){s={};if(d(p,"string")){i(p.indexOf("=")>0?p.split(/[;,](?![^=;,]*(?:[;,]|$))/):p.split(","),function(n){n=n.split("=");if(n.length>1){s[r(n[0])]=r(n[1])}else{s[r(n[0])]=r(n)}})}else{s=p}return s}return p},nodeChanged:function(q){var m=this,n=m.selection,p;if(m.initialized){q=q||{};p=n.getStart()||m.getBody();p=b&&p.ownerDocument!=m.getDoc()?m.getBody():p;q.parents=[];m.dom.getParent(p,function(o){if(o.nodeName=="BODY"){return true}q.parents.push(o)});m.onNodeChange.dispatch(m,q?q.controlManager||m.controlManager:m.controlManager,p,n.isCollapsed(),q)}},addButton:function(n,o){var m=this;m.buttons=m.buttons||{};m.buttons[n]=o},addCommand:function(m,o,n){this.execCommands[m]={func:o,scope:n||this}},addQueryStateHandler:function(m,o,n){this.queryStateCommands[m]={func:o,scope:n||this}},addQueryValueHandler:function(m,o,n){this.queryValueCommands[m]={func:o,scope:n||this}},addShortcut:function(o,q,m,p){var n=this,r;if(n.settings.custom_shortcuts===false){return false}n.shortcuts=n.shortcuts||{};if(d(m,"string")){r=m;m=function(){n.execCommand(r,false,null)}}if(d(m,"object")){r=m;m=function(){n.execCommand(r[0],r[1],r[2])}}i(g(o),function(s){var t={func:m,scope:p||this,desc:n.translate(q),alt:false,ctrl:false,shift:false};i(g(s,"+"),function(u){switch(u){case"alt":case"ctrl":case"shift":t[u]=true;break;default:t.charCode=u.charCodeAt(0);t.keyCode=u.toUpperCase().charCodeAt(0)}});n.shortcuts[(t.ctrl?"ctrl":"")+","+(t.alt?"alt":"")+","+(t.shift?"shift":"")+","+t.keyCode]=t});return true},execCommand:function(u,r,x,m){var p=this,q=0,v,n;if(!/^(mceAddUndoLevel|mceEndUndoLevel|mceBeginUndoLevel|mceRepaint|SelectAll)$/.test(u)&&(!m||!m.skip_focus)){p.focus()}m=f({},m);p.onBeforeExecCommand.dispatch(p,u,r,x,m);if(m.terminate){return false}if(p.execCallback("execcommand_callback",p.id,p.selection.getNode(),u,r,x)){p.onExecCommand.dispatch(p,u,r,x,m);return true}if(v=p.execCommands[u]){n=v.func.call(v.scope,r,x);if(n!==true){p.onExecCommand.dispatch(p,u,r,x,m);return n}}i(p.plugins,function(o){if(o.execCommand&&o.execCommand(u,r,x)){p.onExecCommand.dispatch(p,u,r,x,m);q=1;return false}});if(q){return true}if(p.theme&&p.theme.execCommand&&p.theme.execCommand(u,r,x)){p.onExecCommand.dispatch(p,u,r,x,m);return true}if(p.editorCommands.execCommand(u,r,x)){p.onExecCommand.dispatch(p,u,r,x,m);return true}p.getDoc().execCommand(u,r,x);p.onExecCommand.dispatch(p,u,r,x,m)},queryCommandState:function(q){var n=this,r,p;if(n._isHidden()){return}if(r=n.queryStateCommands[q]){p=r.func.call(r.scope);if(p!==true){return p}}r=n.editorCommands.queryCommandState(q);if(r!==-1){return r}try{return this.getDoc().queryCommandState(q)}catch(m){}},queryCommandValue:function(r){var n=this,q,p;if(n._isHidden()){return}if(q=n.queryValueCommands[r]){p=q.func.call(q.scope);if(p!==true){return p}}q=n.editorCommands.queryCommandValue(r);if(d(q)){return q}try{return this.getDoc().queryCommandValue(r)}catch(m){}},show:function(){var m=this;l.show(m.getContainer());l.hide(m.id);m.load()},hide:function(){var m=this,n=m.getDoc();if(b&&n){n.execCommand("SelectAll")}m.save();l.hide(m.getContainer());l.setStyle(m.id,"display",m.orgDisplay)},isHidden:function(){return !l.isHidden(this.id)},setProgressState:function(m,n,p){this.onSetProgressState.dispatch(this,m,n,p);return m},load:function(q){var m=this,p=m.getElement(),n;if(p){q=q||{};q.load=true;n=m.setContent(d(p.value)?p.value:p.innerHTML,q);q.element=p;if(!q.no_events){m.onLoadContent.dispatch(m,q)}q.element=p=null;return n}},save:function(r){var m=this,q=m.getElement(),n,p;if(!q||!m.initialized){return}r=r||{};r.save=true;r.element=q;n=r.content=m.getContent(r);if(!r.no_events){m.onSaveContent.dispatch(m,r)}n=r.content;if(!/TEXTAREA|INPUT/i.test(q.nodeName)){q.innerHTML=n;if(p=l.getParent(m.id,"form")){i(p.elements,function(o){if(o.name==m.id){o.value=n;return false}})}}else{q.value=n}r.element=q=null;return n},setContent:function(r,p){var o=this,n,m=o.getBody(),q;p=p||{};p.format=p.format||"html";p.set=true;p.content=r;if(!p.no_events){o.onBeforeSetContent.dispatch(o,p)}r=p.content;if(!k.isIE&&(r.length===0||/^\s+$/.test(r))){q=o.settings.forced_root_block;if(q){r="<"+q+'><br data-mce-bogus="1"></'+q+">"}else{r='<br data-mce-bogus="1">'}m.innerHTML=r;o.selection.select(m,true);o.selection.collapse(true);return}if(p.format!=="raw"){r=new k.html.Serializer({},o.schema).serialize(o.parser.parse(r))}p.content=k.trim(r);o.dom.setHTML(m,p.content);if(!p.no_events){o.onSetContent.dispatch(o,p)}if(!o.settings.content_editable||document.activeElement===o.getBody()){o.selection.normalize()}return p.content},getContent:function(n){var m=this,o;n=n||{};n.format=n.format||"html";n.get=true;n.getInner=true;if(!n.no_events){m.onBeforeGetContent.dispatch(m,n)}if(n.format=="raw"){o=m.getBody().innerHTML}else{o=m.serializer.serialize(m.getBody(),n)}n.content=k.trim(o);if(!n.no_events){m.onGetContent.dispatch(m,n)}return n.content},isDirty:function(){var m=this;return k.trim(m.startContent)!=k.trim(m.getContent({format:"raw",no_events:1}))&&!m.isNotDirty},getContainer:function(){var m=this;if(!m.container){m.container=l.get(m.editorContainer||m.id+"_parent")}return m.container},getContentAreaContainer:function(){return this.contentAreaContainer},getElement:function(){return l.get(this.settings.content_element||this.id)},getWin:function(){var m=this,n;if(!m.contentWindow){n=l.get(m.id+"_ifr");if(n){m.contentWindow=n.contentWindow}}return m.contentWindow},getDoc:function(){var m=this,n;if(!m.contentDocument){n=m.getWin();if(n){m.contentDocument=n.document}}return m.contentDocument},getBody:function(){return this.bodyElement||this.getDoc().body},convertURL:function(o,n,q){var m=this,p=m.settings;if(p.urlconverter_callback){return m.execCallback("urlconverter_callback",o,q,true,n)}if(!p.convert_urls||(q&&q.nodeName=="LINK")||o.indexOf("file:")===0){return o}if(p.relative_urls){return m.documentBaseURI.toRelative(o)}o=m.documentBaseURI.toAbsolute(o,p.remove_script_host);return o},addVisual:function(q){var n=this,o=n.settings,p=n.dom,m;q=q||n.getBody();if(!d(n.hasVisual)){n.hasVisual=o.visual}i(p.select("table,a",q),function(s){var r;switch(s.nodeName){case"TABLE":m=o.visual_table_class||"mceItemTable";r=p.getAttrib(s,"border");if(!r||r=="0"){if(n.hasVisual){p.addClass(s,m)}else{p.removeClass(s,m)}}return;case"A":if(!s.href){r=p.getAttrib(s,"name")||s.id;m="mceItemAnchor";if(r){if(n.hasVisual){p.addClass(s,m)}else{p.removeClass(s,m)}}}return}});n.onVisualAid.dispatch(n,q,n.hasVisual)},remove:function(){var m=this,n=m.getContainer();if(!m.removed){m.removed=1;m.hide();if(!m.settings.content_editable){j.clear(m.getWin());j.clear(m.getDoc())}j.clear(m.getBody());j.clear(m.formElement);j.unbind(n);m.execCallback("remove_instance_callback",m);m.onRemove.dispatch(m);m.onExecCommand.listeners=[];k.remove(m);l.remove(n)}},destroy:function(n){var m=this;if(m.destroyed){return}if(a){j.unbind(m.getDoc());j.unbind(m.getWin());j.unbind(m.getBody())}if(!n){k.removeUnload(m.destroy);tinyMCE.onBeforeUnload.remove(m._beforeUnload);if(m.theme&&m.theme.destroy){m.theme.destroy()}m.controlManager.destroy();m.selection.destroy();m.dom.destroy()}if(m.formElement){m.formElement.submit=m.formElement._mceOldSubmit;m.formElement._mceOldSubmit=null}m.contentAreaContainer=m.formElement=m.container=m.settings.content_element=m.bodyElement=m.contentDocument=m.contentWindow=null;if(m.selection){m.selection=m.selection.win=m.selection.dom=m.selection.dom.doc=null}m.destroyed=1},_refreshContentEditable:function(){var n=this,m,o;if(n._isHidden()){m=n.getBody();o=m.parentNode;o.removeChild(m);o.appendChild(m);m.focus()}},_isHidden:function(){var m;if(!a){return 0}m=this.selection.getSel();return(!m||!m.rangeCount||m.rangeCount===0)}})})(tinymce);(function(a){var b=a.each;a.Editor.prototype.setupEvents=function(){var c=this,d=c.settings;b(["onPreInit","onBeforeRenderUI","onPostRender","onLoad","onInit","onRemove","onActivate","onDeactivate","onClick","onEvent","onMouseUp","onMouseDown","onDblClick","onKeyDown","onKeyUp","onKeyPress","onContextMenu","onSubmit","onReset","onPaste","onPreProcess","onPostProcess","onBeforeSetContent","onBeforeGetContent","onSetContent","onGetContent","onLoadContent","onSaveContent","onNodeChange","onChange","onBeforeExecCommand","onExecCommand","onUndo","onRedo","onVisualAid","onSetProgressState","onSetAttrib"],function(e){c[e]=new a.util.Dispatcher(c)});if(d.cleanup_callback){c.onBeforeSetContent.add(function(e,f){f.content=e.execCallback("cleanup_callback","insert_to_editor",f.content,f)});c.onPreProcess.add(function(e,f){if(f.set){e.execCallback("cleanup_callback","insert_to_editor_dom",f.node,f)}if(f.get){e.execCallback("cleanup_callback","get_from_editor_dom",f.node,f)}});c.onPostProcess.add(function(e,f){if(f.set){f.content=e.execCallback("cleanup_callback","insert_to_editor",f.content,f)}if(f.get){f.content=e.execCallback("cleanup_callback","get_from_editor",f.content,f)}})}if(d.save_callback){c.onGetContent.add(function(e,f){if(f.save){f.content=e.execCallback("save_callback",e.id,f.content,e.getBody())}})}if(d.handle_event_callback){c.onEvent.add(function(f,g,h){if(c.execCallback("handle_event_callback",g,f,h)===false){Event.cancel(g)}})}if(d.handle_node_change_callback){c.onNodeChange.add(function(f,e,g){f.execCallback("handle_node_change_callback",f.id,g,-1,-1,true,f.selection.isCollapsed())})}if(d.save_callback){c.onSaveContent.add(function(e,g){var f=e.execCallback("save_callback",e.id,g.content,e.getBody());if(f){g.content=f}})}if(d.onchange_callback){c.onChange.add(function(f,e){f.execCallback("onchange_callback",f,e)})}};a.Editor.prototype.bindNativeEvents=function(){var l=this,f,d=l.settings,e=l.dom,h;h={mouseup:"onMouseUp",mousedown:"onMouseDown",click:"onClick",keyup:"onKeyUp",keydown:"onKeyDown",keypress:"onKeyPress",submit:"onSubmit",reset:"onReset",contextmenu:"onContextMenu",dblclick:"onDblClick",paste:"onPaste"};function c(i,m){var n=i.type;if(l.removed){return}if(l.onEvent.dispatch(l,i,m)!==false){l[h[i.fakeType||i.type]].dispatch(l,i,m)}}function j(i){l.focus(true)}function k(){l.selection.normalize();l.nodeChanged()}b(h,function(m,n){var i=d.content_editable?l.getBody():l.getDoc();switch(n){case"contextmenu":e.bind(i,n,c);break;case"paste":e.bind(l.getBody(),n,c);break;case"submit":case"reset":e.bind(l.getElement().form||a.DOM.getParent(l.id,"form"),n,c);break;default:e.bind(i,n,c)}});e.bind(d.content_editable?l.getBody():(a.isGecko?l.getDoc():l.getWin()),"focus",function(i){l.focus(true)});if(d.content_editable&&a.isOpera){e.bind(l.getBody(),"click",j);e.bind(l.getBody(),"keydown",j)}l.onMouseUp.add(k);l.onKeyUp.add(function(i,n){var m=n.keyCode;if((m>=33&&m<=36)||(m>=37&&m<=40)||m==13||m==45||m==46||m==8||(a.isMac&&(m==91||m==93))||n.ctrlKey){k()}});l.onReset.add(function(){l.setContent(l.startContent,{format:"raw"})});function g(m,i){if(m.altKey||m.ctrlKey||m.metaKey){b(l.shortcuts,function(n){var o=a.isMac?m.metaKey:m.ctrlKey;if(n.ctrl!=o||n.alt!=m.altKey||n.shift!=m.shiftKey){return}if(m.keyCode==n.keyCode||(m.charCode&&m.charCode==n.charCode)){m.preventDefault();if(i){n.func.call(n.scope)}return true}})}}l.onKeyUp.add(function(i,m){g(m)});l.onKeyPress.add(function(i,m){g(m)});l.onKeyDown.add(function(i,m){g(m,true)});if(a.isOpera){l.onClick.add(function(i,m){m.preventDefault()})}}})(tinymce);(function(d){var e=d.each,b,a=true,c=false;d.EditorCommands=function(n){var m=n.dom,p=n.selection,j={state:{},exec:{},value:{}},k=n.settings,q=n.formatter,o;function r(z,y,x){var v;z=z.toLowerCase();if(v=j.exec[z]){v(z,y,x);return a}return c}function l(x){var v;x=x.toLowerCase();if(v=j.state[x]){return v(x)}return -1}function h(x){var v;x=x.toLowerCase();if(v=j.value[x]){return v(x)}return c}function u(v,x){x=x||"exec";e(v,function(z,y){e(y.toLowerCase().split(","),function(A){j[x][A]=z})})}d.extend(this,{execCommand:r,queryCommandState:l,queryCommandValue:h,addCommands:u});function f(y,x,v){if(x===b){x=c}if(v===b){v=null}return n.getDoc().execCommand(y,x,v)}function t(v){return q.match(v)}function s(v,x){q.toggle(v,x?{value:x}:b)}function i(v){o=p.getBookmark(v)}function g(){p.moveToBookmark(o)}u({"mceResetDesignMode,mceBeginUndoLevel":function(){},"mceEndUndoLevel,mceAddUndoLevel":function(){n.undoManager.add()},"Cut,Copy,Paste":function(z){var y=n.getDoc(),v;try{f(z)}catch(x){v=a}if(v||!y.queryCommandSupported(z)){if(d.isGecko){n.windowManager.confirm(n.getLang("clipboard_msg"),function(A){if(A){open("http://www.mozilla.org/editor/midasdemo/securityprefs.html","_blank")}})}else{n.windowManager.alert(n.getLang("clipboard_no_support"))}}},unlink:function(v){if(p.isCollapsed()){p.select(p.getNode())}f(v);p.collapse(c)},"JustifyLeft,JustifyCenter,JustifyRight,JustifyFull":function(v){var x=v.substring(7);e("left,center,right,full".split(","),function(y){if(x!=y){q.remove("align"+y)}});s("align"+x);r("mceRepaint")},"InsertUnorderedList,InsertOrderedList":function(y){var v,x;f(y);v=m.getParent(p.getNode(),"ol,ul");if(v){x=v.parentNode;if(/^(H[1-6]|P|ADDRESS|PRE)$/.test(x.nodeName)){i();m.split(x,v);g()}}},"Bold,Italic,Underline,Strikethrough,Superscript,Subscript":function(v){s(v)},"ForeColor,HiliteColor,FontName":function(y,x,v){s(y,v)},FontSize:function(z,y,x){var v,A;if(x>=1&&x<=7){A=d.explode(k.font_size_style_values);v=d.explode(k.font_size_classes);if(v){x=v[x-1]||x}else{x=A[x-1]||x}}s(z,x)},RemoveFormat:function(v){q.remove(v)},mceBlockQuote:function(v){s("blockquote")},FormatBlock:function(y,x,v){return s(v||"p")},mceCleanup:function(){var v=p.getBookmark();n.setContent(n.getContent({cleanup:a}),{cleanup:a});p.moveToBookmark(v)},mceRemoveNode:function(z,y,x){var v=x||p.getNode();if(v!=n.getBody()){i();n.dom.remove(v,a);g()}},mceSelectNodeDepth:function(z,y,x){var v=0;m.getParent(p.getNode(),function(A){if(A.nodeType==1&&v++==x){p.select(A);return c}},n.getBody())},mceSelectNode:function(y,x,v){p.select(v)},mceInsertContent:function(B,I,K){var y,J,E,z,F,G,D,C,L,x,A,M,v,H;y=n.parser;J=new d.html.Serializer({},n.schema);v='<span id="mce_marker" data-mce-type="bookmark">\uFEFF</span>';G={content:K,format:"html"};p.onBeforeSetContent.dispatch(p,G);K=G.content;if(K.indexOf("{$caret}")==-1){K+="{$caret}"}K=K.replace(/\{\$caret\}/,v);if(!p.isCollapsed()){n.getDoc().execCommand("Delete",false,null)}E=p.getNode();G={context:E.nodeName.toLowerCase()};F=y.parse(K,G);A=F.lastChild;if(A.attr("id")=="mce_marker"){D=A;for(A=A.prev;A;A=A.walk(true)){if(A.type==3||!m.isBlock(A.name)){A.parent.insert(D,A,A.name==="br");break}}}if(!G.invalid){K=J.serialize(F);A=E.firstChild;M=E.lastChild;if(!A||(A===M&&A.nodeName==="BR")){m.setHTML(E,K)}else{p.setContent(K)}}else{p.setContent(v);E=n.selection.getNode();z=n.getBody();if(E.nodeType==9){E=A=z}else{A=E}while(A!==z){E=A;A=A.parentNode}K=E==z?z.innerHTML:m.getOuterHTML(E);K=J.serialize(y.parse(K.replace(/<span (id="mce_marker"|id=mce_marker).+?<\/span>/i,function(){return J.serialize(F)})));if(E==z){m.setHTML(z,K)}else{m.setOuterHTML(E,K)}}D=m.get("mce_marker");C=m.getRect(D);L=m.getViewPort(n.getWin());if((C.y+C.h>L.y+L.h||C.y<L.y)||(C.x>L.x+L.w||C.x<L.x)){H=d.isIE?n.getDoc().documentElement:n.getBody();H.scrollLeft=C.x;H.scrollTop=C.y-L.h+25}x=m.createRng();A=D.previousSibling;if(A&&A.nodeType==3){x.setStart(A,A.nodeValue.length)}else{x.setStartBefore(D);x.setEndBefore(D)}m.remove(D);p.setRng(x);p.onSetContent.dispatch(p,G);n.addVisual()},mceInsertRawHTML:function(y,x,v){p.setContent("tiny_mce_marker");n.setContent(n.getContent().replace(/tiny_mce_marker/g,function(){return v}))},mceSetContent:function(y,x,v){n.setContent(v)},"Indent,Outdent":function(z){var x,v,y;x=k.indentation;v=/[a-z%]+$/i.exec(x);x=parseInt(x);if(!l("InsertUnorderedList")&&!l("InsertOrderedList")){if(!k.forced_root_block&&!m.getParent(p.getNode(),m.isBlock)){q.apply("div")}e(p.getSelectedBlocks(),function(A){if(z=="outdent"){y=Math.max(0,parseInt(A.style.paddingLeft||0)-x);m.setStyle(A,"paddingLeft",y?y+v:"")}else{m.setStyle(A,"paddingLeft",(parseInt(A.style.paddingLeft||0)+x)+v)}})}else{f(z)}},mceRepaint:function(){var x;if(d.isGecko){try{i(a);if(p.getSel()){p.getSel().selectAllChildren(n.getBody())}p.collapse(a);g()}catch(v){}}},mceToggleFormat:function(y,x,v){q.toggle(v)},InsertHorizontalRule:function(){n.execCommand("mceInsertContent",false,"<hr />")},mceToggleVisualAid:function(){n.hasVisual=!n.hasVisual;n.addVisual()},mceReplaceContent:function(y,x,v){n.execCommand("mceInsertContent",false,v.replace(/\{\$selection\}/g,p.getContent({format:"text"})))},mceInsertLink:function(z,y,x){var v;if(typeof(x)=="string"){x={href:x}}v=m.getParent(p.getNode(),"a");x.href=x.href.replace(" ","%20");if(!v||!x.href){q.remove("link")}if(x.href){q.apply("link",x,v)}},selectAll:function(){var x=m.getRoot(),v=m.createRng();v.setStart(x,0);v.setEnd(x,x.childNodes.length);n.selection.setRng(v)}});u({"JustifyLeft,JustifyCenter,JustifyRight,JustifyFull":function(z){var x="align"+z.substring(7);var v=p.isCollapsed()?[m.getParent(p.getNode(),m.isBlock)]:p.getSelectedBlocks();var y=d.map(v,function(A){return !!q.matchNode(A,x)});return d.inArray(y,a)!==-1},"Bold,Italic,Underline,Strikethrough,Superscript,Subscript":function(v){return t(v)},mceBlockQuote:function(){return t("blockquote")},Outdent:function(){var v;if(k.inline_styles){if((v=m.getParent(p.getStart(),m.isBlock))&&parseInt(v.style.paddingLeft)>0){return a}if((v=m.getParent(p.getEnd(),m.isBlock))&&parseInt(v.style.paddingLeft)>0){return a}}return l("InsertUnorderedList")||l("InsertOrderedList")||(!k.inline_styles&&!!m.getParent(p.getNode(),"BLOCKQUOTE"))},"InsertUnorderedList,InsertOrderedList":function(v){return m.getParent(p.getNode(),v=="insertunorderedlist"?"UL":"OL")}},"state");u({"FontSize,FontName":function(y){var x=0,v;if(v=m.getParent(p.getNode(),"span")){if(y=="fontsize"){x=v.style.fontSize}else{x=v.style.fontFamily.replace(/, /g,",").replace(/[\'\"]/g,"").toLowerCase()}}return x}},"value");u({Undo:function(){n.undoManager.undo()},Redo:function(){n.undoManager.redo()}})}})(tinymce);(function(b){var a=b.util.Dispatcher;b.UndoManager=function(h){var l,i=0,e=[],g,k,j,f;function c(){return b.trim(h.getContent({format:"raw",no_events:1}).replace(/<span[^>]+data-mce-bogus[^>]+>[\u200B\uFEFF]+<\/span>/g,""))}function d(){l.typing=false;l.add()}onBeforeAdd=new a(l);k=new a(l);j=new a(l);f=new a(l);k.add(function(m,n){if(m.hasUndo()){return h.onChange.dispatch(h,n,m)}});j.add(function(m,n){return h.onUndo.dispatch(h,n,m)});f.add(function(m,n){return h.onRedo.dispatch(h,n,m)});h.onInit.add(function(){l.add()});h.onBeforeExecCommand.add(function(m,p,o,q,n){if(p!="Undo"&&p!="Redo"&&p!="mceRepaint"&&(!n||!n.skip_undo)){l.beforeChange()}});h.onExecCommand.add(function(m,p,o,q,n){if(p!="Undo"&&p!="Redo"&&p!="mceRepaint"&&(!n||!n.skip_undo)){l.add()}});h.onSaveContent.add(d);h.dom.bind(h.dom.getRoot(),"dragend",d);h.dom.bind(h.getDoc(),b.isGecko?"blur":"focusout",function(m){if(!h.removed&&l.typing){d()}});h.onKeyUp.add(function(m,o){var n=o.keyCode;if((n>=33&&n<=36)||(n>=37&&n<=40)||n==45||n==13||o.ctrlKey){d()}});h.onKeyDown.add(function(m,o){var n=o.keyCode;if((n>=33&&n<=36)||(n>=37&&n<=40)||n==45){if(l.typing){d()}return}if((n<16||n>20)&&n!=224&&n!=91&&!l.typing){l.beforeChange();l.typing=true;l.add()}});h.onMouseDown.add(function(m,n){if(l.typing){d()}});h.addShortcut("ctrl+z","undo_desc","Undo");h.addShortcut("ctrl+y","redo_desc","Redo");l={data:e,typing:false,onBeforeAdd:onBeforeAdd,onAdd:k,onUndo:j,onRedo:f,beforeChange:function(){g=h.selection.getBookmark(2,true)},add:function(p){var m,n=h.settings,o;p=p||{};p.content=c();l.onBeforeAdd.dispatch(l,p);o=e[i];if(o&&o.content==p.content){return null}if(e[i]){e[i].beforeBookmark=g}if(n.custom_undo_redo_levels){if(e.length>n.custom_undo_redo_levels){for(m=0;m<e.length-1;m++){e[m]=e[m+1]}e.length--;i=e.length}}p.bookmark=h.selection.getBookmark(2,true);if(i<e.length-1){e.length=i+1}e.push(p);i=e.length-1;l.onAdd.dispatch(l,p);h.isNotDirty=0;return p},undo:function(){var n,m;if(l.typing){l.add();l.typing=false}if(i>0){n=e[--i];h.setContent(n.content,{format:"raw"});h.selection.moveToBookmark(n.beforeBookmark);l.onUndo.dispatch(l,n)}return n},redo:function(){var m;if(i<e.length-1){m=e[++i];h.setContent(m.content,{format:"raw"});h.selection.moveToBookmark(m.bookmark);l.onRedo.dispatch(l,m)}return m},clear:function(){e=[];i=0;l.typing=false},hasUndo:function(){return i>0||this.typing},hasRedo:function(){return i<e.length-1&&!this.typing}};return l}})(tinymce);tinymce.ForceBlocks=function(c){var b=c.settings,e=c.dom,a=c.selection,d=c.schema.getBlockElements();function f(){var j=a.getStart(),h=c.getBody(),g,k,o,r,q,i,l,m=-16777215,p;if(!j||j.nodeType!==1||!b.forced_root_block){return}while(j&&j!=h){if(d[j.nodeName]){return}j=j.parentNode}g=a.getRng();if(g.setStart){k=g.startContainer;o=g.startOffset;r=g.endContainer;q=g.endOffset}else{if(g.item){j=g.item(0);g=c.getDoc().body.createTextRange();g.moveToElementText(j)}tmpRng=g.duplicate();tmpRng.collapse(true);o=tmpRng.move("character",m)*-1;if(!tmpRng.collapsed){tmpRng=g.duplicate();tmpRng.collapse(false);q=(tmpRng.move("character",m)*-1)-o}}j=h.firstChild;while(j){if(j.nodeType===3||(j.nodeType==1&&!d[j.nodeName])){if(!i){i=e.create(b.forced_root_block);j.parentNode.insertBefore(i,j);p=true}l=j;j=j.nextSibling;i.appendChild(l)}else{i=null;j=j.nextSibling}}if(g.setStart){g.setStart(k,o);g.setEnd(r,q);a.setRng(g)}else{try{g=c.getDoc().body.createTextRange();g.moveToElementText(h);g.collapse(true);g.moveStart("character",o);if(q>0){g.moveEnd("character",q)}g.select()}catch(n){}}if(p){c.nodeChanged()}}if(b.forced_root_block){c.onKeyUp.add(f);c.onNodeChange.add(f)}};(function(c){var b=c.DOM,a=c.dom.Event,d=c.each,e=c.extend;c.create("tinymce.ControlManager",{ControlManager:function(f,j){var h=this,g;j=j||{};h.editor=f;h.controls={};h.onAdd=new c.util.Dispatcher(h);h.onPostRender=new c.util.Dispatcher(h);h.prefix=j.prefix||f.id+"_";h._cls={};h.onPostRender.add(function(){d(h.controls,function(i){i.postRender()})})},get:function(f){return this.controls[this.prefix+f]||this.controls[f]},setActive:function(h,f){var g=null;if(g=this.get(h)){g.setActive(f)}return g},setDisabled:function(h,f){var g=null;if(g=this.get(h)){g.setDisabled(f)}return g},add:function(g){var f=this;if(g){f.controls[g.id]=g;f.onAdd.dispatch(g,f)}return g},createControl:function(j){var o,k,g,h=this,m=h.editor,n,f;if(!h.controlFactories){h.controlFactories=[];d(m.plugins,function(i){if(i.createControl){h.controlFactories.push(i)}})}n=h.controlFactories;for(k=0,g=n.length;k<g;k++){o=n[k].createControl(j,h);if(o){return h.add(o)}}if(j==="|"||j==="separator"){return h.createSeparator()}if(m.buttons&&(o=m.buttons[j])){return h.createButton(j,o)}return h.add(o)},createDropMenu:function(f,n,h){var m=this,i=m.editor,j,g,k,l;n=e({"class":"mceDropDown",constrain:i.settings.constrain_menus},n);n["class"]=n["class"]+" "+i.getParam("skin")+"Skin";if(k=i.getParam("skin_variant")){n["class"]+=" "+i.getParam("skin")+"Skin"+k.substring(0,1).toUpperCase()+k.substring(1)}n["class"]+=i.settings.directionality=="rtl"?" mceRtl":"";f=m.prefix+f;l=h||m._cls.dropmenu||c.ui.DropMenu;j=m.controls[f]=new l(f,n);j.onAddItem.add(function(r,q){var p=q.settings;p.title=i.getLang(p.title,p.title);if(!p.onclick){p.onclick=function(o){if(p.cmd){i.execCommand(p.cmd,p.ui||false,p.value)}}}});i.onRemove.add(function(){j.destroy()});if(c.isIE){j.onShowMenu.add(function(){i.focus();g=i.selection.getBookmark(1)});j.onHideMenu.add(function(){if(g){i.selection.moveToBookmark(g);g=0}})}return m.add(j)},createListBox:function(f,n,h){var l=this,j=l.editor,i,k,m;if(l.get(f)){return null}n.title=j.translate(n.title);n.scope=n.scope||j;if(!n.onselect){n.onselect=function(o){j.execCommand(n.cmd,n.ui||false,o||n.value)}}n=e({title:n.title,"class":"mce_"+f,scope:n.scope,control_manager:l},n);f=l.prefix+f;function g(o){return o.settings.use_accessible_selects&&!c.isGecko}if(j.settings.use_native_selects||g(j)){k=new c.ui.NativeListBox(f,n)}else{m=h||l._cls.listbox||c.ui.ListBox;k=new m(f,n,j)}l.controls[f]=k;if(c.isWebKit){k.onPostRender.add(function(p,o){a.add(o,"mousedown",function(){j.bookmark=j.selection.getBookmark(1)});a.add(o,"focus",function(){j.selection.moveToBookmark(j.bookmark);j.bookmark=null})})}if(k.hideMenu){j.onMouseDown.add(k.hideMenu,k)}return l.add(k)},createButton:function(m,i,l){var h=this,g=h.editor,j,k,f;if(h.get(m)){return null}i.title=g.translate(i.title);i.label=g.translate(i.label);i.scope=i.scope||g;if(!i.onclick&&!i.menu_button){i.onclick=function(){g.execCommand(i.cmd,i.ui||false,i.value)}}i=e({title:i.title,"class":"mce_"+m,unavailable_prefix:g.getLang("unavailable",""),scope:i.scope,control_manager:h},i);m=h.prefix+m;if(i.menu_button){f=l||h._cls.menubutton||c.ui.MenuButton;k=new f(m,i,g);g.onMouseDown.add(k.hideMenu,k)}else{f=h._cls.button||c.ui.Button;k=new f(m,i,g)}return h.add(k)},createMenuButton:function(h,f,g){f=f||{};f.menu_button=1;return this.createButton(h,f,g)},createSplitButton:function(m,i,l){var h=this,g=h.editor,j,k,f;if(h.get(m)){return null}i.title=g.translate(i.title);i.scope=i.scope||g;if(!i.onclick){i.onclick=function(n){g.execCommand(i.cmd,i.ui||false,n||i.value)}}if(!i.onselect){i.onselect=function(n){g.execCommand(i.cmd,i.ui||false,n||i.value)}}i=e({title:i.title,"class":"mce_"+m,scope:i.scope,control_manager:h},i);m=h.prefix+m;f=l||h._cls.splitbutton||c.ui.SplitButton;k=h.add(new f(m,i,g));g.onMouseDown.add(k.hideMenu,k);return k},createColorSplitButton:function(f,n,h){var l=this,j=l.editor,i,k,m,g;if(l.get(f)){return null}n.title=j.translate(n.title);n.scope=n.scope||j;if(!n.onclick){n.onclick=function(o){if(c.isIE){g=j.selection.getBookmark(1)}j.execCommand(n.cmd,n.ui||false,o||n.value)}}if(!n.onselect){n.onselect=function(o){j.execCommand(n.cmd,n.ui||false,o||n.value)}}n=e({title:n.title,"class":"mce_"+f,menu_class:j.getParam("skin")+"Skin",scope:n.scope,more_colors_title:j.getLang("more_colors")},n);f=l.prefix+f;m=h||l._cls.colorsplitbutton||c.ui.ColorSplitButton;k=new m(f,n,j);j.onMouseDown.add(k.hideMenu,k);j.onRemove.add(function(){k.destroy()});if(c.isIE){k.onShowMenu.add(function(){j.focus();g=j.selection.getBookmark(1)});k.onHideMenu.add(function(){if(g){j.selection.moveToBookmark(g);g=0}})}return l.add(k)},createToolbar:function(k,h,j){var i,g=this,f;k=g.prefix+k;f=j||g._cls.toolbar||c.ui.Toolbar;i=new f(k,h,g.editor);if(g.get(k)){return null}return g.add(i)},createToolbarGroup:function(k,h,j){var i,g=this,f;k=g.prefix+k;f=j||this._cls.toolbarGroup||c.ui.ToolbarGroup;i=new f(k,h,g.editor);if(g.get(k)){return null}return g.add(i)},createSeparator:function(g){var f=g||this._cls.separator||c.ui.Separator;return new f()},setControlType:function(g,f){return this._cls[g.toLowerCase()]=f},destroy:function(){d(this.controls,function(f){f.destroy()});this.controls=null}})})(tinymce);(function(d){var a=d.util.Dispatcher,e=d.each,c=d.isIE,b=d.isOpera;d.create("tinymce.WindowManager",{WindowManager:function(f){var g=this;g.editor=f;g.onOpen=new a(g);g.onClose=new a(g);g.params={};g.features={}},open:function(z,h){var v=this,k="",n,m,i=v.editor.settings.dialog_type=="modal",q,o,j,g=d.DOM.getViewPort(),r;z=z||{};h=h||{};o=b?g.w:screen.width;j=b?g.h:screen.height;z.name=z.name||"mc_"+new Date().getTime();z.width=parseInt(z.width||320);z.height=parseInt(z.height||240);z.resizable=true;z.left=z.left||parseInt(o/2)-(z.width/2);z.top=z.top||parseInt(j/2)-(z.height/2);h.inline=false;h.mce_width=z.width;h.mce_height=z.height;h.mce_auto_focus=z.auto_focus;if(i){if(c){z.center=true;z.help=false;z.dialogWidth=z.width+"px";z.dialogHeight=z.height+"px";z.scroll=z.scrollbars||false}}e(z,function(p,f){if(d.is(p,"boolean")){p=p?"yes":"no"}if(!/^(name|url)$/.test(f)){if(c&&i){k+=(k?";":"")+f+":"+p}else{k+=(k?",":"")+f+"="+p}}});v.features=z;v.params=h;v.onOpen.dispatch(v,z,h);r=z.url||z.file;r=d._addVer(r);try{if(c&&i){q=1;window.showModalDialog(r,window,k)}else{q=window.open(r,z.name,k)}}catch(l){}if(!q){alert(v.editor.getLang("popup_blocked"))}},close:function(f){f.close();this.onClose.dispatch(this)},createInstance:function(i,h,g,m,l,k){var j=d.resolve(i);return new j(h,g,m,l,k)},confirm:function(h,f,i,g){g=g||window;f.call(i||this,g.confirm(this._decode(this.editor.getLang(h,h))))},alert:function(h,f,j,g){var i=this;g=g||window;g.alert(i._decode(i.editor.getLang(h,h)));if(f){f.call(j||i)}},resizeBy:function(f,g,h){h.resizeBy(f,g)},_decode:function(f){return d.DOM.decode(f).replace(/\\n/g,"\n")}})}(tinymce));(function(a){a.Formatter=function(aa){var Q={},T=a.each,c=aa.dom,r=aa.selection,t=a.dom.TreeWalker,N=new a.dom.RangeUtils(c),d=aa.schema.isValidChild,H=c.isBlock,m=aa.settings.forced_root_block,s=c.nodeIndex,G=a.isGecko?"\u200B":"\uFEFF",e=/^(src|href|style)$/,X=false,C=true,P,D,x=c.getContentEditable;function A(ab){return ab instanceof Array}function n(ac,ab){return c.getParents(ac,ab,c.getRoot())}function b(ab){return ab.nodeType===1&&ab.id==="_mce_caret"}function j(){l({alignleft:[{selector:"figure,p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li",styles:{textAlign:"left"},defaultBlock:"div"},{selector:"img,table",collapsed:false,styles:{"float":"left"}}],aligncenter:[{selector:"figure,p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li",styles:{textAlign:"center"},defaultBlock:"div"},{selector:"img",collapsed:false,styles:{display:"block",marginLeft:"auto",marginRight:"auto"}},{selector:"table",collapsed:false,styles:{marginLeft:"auto",marginRight:"auto"}}],alignright:[{selector:"figure,p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li",styles:{textAlign:"right"},defaultBlock:"div"},{selector:"img,table",collapsed:false,styles:{"float":"right"}}],alignfull:[{selector:"figure,p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li",styles:{textAlign:"justify"},defaultBlock:"div"}],bold:[{inline:"strong",remove:"all"},{inline:"span",styles:{fontWeight:"bold"}},{inline:"b",remove:"all"}],italic:[{inline:"em",remove:"all"},{inline:"span",styles:{fontStyle:"italic"}},{inline:"i",remove:"all"}],underline:[{inline:"span",styles:{textDecoration:"underline"},exact:true},{inline:"u",remove:"all"}],strikethrough:[{inline:"span",styles:{textDecoration:"line-through"},exact:true},{inline:"strike",remove:"all"}],forecolor:{inline:"span",styles:{color:"%value"},wrap_links:false},hilitecolor:{inline:"span",styles:{backgroundColor:"%value"},wrap_links:false},fontname:{inline:"span",styles:{fontFamily:"%value"}},fontsize:{inline:"span",styles:{fontSize:"%value"}},fontsize_class:{inline:"span",attributes:{"class":"%value"}},blockquote:{block:"blockquote",wrapper:1,remove:"all"},subscript:{inline:"sub"},superscript:{inline:"sup"},link:{inline:"a",selector:"a",remove:"all",split:true,deep:true,onmatch:function(ab){return true},onformat:function(ad,ab,ac){T(ac,function(af,ae){c.setAttrib(ad,ae,af)})}},removeformat:[{selector:"b,strong,em,i,font,u,strike",remove:"all",split:true,expand:false,block_expand:true,deep:true},{selector:"span",attributes:["style","class"],remove:"empty",split:true,expand:false,deep:true},{selector:"*",attributes:["style","class"],split:false,expand:false,deep:true}]});T("p h1 h2 h3 h4 h5 h6 div address pre div code dt dd samp".split(/\s/),function(ab){l(ab,{block:ab,remove:"all"})});l(aa.settings.formats)}function W(){aa.addShortcut("ctrl+b","bold_desc","Bold");aa.addShortcut("ctrl+i","italic_desc","Italic");aa.addShortcut("ctrl+u","underline_desc","Underline");for(var ab=1;ab<=6;ab++){aa.addShortcut("ctrl+"+ab,"",["FormatBlock",false,"h"+ab])}aa.addShortcut("ctrl+7","",["FormatBlock",false,"p"]);aa.addShortcut("ctrl+8","",["FormatBlock",false,"div"]);aa.addShortcut("ctrl+9","",["FormatBlock",false,"address"])}function V(ab){return ab?Q[ab]:Q}function l(ab,ac){if(ab){if(typeof(ab)!=="string"){T(ab,function(ae,ad){l(ad,ae)})}else{ac=ac.length?ac:[ac];T(ac,function(ad){if(ad.deep===D){ad.deep=!ad.selector}if(ad.split===D){ad.split=!ad.selector||ad.inline}if(ad.remove===D&&ad.selector&&!ad.inline){ad.remove="none"}if(ad.selector&&ad.inline){ad.mixed=true;ad.block_expand=true}if(typeof(ad.classes)==="string"){ad.classes=ad.classes.split(/\s+/)}});Q[ab]=ac}}}var i=function(ac){var ab;aa.dom.getParent(ac,function(ad){ab=aa.dom.getStyle(ad,"text-decoration");return ab&&ab!=="none"});return ab};var L=function(ab){var ac;if(ab.nodeType===1&&ab.parentNode&&ab.parentNode.nodeType===1){ac=i(ab.parentNode);if(aa.dom.getStyle(ab,"color")&&ac){aa.dom.setStyle(ab,"text-decoration",ac)}else{if(aa.dom.getStyle(ab,"textdecoration")===ac){aa.dom.setStyle(ab,"text-decoration",null)}}}};function Y(ae,al,ag){var ah=V(ae),am=ah[0],ak,ac,aj,ai=r.isCollapsed();function ab(aq,ap){ap=ap||am;if(aq){if(ap.onformat){ap.onformat(aq,ap,al,ag)}T(ap.styles,function(at,ar){c.setStyle(aq,ar,q(at,al))});T(ap.attributes,function(at,ar){c.setAttrib(aq,ar,q(at,al))});T(ap.classes,function(ar){ar=q(ar,al);if(!c.hasClass(aq,ar)){c.addClass(aq,ar)}})}}function af(){function ar(ay,aw){var ax=new t(aw);for(ag=ax.current();ag;ag=ax.prev()){if(ag.childNodes.length>1||ag==ay||ag.tagName=="BR"){return ag}}}var aq=aa.selection.getRng();var av=aq.startContainer;var ap=aq.endContainer;if(av!=ap&&aq.endOffset===0){var au=ar(av,ap);var at=au.nodeType==3?au.length:au.childNodes.length;aq.setEnd(au,at)}return aq}function ad(at,ay,aw,av,aq){var ap=[],ar=-1,ax,aA=-1,au=-1,az;T(at.childNodes,function(aC,aB){if(aC.nodeName==="UL"||aC.nodeName==="OL"){ar=aB;ax=aC;return false}});T(at.childNodes,function(aC,aB){if(aC.nodeName==="SPAN"&&c.getAttrib(aC,"data-mce-type")=="bookmark"){if(aC.id==ay.id+"_start"){aA=aB}else{if(aC.id==ay.id+"_end"){au=aB}}}});if(ar<=0||(aA<ar&&au>ar)){T(a.grep(at.childNodes),aq);return 0}else{az=c.clone(aw,X);T(a.grep(at.childNodes),function(aC,aB){if((aA<ar&&aB<ar)||(aA>ar&&aB>ar)){ap.push(aC);aC.parentNode.removeChild(aC)}});if(aA<ar){at.insertBefore(az,ax)}else{if(aA>ar){at.insertBefore(az,ax.nextSibling)}}av.push(az);T(ap,function(aB){az.appendChild(aB)});return az}}function an(aq,at,aw){var ap=[],av,ar,au=true;av=am.inline||am.block;ar=c.create(av);ab(ar);N.walk(aq,function(ax){var ay;function az(aA){var aF,aD,aB,aC,aE;aE=au;aF=aA.nodeName.toLowerCase();aD=aA.parentNode.nodeName.toLowerCase();if(aA.nodeType===1&&x(aA)){aE=au;au=x(aA)==="true";aC=true}if(g(aF,"br")){ay=0;if(am.block){c.remove(aA)}return}if(am.wrapper&&y(aA,ae,al)){ay=0;return}if(au&&!aC&&am.block&&!am.wrapper&&I(aF)){aA=c.rename(aA,av);ab(aA);ap.push(aA);ay=0;return}if(am.selector){T(ah,function(aG){if("collapsed" in aG&&aG.collapsed!==ai){return}if(c.is(aA,aG.selector)&&!b(aA)){ab(aA,aG);aB=true}});if(!am.inline||aB){ay=0;return}}if(au&&!aC&&d(av,aF)&&d(aD,av)&&!(!aw&&aA.nodeType===3&&aA.nodeValue.length===1&&aA.nodeValue.charCodeAt(0)===65279)&&!b(aA)){if(!ay){ay=c.clone(ar,X);aA.parentNode.insertBefore(ay,aA);ap.push(ay)}ay.appendChild(aA)}else{if(aF=="li"&&at){ay=ad(aA,at,ar,ap,az)}else{ay=0;T(a.grep(aA.childNodes),az);if(aC){au=aE}ay=0}}}T(ax,az)});if(am.wrap_links===false){T(ap,function(ax){function ay(aC){var aB,aA,az;if(aC.nodeName==="A"){aA=c.clone(ar,X);ap.push(aA);az=a.grep(aC.childNodes);for(aB=0;aB<az.length;aB++){aA.appendChild(az[aB])}aC.appendChild(aA)}T(a.grep(aC.childNodes),ay)}ay(ax)})}T(ap,function(az){var ax;function aA(aC){var aB=0;T(aC.childNodes,function(aD){if(!f(aD)&&!K(aD)){aB++}});return aB}function ay(aB){var aD,aC;T(aB.childNodes,function(aE){if(aE.nodeType==1&&!K(aE)&&!b(aE)){aD=aE;return X}});if(aD&&h(aD,am)){aC=c.clone(aD,X);ab(aC);c.replace(aC,aB,C);c.remove(aD,1)}return aC||aB}ax=aA(az);if((ap.length>1||!H(az))&&ax===0){c.remove(az,1);return}if(am.inline||am.wrapper){if(!am.exact&&ax===1){az=ay(az)}T(ah,function(aB){T(c.select(aB.inline,az),function(aD){var aC;if(aB.wrap_links===false){aC=aD.parentNode;do{if(aC.nodeName==="A"){return}}while(aC=aC.parentNode)}Z(aB,al,aD,aB.exact?aD:null)})});if(y(az.parentNode,ae,al)){c.remove(az,1);az=0;return C}if(am.merge_with_parents){c.getParent(az.parentNode,function(aB){if(y(aB,ae,al)){c.remove(az,1);az=0;return C}})}if(az&&am.merge_siblings!==false){az=u(E(az),az);az=u(az,E(az,C))}}})}if(am){if(ag){if(ag.nodeType){ac=c.createRng();ac.setStartBefore(ag);ac.setEndAfter(ag);an(p(ac,ah),null,true)}else{an(ag,null,true)}}else{if(!ai||!am.inline||c.select("td.mceSelected,th.mceSelected").length){var ao=aa.selection.getNode();if(!m&&ah[0].defaultBlock&&!c.getParent(ao,c.isBlock)){Y(ah[0].defaultBlock)}aa.selection.setRng(af());ak=r.getBookmark();an(p(r.getRng(C),ah),ak);if(am.styles&&(am.styles.color||am.styles.textDecoration)){a.walk(ao,L,"childNodes");L(ao)}r.moveToBookmark(ak);R(r.getRng(C));aa.nodeChanged()}else{U("apply",ae,al)}}}}function B(ad,am,af){var ag=V(ad),ao=ag[0],ak,aj,ac,al=true;function ae(av){var au,at,ar,aq,ax,aw;if(av.nodeType===1&&x(av)){ax=al;al=x(av)==="true";aw=true}au=a.grep(av.childNodes);if(al&&!aw){for(at=0,ar=ag.length;at<ar;at++){if(Z(ag[at],am,av,av)){break}}}if(ao.deep){if(au.length){for(at=0,ar=au.length;at<ar;at++){ae(au[at])}if(aw){al=ax}}}}function ah(aq){var ar;T(n(aq.parentNode).reverse(),function(at){var au;if(!ar&&at.id!="_start"&&at.id!="_end"){au=y(at,ad,am);if(au&&au.split!==false){ar=at}}});return ar}function ab(au,aq,aw,az){var aA,ay,ax,at,av,ar;if(au){ar=au.parentNode;for(aA=aq.parentNode;aA&&aA!=ar;aA=aA.parentNode){ay=c.clone(aA,X);for(av=0;av<ag.length;av++){if(Z(ag[av],am,ay,ay)){ay=0;break}}if(ay){if(ax){ay.appendChild(ax)}if(!at){at=ay}ax=ay}}if(az&&(!ao.mixed||!H(au))){aq=c.split(au,aq)}if(ax){aw.parentNode.insertBefore(ax,aw);at.appendChild(aw)}}return aq}function an(aq){return ab(ah(aq),aq,aq,true)}function ai(at){var ar=c.get(at?"_start":"_end"),aq=ar[at?"firstChild":"lastChild"];if(K(aq)){aq=aq[at?"firstChild":"lastChild"]}c.remove(ar,true);return aq}function ap(aq){var at,au,ar;aq=p(aq,ag,C);if(ao.split){at=M(aq,C);au=M(aq);if(at!=au){if(/^(TR|TD)$/.test(at.nodeName)&&at.firstChild){at=(at.nodeName=="TD"?at.firstChild:at.firstChild.firstChild)||at}at=S(at,"span",{id:"_start","data-mce-type":"bookmark"});au=S(au,"span",{id:"_end","data-mce-type":"bookmark"});an(at);an(au);at=ai(C);au=ai()}else{at=au=an(at)}aq.startContainer=at.parentNode;aq.startOffset=s(at);aq.endContainer=au.parentNode;aq.endOffset=s(au)+1}N.walk(aq,function(av){T(av,function(aw){ae(aw);if(aw.nodeType===1&&aa.dom.getStyle(aw,"text-decoration")==="underline"&&aw.parentNode&&i(aw.parentNode)==="underline"){Z({deep:false,exact:true,inline:"span",styles:{textDecoration:"underline"}},null,aw)}})})}if(af){if(af.nodeType){ac=c.createRng();ac.setStartBefore(af);ac.setEndAfter(af);ap(ac)}else{ap(af)}return}if(!r.isCollapsed()||!ao.inline||c.select("td.mceSelected,th.mceSelected").length){ak=r.getBookmark();ap(r.getRng(C));r.moveToBookmark(ak);if(ao.inline&&k(ad,am,r.getStart())){R(r.getRng(true))}aa.nodeChanged()}else{U("remove",ad,am)}}function F(ac,ae,ad){var ab=V(ac);if(k(ac,ae,ad)&&(!("toggle" in ab[0])||ab[0].toggle)){B(ac,ae,ad)}else{Y(ac,ae,ad)}}function y(ac,ab,ah,af){var ad=V(ab),ai,ag,ae;function aj(an,ap,aq){var am,ao,ak=ap[aq],al;if(ap.onmatch){return ap.onmatch(an,ap,aq)}if(ak){if(ak.length===D){for(am in ak){if(ak.hasOwnProperty(am)){if(aq==="attributes"){ao=c.getAttrib(an,am)}else{ao=O(an,am)}if(af&&!ao&&!ap.exact){return}if((!af||ap.exact)&&!g(ao,q(ak[am],ah))){return}}}}else{for(al=0;al<ak.length;al++){if(aq==="attributes"?c.getAttrib(an,ak[al]):O(an,ak[al])){return ap}}}}return ap}if(ad&&ac){for(ag=0;ag<ad.length;ag++){ai=ad[ag];if(h(ac,ai)&&aj(ac,ai,"attributes")&&aj(ac,ai,"styles")){if(ae=ai.classes){for(ag=0;ag<ae.length;ag++){if(!c.hasClass(ac,ae[ag])){return}}}return ai}}}}function k(ad,af,ae){var ac;function ab(ag){ag=c.getParent(ag,function(ah){return !!y(ah,ad,af,true)});return y(ag,ad,af)}if(ae){return ab(ae)}ae=r.getNode();if(ab(ae)){return C}ac=r.getStart();if(ac!=ae){if(ab(ac)){return C}}return X}function v(ai,ah){var af,ag=[],ae={},ad,ac,ab;af=r.getStart();c.getParent(af,function(al){var ak,aj;for(ak=0;ak<ai.length;ak++){aj=ai[ak];if(!ae[aj]&&y(al,aj,ah)){ae[aj]=true;ag.push(aj)}}},c.getRoot());return ag}function z(af){var ah=V(af),ae,ad,ag,ac,ab;if(ah){ae=r.getStart();ad=n(ae);for(ac=ah.length-1;ac>=0;ac--){ab=ah[ac].selector;if(!ab){return C}for(ag=ad.length-1;ag>=0;ag--){if(c.is(ad[ag],ab)){return C}}}}return X}function J(ab,ad){var ac;if(!P){P={};ac={};aa.onNodeChange.addToTop(function(af,ae,ah){var ag=n(ah),ai={};T(P,function(aj,ak){T(ag,function(al){if(y(al,ak,{},true)){if(!ac[ak]){T(aj,function(am){am(true,{node:al,format:ak,parents:ag})});ac[ak]=aj}ai[ak]=aj;return false}})});T(ac,function(aj,ak){if(!ai[ak]){delete ac[ak];T(aj,function(al){al(false,{node:ah,format:ak,parents:ag})})}})})}T(ab.split(","),function(ae){if(!P[ae]){P[ae]=[]}P[ae].push(ad)});return this}a.extend(this,{get:V,register:l,apply:Y,remove:B,toggle:F,match:k,matchAll:v,matchNode:y,canApply:z,formatChanged:J});j();W();function h(ab,ac){if(g(ab,ac.inline)){return C}if(g(ab,ac.block)){return C}if(ac.selector){return c.is(ab,ac.selector)}}function g(ac,ab){ac=ac||"";ab=ab||"";ac=""+(ac.nodeName||ac);ab=""+(ab.nodeName||ab);return ac.toLowerCase()==ab.toLowerCase()}function O(ac,ab){var ad=c.getStyle(ac,ab);if(ab=="color"||ab=="backgroundColor"){ad=c.toHex(ad)}if(ab=="fontWeight"&&ad==700){ad="bold"}return""+ad}function q(ab,ac){if(typeof(ab)!="string"){ab=ab(ac)}else{if(ac){ab=ab.replace(/%(\w+)/g,function(ae,ad){return ac[ad]||ae})}}return ab}function f(ab){return ab&&ab.nodeType===3&&/^([\t \r\n]+|)$/.test(ab.nodeValue)}function S(ad,ac,ab){var ae=c.create(ac,ab);ad.parentNode.insertBefore(ae,ad);ae.appendChild(ad);return ae}function p(ab,am,ae){var ap,an,ah,al,ad=ab.startContainer,ai=ab.startOffset,ar=ab.endContainer,ak=ab.endOffset;function ao(az){var au,ax,ay,aw,av,at;au=ax=az?ad:ar;av=az?"previousSibling":"nextSibling";at=c.getRoot();if(au.nodeType==3&&!f(au)){if(az?ai>0:ak<au.nodeValue.length){return au}}for(;;){if(!am[0].block_expand&&H(ax)){return ax}for(aw=ax[av];aw;aw=aw[av]){if(!K(aw)&&!f(aw)){return ax}}if(ax.parentNode==at){au=ax;break}ax=ax.parentNode}return au}function ag(at,au){if(au===D){au=at.nodeType===3?at.length:at.childNodes.length}while(at&&at.hasChildNodes()){at=at.childNodes[au];if(at){au=at.nodeType===3?at.length:at.childNodes.length}}return{node:at,offset:au}}if(ad.nodeType==1&&ad.hasChildNodes()){an=ad.childNodes.length-1;ad=ad.childNodes[ai>an?an:ai];if(ad.nodeType==3){ai=0}}if(ar.nodeType==1&&ar.hasChildNodes()){an=ar.childNodes.length-1;ar=ar.childNodes[ak>an?an:ak-1];if(ar.nodeType==3){ak=ar.nodeValue.length}}function aq(au){var at=au;while(at){if(at.nodeType===1&&x(at)){return x(at)==="false"?at:au}at=at.parentNode}return au}function aj(au,ay,aA){var ax,av,az,at;function aw(aC,aE){var aF,aB,aD=aC.nodeValue;if(typeof(aE)=="undefined"){aE=aA?aD.length:0}if(aA){aF=aD.lastIndexOf(" ",aE);aB=aD.lastIndexOf("\u00a0",aE);aF=aF>aB?aF:aB;if(aF!==-1&&!ae){aF++}}else{aF=aD.indexOf(" ",aE);aB=aD.indexOf("\u00a0",aE);aF=aF!==-1&&(aB===-1||aF<aB)?aF:aB}return aF}if(au.nodeType===3){az=aw(au,ay);if(az!==-1){return{container:au,offset:az}}at=au}ax=new t(au,c.getParent(au,H)||aa.getBody());while(av=ax[aA?"prev":"next"]()){if(av.nodeType===3){at=av;az=aw(av);if(az!==-1){return{container:av,offset:az}}}else{if(H(av)){break}}}if(at){if(aA){ay=0}else{ay=at.length}return{container:at,offset:ay}}}function af(au,at){var av,aw,ay,ax;if(au.nodeType==3&&au.nodeValue.length===0&&au[at]){au=au[at]}av=n(au);for(aw=0;aw<av.length;aw++){for(ay=0;ay<am.length;ay++){ax=am[ay];if("collapsed" in ax&&ax.collapsed!==ab.collapsed){continue}if(c.is(av[aw],ax.selector)){return av[aw]}}}return au}function ac(au,at,aw){var av;if(!am[0].wrapper){av=c.getParent(au,am[0].block)}if(!av){av=c.getParent(au.nodeType==3?au.parentNode:au,H)}if(av&&am[0].wrapper){av=n(av,"ul,ol").reverse()[0]||av}if(!av){av=au;while(av[at]&&!H(av[at])){av=av[at];if(g(av,"br")){break}}}return av||au}ad=aq(ad);ar=aq(ar);if(K(ad.parentNode)||K(ad)){ad=K(ad)?ad:ad.parentNode;ad=ad.nextSibling||ad;if(ad.nodeType==3){ai=0}}if(K(ar.parentNode)||K(ar)){ar=K(ar)?ar:ar.parentNode;ar=ar.previousSibling||ar;if(ar.nodeType==3){ak=ar.length}}if(am[0].inline){if(ab.collapsed){al=aj(ad,ai,true);if(al){ad=al.container;ai=al.offset}al=aj(ar,ak);if(al){ar=al.container;ak=al.offset}}ah=ag(ar,ak);if(ah.node){while(ah.node&&ah.offset===0&&ah.node.previousSibling){ah=ag(ah.node.previousSibling)}if(ah.node&&ah.offset>0&&ah.node.nodeType===3&&ah.node.nodeValue.charAt(ah.offset-1)===" "){if(ah.offset>1){ar=ah.node;ar.splitText(ah.offset-1)}}}}if(am[0].inline||am[0].block_expand){if(!am[0].inline||(ad.nodeType!=3||ai===0)){ad=ao(true)}if(!am[0].inline||(ar.nodeType!=3||ak===ar.nodeValue.length)){ar=ao()}}if(am[0].selector&&am[0].expand!==X&&!am[0].inline){ad=af(ad,"previousSibling");ar=af(ar,"nextSibling")}if(am[0].block||am[0].selector){ad=ac(ad,"previousSibling");ar=ac(ar,"nextSibling");if(am[0].block){if(!H(ad)){ad=ao(true)}if(!H(ar)){ar=ao()}}}if(ad.nodeType==1){ai=s(ad);ad=ad.parentNode}if(ar.nodeType==1){ak=s(ar)+1;ar=ar.parentNode}return{startContainer:ad,startOffset:ai,endContainer:ar,endOffset:ak}}function Z(ah,ag,ae,ab){var ad,ac,af;if(!h(ae,ah)){return X}if(ah.remove!="all"){T(ah.styles,function(aj,ai){aj=q(aj,ag);if(typeof(ai)==="number"){ai=aj;ab=0}if(!ab||g(O(ab,ai),aj)){c.setStyle(ae,ai,"")}af=1});if(af&&c.getAttrib(ae,"style")==""){ae.removeAttribute("style");ae.removeAttribute("data-mce-style")}T(ah.attributes,function(ak,ai){var aj;ak=q(ak,ag);if(typeof(ai)==="number"){ai=ak;ab=0}if(!ab||g(c.getAttrib(ab,ai),ak)){if(ai=="class"){ak=c.getAttrib(ae,ai);if(ak){aj="";T(ak.split(/\s+/),function(al){if(/mce\w+/.test(al)){aj+=(aj?" ":"")+al}});if(aj){c.setAttrib(ae,ai,aj);return}}}if(ai=="class"){ae.removeAttribute("className")}if(e.test(ai)){ae.removeAttribute("data-mce-"+ai)}ae.removeAttribute(ai)}});T(ah.classes,function(ai){ai=q(ai,ag);if(!ab||c.hasClass(ab,ai)){c.removeClass(ae,ai)}});ac=c.getAttribs(ae);for(ad=0;ad<ac.length;ad++){if(ac[ad].nodeName.indexOf("_")!==0){return X}}}if(ah.remove!="none"){o(ae,ah);return C}}function o(ad,ae){var ab=ad.parentNode,ac;function af(ah,ag,ai){ah=E(ah,ag,ai);return !ah||(ah.nodeName=="BR"||H(ah))}if(ae.block){if(!m){if(H(ad)&&!H(ab)){if(!af(ad,X)&&!af(ad.firstChild,C,1)){ad.insertBefore(c.create("br"),ad.firstChild)}if(!af(ad,C)&&!af(ad.lastChild,X,1)){ad.appendChild(c.create("br"))}}}else{if(ab==c.getRoot()){if(!ae.list_block||!g(ad,ae.list_block)){T(a.grep(ad.childNodes),function(ag){if(d(m,ag.nodeName.toLowerCase())){if(!ac){ac=S(ag,m)}else{ac.appendChild(ag)}}else{ac=0}})}}}}if(ae.selector&&ae.inline&&!g(ae.inline,ad)){return}c.remove(ad,1)}function E(ac,ab,ad){if(ac){ab=ab?"nextSibling":"previousSibling";for(ac=ad?ac:ac[ab];ac;ac=ac[ab]){if(ac.nodeType==1||!f(ac)){return ac}}}}function K(ab){return ab&&ab.nodeType==1&&ab.getAttribute("data-mce-type")=="bookmark"}function u(af,ae){var ab,ad,ac;function ah(ak,aj){if(ak.nodeName!=aj.nodeName){return X}function ai(am){var an={};T(c.getAttribs(am),function(ao){var ap=ao.nodeName.toLowerCase();if(ap.indexOf("_")!==0&&ap!=="style"){an[ap]=c.getAttrib(am,ap)}});return an}function al(ap,ao){var an,am;for(am in ap){if(ap.hasOwnProperty(am)){an=ao[am];if(an===D){return X}if(ap[am]!=an){return X}delete ao[am]}}for(am in ao){if(ao.hasOwnProperty(am)){return X}}return C}if(!al(ai(ak),ai(aj))){return X}if(!al(c.parseStyle(c.getAttrib(ak,"style")),c.parseStyle(c.getAttrib(aj,"style")))){return X}return C}function ag(aj,ai){for(ad=aj;ad;ad=ad[ai]){if(ad.nodeType==3&&ad.nodeValue.length!==0){return aj}if(ad.nodeType==1&&!K(ad)){return ad}}return aj}if(af&&ae){af=ag(af,"previousSibling");ae=ag(ae,"nextSibling");if(ah(af,ae)){for(ad=af.nextSibling;ad&&ad!=ae;){ac=ad;ad=ad.nextSibling;af.appendChild(ac)}c.remove(ae);T(a.grep(ae.childNodes),function(ai){af.appendChild(ai)});return af}}return ae}function I(ab){return/^(h[1-6]|p|div|pre|address|dl|dt|dd)$/.test(ab)}function M(ac,ag){var ab,af,ad,ae;ab=ac[ag?"startContainer":"endContainer"];af=ac[ag?"startOffset":"endOffset"];if(ab.nodeType==1){ad=ab.childNodes.length-1;if(!ag&&af){af--}ab=ab.childNodes[af>ad?ad:af]}if(ab.nodeType===3&&ag&&af>=ab.nodeValue.length){ab=new t(ab,aa.getBody()).next()||ab}if(ab.nodeType===3&&!ag&&af===0){ab=new t(ab,aa.getBody()).prev()||ab}return ab}function U(ak,ab,ai){var al="_mce_caret",ac=aa.settings.caret_debug;function ad(ap){var ao=c.create("span",{id:al,"data-mce-bogus":true,style:ac?"color:red":""});if(ap){ao.appendChild(aa.getDoc().createTextNode(G))}return ao}function aj(ap,ao){while(ap){if((ap.nodeType===3&&ap.nodeValue!==G)||ap.childNodes.length>1){return false}if(ao&&ap.nodeType===1){ao.push(ap)}ap=ap.firstChild}return true}function ag(ao){while(ao){if(ao.id===al){return ao}ao=ao.parentNode}}function af(ao){var ap;if(ao){ap=new t(ao,ao);for(ao=ap.current();ao;ao=ap.next()){if(ao.nodeType===3){return ao}}}}function ae(aq,ap){var ar,ao;if(!aq){aq=ag(r.getStart());if(!aq){while(aq=c.get(al)){ae(aq,false)}}}else{ao=r.getRng(true);if(aj(aq)){if(ap!==false){ao.setStartBefore(aq);ao.setEndBefore(aq)}c.remove(aq)}else{ar=af(aq);if(ar.nodeValue.charAt(0)===G){ar=ar.deleteData(0,1)}c.remove(aq,1)}r.setRng(ao)}}function ah(){var aq,ao,av,au,ar,ap,at;aq=r.getRng(true);au=aq.startOffset;ap=aq.startContainer;at=ap.nodeValue;ao=ag(r.getStart());if(ao){av=af(ao)}if(at&&au>0&&au<at.length&&/\w/.test(at.charAt(au))&&/\w/.test(at.charAt(au-1))){ar=r.getBookmark();aq.collapse(true);aq=p(aq,V(ab));aq=N.split(aq);Y(ab,ai,aq);r.moveToBookmark(ar)}else{if(!ao||av.nodeValue!==G){ao=ad(true);av=ao.firstChild;aq.insertNode(ao);au=1;Y(ab,ai,ao)}else{Y(ab,ai,ao)}r.setCursorLocation(av,au)}}function am(){var ao=r.getRng(true),ap,ar,av,au,aq,ay,ax=[],at,aw;ap=ao.startContainer;ar=ao.startOffset;aq=ap;if(ap.nodeType==3){if(ar!=ap.nodeValue.length||ap.nodeValue===G){au=true}aq=aq.parentNode}while(aq){if(y(aq,ab,ai)){ay=aq;break}if(aq.nextSibling){au=true}ax.push(aq);aq=aq.parentNode}if(!ay){return}if(au){av=r.getBookmark();ao.collapse(true);ao=p(ao,V(ab),true);ao=N.split(ao);B(ab,ai,ao);r.moveToBookmark(av)}else{aw=ad();aq=aw;for(at=ax.length-1;at>=0;at--){aq.appendChild(c.clone(ax[at],false));aq=aq.firstChild}aq.appendChild(c.doc.createTextNode(G));aq=aq.firstChild;c.insertAfter(aw,ay);r.setCursorLocation(aq,1)}}function an(){var ap,ao,aq;ao=ag(r.getStart());if(ao&&!c.isEmpty(ao)){a.walk(ao,function(ar){if(ar.nodeType==1&&ar.id!==al&&!c.isEmpty(ar)){c.setAttrib(ar,"data-mce-bogus",null)}},"childNodes")}}if(!self._hasCaretEvents){aa.onBeforeGetContent.addToTop(function(){var ao=[],ap;if(aj(ag(r.getStart()),ao)){ap=ao.length;while(ap--){c.setAttrib(ao[ap],"data-mce-bogus","1")}}});a.each("onMouseUp onKeyUp".split(" "),function(ao){aa[ao].addToTop(function(){ae();an()})});aa.onKeyDown.addToTop(function(ao,aq){var ap=aq.keyCode;if(ap==8||ap==37||ap==39){ae(ag(r.getStart()))}an()});r.onSetContent.add(an);self._hasCaretEvents=true}if(ak=="apply"){ah()}else{am()}}function R(ac){var ab=ac.startContainer,ai=ac.startOffset,ae,ah,ag,ad,af;if(ab.nodeType==3&&ai>=ab.nodeValue.length){ai=s(ab);ab=ab.parentNode;ae=true}if(ab.nodeType==1){ad=ab.childNodes;ab=ad[Math.min(ai,ad.length-1)];ah=new t(ab,c.getParent(ab,c.isBlock));if(ai>ad.length-1||ae){ah.next()}for(ag=ah.current();ag;ag=ah.next()){if(ag.nodeType==3&&!f(ag)){af=c.create("a",null,G);ag.parentNode.insertBefore(af,ag);ac.setStart(ag,0);r.setRng(ac);c.remove(af);return}}}}}})(tinymce);tinymce.onAddEditor.add(function(e,a){var d,h,g,c=a.settings;function b(j,i){e.each(i,function(l,k){if(l){g.setStyle(j,k,l)}});g.rename(j,"span")}function f(i,j){g=i.dom;if(c.convert_fonts_to_spans){e.each(g.select("font,u,strike",j.node),function(k){d[k.nodeName.toLowerCase()](a.dom,k)})}}if(c.inline_styles){h=e.explode(c.font_size_legacy_values);d={font:function(j,i){b(i,{backgroundColor:i.style.backgroundColor,color:i.color,fontFamily:i.face,fontSize:h[parseInt(i.size,10)-1]})},u:function(j,i){b(i,{textDecoration:"underline"})},strike:function(j,i){b(i,{textDecoration:"line-through"})}};a.onPreProcess.add(f);a.onSetContent.add(f);a.onInit.add(function(){a.selection.onSetContent.add(f)})}});(function(b){var a=b.dom.TreeWalker;b.EnterKey=function(e){var h=e.dom,d=e.selection,c=e.settings,g=e.undoManager;function f(y){var u=d.getRng(true),C,i,x,t,o,H,n,j,l,s,E,v,z;function B(I){return I&&h.isBlock(I)&&!/^(TD|TH|CAPTION)$/.test(I.nodeName)&&!/^(fixed|absolute)/i.test(I.style.position)&&h.getContentEditable(I)!=="true"}function m(J){var O,M,I,P,N,L=J,K;I=h.createRng();if(J.hasChildNodes()){O=new a(J,J);while(M=O.current()){if(M.nodeType==3){I.setStart(M,0);I.setEnd(M,0);break}if(/^(BR|IMG)$/.test(M.nodeName)){I.setStartBefore(M);I.setEndBefore(M);break}L=M;M=O.next()}if(!M){I.setStart(L,0);I.setEnd(L,0)}}else{if(J.nodeName=="BR"){if(J.nextSibling&&h.isBlock(J.nextSibling)){if(!H||H<9){K=h.create("br");J.parentNode.insertBefore(K,J)}I.setStartBefore(J);I.setEndBefore(J)}else{I.setStartAfter(J);I.setEndAfter(J)}}else{I.setStart(J,0);I.setEnd(J,0)}}d.setRng(I);h.remove(K);N=h.getViewPort(e.getWin());P=h.getPos(J).y;if(P<N.y||P+25>N.y+N.h){e.getWin().scrollTo(0,P<N.y?P:P-N.h+25)}}function q(J){var K=x,M,L,I;M=J||s=="TABLE"?h.create(J||v):o.cloneNode(false);I=M;if(c.keep_styles!==false){do{if(/^(SPAN|STRONG|B|EM|I|FONT|STRIKE|U)$/.test(K.nodeName)){L=K.cloneNode(false);h.setAttrib(L,"id","");if(M.hasChildNodes()){L.appendChild(M.firstChild);M.appendChild(L)}else{I=L;M.appendChild(L)}}}while(K=K.parentNode)}if(!b.isIE){I.innerHTML="<br>"}return M}function p(L){var K,J,I;if(x.nodeType==3&&(L?t>0:t<x.nodeValue.length)){return false}if(x.parentNode==o&&z&&!L){return true}if(x.nodeName==="TABLE"||(x.previousSibling&&x.previousSibling.nodeName=="TABLE")){return(z&&!L)||(!z&&L)}K=new a(x,o);while(J=(L?K.prev():K.next())){if(J.nodeType===1){if(J.getAttribute("data-mce-bogus")){continue}I=J.nodeName.toLowerCase();if(I==="IMG"){return false}}else{if(J.nodeType===3&&!/^[ \t\r\n]*$/.test(J.nodeValue)){return false}}}return true}function k(I,O){var P,N,K,M,L,J=v||"P";N=h.getParent(I,h.isBlock);if(!N||!B(N)){N=N||i;if(!N.hasChildNodes()){P=h.create(J);N.appendChild(P);u.setStart(P,0);u.setEnd(P,0);return P}M=I;while(M.parentNode!=N){M=M.parentNode}while(M&&!h.isBlock(M)){K=M;M=M.previousSibling}if(K){P=h.create(J);K.parentNode.insertBefore(P,K);M=K;while(M&&!h.isBlock(M)){L=M.nextSibling;P.appendChild(M);M=L}u.setStart(I,O);u.setEnd(I,O)}}return I}function D(){function I(K){var J=l[K?"firstChild":"lastChild"];while(J){if(J.nodeType==1){break}J=J[K?"nextSibling":"previousSibling"]}return J===o}n=v?q(v):h.create("BR");if(I(true)&&I()){h.replace(n,l)}else{if(I(true)){l.parentNode.insertBefore(n,l)}else{if(I()){h.insertAfter(n,l)}else{C=u.cloneRange();C.setStartAfter(o);C.setEndAfter(l);j=C.extractContents();h.insertAfter(j,l);h.insertAfter(n,l)}}}h.remove(o);m(n);g.add()}function A(){var J=new a(x,o),I;while(I=J.current()){if(I.nodeName=="BR"){return true}I=J.next()}}function G(){var J,I;if(x&&x.nodeType==3&&t>=x.nodeValue.length){if(!b.isIE&&!A()){J=h.create("br");u.insertNode(J);u.setStartAfter(J);u.setEndAfter(J);I=true}}J=h.create("br");u.insertNode(J);if(b.isIE&&s=="PRE"&&(!H||H<8)){J.parentNode.insertBefore(h.doc.createTextNode("\r"),J)}if(!I){u.setStartAfter(J);u.setEndAfter(J)}else{u.setStartBefore(J);u.setEndBefore(J)}d.setRng(u);g.add()}function r(I){do{if(I.nodeType===3){I.nodeValue=I.nodeValue.replace(/^[\r\n]+/,"")}I=I.firstChild}while(I)}function F(K){var I=h.getRoot(),J,L;J=K;while(J!==I&&h.getContentEditable(J)!=="false"){if(h.getContentEditable(J)==="true"){L=J}J=J.parentNode}return J!==I?L:I}if(!u.collapsed){e.execCommand("Delete");return}if(y.isDefaultPrevented()){return}x=u.startContainer;t=u.startOffset;v=c.forced_root_block;v=v?v.toUpperCase():"";H=h.doc.documentMode;if(x.nodeType==1&&x.hasChildNodes()){z=t>x.childNodes.length-1;x=x.childNodes[Math.min(t,x.childNodes.length-1)]||x;t=0}i=F(x);if(!i){return}g.beforeChange();if(!h.isBlock(i)&&i!=h.getRoot()){if(!v||y.shiftKey){G()}return}if((v&&!y.shiftKey)||(!v&&y.shiftKey)){x=k(x,t)}o=h.getParent(x,h.isBlock);l=o?h.getParent(o.parentNode,h.isBlock):null;s=o?o.nodeName.toUpperCase():"";E=l?l.nodeName.toUpperCase():"";if(s=="LI"&&h.isEmpty(o)){if(/^(UL|OL|LI)$/.test(l.parentNode.nodeName)){return false}D();return}if(s=="PRE"&&c.br_in_pre!==false){if(!y.shiftKey){G();return}}else{if((!v&&!y.shiftKey&&s!="LI")||(v&&y.shiftKey)){G();return}}v=v||"P";if(p()){if(/^(H[1-6]|PRE)$/.test(s)&&E!="HGROUP"){n=q(v)}else{n=q()}if(c.end_container_on_empty_block&&B(l)&&h.isEmpty(o)){n=h.split(l,o)}else{h.insertAfter(n,o)}}else{if(p(true)){n=o.parentNode.insertBefore(q(),o)}else{C=u.cloneRange();C.setEndAfter(o);j=C.extractContents();r(j);n=j.firstChild;h.insertAfter(j,o)}}h.setAttrib(n,"id","");m(n);g.add()}e.onKeyDown.add(function(j,i){if(i.keyCode==13){if(f(i)!==false){i.preventDefault()}}})}})(tinymce); \ No newline at end of file
+(function(e){var a=/^\s*|\s*$/g,b,d="B".replace(/A(.)|B/,"$1")==="$1";var c={majorVersion:"3",minorVersion:"5.6",releaseDate:"2012-07-26",_init:function(){var s=this,q=document,o=navigator,g=o.userAgent,m,f,l,k,j,r;s.isOpera=e.opera&&opera.buildNumber;s.isWebKit=/WebKit/.test(g);s.isIE=!s.isWebKit&&!s.isOpera&&(/MSIE/gi).test(g)&&(/Explorer/gi).test(o.appName);s.isIE6=s.isIE&&/MSIE [56]/.test(g);s.isIE7=s.isIE&&/MSIE [7]/.test(g);s.isIE8=s.isIE&&/MSIE [8]/.test(g);s.isIE9=s.isIE&&/MSIE [9]/.test(g);s.isGecko=!s.isWebKit&&/Gecko/.test(g);s.isMac=g.indexOf("Mac")!=-1;s.isAir=/adobeair/i.test(g);s.isIDevice=/(iPad|iPhone)/.test(g);s.isIOS5=s.isIDevice&&g.match(/AppleWebKit\/(\d*)/)[1]>=534;if(e.tinyMCEPreInit){s.suffix=tinyMCEPreInit.suffix;s.baseURL=tinyMCEPreInit.base;s.query=tinyMCEPreInit.query;return}s.suffix="";f=q.getElementsByTagName("base");for(m=0;m<f.length;m++){r=f[m].href;if(r){if(/^https?:\/\/[^\/]+$/.test(r)){r+="/"}k=r?r.match(/.*\//)[0]:""}}function h(i){if(i.src&&/tiny_mce(|_gzip|_jquery|_prototype|_full)(_dev|_src)?.js/.test(i.src)){if(/_(src|dev)\.js/g.test(i.src)){s.suffix="_src"}if((j=i.src.indexOf("?"))!=-1){s.query=i.src.substring(j+1)}s.baseURL=i.src.substring(0,i.src.lastIndexOf("/"));if(k&&s.baseURL.indexOf("://")==-1&&s.baseURL.indexOf("/")!==0){s.baseURL=k+s.baseURL}return s.baseURL}return null}f=q.getElementsByTagName("script");for(m=0;m<f.length;m++){if(h(f[m])){return}}l=q.getElementsByTagName("head")[0];if(l){f=l.getElementsByTagName("script");for(m=0;m<f.length;m++){if(h(f[m])){return}}}return},is:function(g,f){if(!f){return g!==b}if(f=="array"&&(g.hasOwnProperty&&g instanceof Array)){return true}return typeof(g)==f},makeMap:function(f,j,h){var g;f=f||[];j=j||",";if(typeof(f)=="string"){f=f.split(j)}h=h||{};g=f.length;while(g--){h[f[g]]={}}return h},each:function(i,f,h){var j,g;if(!i){return 0}h=h||i;if(i.length!==b){for(j=0,g=i.length;j<g;j++){if(f.call(h,i[j],j,i)===false){return 0}}}else{for(j in i){if(i.hasOwnProperty(j)){if(f.call(h,i[j],j,i)===false){return 0}}}}return 1},map:function(g,h){var i=[];c.each(g,function(f){i.push(h(f))});return i},grep:function(g,h){var i=[];c.each(g,function(f){if(!h||h(f)){i.push(f)}});return i},inArray:function(g,h){var j,f;if(g){for(j=0,f=g.length;j<f;j++){if(g[j]===h){return j}}}return -1},extend:function(n,k){var j,f,h,g=arguments,m;for(j=1,f=g.length;j<f;j++){k=g[j];for(h in k){if(k.hasOwnProperty(h)){m=k[h];if(m!==b){n[h]=m}}}}return n},trim:function(f){return(f?""+f:"").replace(a,"")},create:function(o,f,j){var n=this,g,i,k,l,h,m=0;o=/^((static) )?([\w.]+)(:([\w.]+))?/.exec(o);k=o[3].match(/(^|\.)(\w+)$/i)[2];i=n.createNS(o[3].replace(/\.\w+$/,""),j);if(i[k]){return}if(o[2]=="static"){i[k]=f;if(this.onCreate){this.onCreate(o[2],o[3],i[k])}return}if(!f[k]){f[k]=function(){};m=1}i[k]=f[k];n.extend(i[k].prototype,f);if(o[5]){g=n.resolve(o[5]).prototype;l=o[5].match(/\.(\w+)$/i)[1];h=i[k];if(m){i[k]=function(){return g[l].apply(this,arguments)}}else{i[k]=function(){this.parent=g[l];return h.apply(this,arguments)}}i[k].prototype[k]=i[k];n.each(g,function(p,q){i[k].prototype[q]=g[q]});n.each(f,function(p,q){if(g[q]){i[k].prototype[q]=function(){this.parent=g[q];return p.apply(this,arguments)}}else{if(q!=k){i[k].prototype[q]=p}}})}n.each(f["static"],function(p,q){i[k][q]=p});if(this.onCreate){this.onCreate(o[2],o[3],i[k].prototype)}},walk:function(i,h,j,g){g=g||this;if(i){if(j){i=i[j]}c.each(i,function(k,f){if(h.call(g,k,f,j)===false){return false}c.walk(k,h,j,g)})}},createNS:function(j,h){var g,f;h=h||e;j=j.split(".");for(g=0;g<j.length;g++){f=j[g];if(!h[f]){h[f]={}}h=h[f]}return h},resolve:function(j,h){var g,f;h=h||e;j=j.split(".");for(g=0,f=j.length;g<f;g++){h=h[j[g]];if(!h){break}}return h},addUnload:function(j,i){var h=this,g;g=function(){var f=h.unloads,l,m;if(f){for(m in f){l=f[m];if(l&&l.func){l.func.call(l.scope,1)}}if(e.detachEvent){e.detachEvent("onbeforeunload",k);e.detachEvent("onunload",g)}else{if(e.removeEventListener){e.removeEventListener("unload",g,false)}}h.unloads=l=f=w=g=0;if(e.CollectGarbage){CollectGarbage()}}};function k(){var l=document;function f(){l.detachEvent("onstop",f);if(g){g()}l=0}if(l.readyState=="interactive"){if(l){l.attachEvent("onstop",f)}e.setTimeout(function(){if(l){l.detachEvent("onstop",f)}},0)}}j={func:j,scope:i||this};if(!h.unloads){if(e.attachEvent){e.attachEvent("onunload",g);e.attachEvent("onbeforeunload",k)}else{if(e.addEventListener){e.addEventListener("unload",g,false)}}h.unloads=[j]}else{h.unloads.push(j)}return j},removeUnload:function(i){var g=this.unloads,h=null;c.each(g,function(j,f){if(j&&j.func==i){g.splice(f,1);h=i;return false}});return h},explode:function(f,g){if(!f||c.is(f,"array")){return f}return c.map(f.split(g||","),c.trim)},_addVer:function(g){var f;if(!this.query){return g}f=(g.indexOf("?")==-1?"?":"&")+this.query;if(g.indexOf("#")==-1){return g+f}return g.replace("#",f+"#")},_replace:function(h,f,g){if(d){return g.replace(h,function(){var l=f,j=arguments,k;for(k=0;k<j.length-2;k++){if(j[k]===b){l=l.replace(new RegExp("\\$"+k,"g"),"")}else{l=l.replace(new RegExp("\\$"+k,"g"),j[k])}}return l})}return g.replace(h,f)}};c._init();e.tinymce=e.tinyMCE=c})(window);tinymce.create("tinymce.util.Dispatcher",{scope:null,listeners:null,inDispatch:false,Dispatcher:function(a){this.scope=a||this;this.listeners=[]},add:function(b,a){this.listeners.push({cb:b,scope:a||this.scope});return b},addToTop:function(d,b){var a=this,c={cb:d,scope:b||a.scope};if(a.inDispatch){a.listeners=[c].concat(a.listeners)}else{a.listeners.unshift(c)}return d},remove:function(c){var b=this.listeners,a=null;tinymce.each(b,function(e,d){if(c==e.cb){a=e;b.splice(d,1);return false}});return a},dispatch:function(){var a=this,e,b=arguments,c,d=a.listeners,f;a.inDispatch=true;for(c=0;c<d.length;c++){f=d[c];e=f.cb.apply(f.scope,b.length>0?b:[f.scope]);if(e===false){break}}a.inDispatch=false;return e}});(function(){var a=tinymce.each;tinymce.create("tinymce.util.URI",{URI:function(e,g){var f=this,i,d,c,h;e=tinymce.trim(e);g=f.settings=g||{};if(/^([\w\-]+):([^\/]{2})/i.test(e)||/^\s*#/.test(e)){f.source=e;return}if(e.indexOf("/")===0&&e.indexOf("//")!==0){e=(g.base_uri?g.base_uri.protocol||"http":"http")+"://mce_host"+e}if(!/^[\w\-]*:?\/\//.test(e)){h=g.base_uri?g.base_uri.path:new tinymce.util.URI(location.href).directory;e=((g.base_uri&&g.base_uri.protocol)||"http")+"://mce_host"+f.toAbsPath(h,e)}e=e.replace(/@@/g,"(mce_at)");e=/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@\/]*):?([^:@\/]*))?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/.exec(e);a(["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],function(b,j){var k=e[j];if(k){k=k.replace(/\(mce_at\)/g,"@@")}f[b]=k});c=g.base_uri;if(c){if(!f.protocol){f.protocol=c.protocol}if(!f.userInfo){f.userInfo=c.userInfo}if(!f.port&&f.host==="mce_host"){f.port=c.port}if(!f.host||f.host==="mce_host"){f.host=c.host}f.source=""}},setPath:function(c){var b=this;c=/^(.*?)\/?(\w+)?$/.exec(c);b.path=c[0];b.directory=c[1];b.file=c[2];b.source="";b.getURI()},toRelative:function(b){var d=this,f;if(b==="./"){return b}b=new tinymce.util.URI(b,{base_uri:d});if((b.host!="mce_host"&&d.host!=b.host&&b.host)||d.port!=b.port||d.protocol!=b.protocol){return b.getURI()}var c=d.getURI(),e=b.getURI();if(c==e||(c.charAt(c.length-1)=="/"&&c.substr(0,c.length-1)==e)){return c}f=d.toRelPath(d.path,b.path);if(b.query){f+="?"+b.query}if(b.anchor){f+="#"+b.anchor}return f},toAbsolute:function(b,c){b=new tinymce.util.URI(b,{base_uri:this});return b.getURI(this.host==b.host&&this.protocol==b.protocol?c:0)},toRelPath:function(g,h){var c,f=0,d="",e,b;g=g.substring(0,g.lastIndexOf("/"));g=g.split("/");c=h.split("/");if(g.length>=c.length){for(e=0,b=g.length;e<b;e++){if(e>=c.length||g[e]!=c[e]){f=e+1;break}}}if(g.length<c.length){for(e=0,b=c.length;e<b;e++){if(e>=g.length||g[e]!=c[e]){f=e+1;break}}}if(f===1){return h}for(e=0,b=g.length-(f-1);e<b;e++){d+="../"}for(e=f-1,b=c.length;e<b;e++){if(e!=f-1){d+="/"+c[e]}else{d+=c[e]}}return d},toAbsPath:function(e,f){var c,b=0,h=[],d,g;d=/\/$/.test(f)?"/":"";e=e.split("/");f=f.split("/");a(e,function(i){if(i){h.push(i)}});e=h;for(c=f.length-1,h=[];c>=0;c--){if(f[c].length===0||f[c]==="."){continue}if(f[c]===".."){b++;continue}if(b>0){b--;continue}h.push(f[c])}c=e.length-b;if(c<=0){g=h.reverse().join("/")}else{g=e.slice(0,c).join("/")+"/"+h.reverse().join("/")}if(g.indexOf("/")!==0){g="/"+g}if(d&&g.lastIndexOf("/")!==g.length-1){g+=d}return g},getURI:function(d){var c,b=this;if(!b.source||d){c="";if(!d){if(b.protocol){c+=b.protocol+"://"}if(b.userInfo){c+=b.userInfo+"@"}if(b.host){c+=b.host}if(b.port){c+=":"+b.port}}if(b.path){c+=b.path}if(b.query){c+="?"+b.query}if(b.anchor){c+="#"+b.anchor}b.source=c}return b.source}})})();(function(){var a=tinymce.each;tinymce.create("static tinymce.util.Cookie",{getHash:function(d){var b=this.get(d),c;if(b){a(b.split("&"),function(e){e=e.split("=");c=c||{};c[unescape(e[0])]=unescape(e[1])})}return c},setHash:function(j,b,g,f,i,c){var h="";a(b,function(e,d){h+=(!h?"":"&")+escape(d)+"="+escape(e)});this.set(j,h,g,f,i,c)},get:function(i){var h=document.cookie,g,f=i+"=",d;if(!h){return}d=h.indexOf("; "+f);if(d==-1){d=h.indexOf(f);if(d!==0){return null}}else{d+=2}g=h.indexOf(";",d);if(g==-1){g=h.length}return unescape(h.substring(d+f.length,g))},set:function(i,b,g,f,h,c){document.cookie=i+"="+escape(b)+((g)?"; expires="+g.toGMTString():"")+((f)?"; path="+escape(f):"")+((h)?"; domain="+h:"")+((c)?"; secure":"")},remove:function(c,e,d){var b=new Date();b.setTime(b.getTime()-1000);this.set(c,"",b,e,d)}})})();(function(){function serialize(o,quote){var i,v,t,name;quote=quote||'"';if(o==null){return"null"}t=typeof o;if(t=="string"){v="\bb\tt\nn\ff\rr\"\"''\\\\";return quote+o.replace(/([\u0080-\uFFFF\x00-\x1f\"\'\\])/g,function(a,b){if(quote==='"'&&a==="'"){return a}i=v.indexOf(b);if(i+1){return"\\"+v.charAt(i+1)}a=b.charCodeAt().toString(16);return"\\u"+"0000".substring(a.length)+a})+quote}if(t=="object"){if(o.hasOwnProperty&&o instanceof Array){for(i=0,v="[";i<o.length;i++){v+=(i>0?",":"")+serialize(o[i],quote)}return v+"]"}v="{";for(name in o){if(o.hasOwnProperty(name)){v+=typeof o[name]!="function"?(v.length>1?","+quote:quote)+name+quote+":"+serialize(o[name],quote):""}}return v+"}"}return""+o}tinymce.util.JSON={serialize:serialize,parse:function(s){try{return eval("("+s+")")}catch(ex){}}}})();tinymce.create("static tinymce.util.XHR",{send:function(g){var a,e,b=window,h=0;function f(){if(!g.async||a.readyState==4||h++>10000){if(g.success&&h<10000&&a.status==200){g.success.call(g.success_scope,""+a.responseText,a,g)}else{if(g.error){g.error.call(g.error_scope,h>10000?"TIMED_OUT":"GENERAL",a,g)}}a=null}else{b.setTimeout(f,10)}}g.scope=g.scope||this;g.success_scope=g.success_scope||g.scope;g.error_scope=g.error_scope||g.scope;g.async=g.async===false?false:true;g.data=g.data||"";function d(i){a=0;try{a=new ActiveXObject(i)}catch(c){}return a}a=b.XMLHttpRequest?new XMLHttpRequest():d("Microsoft.XMLHTTP")||d("Msxml2.XMLHTTP");if(a){if(a.overrideMimeType){a.overrideMimeType(g.content_type)}a.open(g.type||(g.data?"POST":"GET"),g.url,g.async);if(g.content_type){a.setRequestHeader("Content-Type",g.content_type)}a.setRequestHeader("X-Requested-With","XMLHttpRequest");a.send(g.data);if(!g.async){return f()}e=b.setTimeout(f,10)}}});(function(){var c=tinymce.extend,b=tinymce.util.JSON,a=tinymce.util.XHR;tinymce.create("tinymce.util.JSONRequest",{JSONRequest:function(d){this.settings=c({},d);this.count=0},send:function(f){var e=f.error,d=f.success;f=c(this.settings,f);f.success=function(h,g){h=b.parse(h);if(typeof(h)=="undefined"){h={error:"JSON Parse error."}}if(h.error){e.call(f.error_scope||f.scope,h.error,g)}else{d.call(f.success_scope||f.scope,h.result)}};f.error=function(h,g){if(e){e.call(f.error_scope||f.scope,h,g)}};f.data=b.serialize({id:f.id||"c"+(this.count++),method:f.method,params:f.params});f.content_type="application/json";a.send(f)},"static":{sendRPC:function(d){return new tinymce.util.JSONRequest().send(d)}}})}());(function(a){a.VK={BACKSPACE:8,DELETE:46,DOWN:40,ENTER:13,LEFT:37,RIGHT:39,SPACEBAR:32,TAB:9,UP:38,modifierPressed:function(b){return b.shiftKey||b.ctrlKey||b.altKey},metaKeyPressed:function(b){return a.isMac?b.metaKey:b.ctrlKey&&!b.altKey}}})(tinymce);tinymce.util.Quirks=function(d){var m=tinymce.VK,t=m.BACKSPACE,u=m.DELETE,p=d.dom,E=d.selection,s=d.settings;function c(I,H){try{d.getDoc().execCommand(I,false,H)}catch(G){}}function z(){var G=d.getDoc().documentMode;return G?G:6}function j(){function G(J){var H,L,I,K;H=E.getRng();L=p.getParent(H.startContainer,p.isBlock);if(J){L=p.getNext(L,p.isBlock)}if(L){I=L.firstChild;while(I&&I.nodeType==3&&I.nodeValue.length===0){I=I.nextSibling}if(I&&I.nodeName==="SPAN"){K=I.cloneNode(false)}}d.getDoc().execCommand(J?"ForwardDelete":"Delete",false,null);L=p.getParent(H.startContainer,p.isBlock);tinymce.each(p.select("span.Apple-style-span,font.Apple-style-span",L),function(M){var N=E.getBookmark();if(K){p.replace(K.cloneNode(false),M,true)}else{p.remove(M,true)}E.moveToBookmark(N)})}d.onKeyDown.add(function(H,J){var I;I=J.keyCode==u;if(!J.isDefaultPrevented()&&(I||J.keyCode==t)&&!m.modifierPressed(J)){J.preventDefault();G(I)}});d.addCommand("Delete",function(){G()})}function F(){function G(J){var I=p.create("body");var K=J.cloneContents();I.appendChild(K);return E.serializer.serialize(I,{format:"html"})}function H(I){var K=G(I);var L=p.createRng();L.selectNode(d.getBody());var J=G(L);return K===J}d.onKeyDown.add(function(J,L){var K=L.keyCode,I;if(!L.isDefaultPrevented()&&(K==u||K==t)){I=J.selection.isCollapsed();if(I&&!p.isEmpty(J.getBody())){return}if(tinymce.isIE&&!I){return}if(!I&&!H(J.selection.getRng())){return}J.setContent("");J.selection.setCursorLocation(J.getBody(),0);J.nodeChanged()}})}function x(){d.onKeyDown.add(function(G,H){if(H.keyCode==65&&m.metaKeyPressed(H)){H.preventDefault();G.execCommand("SelectAll")}})}function y(){if(!d.settings.content_editable){p.bind(d.getDoc(),"focusin",function(G){E.setRng(E.getRng())});p.bind(d.getDoc(),"mousedown",function(G){if(G.target==d.getDoc().documentElement){d.getWin().focus();E.setRng(E.getRng())}})}}function n(){d.onKeyDown.add(function(G,J){if(!J.isDefaultPrevented()&&J.keyCode===t){if(E.isCollapsed()&&E.getRng(true).startOffset===0){var I=E.getNode();var H=I.previousSibling;if(H&&H.nodeName&&H.nodeName.toLowerCase()==="hr"){p.remove(H);tinymce.dom.Event.cancel(J)}}}})}function b(){if(!Range.prototype.getClientRects){d.onMouseDown.add(function(H,I){if(I.target.nodeName==="HTML"){var G=H.getBody();G.blur();setTimeout(function(){G.focus()},0)}})}}function B(){d.onClick.add(function(G,H){H=H.target;if(/^(IMG|HR)$/.test(H.nodeName)){E.getSel().setBaseAndExtent(H,0,H,1)}if(H.nodeName=="A"&&p.hasClass(H,"mceItemAnchor")){E.select(H)}G.nodeChanged()})}function C(){function H(){var J=p.getAttribs(E.getStart().cloneNode(false));return function(){var K=E.getStart();if(K!==d.getBody()){p.setAttrib(K,"style",null);tinymce.each(J,function(L){K.setAttributeNode(L.cloneNode(true))})}}}function G(){return !E.isCollapsed()&&p.getParent(E.getStart(),p.isBlock)!=p.getParent(E.getEnd(),p.isBlock)}function I(J,K){K.preventDefault();return false}d.onKeyPress.add(function(J,L){var K;if((L.keyCode==8||L.keyCode==46)&&G()){K=H();J.getDoc().execCommand("delete",false,null);K();L.preventDefault();return false}});p.bind(d.getDoc(),"cut",function(K){var J;if(G()){J=H();d.onKeyUp.addToTop(I);setTimeout(function(){J();d.onKeyUp.remove(I)},0)}})}function k(){var H,G;p.bind(d.getDoc(),"selectionchange",function(){if(G){clearTimeout(G);G=0}G=window.setTimeout(function(){var I=E.getRng();if(!H||!tinymce.dom.RangeUtils.compareRanges(I,H)){d.nodeChanged();H=I}},50)})}function D(){document.body.setAttribute("role","application")}function A(){d.onKeyDown.add(function(G,I){if(!I.isDefaultPrevented()&&I.keyCode===t){if(E.isCollapsed()&&E.getRng(true).startOffset===0){var H=E.getNode().previousSibling;if(H&&H.nodeName&&H.nodeName.toLowerCase()==="table"){return tinymce.dom.Event.cancel(I)}}}})}function h(){if(z()>7){return}c("RespectVisibilityInDesign",true);d.contentStyles.push(".mceHideBrInPre pre br {display: none}");p.addClass(d.getBody(),"mceHideBrInPre");d.parser.addNodeFilter("pre",function(G,I){var J=G.length,L,H,M,K;while(J--){L=G[J].getAll("br");H=L.length;while(H--){M=L[H];K=M.prev;if(K&&K.type===3&&K.value.charAt(K.value-1)!="\n"){K.value+="\n"}else{M.parent.insert(new tinymce.html.Node("#text",3),M,true).value="\n"}}}});d.serializer.addNodeFilter("pre",function(G,I){var J=G.length,L,H,M,K;while(J--){L=G[J].getAll("br");H=L.length;while(H--){M=L[H];K=M.prev;if(K&&K.type==3){K.value=K.value.replace(/\r?\n$/,"")}}}})}function f(){p.bind(d.getBody(),"mouseup",function(I){var H,G=E.getNode();if(G.nodeName=="IMG"){if(H=p.getStyle(G,"width")){p.setAttrib(G,"width",H.replace(/[^0-9%]+/g,""));p.setStyle(G,"width","")}if(H=p.getStyle(G,"height")){p.setAttrib(G,"height",H.replace(/[^0-9%]+/g,""));p.setStyle(G,"height","")}}})}function r(){d.onKeyDown.add(function(M,N){var L,G,H,J,K,O,I;L=N.keyCode==u;if(!N.isDefaultPrevented()&&(L||N.keyCode==t)&&!m.modifierPressed(N)){G=E.getRng();H=G.startContainer;J=G.startOffset;I=G.collapsed;if(H.nodeType==3&&H.nodeValue.length>0&&((J===0&&!I)||(I&&J===(L?0:1)))){nonEmptyElements=M.schema.getNonEmptyElements();N.preventDefault();K=p.create("br",{id:"__tmp"});H.parentNode.insertBefore(K,H);M.getDoc().execCommand(L?"ForwardDelete":"Delete",false,null);H=E.getRng().startContainer;O=H.previousSibling;if(O&&O.nodeType==1&&!p.isBlock(O)&&p.isEmpty(O)&&!nonEmptyElements[O.nodeName.toLowerCase()]){p.remove(O)}p.remove("__tmp")}}})}function e(){d.onKeyDown.add(function(K,L){var I,H,M,G,J;if(L.isDefaultPrevented()||L.keyCode!=m.BACKSPACE){return}I=E.getRng();H=I.startContainer;M=I.startOffset;G=p.getRoot();J=H;if(!I.collapsed||M!==0){return}while(J&&J.parentNode&&J.parentNode.firstChild==J&&J.parentNode!=G){J=J.parentNode}if(J.tagName==="BLOCKQUOTE"){K.formatter.toggle("blockquote",null,J);I.setStart(H,0);I.setEnd(H,0);E.setRng(I);E.collapse(false)}})}function l(){function G(){d._refreshContentEditable();c("StyleWithCSS",false);c("enableInlineTableEditing",false);if(!s.object_resizing){c("enableObjectResizing",false)}}if(!s.readonly){d.onBeforeExecCommand.add(G);d.onMouseDown.add(G)}}function o(){function G(H,I){tinymce.each(p.select("a"),function(L){var J=L.parentNode,K=p.getRoot();if(J.lastChild===L){while(J&&!p.isBlock(J)){if(J.parentNode.lastChild!==J||J===K){return}J=J.parentNode}p.add(J,"br",{"data-mce-bogus":1})}})}d.onExecCommand.add(function(H,I){if(I==="CreateLink"){G(H)}});d.onSetContent.add(E.onSetContent.add(G))}function v(){if(s.forced_root_block){d.onInit.add(function(){c("DefaultParagraphSeparator",s.forced_root_block)})}}function a(){function G(I,H){if(!I||!H.initial){d.execCommand("mceRepaint")}}d.onUndo.add(G);d.onRedo.add(G);d.onSetContent.add(G)}function q(){d.onKeyDown.add(function(H,I){var G;if(!I.isDefaultPrevented()&&I.keyCode==t){G=H.getDoc().selection.createRange();if(G&&G.item){I.preventDefault();H.undoManager.beforeChange();p.remove(G.item(0));H.undoManager.add()}}})}function i(){var G;if(z()>=10){G="";tinymce.each("p div h1 h2 h3 h4 h5 h6".split(" "),function(H,I){G+=(I>0?",":"")+H+":empty"});d.contentStyles.push(G+"{padding-right: 1px !important}")}}function g(){var I,H,Y,G,T,W,U,X,J,K,V,R,Q,S=document,O=d.getDoc();if(!s.object_resizing||s.webkit_fake_resize===false){return}c("enableObjectResizing",false);V={n:[0.5,0,0,-1],e:[1,0.5,1,0],s:[0.5,1,0,1],w:[0,0.5,-1,0],nw:[0,0,-1,-1],ne:[1,0,1,-1],se:[1,1,1,1],sw:[0,1,-1,1]};function M(ac){var ab,aa;ab=ac.screenX-W;aa=ac.screenY-U;R=ab*T[2]+X;Q=aa*T[3]+J;R=R<5?5:R;Q=Q<5?5:Q;if(m.modifierPressed(ac)||(Y.nodeName=="IMG"&&T[2]*T[3]!==0)){R=Math.round(Q/K);Q=Math.round(R*K)}p.setStyles(G,{width:R,height:Q});if(T[2]<0&&G.clientWidth<=R){p.setStyle(G,"left",I+(X-R))}if(T[3]<0&&G.clientHeight<=Q){p.setStyle(G,"top",H+(J-Q))}}function Z(){function aa(ab,ac){if(ac){if(Y.style[ab]||!d.schema.isValid(Y.nodeName.toLowerCase(),ab)){p.setStyle(Y,ab,ac)}else{p.setAttrib(Y,ab,ac)}}}aa("width",R);aa("height",Q);p.unbind(O,"mousemove",M);p.unbind(O,"mouseup",Z);if(S!=O){p.unbind(S,"mousemove",M);p.unbind(S,"mouseup",Z)}p.remove(G);L(Y)}function L(ad){var ab,ac,aa;N();ab=p.getPos(ad);I=ab.x;H=ab.y;ac=ad.offsetWidth;aa=ad.offsetHeight;if(Y!=ad){Y=ad;R=Q=0}tinymce.each(V,function(ag,ae){var af;af=p.get("mceResizeHandle"+ae);if(!af){af=p.add(O.documentElement,"div",{id:"mceResizeHandle"+ae,"class":"mceResizeHandle",style:"cursor:"+ae+"-resize; margin:0; padding:0"});p.bind(af,"mousedown",function(ah){ah.preventDefault();Z();W=ah.screenX;U=ah.screenY;X=Y.clientWidth;J=Y.clientHeight;K=J/X;T=ag;G=Y.cloneNode(true);p.addClass(G,"mceClonedResizable");p.setStyles(G,{left:I,top:H,margin:0});O.documentElement.appendChild(G);p.bind(O,"mousemove",M);p.bind(O,"mouseup",Z);if(S!=O){p.bind(S,"mousemove",M);p.bind(S,"mouseup",Z)}})}else{p.show(af)}p.setStyles(af,{left:(ac*ag[0]+I)-(af.offsetWidth/2),top:(aa*ag[1]+H)-(af.offsetHeight/2)})});if(!tinymce.isOpera&&Y.nodeName=="IMG"){Y.setAttribute("data-mce-selected","1")}}function N(){if(Y){Y.removeAttribute("data-mce-selected")}for(var aa in V){p.hide("mceResizeHandle"+aa)}}d.contentStyles.push(".mceResizeHandle {position: absolute;border: 1px solid black;background: #FFF;width: 5px;height: 5px;z-index: 10000}.mceResizeHandle:hover {background: #000}img[data-mce-selected] {outline: 1px solid black}img.mceClonedResizable, table.mceClonedResizable {position: absolute;outline: 1px dashed black;opacity: .5;z-index: 10000}");function P(){var aa=p.getParent(E.getNode(),"table,img");tinymce.each(p.select("img[data-mce-selected]"),function(ab){ab.removeAttribute("data-mce-selected")});if(aa){L(aa)}else{N()}}d.onNodeChange.add(P);p.bind(O,"selectionchange",P);d.serializer.addAttributeFilter("data-mce-selected",function(aa,ab){var ac=aa.length;while(ac--){aa[ac].attr(ab,null)}})}A();e();F();if(tinymce.isWebKit){r();j();y();B();v();if(tinymce.isIDevice){k()}else{g();x()}}if(tinymce.isIE){n();D();h();f();q();i()}if(tinymce.isGecko){n();b();C();l();o();a()}if(tinymce.isOpera){g()}};(function(j){var a,g,d,k=/[&<>\"\u007E-\uD7FF\uE000-\uFFEF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,b=/[<>&\u007E-\uD7FF\uE000-\uFFEF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,f=/[<>&\"\']/g,c=/&(#x|#)?([\w]+);/g,i={128:"\u20AC",130:"\u201A",131:"\u0192",132:"\u201E",133:"\u2026",134:"\u2020",135:"\u2021",136:"\u02C6",137:"\u2030",138:"\u0160",139:"\u2039",140:"\u0152",142:"\u017D",145:"\u2018",146:"\u2019",147:"\u201C",148:"\u201D",149:"\u2022",150:"\u2013",151:"\u2014",152:"\u02DC",153:"\u2122",154:"\u0161",155:"\u203A",156:"\u0153",158:"\u017E",159:"\u0178"};g={'"':"&quot;","'":"&#39;","<":"&lt;",">":"&gt;","&":"&amp;"};d={"&lt;":"<","&gt;":">","&amp;":"&","&quot;":'"',"&apos;":"'"};function h(l){var m;m=document.createElement("div");m.innerHTML=l;return m.textContent||m.innerText||l}function e(m,p){var n,o,l,q={};if(m){m=m.split(",");p=p||10;for(n=0;n<m.length;n+=2){o=String.fromCharCode(parseInt(m[n],p));if(!g[o]){l="&"+m[n+1]+";";q[o]=l;q[l]=o}}return q}}a=e("50,nbsp,51,iexcl,52,cent,53,pound,54,curren,55,yen,56,brvbar,57,sect,58,uml,59,copy,5a,ordf,5b,laquo,5c,not,5d,shy,5e,reg,5f,macr,5g,deg,5h,plusmn,5i,sup2,5j,sup3,5k,acute,5l,micro,5m,para,5n,middot,5o,cedil,5p,sup1,5q,ordm,5r,raquo,5s,frac14,5t,frac12,5u,frac34,5v,iquest,60,Agrave,61,Aacute,62,Acirc,63,Atilde,64,Auml,65,Aring,66,AElig,67,Ccedil,68,Egrave,69,Eacute,6a,Ecirc,6b,Euml,6c,Igrave,6d,Iacute,6e,Icirc,6f,Iuml,6g,ETH,6h,Ntilde,6i,Ograve,6j,Oacute,6k,Ocirc,6l,Otilde,6m,Ouml,6n,times,6o,Oslash,6p,Ugrave,6q,Uacute,6r,Ucirc,6s,Uuml,6t,Yacute,6u,THORN,6v,szlig,70,agrave,71,aacute,72,acirc,73,atilde,74,auml,75,aring,76,aelig,77,ccedil,78,egrave,79,eacute,7a,ecirc,7b,euml,7c,igrave,7d,iacute,7e,icirc,7f,iuml,7g,eth,7h,ntilde,7i,ograve,7j,oacute,7k,ocirc,7l,otilde,7m,ouml,7n,divide,7o,oslash,7p,ugrave,7q,uacute,7r,ucirc,7s,uuml,7t,yacute,7u,thorn,7v,yuml,ci,fnof,sh,Alpha,si,Beta,sj,Gamma,sk,Delta,sl,Epsilon,sm,Zeta,sn,Eta,so,Theta,sp,Iota,sq,Kappa,sr,Lambda,ss,Mu,st,Nu,su,Xi,sv,Omicron,t0,Pi,t1,Rho,t3,Sigma,t4,Tau,t5,Upsilon,t6,Phi,t7,Chi,t8,Psi,t9,Omega,th,alpha,ti,beta,tj,gamma,tk,delta,tl,epsilon,tm,zeta,tn,eta,to,theta,tp,iota,tq,kappa,tr,lambda,ts,mu,tt,nu,tu,xi,tv,omicron,u0,pi,u1,rho,u2,sigmaf,u3,sigma,u4,tau,u5,upsilon,u6,phi,u7,chi,u8,psi,u9,omega,uh,thetasym,ui,upsih,um,piv,812,bull,816,hellip,81i,prime,81j,Prime,81u,oline,824,frasl,88o,weierp,88h,image,88s,real,892,trade,89l,alefsym,8cg,larr,8ch,uarr,8ci,rarr,8cj,darr,8ck,harr,8dl,crarr,8eg,lArr,8eh,uArr,8ei,rArr,8ej,dArr,8ek,hArr,8g0,forall,8g2,part,8g3,exist,8g5,empty,8g7,nabla,8g8,isin,8g9,notin,8gb,ni,8gf,prod,8gh,sum,8gi,minus,8gn,lowast,8gq,radic,8gt,prop,8gu,infin,8h0,ang,8h7,and,8h8,or,8h9,cap,8ha,cup,8hb,int,8hk,there4,8hs,sim,8i5,cong,8i8,asymp,8j0,ne,8j1,equiv,8j4,le,8j5,ge,8k2,sub,8k3,sup,8k4,nsub,8k6,sube,8k7,supe,8kl,oplus,8kn,otimes,8l5,perp,8m5,sdot,8o8,lceil,8o9,rceil,8oa,lfloor,8ob,rfloor,8p9,lang,8pa,rang,9ea,loz,9j0,spades,9j3,clubs,9j5,hearts,9j6,diams,ai,OElig,aj,oelig,b0,Scaron,b1,scaron,bo,Yuml,m6,circ,ms,tilde,802,ensp,803,emsp,809,thinsp,80c,zwnj,80d,zwj,80e,lrm,80f,rlm,80j,ndash,80k,mdash,80o,lsquo,80p,rsquo,80q,sbquo,80s,ldquo,80t,rdquo,80u,bdquo,810,dagger,811,Dagger,81g,permil,81p,lsaquo,81q,rsaquo,85c,euro",32);j.html=j.html||{};j.html.Entities={encodeRaw:function(m,l){return m.replace(l?k:b,function(n){return g[n]||n})},encodeAllRaw:function(l){return(""+l).replace(f,function(m){return g[m]||m})},encodeNumeric:function(m,l){return m.replace(l?k:b,function(n){if(n.length>1){return"&#"+(((n.charCodeAt(0)-55296)*1024)+(n.charCodeAt(1)-56320)+65536)+";"}return g[n]||"&#"+n.charCodeAt(0)+";"})},encodeNamed:function(n,l,m){m=m||a;return n.replace(l?k:b,function(o){return g[o]||m[o]||o})},getEncodeFunc:function(l,o){var p=j.html.Entities;o=e(o)||a;function m(r,q){return r.replace(q?k:b,function(s){return g[s]||o[s]||"&#"+s.charCodeAt(0)+";"||s})}function n(r,q){return p.encodeNamed(r,q,o)}l=j.makeMap(l.replace(/\+/g,","));if(l.named&&l.numeric){return m}if(l.named){if(o){return n}return p.encodeNamed}if(l.numeric){return p.encodeNumeric}return p.encodeRaw},decode:function(l){return l.replace(c,function(n,m,o){if(m){o=parseInt(o,m.length===2?16:10);if(o>65535){o-=65536;return String.fromCharCode(55296+(o>>10),56320+(o&1023))}else{return i[o]||String.fromCharCode(o)}}return d[n]||a[n]||h(n)})}}})(tinymce);tinymce.html.Styles=function(d,f){var k=/rgb\s*\(\s*([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\s*\)/gi,h=/(?:url(?:(?:\(\s*\"([^\"]+)\"\s*\))|(?:\(\s*\'([^\']+)\'\s*\))|(?:\(\s*([^)\s]+)\s*\))))|(?:\'([^\']+)\')|(?:\"([^\"]+)\")/gi,b=/\s*([^:]+):\s*([^;]+);?/g,l=/\s+$/,m=/rgb/,e,g,a={},j;d=d||{};j="\\\" \\' \\; \\: ; : \uFEFF".split(" ");for(g=0;g<j.length;g++){a[j[g]]="\uFEFF"+g;a["\uFEFF"+g]=j[g]}function c(n,q,p,i){function o(r){r=parseInt(r).toString(16);return r.length>1?r:"0"+r}return"#"+o(q)+o(p)+o(i)}return{toHex:function(i){return i.replace(k,c)},parse:function(s){var z={},q,n,x,r,v=d.url_converter,y=d.url_converter_scope||this;function p(D,G){var F,C,B,E;F=z[D+"-top"+G];if(!F){return}C=z[D+"-right"+G];if(F!=C){return}B=z[D+"-bottom"+G];if(C!=B){return}E=z[D+"-left"+G];if(B!=E){return}z[D+G]=E;delete z[D+"-top"+G];delete z[D+"-right"+G];delete z[D+"-bottom"+G];delete z[D+"-left"+G]}function u(C){var D=z[C],B;if(!D||D.indexOf(" ")<0){return}D=D.split(" ");B=D.length;while(B--){if(D[B]!==D[0]){return false}}z[C]=D[0];return true}function A(D,C,B,E){if(!u(C)){return}if(!u(B)){return}if(!u(E)){return}z[D]=z[C]+" "+z[B]+" "+z[E];delete z[C];delete z[B];delete z[E]}function t(B){r=true;return a[B]}function i(C,B){if(r){C=C.replace(/\uFEFF[0-9]/g,function(D){return a[D]})}if(!B){C=C.replace(/\\([\'\";:])/g,"$1")}return C}function o(C,B,F,E,G,D){G=G||D;if(G){G=i(G);return"'"+G.replace(/\'/g,"\\'")+"'"}B=i(B||F||E);if(v){B=v.call(y,B,"style")}return"url('"+B.replace(/\'/g,"\\'")+"')"}if(s){s=s.replace(/\\[\"\';:\uFEFF]/g,t).replace(/\"[^\"]+\"|\'[^\']+\'/g,function(B){return B.replace(/[;:]/g,t)});while(q=b.exec(s)){n=q[1].replace(l,"").toLowerCase();x=q[2].replace(l,"");if(n&&x.length>0){if(n==="font-weight"&&x==="700"){x="bold"}else{if(n==="color"||n==="background-color"){x=x.toLowerCase()}}x=x.replace(k,c);x=x.replace(h,o);z[n]=r?i(x,true):x}b.lastIndex=q.index+q[0].length}p("border","");p("border","-width");p("border","-color");p("border","-style");p("padding","");p("margin","");A("border","border-width","border-style","border-color");if(z.border==="medium none"){delete z.border}}return z},serialize:function(p,r){var o="",n,q;function i(t){var x,u,s,v;x=f.styles[t];if(x){for(u=0,s=x.length;u<s;u++){t=x[u];v=p[t];if(v!==e&&v.length>0){o+=(o.length>0?" ":"")+t+": "+v+";"}}}}if(r&&f&&f.styles){i("*");i(r)}else{for(n in p){q=p[n];if(q!==e&&q.length>0){o+=(o.length>0?" ":"")+n+": "+q+";"}}}return o}}};(function(f){var a={},e=f.makeMap,g=f.each;function d(j,i){return j.split(i||",")}function h(m,l){var j,k={};function i(n){return n.replace(/[A-Z]+/g,function(o){return i(m[o])})}for(j in m){if(m.hasOwnProperty(j)){m[j]=i(m[j])}}i(l).replace(/#/g,"#text").replace(/(\w+)\[([^\]]+)\]\[([^\]]*)\]/g,function(q,o,n,p){n=d(n,"|");k[o]={attributes:e(n),attributesOrder:n,children:e(p,"|",{"#comment":{}})}});return k}function b(){var i=a.html5;if(!i){i=a.html5=h({A:"id|accesskey|class|dir|draggable|item|hidden|itemprop|role|spellcheck|style|subject|title|onclick|ondblclick|onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup",B:"#|a|abbr|area|audio|b|bdo|br|button|canvas|cite|code|command|datalist|del|dfn|em|embed|i|iframe|img|input|ins|kbd|keygen|label|link|map|mark|meta|meter|noscript|object|output|progress|q|ruby|samp|script|select|small|span|strong|sub|sup|svg|textarea|time|var|video|wbr",C:"#|a|abbr|area|address|article|aside|audio|b|bdo|blockquote|br|button|canvas|cite|code|command|datalist|del|details|dfn|dialog|div|dl|em|embed|fieldset|figure|footer|form|h1|h2|h3|h4|h5|h6|header|hgroup|hr|i|iframe|img|input|ins|kbd|keygen|label|link|map|mark|menu|meta|meter|nav|noscript|ol|object|output|p|pre|progress|q|ruby|samp|script|section|select|small|span|strong|style|sub|sup|svg|table|textarea|time|ul|var|video"},"html[A|manifest][body|head]head[A][base|command|link|meta|noscript|script|style|title]title[A][#]base[A|href|target][]link[A|href|rel|media|type|sizes][]meta[A|http-equiv|name|content|charset][]style[A|type|media|scoped][#]script[A|charset|type|src|defer|async][#]noscript[A][C]body[A][C]section[A][C]nav[A][C]article[A][C]aside[A][C]h1[A][B]h2[A][B]h3[A][B]h4[A][B]h5[A][B]h6[A][B]hgroup[A][h1|h2|h3|h4|h5|h6]header[A][C]footer[A][C]address[A][C]p[A][B]br[A][]pre[A][B]dialog[A][dd|dt]blockquote[A|cite][C]ol[A|start|reversed][li]ul[A][li]li[A|value][C]dl[A][dd|dt]dt[A][B]dd[A][C]a[A|href|target|ping|rel|media|type][B]em[A][B]strong[A][B]small[A][B]cite[A][B]q[A|cite][B]dfn[A][B]abbr[A][B]code[A][B]var[A][B]samp[A][B]kbd[A][B]sub[A][B]sup[A][B]i[A][B]b[A][B]mark[A][B]progress[A|value|max][B]meter[A|value|min|max|low|high|optimum][B]time[A|datetime][B]ruby[A][B|rt|rp]rt[A][B]rp[A][B]bdo[A][B]span[A][B]ins[A|cite|datetime][B]del[A|cite|datetime][B]figure[A][C|legend|figcaption]figcaption[A][C]img[A|alt|src|height|width|usemap|ismap][]iframe[A|name|src|height|width|sandbox|seamless][]embed[A|src|height|width|type][]object[A|data|type|height|width|usemap|name|form|classid][param]param[A|name|value][]details[A|open][C|legend]command[A|type|label|icon|disabled|checked|radiogroup][]menu[A|type|label][C|li]legend[A][C|B]div[A][C]source[A|src|type|media][]audio[A|src|autobuffer|autoplay|loop|controls][source]video[A|src|autobuffer|autoplay|loop|controls|width|height|poster][source]hr[A][]form[A|accept-charset|action|autocomplete|enctype|method|name|novalidate|target][C]fieldset[A|disabled|form|name][C|legend]label[A|form|for][B]input[A|type|accept|alt|autocomplete|checked|disabled|form|formaction|formenctype|formmethod|formnovalidate|formtarget|height|list|max|maxlength|min|multiple|pattern|placeholder|readonly|required|size|src|step|width|files|value|name][]button[A|autofocus|disabled|form|formaction|formenctype|formmethod|formnovalidate|formtarget|name|value|type][B]select[A|autofocus|disabled|form|multiple|name|size][option|optgroup]datalist[A][B|option]optgroup[A|disabled|label][option]option[A|disabled|selected|label|value][]textarea[A|autofocus|disabled|form|maxlength|name|placeholder|readonly|required|rows|cols|wrap][]keygen[A|autofocus|challenge|disabled|form|keytype|name][]output[A|for|form|name][B]canvas[A|width|height][]map[A|name][B|C]area[A|shape|coords|href|alt|target|media|rel|ping|type][]mathml[A][]svg[A][]table[A|border][caption|colgroup|thead|tfoot|tbody|tr]caption[A][C]colgroup[A|span][col]col[A|span][]thead[A][tr]tfoot[A][tr]tbody[A][tr]tr[A][th|td]th[A|headers|rowspan|colspan|scope][B]td[A|headers|rowspan|colspan][C]wbr[A][]")}return i}function c(){var i=a.html4;if(!i){i=a.html4=h({Z:"H|K|N|O|P",Y:"X|form|R|Q",ZG:"E|span|width|align|char|charoff|valign",X:"p|T|div|U|W|isindex|fieldset|table",ZF:"E|align|char|charoff|valign",W:"pre|hr|blockquote|address|center|noframes",ZE:"abbr|axis|headers|scope|rowspan|colspan|align|char|charoff|valign|nowrap|bgcolor|width|height",ZD:"[E][S]",U:"ul|ol|dl|menu|dir",ZC:"p|Y|div|U|W|table|br|span|bdo|object|applet|img|map|K|N|Q",T:"h1|h2|h3|h4|h5|h6",ZB:"X|S|Q",S:"R|P",ZA:"a|G|J|M|O|P",R:"a|H|K|N|O",Q:"noscript|P",P:"ins|del|script",O:"input|select|textarea|label|button",N:"M|L",M:"em|strong|dfn|code|q|samp|kbd|var|cite|abbr|acronym",L:"sub|sup",K:"J|I",J:"tt|i|b|u|s|strike",I:"big|small|font|basefont",H:"G|F",G:"br|span|bdo",F:"object|applet|img|map|iframe",E:"A|B|C",D:"accesskey|tabindex|onfocus|onblur",C:"onclick|ondblclick|onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup",B:"lang|xml:lang|dir",A:"id|class|style|title"},"script[id|charset|type|language|src|defer|xml:space][]style[B|id|type|media|title|xml:space][]object[E|declare|classid|codebase|data|type|codetype|archive|standby|width|height|usemap|name|tabindex|align|border|hspace|vspace][#|param|Y]param[id|name|value|valuetype|type][]p[E|align][#|S]a[E|D|charset|type|name|href|hreflang|rel|rev|shape|coords|target][#|Z]br[A|clear][]span[E][#|S]bdo[A|C|B][#|S]applet[A|codebase|archive|code|object|alt|name|width|height|align|hspace|vspace][#|param|Y]h1[E|align][#|S]img[E|src|alt|name|longdesc|width|height|usemap|ismap|align|border|hspace|vspace][]map[B|C|A|name][X|form|Q|area]h2[E|align][#|S]iframe[A|longdesc|name|src|frameborder|marginwidth|marginheight|scrolling|align|width|height][#|Y]h3[E|align][#|S]tt[E][#|S]i[E][#|S]b[E][#|S]u[E][#|S]s[E][#|S]strike[E][#|S]big[E][#|S]small[E][#|S]font[A|B|size|color|face][#|S]basefont[id|size|color|face][]em[E][#|S]strong[E][#|S]dfn[E][#|S]code[E][#|S]q[E|cite][#|S]samp[E][#|S]kbd[E][#|S]var[E][#|S]cite[E][#|S]abbr[E][#|S]acronym[E][#|S]sub[E][#|S]sup[E][#|S]input[E|D|type|name|value|checked|disabled|readonly|size|maxlength|src|alt|usemap|onselect|onchange|accept|align][]select[E|name|size|multiple|disabled|tabindex|onfocus|onblur|onchange][optgroup|option]optgroup[E|disabled|label][option]option[E|selected|disabled|label|value][]textarea[E|D|name|rows|cols|disabled|readonly|onselect|onchange][]label[E|for|accesskey|onfocus|onblur][#|S]button[E|D|name|value|type|disabled][#|p|T|div|U|W|table|G|object|applet|img|map|K|N|Q]h4[E|align][#|S]ins[E|cite|datetime][#|Y]h5[E|align][#|S]del[E|cite|datetime][#|Y]h6[E|align][#|S]div[E|align][#|Y]ul[E|type|compact][li]li[E|type|value][#|Y]ol[E|type|compact|start][li]dl[E|compact][dt|dd]dt[E][#|S]dd[E][#|Y]menu[E|compact][li]dir[E|compact][li]pre[E|width|xml:space][#|ZA]hr[E|align|noshade|size|width][]blockquote[E|cite][#|Y]address[E][#|S|p]center[E][#|Y]noframes[E][#|Y]isindex[A|B|prompt][]fieldset[E][#|legend|Y]legend[E|accesskey|align][#|S]table[E|summary|width|border|frame|rules|cellspacing|cellpadding|align|bgcolor][caption|col|colgroup|thead|tfoot|tbody|tr]caption[E|align][#|S]col[ZG][]colgroup[ZG][col]thead[ZF][tr]tr[ZF|bgcolor][th|td]th[E|ZE][#|Y]form[E|action|method|name|enctype|onsubmit|onreset|accept|accept-charset|target][#|X|R|Q]noscript[E][#|Y]td[E|ZE][#|Y]tfoot[ZF][tr]tbody[ZF][tr]area[E|D|shape|coords|href|nohref|alt|target][]base[id|href|target][]body[E|onload|onunload|background|bgcolor|text|link|vlink|alink][#|Y]")}return i}f.html.Schema=function(A){var u=this,s={},k={},j=[],D,y;var o,q,z,r,v,n,p={};function m(F,E,H){var G=A[F];if(!G){G=a[F];if(!G){G=e(E," ",e(E.toUpperCase()," "));G=f.extend(G,H);a[F]=G}}else{G=e(G,",",e(G.toUpperCase()," "))}return G}A=A||{};y=A.schema=="html5"?b():c();if(A.verify_html===false){A.valid_elements="*[*]"}if(A.valid_styles){D={};g(A.valid_styles,function(F,E){D[E]=f.explode(F)})}o=m("whitespace_elements","pre script style textarea");q=m("self_closing_elements","colgroup dd dt li option p td tfoot th thead tr");z=m("short_ended_elements","area base basefont br col frame hr img input isindex link meta param embed source wbr");r=m("boolean_attributes","checked compact declare defer disabled ismap multiple nohref noresize noshade nowrap readonly selected autoplay loop controls");n=m("non_empty_elements","td th iframe video audio object",z);v=m("block_elements","h1 h2 h3 h4 h5 h6 hr p div address pre form table tbody thead tfoot th tr td li ol ul caption blockquote center dl dt dd dir fieldset noscript menu isindex samp header footer article section hgroup aside nav figure option datalist select optgroup");function i(E){return new RegExp("^"+E.replace(/([?+*])/g,".$1")+"$")}function C(L){var K,G,Z,V,aa,F,I,U,X,Q,Y,ac,O,J,W,E,S,H,ab,ad,P,T,N=/^([#+\-])?([^\[\/]+)(?:\/([^\[]+))?(?:\[([^\]]+)\])?$/,R=/^([!\-])?(\w+::\w+|[^=:<]+)?(?:([=:<])(.*))?$/,M=/[*?+]/;if(L){L=d(L);if(s["@"]){S=s["@"].attributes;H=s["@"].attributesOrder}for(K=0,G=L.length;K<G;K++){F=N.exec(L[K]);if(F){W=F[1];Q=F[2];E=F[3];X=F[4];O={};J=[];I={attributes:O,attributesOrder:J};if(W==="#"){I.paddEmpty=true}if(W==="-"){I.removeEmpty=true}if(S){for(ad in S){O[ad]=S[ad]}J.push.apply(J,H)}if(X){X=d(X,"|");for(Z=0,V=X.length;Z<V;Z++){F=R.exec(X[Z]);if(F){U={};ac=F[1];Y=F[2].replace(/::/g,":");W=F[3];T=F[4];if(ac==="!"){I.attributesRequired=I.attributesRequired||[];I.attributesRequired.push(Y);U.required=true}if(ac==="-"){delete O[Y];J.splice(f.inArray(J,Y),1);continue}if(W){if(W==="="){I.attributesDefault=I.attributesDefault||[];I.attributesDefault.push({name:Y,value:T});U.defaultValue=T}if(W===":"){I.attributesForced=I.attributesForced||[];I.attributesForced.push({name:Y,value:T});U.forcedValue=T}if(W==="<"){U.validValues=e(T,"?")}}if(M.test(Y)){I.attributePatterns=I.attributePatterns||[];U.pattern=i(Y);I.attributePatterns.push(U)}else{if(!O[Y]){J.push(Y)}O[Y]=U}}}}if(!S&&Q=="@"){S=O;H=J}if(E){I.outputName=Q;s[E]=I}if(M.test(Q)){I.pattern=i(Q);j.push(I)}else{s[Q]=I}}}}}function t(E){s={};j=[];C(E);g(y,function(G,F){k[F]=G.children})}function l(F){var E=/^(~)?(.+)$/;if(F){g(d(F),function(J){var H=E.exec(J),I=H[1]==="~",K=I?"span":"div",G=H[2];k[G]=k[K];p[G]=K;if(!I){v[G]={}}g(k,function(L,M){if(L[K]){L[G]=L[K]}})})}}function x(F){var E=/^([+\-]?)(\w+)\[([^\]]+)\]$/;if(F){g(d(F),function(J){var I=E.exec(J),G,H;if(I){H=I[1];if(H){G=k[I[2]]}else{G=k[I[2]]={"#comment":{}}}G=k[I[2]];g(d(I[3],"|"),function(K){if(H==="-"){delete G[K]}else{G[K]={}}})}})}}function B(E){var G=s[E],F;if(G){return G}F=j.length;while(F--){G=j[F];if(G.pattern.test(E)){return G}}}if(!A.valid_elements){g(y,function(F,E){s[E]={attributes:F.attributes,attributesOrder:F.attributesOrder};k[E]=F.children});if(A.schema!="html5"){g(d("strong/b,em/i"),function(E){E=d(E,"/");s[E[1]].outputName=E[0]})}s.img.attributesDefault=[{name:"alt",value:""}];g(d("ol,ul,sub,sup,blockquote,span,font,a,table,tbody,tr,strong,em,b,i"),function(E){if(s[E]){s[E].removeEmpty=true}});g(d("p,h1,h2,h3,h4,h5,h6,th,td,pre,div,address,caption"),function(E){s[E].paddEmpty=true})}else{t(A.valid_elements)}l(A.custom_elements);x(A.valid_children);C(A.extended_valid_elements);x("+ol[ul|ol],+ul[ul|ol]");if(A.invalid_elements){f.each(f.explode(A.invalid_elements),function(E){if(s[E]){delete s[E]}})}if(!B("span")){C("span[!data-mce-type|*]")}u.children=k;u.styles=D;u.getBoolAttrs=function(){return r};u.getBlockElements=function(){return v};u.getShortEndedElements=function(){return z};u.getSelfClosingElements=function(){return q};u.getNonEmptyElements=function(){return n};u.getWhiteSpaceElements=function(){return o};u.isValidChild=function(E,G){var F=k[E];return !!(F&&F[G])};u.isValid=function(F,E){var H,G,I=B(F);if(I){if(E){if(I.attributes[E]){return true}H=I.attributePatterns;if(H){G=H.length;while(G--){if(H[G].pattern.test(F)){return true}}}}else{return true}}return false};u.getElementRule=B;u.getCustomElements=function(){return p};u.addValidElements=C;u.setValidElements=t;u.addCustomElements=l;u.addValidChildren=x}})(tinymce);(function(a){a.html.SaxParser=function(c,e){var b=this,d=function(){};c=c||{};b.schema=e=e||new a.html.Schema();if(c.fix_self_closing!==false){c.fix_self_closing=true}a.each("comment cdata text start end pi doctype".split(" "),function(f){if(f){b[f]=c[f]||d}});b.parse=function(E){var n=this,g,G=0,I,B,A=[],N,Q,C,r,z,s,M,H,O,v,m,k,t,R,o,P,F,S,L,f,J,l,D,K,h,x=0,j=a.html.Entities.decode,y,q;function u(T){var V,U;V=A.length;while(V--){if(A[V].name===T){break}}if(V>=0){for(U=A.length-1;U>=V;U--){T=A[U];if(T.valid){n.end(T.name)}}A.length=V}}function p(U,T,Y,X,W){var Z,V;T=T.toLowerCase();Y=T in H?T:j(Y||X||W||"");if(v&&!z&&T.indexOf("data-")!==0){Z=P[T];if(!Z&&F){V=F.length;while(V--){Z=F[V];if(Z.pattern.test(T)){break}}if(V===-1){Z=null}}if(!Z){return}if(Z.validValues&&!(Y in Z.validValues)){return}}N.map[T]=Y;N.push({name:T,value:Y})}l=new RegExp("<(?:(?:!--([\\w\\W]*?)-->)|(?:!\\[CDATA\\[([\\w\\W]*?)\\]\\]>)|(?:!DOCTYPE([\\w\\W]*?)>)|(?:\\?([^\\s\\/<>]+) ?([\\w\\W]*?)[?/]>)|(?:\\/([^>]+)>)|(?:([A-Za-z0-9\\-\\:]+)((?:\\s+[^\"'>]+(?:(?:\"[^\"]*\")|(?:'[^']*')|[^>]*))*|\\/|\\s+)>))","g");D=/([\w:\-]+)(?:\s*=\s*(?:(?:\"((?:\\.|[^\"])*)\")|(?:\'((?:\\.|[^\'])*)\')|([^>\s]+)))?/g;K={script:/<\/script[^>]*>/gi,style:/<\/style[^>]*>/gi,noscript:/<\/noscript[^>]*>/gi};M=e.getShortEndedElements();J=c.self_closing_elements||e.getSelfClosingElements();H=e.getBoolAttrs();v=c.validate;s=c.remove_internals;y=c.fix_self_closing;q=a.isIE;o=/^:/;while(g=l.exec(E)){if(G<g.index){n.text(j(E.substr(G,g.index-G)))}if(I=g[6]){I=I.toLowerCase();if(q&&o.test(I)){I=I.substr(1)}u(I)}else{if(I=g[7]){I=I.toLowerCase();if(q&&o.test(I)){I=I.substr(1)}O=I in M;if(y&&J[I]&&A.length>0&&A[A.length-1].name===I){u(I)}if(!v||(m=e.getElementRule(I))){k=true;if(v){P=m.attributes;F=m.attributePatterns}if(R=g[8]){z=R.indexOf("data-mce-type")!==-1;if(z&&s){k=false}N=[];N.map={};R.replace(D,p)}else{N=[];N.map={}}if(v&&!z){S=m.attributesRequired;L=m.attributesDefault;f=m.attributesForced;if(f){Q=f.length;while(Q--){t=f[Q];r=t.name;h=t.value;if(h==="{$uid}"){h="mce_"+x++}N.map[r]=h;N.push({name:r,value:h})}}if(L){Q=L.length;while(Q--){t=L[Q];r=t.name;if(!(r in N.map)){h=t.value;if(h==="{$uid}"){h="mce_"+x++}N.map[r]=h;N.push({name:r,value:h})}}}if(S){Q=S.length;while(Q--){if(S[Q] in N.map){break}}if(Q===-1){k=false}}if(N.map["data-mce-bogus"]){k=false}}if(k){n.start(I,N,O)}}else{k=false}if(B=K[I]){B.lastIndex=G=g.index+g[0].length;if(g=B.exec(E)){if(k){C=E.substr(G,g.index-G)}G=g.index+g[0].length}else{C=E.substr(G);G=E.length}if(k&&C.length>0){n.text(C,true)}if(k){n.end(I)}l.lastIndex=G;continue}if(!O){if(!R||R.indexOf("/")!=R.length-1){A.push({name:I,valid:k})}else{if(k){n.end(I)}}}}else{if(I=g[1]){n.comment(I)}else{if(I=g[2]){n.cdata(I)}else{if(I=g[3]){n.doctype(I)}else{if(I=g[4]){n.pi(I,g[5])}}}}}}G=g.index+g[0].length}if(G<E.length){n.text(j(E.substr(G)))}for(Q=A.length-1;Q>=0;Q--){I=A[Q];if(I.valid){n.end(I.name)}}}}})(tinymce);(function(d){var c=/^[ \t\r\n]*$/,e={"#text":3,"#comment":8,"#cdata":4,"#pi":7,"#doctype":10,"#document-fragment":11};function a(k,l,j){var i,h,f=j?"lastChild":"firstChild",g=j?"prev":"next";if(k[f]){return k[f]}if(k!==l){i=k[g];if(i){return i}for(h=k.parent;h&&h!==l;h=h.parent){i=h[g];if(i){return i}}}}function b(f,g){this.name=f;this.type=g;if(g===1){this.attributes=[];this.attributes.map={}}}d.extend(b.prototype,{replace:function(g){var f=this;if(g.parent){g.remove()}f.insert(g,f);f.remove();return f},attr:function(h,l){var f=this,g,j,k;if(typeof h!=="string"){for(j in h){f.attr(j,h[j])}return f}if(g=f.attributes){if(l!==k){if(l===null){if(h in g.map){delete g.map[h];j=g.length;while(j--){if(g[j].name===h){g=g.splice(j,1);return f}}}return f}if(h in g.map){j=g.length;while(j--){if(g[j].name===h){g[j].value=l;break}}}else{g.push({name:h,value:l})}g.map[h]=l;return f}else{return g.map[h]}}},clone:function(){var g=this,n=new b(g.name,g.type),h,f,m,j,k;if(m=g.attributes){k=[];k.map={};for(h=0,f=m.length;h<f;h++){j=m[h];if(j.name!=="id"){k[k.length]={name:j.name,value:j.value};k.map[j.name]=j.value}}n.attributes=k}n.value=g.value;n.shortEnded=g.shortEnded;return n},wrap:function(g){var f=this;f.parent.insert(g,f);g.append(f);return f},unwrap:function(){var f=this,h,g;for(h=f.firstChild;h;){g=h.next;f.insert(h,f,true);h=g}f.remove()},remove:function(){var f=this,h=f.parent,g=f.next,i=f.prev;if(h){if(h.firstChild===f){h.firstChild=g;if(g){g.prev=null}}else{i.next=g}if(h.lastChild===f){h.lastChild=i;if(i){i.next=null}}else{g.prev=i}f.parent=f.next=f.prev=null}return f},append:function(h){var f=this,g;if(h.parent){h.remove()}g=f.lastChild;if(g){g.next=h;h.prev=g;f.lastChild=h}else{f.lastChild=f.firstChild=h}h.parent=f;return h},insert:function(h,f,i){var g;if(h.parent){h.remove()}g=f.parent||this;if(i){if(f===g.firstChild){g.firstChild=h}else{f.prev.next=h}h.prev=f.prev;h.next=f;f.prev=h}else{if(f===g.lastChild){g.lastChild=h}else{f.next.prev=h}h.next=f.next;h.prev=f;f.next=h}h.parent=g;return h},getAll:function(g){var f=this,h,i=[];for(h=f.firstChild;h;h=a(h,f)){if(h.name===g){i.push(h)}}return i},empty:function(){var g=this,f,h,j;if(g.firstChild){f=[];for(j=g.firstChild;j;j=a(j,g)){f.push(j)}h=f.length;while(h--){j=f[h];j.parent=j.firstChild=j.lastChild=j.next=j.prev=null}}g.firstChild=g.lastChild=null;return g},isEmpty:function(k){var f=this,j=f.firstChild,h,g;if(j){do{if(j.type===1){if(j.attributes.map["data-mce-bogus"]){continue}if(k[j.name]){return false}h=j.attributes.length;while(h--){g=j.attributes[h].name;if(g==="name"||g.indexOf("data-")===0){return false}}}if(j.type===8){return false}if((j.type===3&&!c.test(j.value))){return false}}while(j=a(j,f))}return true},walk:function(f){return a(this,null,f)}});d.extend(b,{create:function(g,f){var i,h;i=new b(g,e[g]||1);if(f){for(h in f){i.attr(h,f[h])}}return i}});d.html.Node=b})(tinymce);(function(b){var a=b.html.Node;b.html.DomParser=function(g,h){var f=this,e={},d=[],i={},c={};g=g||{};g.validate="validate" in g?g.validate:true;g.root_name=g.root_name||"body";f.schema=h=h||new b.html.Schema();function j(m){var o,p,x,v,z,n,q,l,t,u,k,s,y,r;s=b.makeMap("tr,td,th,tbody,thead,tfoot,table");k=h.getNonEmptyElements();for(o=0;o<m.length;o++){p=m[o];if(!p.parent){continue}v=[p];for(x=p.parent;x&&!h.isValidChild(x.name,p.name)&&!s[x.name];x=x.parent){v.push(x)}if(x&&v.length>1){v.reverse();z=n=f.filterNode(v[0].clone());for(t=0;t<v.length-1;t++){if(h.isValidChild(n.name,v[t].name)){q=f.filterNode(v[t].clone());n.append(q)}else{q=n}for(l=v[t].firstChild;l&&l!=v[t+1];){r=l.next;q.append(l);l=r}n=q}if(!z.isEmpty(k)){x.insert(z,v[0],true);x.insert(p,z)}else{x.insert(p,v[0],true)}x=v[0];if(x.isEmpty(k)||x.firstChild===x.lastChild&&x.firstChild.name==="br"){x.empty().remove()}}else{if(p.parent){if(p.name==="li"){y=p.prev;if(y&&(y.name==="ul"||y.name==="ul")){y.append(p);continue}y=p.next;if(y&&(y.name==="ul"||y.name==="ul")){y.insert(p,y.firstChild,true);continue}p.wrap(f.filterNode(new a("ul",1)));continue}if(h.isValidChild(p.parent.name,"div")&&h.isValidChild("div",p.name)){p.wrap(f.filterNode(new a("div",1)))}else{if(p.name==="style"||p.name==="script"){p.empty().remove()}else{p.unwrap()}}}}}}f.filterNode=function(m){var l,k,n;if(k in e){n=i[k];if(n){n.push(m)}else{i[k]=[m]}}l=d.length;while(l--){k=d[l].name;if(k in m.attributes.map){n=c[k];if(n){n.push(m)}else{c[k]=[m]}}}return m};f.addNodeFilter=function(k,l){b.each(b.explode(k),function(m){var n=e[m];if(!n){e[m]=n=[]}n.push(l)})};f.addAttributeFilter=function(k,l){b.each(b.explode(k),function(m){var n;for(n=0;n<d.length;n++){if(d[n].name===m){d[n].callbacks.push(l);return}}d.push({name:m,callbacks:[l]})})};f.parse=function(v,m){var n,J,B,A,D,C,x,r,F,N,z,o,E,M=[],L,t,k,y,s,p,u,q;m=m||{};i={};c={};o=b.extend(b.makeMap("script,style,head,html,body,title,meta,param"),h.getBlockElements());u=h.getNonEmptyElements();p=h.children;z=g.validate;q="forced_root_block" in m?m.forced_root_block:g.forced_root_block;s=h.getWhiteSpaceElements();E=/^[ \t\r\n]+/;t=/[ \t\r\n]+$/;k=/[ \t\r\n]+/g;y=/^[ \t\r\n]+$/;function G(){var O=J.firstChild,l,P;while(O){l=O.next;if(O.type==3||(O.type==1&&O.name!=="p"&&!o[O.name]&&!O.attr("data-mce-type"))){if(!P){P=K(q,1);J.insert(P,O);P.append(O)}else{P.append(O)}}else{P=null}O=l}}function K(l,O){var P=new a(l,O),Q;if(l in e){Q=i[l];if(Q){Q.push(P)}else{i[l]=[P]}}return P}function I(P){var Q,l,O;for(Q=P.prev;Q&&Q.type===3;){l=Q.value.replace(t,"");if(l.length>0){Q.value=l;Q=Q.prev}else{O=Q.prev;Q.remove();Q=O}}}function H(O){var P,l={};for(P in O){if(P!=="li"&&P!="p"){l[P]=O[P]}}return l}n=new b.html.SaxParser({validate:z,self_closing_elements:H(h.getSelfClosingElements()),cdata:function(l){B.append(K("#cdata",4)).value=l},text:function(P,l){var O;if(!L){P=P.replace(k," ");if(B.lastChild&&o[B.lastChild.name]){P=P.replace(E,"")}}if(P.length!==0){O=K("#text",3);O.raw=!!l;B.append(O).value=P}},comment:function(l){B.append(K("#comment",8)).value=l},pi:function(l,O){B.append(K(l,7)).value=O;I(B)},doctype:function(O){var l;l=B.append(K("#doctype",10));l.value=O;I(B)},start:function(l,W,P){var U,R,Q,O,S,X,V,T;Q=z?h.getElementRule(l):{};if(Q){U=K(Q.outputName||l,1);U.attributes=W;U.shortEnded=P;B.append(U);T=p[B.name];if(T&&p[U.name]&&!T[U.name]){M.push(U)}R=d.length;while(R--){S=d[R].name;if(S in W.map){F=c[S];if(F){F.push(U)}else{c[S]=[U]}}}if(o[l]){I(U)}if(!P){B=U}if(!L&&s[l]){L=true}}},end:function(l){var S,P,R,O,Q;P=z?h.getElementRule(l):{};if(P){if(o[l]){if(!L){S=B.firstChild;if(S&&S.type===3){R=S.value.replace(E,"");if(R.length>0){S.value=R;S=S.next}else{O=S.next;S.remove();S=O}while(S&&S.type===3){R=S.value;O=S.next;if(R.length===0||y.test(R)){S.remove();S=O}S=O}}S=B.lastChild;if(S&&S.type===3){R=S.value.replace(t,"");if(R.length>0){S.value=R;S=S.prev}else{O=S.prev;S.remove();S=O}while(S&&S.type===3){R=S.value;O=S.prev;if(R.length===0||y.test(R)){S.remove();S=O}S=O}}}S=B.prev;if(S&&S.type===3){R=S.value.replace(E,"");if(R.length>0){S.value=R}else{S.remove()}}}if(L&&s[l]){L=false}if(P.removeEmpty||P.paddEmpty){if(B.isEmpty(u)){if(P.paddEmpty){B.empty().append(new a("#text","3")).value="\u00a0"}else{if(!B.attributes.map.name&&!B.attributes.map.id){Q=B.parent;B.empty().remove();B=Q;return}}}}B=B.parent}}},h);J=B=new a(m.context||g.root_name,11);n.parse(v);if(z&&M.length){if(!m.context){j(M)}else{m.invalid=true}}if(q&&J.name=="body"){G()}if(!m.invalid){for(N in i){F=e[N];A=i[N];x=A.length;while(x--){if(!A[x].parent){A.splice(x,1)}}for(D=0,C=F.length;D<C;D++){F[D](A,N,m)}}for(D=0,C=d.length;D<C;D++){F=d[D];if(F.name in c){A=c[F.name];x=A.length;while(x--){if(!A[x].parent){A.splice(x,1)}}for(x=0,r=F.callbacks.length;x<r;x++){F.callbacks[x](A,F.name,m)}}}}return J};if(g.remove_trailing_brs){f.addNodeFilter("br",function(n,m){var r,q=n.length,o,v=b.extend({},h.getBlockElements()),k=h.getNonEmptyElements(),t,s,p,u;v.body=1;for(r=0;r<q;r++){o=n[r];t=o.parent;if(v[o.parent.name]&&o===t.lastChild){p=o.prev;while(p){u=p.name;if(u!=="span"||p.attr("data-mce-type")!=="bookmark"){if(u!=="br"){break}if(u==="br"){o=null;break}}p=p.prev}if(o){o.remove();if(t.isEmpty(k)){elementRule=h.getElementRule(t.name);if(elementRule){if(elementRule.removeEmpty){t.remove()}else{if(elementRule.paddEmpty){t.empty().append(new b.html.Node("#text",3)).value="\u00a0"}}}}}}else{s=o;while(t.firstChild===s&&t.lastChild===s){s=t;if(v[t.name]){break}t=t.parent}if(s===t){textNode=new b.html.Node("#text",3);textNode.value="\u00a0";o.replace(textNode)}}}})}if(!g.allow_html_in_named_anchor){f.addAttributeFilter("id,name",function(k,l){var n=k.length,p,m,o,q;while(n--){q=k[n];if(q.name==="a"&&q.firstChild&&!q.attr("href")){o=q.parent;p=q.lastChild;do{m=p.prev;o.insert(p,q);p=m}while(p)}}})}}})(tinymce);tinymce.html.Writer=function(e){var c=[],a,b,d,f,g;e=e||{};a=e.indent;b=tinymce.makeMap(e.indent_before||"");d=tinymce.makeMap(e.indent_after||"");f=tinymce.html.Entities.getEncodeFunc(e.entity_encoding||"raw",e.entities);g=e.element_format=="html";return{start:function(m,k,p){var n,j,h,o;if(a&&b[m]&&c.length>0){o=c[c.length-1];if(o.length>0&&o!=="\n"){c.push("\n")}}c.push("<",m);if(k){for(n=0,j=k.length;n<j;n++){h=k[n];c.push(" ",h.name,'="',f(h.value,true),'"')}}if(!p||g){c[c.length]=">"}else{c[c.length]=" />"}if(p&&a&&d[m]&&c.length>0){o=c[c.length-1];if(o.length>0&&o!=="\n"){c.push("\n")}}},end:function(h){var i;c.push("</",h,">");if(a&&d[h]&&c.length>0){i=c[c.length-1];if(i.length>0&&i!=="\n"){c.push("\n")}}},text:function(i,h){if(i.length>0){c[c.length]=h?i:f(i)}},cdata:function(h){c.push("<![CDATA[",h,"]]>")},comment:function(h){c.push("<!--",h,"-->")},pi:function(h,i){if(i){c.push("<?",h," ",i,"?>")}else{c.push("<?",h,"?>")}if(a){c.push("\n")}},doctype:function(h){c.push("<!DOCTYPE",h,">",a?"\n":"")},reset:function(){c.length=0},getContent:function(){return c.join("").replace(/\n$/,"")}}};(function(a){a.html.Serializer=function(c,d){var b=this,e=new a.html.Writer(c);c=c||{};c.validate="validate" in c?c.validate:true;b.schema=d=d||new a.html.Schema();b.writer=e;b.serialize=function(h){var g,i;i=c.validate;g={3:function(k,j){e.text(k.value,k.raw)},8:function(j){e.comment(j.value)},7:function(j){e.pi(j.name,j.value)},10:function(j){e.doctype(j.value)},4:function(j){e.cdata(j.value)},11:function(j){if((j=j.firstChild)){do{f(j)}while(j=j.next)}}};e.reset();function f(k){var t=g[k.type],j,o,s,r,p,u,n,m,q;if(!t){j=k.name;o=k.shortEnded;s=k.attributes;if(i&&s&&s.length>1){u=[];u.map={};q=d.getElementRule(k.name);for(n=0,m=q.attributesOrder.length;n<m;n++){r=q.attributesOrder[n];if(r in s.map){p=s.map[r];u.map[r]=p;u.push({name:r,value:p})}}for(n=0,m=s.length;n<m;n++){r=s[n].name;if(!(r in u.map)){p=s.map[r];u.map[r]=p;u.push({name:r,value:p})}}s=u}e.start(k.name,s,o);if(!o){if((k=k.firstChild)){do{f(k)}while(k=k.next)}e.end(j)}}else{t(k)}}if(h.type==1&&!c.inner){f(h)}else{g[11](h)}return e.getContent()}}})(tinymce);tinymce.dom={};(function(b,h){var g=!!document.addEventListener;function c(k,j,l,i){if(k.addEventListener){k.addEventListener(j,l,i||false)}else{if(k.attachEvent){k.attachEvent("on"+j,l)}}}function e(k,j,l,i){if(k.removeEventListener){k.removeEventListener(j,l,i||false)}else{if(k.detachEvent){k.detachEvent("on"+j,l)}}}function a(n,l){var i,k=l||{};function j(){return false}function m(){return true}for(i in n){if(i!=="layerX"&&i!=="layerY"){k[i]=n[i]}}if(!k.target){k.target=k.srcElement||document}k.preventDefault=function(){k.isDefaultPrevented=m;if(n){if(n.preventDefault){n.preventDefault()}else{n.returnValue=false}}};k.stopPropagation=function(){k.isPropagationStopped=m;if(n){if(n.stopPropagation){n.stopPropagation()}else{n.cancelBubble=true}}};k.stopImmediatePropagation=function(){k.isImmediatePropagationStopped=m;k.stopPropagation()};if(!k.isDefaultPrevented){k.isDefaultPrevented=j;k.isPropagationStopped=j;k.isImmediatePropagationStopped=j}return k}function d(m,n,l){var k=m.document,j={type:"ready"};function i(){if(!l.domLoaded){l.domLoaded=true;n(j)}}if(g){c(m,"DOMContentLoaded",i)}else{c(k,"readystatechange",function(){if(k.readyState==="complete"){e(k,"readystatechange",arguments.callee);i()}});if(k.documentElement.doScroll&&m===m.top){(function(){try{k.documentElement.doScroll("left")}catch(o){setTimeout(arguments.callee,0);return}i()})()}}c(m,"load",i)}function f(k){var q=this,p={},i,o,n,m,l;m="onmouseenter" in document.documentElement;n="onfocusin" in document.documentElement;l={mouseenter:"mouseover",mouseleave:"mouseout"};i=1;q.domLoaded=false;q.events=p;function j(t,x){var s,u,r,v;s=p[x][t.type];if(s){for(u=0,r=s.length;u<r;u++){v=s[u];if(v&&v.func.call(v.scope,t)===false){t.preventDefault()}if(t.isImmediatePropagationStopped()){return}}}}q.bind=function(x,A,D,E){var s,t,u,r,B,z,C,v=window;function y(F){j(a(F||v.event),s)}if(!x||x.nodeType===3||x.nodeType===8){return}if(!x[h]){s=i++;x[h]=s;p[s]={}}else{s=x[h];if(!p[s]){p[s]={}}}E=E||x;A=A.split(" ");u=A.length;while(u--){r=A[u];z=y;B=C=false;if(r==="DOMContentLoaded"){r="ready"}if((q.domLoaded||x.readyState=="complete")&&r==="ready"){q.domLoaded=true;D.call(E,a({type:r}));continue}if(!m){B=l[r];if(B){z=function(F){var H,G;H=F.currentTarget;G=F.relatedTarget;if(G&&H.contains){G=H.contains(G)}else{while(G&&G!==H){G=G.parentNode}}if(!G){F=a(F||v.event);F.type=F.type==="mouseout"?"mouseleave":"mouseenter";F.target=H;j(F,s)}}}}if(!n&&(r==="focusin"||r==="focusout")){C=true;B=r==="focusin"?"focus":"blur";z=function(F){F=a(F||v.event);F.type=F.type==="focus"?"focusin":"focusout";j(F,s)}}t=p[s][r];if(!t){p[s][r]=t=[{func:D,scope:E}];t.fakeName=B;t.capture=C;t.nativeHandler=z;if(!g){t.proxyHandler=k(s)}if(r==="ready"){d(x,z,q)}else{c(x,B||r,g?z:t.proxyHandler,C)}}else{t.push({func:D,scope:E})}}x=t=0;return D};q.unbind=function(x,z,A){var s,u,v,B,r,t;if(!x||x.nodeType===3||x.nodeType===8){return q}s=x[h];if(s){t=p[s];if(z){z=z.split(" ");v=z.length;while(v--){r=z[v];u=t[r];if(u){if(A){B=u.length;while(B--){if(u[B].func===A){u.splice(B,1)}}}if(!A||u.length===0){delete t[r];e(x,u.fakeName||r,g?u.nativeHandler:u.proxyHandler,u.capture)}}}}else{for(r in t){u=t[r];e(x,u.fakeName||r,g?u.nativeHandler:u.proxyHandler,u.capture)}t={}}for(r in t){return q}delete p[s];try{delete x[h]}catch(y){x[h]=null}}return q};q.fire=function(u,s,r){var v,t;if(!u||u.nodeType===3||u.nodeType===8){return q}t=a(null,r);t.type=s;do{v=u[h];if(v){j(t,v)}u=u.parentNode||u.ownerDocument||u.defaultView||u.parentWindow}while(u&&!t.isPropagationStopped());return q};q.clean=function(u){var s,r,t=q.unbind;if(!u||u.nodeType===3||u.nodeType===8){return q}if(u[h]){t(u)}if(!u.getElementsByTagName){u=u.document}if(u&&u.getElementsByTagName){t(u);r=u.getElementsByTagName("*");s=r.length;while(s--){u=r[s];if(u[h]){t(u)}}}return q};q.callNativeHandler=function(s,r){if(p){p[s][r.type].nativeHandler(r)}};q.destory=function(){p={}};q.add=function(v,s,u,t){if(typeof(v)==="string"){v=document.getElementById(v)}if(v&&v instanceof Array){var r=v.length;while(r--){q.add(v[r],s,u,t)}return}if(s==="init"){s="ready"}return q.bind(v,s instanceof Array?s.join(" "):s,u,t)};q.remove=function(v,s,u,t){if(!v){return q}if(typeof(v)==="string"){v=document.getElementById(v)}if(v instanceof Array){var r=v.length;while(r--){q.remove(v[r],s,u,t)}return q}return q.unbind(v,s instanceof Array?s.join(" "):s,u)};q.clear=function(r){if(typeof(r)==="string"){r=document.getElementById(r)}return q.clean(r)};q.cancel=function(r){if(r){q.prevent(r);q.stop(r)}return false};q.prevent=function(r){if(!r.preventDefault){r=a(r)}r.preventDefault();return false};q.stop=function(r){if(!r.stopPropagation){r=a(r)}r.stopPropagation();return false}}b.EventUtils=f;b.Event=new f(function(i){return function(j){tinymce.dom.Event.callNativeHandler(i,j)}});b.Event.bind(window,"ready",function(){});b=0})(tinymce.dom,"data-mce-expando");tinymce.dom.TreeWalker=function(a,c){var b=a;function d(i,f,e,j){var h,g;if(i){if(!j&&i[f]){return i[f]}if(i!=c){h=i[e];if(h){return h}for(g=i.parentNode;g&&g!=c;g=g.parentNode){h=g[e];if(h){return h}}}}}this.current=function(){return b};this.next=function(e){return(b=d(b,"firstChild","nextSibling",e))};this.prev=function(e){return(b=d(b,"lastChild","previousSibling",e))}};(function(e){var g=e.each,d=e.is,f=e.isWebKit,b=e.isIE,h=e.html.Entities,c=/^([a-z0-9],?)+$/i,a=/^[ \t\r\n]*$/;e.create("tinymce.dom.DOMUtils",{doc:null,root:null,files:null,pixelStyles:/^(top|left|bottom|right|width|height|borderWidth)$/,props:{"for":"htmlFor","class":"className",className:"className",checked:"checked",disabled:"disabled",maxlength:"maxLength",readonly:"readOnly",selected:"selected",value:"value",id:"id",name:"name",type:"type"},DOMUtils:function(o,l){var k=this,i,j,n;k.doc=o;k.win=window;k.files={};k.cssFlicker=false;k.counter=0;k.stdMode=!e.isIE||o.documentMode>=8;k.boxModel=!e.isIE||o.compatMode=="CSS1Compat"||k.stdMode;k.hasOuterHTML="outerHTML" in o.createElement("a");k.settings=l=e.extend({keep_values:false,hex_colors:1},l);k.schema=l.schema;k.styles=new e.html.Styles({url_converter:l.url_converter,url_converter_scope:l.url_converter_scope},l.schema);if(e.isIE6){try{o.execCommand("BackgroundImageCache",false,true)}catch(m){k.cssFlicker=true}}k.fixDoc(o);k.events=l.ownEvents?new e.dom.EventUtils(l.proxy):e.dom.Event;e.addUnload(k.destroy,k);n=l.schema?l.schema.getBlockElements():{};k.isBlock=function(q){var p=q.nodeType;if(p){return !!(p===1&&n[q.nodeName])}return !!n[q]}},fixDoc:function(k){var j=this.settings,i;if(b&&j.schema){("abbr article aside audio canvas details figcaption figure footer header hgroup mark menu meter nav output progress section summary time video").replace(/\w+/g,function(l){k.createElement(l)});for(i in j.schema.getCustomElements()){k.createElement(i)}}},clone:function(k,i){var j=this,m,l;if(!b||k.nodeType!==1||i){return k.cloneNode(i)}l=j.doc;if(!i){m=l.createElement(k.nodeName);g(j.getAttribs(k),function(n){j.setAttrib(m,n.nodeName,j.getAttrib(k,n.nodeName))});return m}return m.firstChild},getRoot:function(){var i=this,j=i.settings;return(j&&i.get(j.root_element))||i.doc.body},getViewPort:function(j){var k,i;j=!j?this.win:j;k=j.document;i=this.boxModel?k.documentElement:k.body;return{x:j.pageXOffset||i.scrollLeft,y:j.pageYOffset||i.scrollTop,w:j.innerWidth||i.clientWidth,h:j.innerHeight||i.clientHeight}},getRect:function(l){var k,i=this,j;l=i.get(l);k=i.getPos(l);j=i.getSize(l);return{x:k.x,y:k.y,w:j.w,h:j.h}},getSize:function(l){var j=this,i,k;l=j.get(l);i=j.getStyle(l,"width");k=j.getStyle(l,"height");if(i.indexOf("px")===-1){i=0}if(k.indexOf("px")===-1){k=0}return{w:parseInt(i,10)||l.offsetWidth||l.clientWidth,h:parseInt(k,10)||l.offsetHeight||l.clientHeight}},getParent:function(k,j,i){return this.getParents(k,j,i,false)},getParents:function(s,m,k,q){var j=this,i,l=j.settings,p=[];s=j.get(s);q=q===undefined;if(l.strict_root){k=k||j.getRoot()}if(d(m,"string")){i=m;if(m==="*"){m=function(o){return o.nodeType==1}}else{m=function(o){return j.is(o,i)}}}while(s){if(s==k||!s.nodeType||s.nodeType===9){break}if(!m||m(s)){if(q){p.push(s)}else{return s}}s=s.parentNode}return q?p:null},get:function(i){var j;if(i&&this.doc&&typeof(i)=="string"){j=i;i=this.doc.getElementById(i);if(i&&i.id!==j){return this.doc.getElementsByName(j)[1]}}return i},getNext:function(j,i){return this._findSib(j,i,"nextSibling")},getPrev:function(j,i){return this._findSib(j,i,"previousSibling")},select:function(k,j){var i=this;return e.dom.Sizzle(k,i.get(j)||i.get(i.settings.root_element)||i.doc,[])},is:function(l,j){var k;if(l.length===undefined){if(j==="*"){return l.nodeType==1}if(c.test(j)){j=j.toLowerCase().split(/,/);l=l.nodeName.toLowerCase();for(k=j.length-1;k>=0;k--){if(j[k]==l){return true}}return false}}return e.dom.Sizzle.matches(j,l.nodeType?[l]:l).length>0},add:function(l,o,i,k,m){var j=this;return this.run(l,function(r){var q,n;q=d(o,"string")?j.doc.createElement(o):o;j.setAttribs(q,i);if(k){if(k.nodeType){q.appendChild(k)}else{j.setHTML(q,k)}}return !m?r.appendChild(q):q})},create:function(k,i,j){return this.add(this.doc.createElement(k),k,i,j,1)},createHTML:function(q,i,m){var p="",l=this,j;p+="<"+q;for(j in i){if(i.hasOwnProperty(j)){p+=" "+j+'="'+l.encode(i[j])+'"'}}if(typeof(m)!="undefined"){return p+">"+m+"</"+q+">"}return p+" />"},remove:function(i,j){return this.run(i,function(l){var m,k=l.parentNode;if(!k){return null}if(j){while(m=l.firstChild){if(!e.isIE||m.nodeType!==3||m.nodeValue){k.insertBefore(m,l)}else{l.removeChild(m)}}}return k.removeChild(l)})},setStyle:function(l,i,j){var k=this;return k.run(l,function(o){var n,m;n=o.style;i=i.replace(/-(\D)/g,function(q,p){return p.toUpperCase()});if(k.pixelStyles.test(i)&&(e.is(j,"number")||/^[\-0-9\.]+$/.test(j))){j+="px"}switch(i){case"opacity":if(b){n.filter=j===""?"":"alpha(opacity="+(j*100)+")";if(!l.currentStyle||!l.currentStyle.hasLayout){n.display="inline-block"}}n[i]=n["-moz-opacity"]=n["-khtml-opacity"]=j||"";break;case"float":b?n.styleFloat=j:n.cssFloat=j;break;default:n[i]=j||""}if(k.settings.update_styles){k.setAttrib(o,"data-mce-style")}})},getStyle:function(l,i,k){l=this.get(l);if(!l){return}if(this.doc.defaultView&&k){i=i.replace(/[A-Z]/g,function(m){return"-"+m});try{return this.doc.defaultView.getComputedStyle(l,null).getPropertyValue(i)}catch(j){return null}}i=i.replace(/-(\D)/g,function(n,m){return m.toUpperCase()});if(i=="float"){i=b?"styleFloat":"cssFloat"}if(l.currentStyle&&k){return l.currentStyle[i]}return l.style?l.style[i]:undefined},setStyles:function(l,m){var j=this,k=j.settings,i;i=k.update_styles;k.update_styles=0;g(m,function(o,p){j.setStyle(l,p,o)});k.update_styles=i;if(k.update_styles){j.setAttrib(l,k.cssText)}},removeAllAttribs:function(i){return this.run(i,function(l){var k,j=l.attributes;for(k=j.length-1;k>=0;k--){l.removeAttributeNode(j.item(k))}})},setAttrib:function(k,l,i){var j=this;if(!k||!l){return}if(j.settings.strict){l=l.toLowerCase()}return this.run(k,function(p){var o=j.settings;var m=p.getAttribute(l);if(i!==null){switch(l){case"style":if(!d(i,"string")){g(i,function(q,r){j.setStyle(p,r,q)});return}if(o.keep_values){if(i&&!j._isRes(i)){p.setAttribute("data-mce-style",i,2)}else{p.removeAttribute("data-mce-style",2)}}p.style.cssText=i;break;case"class":p.className=i||"";break;case"src":case"href":if(o.keep_values){if(o.url_converter){i=o.url_converter.call(o.url_converter_scope||j,i,l,p)}j.setAttrib(p,"data-mce-"+l,i,2)}break;case"shape":p.setAttribute("data-mce-style",i);break}}if(d(i)&&i!==null&&i.length!==0){p.setAttribute(l,""+i,2)}else{p.removeAttribute(l,2)}if(tinyMCE.activeEditor&&m!=i){var n=tinyMCE.activeEditor;n.onSetAttrib.dispatch(n,p,l,i)}})},setAttribs:function(j,k){var i=this;return this.run(j,function(l){g(k,function(m,o){i.setAttrib(l,o,m)})})},getAttrib:function(m,o,k){var i,j=this,l;m=j.get(m);if(!m||m.nodeType!==1){return k===l?false:k}if(!d(k)){k=""}if(/^(src|href|style|coords|shape)$/.test(o)){i=m.getAttribute("data-mce-"+o);if(i){return i}}if(b&&j.props[o]){i=m[j.props[o]];i=i&&i.nodeValue?i.nodeValue:i}if(!i){i=m.getAttribute(o,2)}if(/^(checked|compact|declare|defer|disabled|ismap|multiple|nohref|noshade|nowrap|readonly|selected)$/.test(o)){if(m[j.props[o]]===true&&i===""){return o}return i?o:""}if(m.nodeName==="FORM"&&m.getAttributeNode(o)){return m.getAttributeNode(o).nodeValue}if(o==="style"){i=i||m.style.cssText;if(i){i=j.serializeStyle(j.parseStyle(i),m.nodeName);if(j.settings.keep_values&&!j._isRes(i)){m.setAttribute("data-mce-style",i)}}}if(f&&o==="class"&&i){i=i.replace(/(apple|webkit)\-[a-z\-]+/gi,"")}if(b){switch(o){case"rowspan":case"colspan":if(i===1){i=""}break;case"size":if(i==="+0"||i===20||i===0){i=""}break;case"width":case"height":case"vspace":case"checked":case"disabled":case"readonly":if(i===0){i=""}break;case"hspace":if(i===-1){i=""}break;case"maxlength":case"tabindex":if(i===32768||i===2147483647||i==="32768"){i=""}break;case"multiple":case"compact":case"noshade":case"nowrap":if(i===65535){return o}return k;case"shape":i=i.toLowerCase();break;default:if(o.indexOf("on")===0&&i){i=e._replace(/^function\s+\w+\(\)\s+\{\s+(.*)\s+\}$/,"$1",""+i)}}}return(i!==l&&i!==null&&i!=="")?""+i:k},getPos:function(q,l){var j=this,i=0,p=0,m,o=j.doc,k;q=j.get(q);l=l||o.body;if(q){if(q.getBoundingClientRect){q=q.getBoundingClientRect();m=j.boxModel?o.documentElement:o.body;i=q.left+(o.documentElement.scrollLeft||o.body.scrollLeft)-m.clientTop;p=q.top+(o.documentElement.scrollTop||o.body.scrollTop)-m.clientLeft;return{x:i,y:p}}k=q;while(k&&k!=l&&k.nodeType){i+=k.offsetLeft||0;p+=k.offsetTop||0;k=k.offsetParent}k=q.parentNode;while(k&&k!=l&&k.nodeType){i-=k.scrollLeft||0;p-=k.scrollTop||0;k=k.parentNode}}return{x:i,y:p}},parseStyle:function(i){return this.styles.parse(i)},serializeStyle:function(j,i){return this.styles.serialize(j,i)},addStyle:function(j){var k=this.doc,i;styleElm=k.getElementById("mceDefaultStyles");if(!styleElm){styleElm=k.createElement("style"),styleElm.id="mceDefaultStyles";styleElm.type="text/css";i=k.getElementsByTagName("head")[0];if(i.firstChild){i.insertBefore(styleElm,i.firstChild)}else{i.appendChild(styleElm)}}if(styleElm.styleSheet){styleElm.styleSheet.cssText+=j}else{styleElm.appendChild(k.createTextNode(j))}},loadCSS:function(i){var k=this,l=k.doc,j;if(!i){i=""}j=l.getElementsByTagName("head")[0];g(i.split(","),function(m){var n;if(k.files[m]){return}k.files[m]=true;n=k.create("link",{rel:"stylesheet",href:e._addVer(m)});if(b&&l.documentMode&&l.recalc){n.onload=function(){if(l.recalc){l.recalc()}n.onload=null}}j.appendChild(n)})},addClass:function(i,j){return this.run(i,function(k){var l;if(!j){return 0}if(this.hasClass(k,j)){return k.className}l=this.removeClass(k,j);return k.className=(l!=""?(l+" "):"")+j})},removeClass:function(k,l){var i=this,j;return i.run(k,function(n){var m;if(i.hasClass(n,l)){if(!j){j=new RegExp("(^|\\s+)"+l+"(\\s+|$)","g")}m=n.className.replace(j," ");m=e.trim(m!=" "?m:"");n.className=m;if(!m){n.removeAttribute("class");n.removeAttribute("className")}return m}return n.className})},hasClass:function(j,i){j=this.get(j);if(!j||!i){return false}return(" "+j.className+" ").indexOf(" "+i+" ")!==-1},show:function(i){return this.setStyle(i,"display","block")},hide:function(i){return this.setStyle(i,"display","none")},isHidden:function(i){i=this.get(i);return !i||i.style.display=="none"||this.getStyle(i,"display")=="none"},uniqueId:function(i){return(!i?"mce_":i)+(this.counter++)},setHTML:function(k,j){var i=this;return i.run(k,function(m){if(b){while(m.firstChild){m.removeChild(m.firstChild)}try{m.innerHTML="<br />"+j;m.removeChild(m.firstChild)}catch(l){var n=i.create("div");n.innerHTML="<br />"+j;g(e.grep(n.childNodes),function(p,o){if(o&&m.canHaveHTML){m.appendChild(p)}})}}else{m.innerHTML=j}return j})},getOuterHTML:function(k){var j,i=this;k=i.get(k);if(!k){return null}if(k.nodeType===1&&i.hasOuterHTML){return k.outerHTML}j=(k.ownerDocument||i.doc).createElement("body");j.appendChild(k.cloneNode(true));return j.innerHTML},setOuterHTML:function(l,j,m){var i=this;function k(p,o,r){var s,q;q=r.createElement("body");q.innerHTML=o;s=q.lastChild;while(s){i.insertAfter(s.cloneNode(true),p);s=s.previousSibling}i.remove(p)}return this.run(l,function(o){o=i.get(o);if(o.nodeType==1){m=m||o.ownerDocument||i.doc;if(b){try{if(b&&o.nodeType==1){o.outerHTML=j}else{k(o,j,m)}}catch(n){k(o,j,m)}}else{k(o,j,m)}}})},decode:h.decode,encode:h.encodeAllRaw,insertAfter:function(i,j){j=this.get(j);return this.run(i,function(l){var k,m;k=j.parentNode;m=j.nextSibling;if(m){k.insertBefore(l,m)}else{k.appendChild(l)}return l})},replace:function(m,l,i){var j=this;if(d(l,"array")){m=m.cloneNode(true)}return j.run(l,function(k){if(i){g(e.grep(k.childNodes),function(n){m.appendChild(n)})}return k.parentNode.replaceChild(m,k)})},rename:function(l,i){var k=this,j;if(l.nodeName!=i.toUpperCase()){j=k.create(i);g(k.getAttribs(l),function(m){k.setAttrib(j,m.nodeName,k.getAttrib(l,m.nodeName))});k.replace(j,l,1)}return j||l},findCommonAncestor:function(k,i){var l=k,j;while(l){j=i;while(j&&l!=j){j=j.parentNode}if(l==j){break}l=l.parentNode}if(!l&&k.ownerDocument){return k.ownerDocument.documentElement}return l},toHex:function(i){var k=/^\s*rgb\s*?\(\s*?([0-9]+)\s*?,\s*?([0-9]+)\s*?,\s*?([0-9]+)\s*?\)\s*$/i.exec(i);function j(l){l=parseInt(l,10).toString(16);return l.length>1?l:"0"+l}if(k){i="#"+j(k[1])+j(k[2])+j(k[3]);return i}return i},getClasses:function(){var n=this,j=[],m,o={},p=n.settings.class_filter,l;if(n.classes){return n.classes}function q(i){g(i.imports,function(s){q(s)});g(i.cssRules||i.rules,function(s){switch(s.type||1){case 1:if(s.selectorText){g(s.selectorText.split(","),function(r){r=r.replace(/^\s*|\s*$|^\s\./g,"");if(/\.mce/.test(r)||!/\.[\w\-]+$/.test(r)){return}l=r;r=e._replace(/.*\.([a-z0-9_\-]+).*/i,"$1",r);if(p&&!(r=p(r,l))){return}if(!o[r]){j.push({"class":r});o[r]=1}})}break;case 3:q(s.styleSheet);break}})}try{g(n.doc.styleSheets,q)}catch(k){}if(j.length>0){n.classes=j}return j},run:function(l,k,j){var i=this,m;if(i.doc&&typeof(l)==="string"){l=i.get(l)}if(!l){return false}j=j||this;if(!l.nodeType&&(l.length||l.length===0)){m=[];g(l,function(o,n){if(o){if(typeof(o)=="string"){o=i.doc.getElementById(o)}m.push(k.call(j,o,n))}});return m}return k.call(j,l)},getAttribs:function(j){var i;j=this.get(j);if(!j){return[]}if(b){i=[];if(j.nodeName=="OBJECT"){return j.attributes}if(j.nodeName==="OPTION"&&this.getAttrib(j,"selected")){i.push({specified:1,nodeName:"selected"})}j.cloneNode(false).outerHTML.replace(/<\/?[\w:\-]+ ?|=[\"][^\"]+\"|=\'[^\']+\'|=[\w\-]+|>/gi,"").replace(/[\w:\-]+/gi,function(k){i.push({specified:1,nodeName:k})});return i}return j.attributes},isEmpty:function(m,k){var r=this,o,n,q,j,l,p=0;m=m.firstChild;if(m){j=new e.dom.TreeWalker(m,m.parentNode);k=k||r.schema?r.schema.getNonEmptyElements():null;do{q=m.nodeType;if(q===1){if(m.getAttribute("data-mce-bogus")){continue}l=m.nodeName.toLowerCase();if(k&&k[l]){if(l==="br"){p++;continue}return false}n=r.getAttribs(m);o=m.attributes.length;while(o--){l=m.attributes[o].nodeName;if(l==="name"||l==="data-mce-bookmark"){return false}}}if(q==8){return false}if((q===3&&!a.test(m.nodeValue))){return false}}while(m=j.next())}return p<=1},destroy:function(j){var i=this;i.win=i.doc=i.root=i.events=i.frag=null;if(!j){e.removeUnload(i.destroy)}},createRng:function(){var i=this.doc;return i.createRange?i.createRange():new e.dom.Range(this)},nodeIndex:function(m,n){var i=0,k,l,j;if(m){for(k=m.nodeType,m=m.previousSibling,l=m;m;m=m.previousSibling){j=m.nodeType;if(n&&j==3){if(j==k||!m.nodeValue.length){continue}}i++;k=j}}return i},split:function(m,l,p){var q=this,i=q.createRng(),n,k,o;function j(v){var t,s=v.childNodes,u=v.nodeType;function x(A){var z=A.previousSibling&&A.previousSibling.nodeName=="SPAN";var y=A.nextSibling&&A.nextSibling.nodeName=="SPAN";return z&&y}if(u==1&&v.getAttribute("data-mce-type")=="bookmark"){return}for(t=s.length-1;t>=0;t--){j(s[t])}if(u!=9){if(u==3&&v.nodeValue.length>0){var r=e.trim(v.nodeValue).length;if(!q.isBlock(v.parentNode)||r>0||r===0&&x(v)){return}}else{if(u==1){s=v.childNodes;if(s.length==1&&s[0]&&s[0].nodeType==1&&s[0].getAttribute("data-mce-type")=="bookmark"){v.parentNode.insertBefore(s[0],v)}if(s.length||/^(br|hr|input|img)$/i.test(v.nodeName)){return}}}q.remove(v)}return v}if(m&&l){i.setStart(m.parentNode,q.nodeIndex(m));i.setEnd(l.parentNode,q.nodeIndex(l));n=i.extractContents();i=q.createRng();i.setStart(l.parentNode,q.nodeIndex(l)+1);i.setEnd(m.parentNode,q.nodeIndex(m)+1);k=i.extractContents();o=m.parentNode;o.insertBefore(j(n),m);if(p){o.replaceChild(p,l)}else{o.insertBefore(l,m)}o.insertBefore(j(k),m);q.remove(m);return p||l}},bind:function(l,i,k,j){return this.events.add(l,i,k,j||this)},unbind:function(k,i,j){return this.events.remove(k,i,j)},fire:function(k,j,i){return this.events.fire(k,j,i)},getContentEditable:function(j){var i;if(j.nodeType!=1){return null}i=j.getAttribute("data-mce-contenteditable");if(i&&i!=="inherit"){return i}return j.contentEditable!=="inherit"?j.contentEditable:null},_findSib:function(l,i,j){var k=this,m=i;if(l){if(d(m,"string")){m=function(n){return k.is(n,i)}}for(l=l[j];l;l=l[j]){if(m(l)){return l}}}return null},_isRes:function(i){return/^(top|left|bottom|right|width|height)/i.test(i)||/;\s*(top|left|bottom|right|width|height)/i.test(i)}});e.DOM=new e.dom.DOMUtils(document,{process_html:0})})(tinymce);(function(a){function b(c){var O=this,e=c.doc,U=0,F=1,j=2,E=true,S=false,W="startOffset",h="startContainer",Q="endContainer",A="endOffset",k=tinymce.extend,n=c.nodeIndex;k(O,{startContainer:e,startOffset:0,endContainer:e,endOffset:0,collapsed:E,commonAncestorContainer:e,START_TO_START:0,START_TO_END:1,END_TO_END:2,END_TO_START:3,setStart:q,setEnd:s,setStartBefore:g,setStartAfter:J,setEndBefore:K,setEndAfter:u,collapse:B,selectNode:y,selectNodeContents:G,compareBoundaryPoints:v,deleteContents:p,extractContents:I,cloneContents:d,insertNode:D,surroundContents:N,cloneRange:L,toStringIE:T});function x(){return e.createDocumentFragment()}function q(X,t){C(E,X,t)}function s(X,t){C(S,X,t)}function g(t){q(t.parentNode,n(t))}function J(t){q(t.parentNode,n(t)+1)}function K(t){s(t.parentNode,n(t))}function u(t){s(t.parentNode,n(t)+1)}function B(t){if(t){O[Q]=O[h];O[A]=O[W]}else{O[h]=O[Q];O[W]=O[A]}O.collapsed=E}function y(t){g(t);u(t)}function G(t){q(t,0);s(t,t.nodeType===1?t.childNodes.length:t.nodeValue.length)}function v(aa,t){var ad=O[h],Y=O[W],ac=O[Q],X=O[A],ab=t.startContainer,af=t.startOffset,Z=t.endContainer,ae=t.endOffset;if(aa===0){return H(ad,Y,ab,af)}if(aa===1){return H(ac,X,ab,af)}if(aa===2){return H(ac,X,Z,ae)}if(aa===3){return H(ad,Y,Z,ae)}}function p(){l(j)}function I(){return l(U)}function d(){return l(F)}function D(aa){var X=this[h],t=this[W],Z,Y;if((X.nodeType===3||X.nodeType===4)&&X.nodeValue){if(!t){X.parentNode.insertBefore(aa,X)}else{if(t>=X.nodeValue.length){c.insertAfter(aa,X)}else{Z=X.splitText(t);X.parentNode.insertBefore(aa,Z)}}}else{if(X.childNodes.length>0){Y=X.childNodes[t]}if(Y){X.insertBefore(aa,Y)}else{X.appendChild(aa)}}}function N(X){var t=O.extractContents();O.insertNode(X);X.appendChild(t);O.selectNode(X)}function L(){return k(new b(c),{startContainer:O[h],startOffset:O[W],endContainer:O[Q],endOffset:O[A],collapsed:O.collapsed,commonAncestorContainer:O.commonAncestorContainer})}function P(t,X){var Y;if(t.nodeType==3){return t}if(X<0){return t}Y=t.firstChild;while(Y&&X>0){--X;Y=Y.nextSibling}if(Y){return Y}return t}function m(){return(O[h]==O[Q]&&O[W]==O[A])}function H(Z,ab,X,aa){var ac,Y,t,ad,af,ae;if(Z==X){if(ab==aa){return 0}if(ab<aa){return -1}return 1}ac=X;while(ac&&ac.parentNode!=Z){ac=ac.parentNode}if(ac){Y=0;t=Z.firstChild;while(t!=ac&&Y<ab){Y++;t=t.nextSibling}if(ab<=Y){return -1}return 1}ac=Z;while(ac&&ac.parentNode!=X){ac=ac.parentNode}if(ac){Y=0;t=X.firstChild;while(t!=ac&&Y<aa){Y++;t=t.nextSibling}if(Y<aa){return -1}return 1}ad=c.findCommonAncestor(Z,X);af=Z;while(af&&af.parentNode!=ad){af=af.parentNode}if(!af){af=ad}ae=X;while(ae&&ae.parentNode!=ad){ae=ae.parentNode}if(!ae){ae=ad}if(af==ae){return 0}t=ad.firstChild;while(t){if(t==af){return -1}if(t==ae){return 1}t=t.nextSibling}}function C(X,aa,Z){var t,Y;if(X){O[h]=aa;O[W]=Z}else{O[Q]=aa;O[A]=Z}t=O[Q];while(t.parentNode){t=t.parentNode}Y=O[h];while(Y.parentNode){Y=Y.parentNode}if(Y==t){if(H(O[h],O[W],O[Q],O[A])>0){O.collapse(X)}}else{O.collapse(X)}O.collapsed=m();O.commonAncestorContainer=c.findCommonAncestor(O[h],O[Q])}function l(ad){var ac,Z=0,af=0,X,ab,Y,aa,t,ae;if(O[h]==O[Q]){return f(ad)}for(ac=O[Q],X=ac.parentNode;X;ac=X,X=X.parentNode){if(X==O[h]){return r(ac,ad)}++Z}for(ac=O[h],X=ac.parentNode;X;ac=X,X=X.parentNode){if(X==O[Q]){return V(ac,ad)}++af}ab=af-Z;Y=O[h];while(ab>0){Y=Y.parentNode;ab--}aa=O[Q];while(ab<0){aa=aa.parentNode;ab++}for(t=Y.parentNode,ae=aa.parentNode;t!=ae;t=t.parentNode,ae=ae.parentNode){Y=t;aa=ae}return o(Y,aa,ad)}function f(ac){var ae,af,t,Y,Z,ad,aa,X,ab;if(ac!=j){ae=x()}if(O[W]==O[A]){return ae}if(O[h].nodeType==3){af=O[h].nodeValue;t=af.substring(O[W],O[A]);if(ac!=F){Y=O[h];X=O[W];ab=O[A]-O[W];if(X===0&&ab>=Y.nodeValue.length-1){Y.parentNode.removeChild(Y)}else{Y.deleteData(X,ab)}O.collapse(E)}if(ac==j){return}if(t.length>0){ae.appendChild(e.createTextNode(t))}return ae}Y=P(O[h],O[W]);Z=O[A]-O[W];while(Y&&Z>0){ad=Y.nextSibling;aa=z(Y,ac);if(ae){ae.appendChild(aa)}--Z;Y=ad}if(ac!=F){O.collapse(E)}return ae}function r(ad,aa){var ac,ab,X,t,Z,Y;if(aa!=j){ac=x()}ab=i(ad,aa);if(ac){ac.appendChild(ab)}X=n(ad);t=X-O[W];if(t<=0){if(aa!=F){O.setEndBefore(ad);O.collapse(S)}return ac}ab=ad.previousSibling;while(t>0){Z=ab.previousSibling;Y=z(ab,aa);if(ac){ac.insertBefore(Y,ac.firstChild)}--t;ab=Z}if(aa!=F){O.setEndBefore(ad);O.collapse(S)}return ac}function V(ab,aa){var ad,X,ac,t,Z,Y;if(aa!=j){ad=x()}ac=R(ab,aa);if(ad){ad.appendChild(ac)}X=n(ab);++X;t=O[A]-X;ac=ab.nextSibling;while(ac&&t>0){Z=ac.nextSibling;Y=z(ac,aa);if(ad){ad.appendChild(Y)}--t;ac=Z}if(aa!=F){O.setStartAfter(ab);O.collapse(E)}return ad}function o(ab,t,ae){var Y,ag,aa,ac,ad,X,af,Z;if(ae!=j){ag=x()}Y=R(ab,ae);if(ag){ag.appendChild(Y)}aa=ab.parentNode;ac=n(ab);ad=n(t);++ac;X=ad-ac;af=ab.nextSibling;while(X>0){Z=af.nextSibling;Y=z(af,ae);if(ag){ag.appendChild(Y)}af=Z;--X}Y=i(t,ae);if(ag){ag.appendChild(Y)}if(ae!=F){O.setStartAfter(ab);O.collapse(E)}return ag}function i(ac,ad){var Y=P(O[Q],O[A]-1),ae,ab,aa,t,X,Z=Y!=O[Q];if(Y==ac){return M(Y,Z,S,ad)}ae=Y.parentNode;ab=M(ae,S,S,ad);while(ae){while(Y){aa=Y.previousSibling;t=M(Y,Z,S,ad);if(ad!=j){ab.insertBefore(t,ab.firstChild)}Z=E;Y=aa}if(ae==ac){return ab}Y=ae.previousSibling;ae=ae.parentNode;X=M(ae,S,S,ad);if(ad!=j){X.appendChild(ab)}ab=X}}function R(ac,ad){var Z=P(O[h],O[W]),aa=Z!=O[h],ae,ab,Y,t,X;if(Z==ac){return M(Z,aa,E,ad)}ae=Z.parentNode;ab=M(ae,S,E,ad);while(ae){while(Z){Y=Z.nextSibling;t=M(Z,aa,E,ad);if(ad!=j){ab.appendChild(t)}aa=E;Z=Y}if(ae==ac){return ab}Z=ae.nextSibling;ae=ae.parentNode;X=M(ae,S,E,ad);if(ad!=j){X.appendChild(ab)}ab=X}}function M(t,aa,ad,ae){var Z,Y,ab,X,ac;if(aa){return z(t,ae)}if(t.nodeType==3){Z=t.nodeValue;if(ad){X=O[W];Y=Z.substring(X);ab=Z.substring(0,X)}else{X=O[A];Y=Z.substring(0,X);ab=Z.substring(X)}if(ae!=F){t.nodeValue=ab}if(ae==j){return}ac=c.clone(t,S);ac.nodeValue=Y;return ac}if(ae==j){return}return c.clone(t,S)}function z(X,t){if(t!=j){return t==F?c.clone(X,E):X}X.parentNode.removeChild(X)}function T(){return c.create("body",null,d()).outerText}return O}a.Range=b;b.prototype.toString=function(){return this.toStringIE()}})(tinymce.dom);(function(){function a(d){var b=this,h=d.dom,c=true,f=false;function e(i,j){var k,t=0,q,n,m,l,o,r,p=-1,s;k=i.duplicate();k.collapse(j);s=k.parentElement();if(s.ownerDocument!==d.dom.doc){return}while(s.contentEditable==="false"){s=s.parentNode}if(!s.hasChildNodes()){return{node:s,inside:1}}m=s.children;q=m.length-1;while(t<=q){r=Math.floor((t+q)/2);l=m[r];k.moveToElementText(l);p=k.compareEndPoints(j?"StartToStart":"EndToEnd",i);if(p>0){q=r-1}else{if(p<0){t=r+1}else{return{node:l}}}}if(p<0){if(!l){k.moveToElementText(s);k.collapse(true);l=s;n=true}else{k.collapse(false)}o=0;while(k.compareEndPoints(j?"StartToStart":"StartToEnd",i)!==0){if(k.move("character",1)===0||s!=k.parentElement()){break}o++}}else{k.collapse(true);o=0;while(k.compareEndPoints(j?"StartToStart":"StartToEnd",i)!==0){if(k.move("character",-1)===0||s!=k.parentElement()){break}o++}}return{node:l,position:p,offset:o,inside:n}}function g(){var i=d.getRng(),r=h.createRng(),l,k,p,q,m,j;l=i.item?i.item(0):i.parentElement();if(l.ownerDocument!=h.doc){return r}k=d.isCollapsed();if(i.item){r.setStart(l.parentNode,h.nodeIndex(l));r.setEnd(r.startContainer,r.startOffset+1);return r}function o(A){var u=e(i,A),s,y,z=0,x,v,t;s=u.node;y=u.offset;if(u.inside&&!s.hasChildNodes()){r[A?"setStart":"setEnd"](s,0);return}if(y===v){r[A?"setStartBefore":"setEndAfter"](s);return}if(u.position<0){x=u.inside?s.firstChild:s.nextSibling;if(!x){r[A?"setStartAfter":"setEndAfter"](s);return}if(!y){if(x.nodeType==3){r[A?"setStart":"setEnd"](x,0)}else{r[A?"setStartBefore":"setEndBefore"](x)}return}while(x){t=x.nodeValue;z+=t.length;if(z>=y){s=x;z-=y;z=t.length-z;break}x=x.nextSibling}}else{x=s.previousSibling;if(!x){return r[A?"setStartBefore":"setEndBefore"](s)}if(!y){if(s.nodeType==3){r[A?"setStart":"setEnd"](x,s.nodeValue.length)}else{r[A?"setStartAfter":"setEndAfter"](x)}return}while(x){z+=x.nodeValue.length;if(z>=y){s=x;z-=y;break}x=x.previousSibling}}r[A?"setStart":"setEnd"](s,z)}try{o(true);if(!k){o()}}catch(n){if(n.number==-2147024809){m=b.getBookmark(2);p=i.duplicate();p.collapse(true);l=p.parentElement();if(!k){p=i.duplicate();p.collapse(false);q=p.parentElement();q.innerHTML=q.innerHTML}l.innerHTML=l.innerHTML;b.moveToBookmark(m);i=d.getRng();o(true);if(!k){o()}}else{throw n}}return r}this.getBookmark=function(m){var j=d.getRng(),o,i,l={};function n(u){var t,p,s,r,q=[];t=u.parentNode;p=h.getRoot().parentNode;while(t!=p&&t.nodeType!==9){s=t.children;r=s.length;while(r--){if(u===s[r]){q.push(r);break}}u=t;t=t.parentNode}return q}function k(q){var p;p=e(j,q);if(p){return{position:p.position,offset:p.offset,indexes:n(p.node),inside:p.inside}}}if(m===2){if(!j.item){l.start=k(true);if(!d.isCollapsed()){l.end=k()}}else{l.start={ctrl:true,indexes:n(j.item(0))}}}return l};this.moveToBookmark=function(k){var j,i=h.doc.body;function m(o){var r,q,n,p;r=h.getRoot();for(q=o.length-1;q>=0;q--){p=r.children;n=o[q];if(n<=p.length-1){r=p[n]}}return r}function l(r){var n=k[r?"start":"end"],q,p,o;if(n){q=n.position>0;p=i.createTextRange();p.moveToElementText(m(n.indexes));offset=n.offset;if(offset!==o){p.collapse(n.inside||q);p.moveStart("character",q?-offset:offset)}else{p.collapse(r)}j.setEndPoint(r?"StartToStart":"EndToStart",p);if(r){j.collapse(true)}}}if(k.start){if(k.start.ctrl){j=i.createControlRange();j.addElement(m(k.start.indexes));j.select()}else{j=i.createTextRange();l(true);l();j.select()}}};this.addRange=function(i){var n,l,k,p,v,q,t,s=d.dom.doc,m=s.body,r,u;function j(C){var y,B,x,A,z;x=h.create("a");y=C?k:v;B=C?p:q;A=n.duplicate();if(y==s||y==s.documentElement){y=m;B=0}if(y.nodeType==3){y.parentNode.insertBefore(x,y);A.moveToElementText(x);A.moveStart("character",B);h.remove(x);n.setEndPoint(C?"StartToStart":"EndToEnd",A)}else{z=y.childNodes;if(z.length){if(B>=z.length){h.insertAfter(x,z[z.length-1])}else{y.insertBefore(x,z[B])}A.moveToElementText(x)}else{if(y.canHaveHTML){y.innerHTML="<span>\uFEFF</span>";x=y.firstChild;A.moveToElementText(x);A.collapse(f)}}n.setEndPoint(C?"StartToStart":"EndToEnd",A);h.remove(x)}}k=i.startContainer;p=i.startOffset;v=i.endContainer;q=i.endOffset;n=m.createTextRange();if(k==v&&k.nodeType==1){if(p==q&&!k.hasChildNodes()){if(k.canHaveHTML){t=k.previousSibling;if(t&&!t.hasChildNodes()&&h.isBlock(t)){t.innerHTML="\uFEFF"}else{t=null}k.innerHTML="<span>\uFEFF</span><span>\uFEFF</span>";n.moveToElementText(k.lastChild);n.select();h.doc.selection.clear();k.innerHTML="";if(t){t.innerHTML=""}return}else{p=h.nodeIndex(k);k=k.parentNode}}if(p==q-1){try{u=k.childNodes[p];l=m.createControlRange();l.addElement(u);l.select();r=d.getRng();if(r.item&&u===r.item(0)){return}}catch(o){}}}j(true);j();n.select()};this.getRangeAt=g}tinymce.dom.TridentSelection=a})();(function(){var n=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,i="sizcache",o=0,r=Object.prototype.toString,h=false,g=true,q=/\\/g,u=/\r\n/g,x=/\W/;[0,0].sort(function(){g=false;return 0});var d=function(C,e,F,G){F=F||[];e=e||document;var I=e;if(e.nodeType!==1&&e.nodeType!==9){return[]}if(!C||typeof C!=="string"){return F}var z,K,N,y,J,M,L,E,B=true,A=d.isXML(e),D=[],H=C;do{n.exec("");z=n.exec(H);if(z){H=z[3];D.push(z[1]);if(z[2]){y=z[3];break}}}while(z);if(D.length>1&&j.exec(C)){if(D.length===2&&k.relative[D[0]]){K=s(D[0]+D[1],e,G)}else{K=k.relative[D[0]]?[e]:d(D.shift(),e);while(D.length){C=D.shift();if(k.relative[C]){C+=D.shift()}K=s(C,K,G)}}}else{if(!G&&D.length>1&&e.nodeType===9&&!A&&k.match.ID.test(D[0])&&!k.match.ID.test(D[D.length-1])){J=d.find(D.shift(),e,A);e=J.expr?d.filter(J.expr,J.set)[0]:J.set[0]}if(e){J=G?{expr:D.pop(),set:l(G)}:d.find(D.pop(),D.length===1&&(D[0]==="~"||D[0]==="+")&&e.parentNode?e.parentNode:e,A);K=J.expr?d.filter(J.expr,J.set):J.set;if(D.length>0){N=l(K)}else{B=false}while(D.length){M=D.pop();L=M;if(!k.relative[M]){M=""}else{L=D.pop()}if(L==null){L=e}k.relative[M](N,L,A)}}else{N=D=[]}}if(!N){N=K}if(!N){d.error(M||C)}if(r.call(N)==="[object Array]"){if(!B){F.push.apply(F,N)}else{if(e&&e.nodeType===1){for(E=0;N[E]!=null;E++){if(N[E]&&(N[E]===true||N[E].nodeType===1&&d.contains(e,N[E]))){F.push(K[E])}}}else{for(E=0;N[E]!=null;E++){if(N[E]&&N[E].nodeType===1){F.push(K[E])}}}}}else{l(N,F)}if(y){d(y,I,F,G);d.uniqueSort(F)}return F};d.uniqueSort=function(y){if(p){h=g;y.sort(p);if(h){for(var e=1;e<y.length;e++){if(y[e]===y[e-1]){y.splice(e--,1)}}}}return y};d.matches=function(e,y){return d(e,null,null,y)};d.matchesSelector=function(e,y){return d(y,null,null,[e]).length>0};d.find=function(E,e,F){var D,z,B,A,C,y;if(!E){return[]}for(z=0,B=k.order.length;z<B;z++){C=k.order[z];if((A=k.leftMatch[C].exec(E))){y=A[1];A.splice(1,1);if(y.substr(y.length-1)!=="\\"){A[1]=(A[1]||"").replace(q,"");D=k.find[C](A,e,F);if(D!=null){E=E.replace(k.match[C],"");break}}}}if(!D){D=typeof e.getElementsByTagName!=="undefined"?e.getElementsByTagName("*"):[]}return{set:D,expr:E}};d.filter=function(I,H,L,B){var D,e,G,N,K,y,A,C,J,z=I,M=[],F=H,E=H&&H[0]&&d.isXML(H[0]);while(I&&H.length){for(G in k.filter){if((D=k.leftMatch[G].exec(I))!=null&&D[2]){y=k.filter[G];A=D[1];e=false;D.splice(1,1);if(A.substr(A.length-1)==="\\"){continue}if(F===M){M=[]}if(k.preFilter[G]){D=k.preFilter[G](D,F,L,M,B,E);if(!D){e=N=true}else{if(D===true){continue}}}if(D){for(C=0;(K=F[C])!=null;C++){if(K){N=y(K,D,C,F);J=B^N;if(L&&N!=null){if(J){e=true}else{F[C]=false}}else{if(J){M.push(K);e=true}}}}}if(N!==undefined){if(!L){F=M}I=I.replace(k.match[G],"");if(!e){return[]}break}}}if(I===z){if(e==null){d.error(I)}else{break}}z=I}return F};d.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)};var b=d.getText=function(B){var z,A,e=B.nodeType,y="";if(e){if(e===1||e===9||e===11){if(typeof B.textContent==="string"){return B.textContent}else{if(typeof B.innerText==="string"){return B.innerText.replace(u,"")}else{for(B=B.firstChild;B;B=B.nextSibling){y+=b(B)}}}}else{if(e===3||e===4){return B.nodeValue}}}else{for(z=0;(A=B[z]);z++){if(A.nodeType!==8){y+=b(A)}}}return y};var k=d.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(e){return e.getAttribute("href")},type:function(e){return e.getAttribute("type")}},relative:{"+":function(D,y){var A=typeof y==="string",C=A&&!x.test(y),E=A&&!C;if(C){y=y.toLowerCase()}for(var z=0,e=D.length,B;z<e;z++){if((B=D[z])){while((B=B.previousSibling)&&B.nodeType!==1){}D[z]=E||B&&B.nodeName.toLowerCase()===y?B||false:B===y}}if(E){d.filter(y,D,true)}},">":function(D,y){var C,B=typeof y==="string",z=0,e=D.length;if(B&&!x.test(y)){y=y.toLowerCase();for(;z<e;z++){C=D[z];if(C){var A=C.parentNode;D[z]=A.nodeName.toLowerCase()===y?A:false}}}else{for(;z<e;z++){C=D[z];if(C){D[z]=B?C.parentNode:C.parentNode===y}}if(B){d.filter(y,D,true)}}},"":function(A,y,C){var B,z=o++,e=t;if(typeof y==="string"&&!x.test(y)){y=y.toLowerCase();B=y;e=a}e("parentNode",y,z,A,B,C)},"~":function(A,y,C){var B,z=o++,e=t;if(typeof y==="string"&&!x.test(y)){y=y.toLowerCase();B=y;e=a}e("previousSibling",y,z,A,B,C)}},find:{ID:function(y,z,A){if(typeof z.getElementById!=="undefined"&&!A){var e=z.getElementById(y[1]);return e&&e.parentNode?[e]:[]}},NAME:function(z,C){if(typeof C.getElementsByName!=="undefined"){var y=[],B=C.getElementsByName(z[1]);for(var A=0,e=B.length;A<e;A++){if(B[A].getAttribute("name")===z[1]){y.push(B[A])}}return y.length===0?null:y}},TAG:function(e,y){if(typeof y.getElementsByTagName!=="undefined"){return y.getElementsByTagName(e[1])}}},preFilter:{CLASS:function(A,y,z,e,D,E){A=" "+A[1].replace(q,"")+" ";if(E){return A}for(var B=0,C;(C=y[B])!=null;B++){if(C){if(D^(C.className&&(" "+C.className+" ").replace(/[\t\n\r]/g," ").indexOf(A)>=0)){if(!z){e.push(C)}}else{if(z){y[B]=false}}}}return false},ID:function(e){return e[1].replace(q,"")},TAG:function(y,e){return y[1].replace(q,"").toLowerCase()},CHILD:function(e){if(e[1]==="nth"){if(!e[2]){d.error(e[0])}e[2]=e[2].replace(/^\+|\s*/g,"");var y=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(e[2]==="even"&&"2n"||e[2]==="odd"&&"2n+1"||!/\D/.test(e[2])&&"0n+"+e[2]||e[2]);e[2]=(y[1]+(y[2]||1))-0;e[3]=y[3]-0}else{if(e[2]){d.error(e[0])}}e[0]=o++;return e},ATTR:function(B,y,z,e,C,D){var A=B[1]=B[1].replace(q,"");if(!D&&k.attrMap[A]){B[1]=k.attrMap[A]}B[4]=(B[4]||B[5]||"").replace(q,"");if(B[2]==="~="){B[4]=" "+B[4]+" "}return B},PSEUDO:function(B,y,z,e,C){if(B[1]==="not"){if((n.exec(B[3])||"").length>1||/^\w/.test(B[3])){B[3]=d(B[3],null,null,y)}else{var A=d.filter(B[3],y,z,true^C);if(!z){e.push.apply(e,A)}return false}}else{if(k.match.POS.test(B[0])||k.match.CHILD.test(B[0])){return true}}return B},POS:function(e){e.unshift(true);return e}},filters:{enabled:function(e){return e.disabled===false&&e.type!=="hidden"},disabled:function(e){return e.disabled===true},checked:function(e){return e.checked===true},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !!e.firstChild},empty:function(e){return !e.firstChild},has:function(z,y,e){return !!d(e[3],z).length},header:function(e){return(/h\d/i).test(e.nodeName)},text:function(z){var e=z.getAttribute("type"),y=z.type;return z.nodeName.toLowerCase()==="input"&&"text"===y&&(e===y||e===null)},radio:function(e){return e.nodeName.toLowerCase()==="input"&&"radio"===e.type},checkbox:function(e){return e.nodeName.toLowerCase()==="input"&&"checkbox"===e.type},file:function(e){return e.nodeName.toLowerCase()==="input"&&"file"===e.type},password:function(e){return e.nodeName.toLowerCase()==="input"&&"password"===e.type},submit:function(y){var e=y.nodeName.toLowerCase();return(e==="input"||e==="button")&&"submit"===y.type},image:function(e){return e.nodeName.toLowerCase()==="input"&&"image"===e.type},reset:function(y){var e=y.nodeName.toLowerCase();return(e==="input"||e==="button")&&"reset"===y.type},button:function(y){var e=y.nodeName.toLowerCase();return e==="input"&&"button"===y.type||e==="button"},input:function(e){return(/input|select|textarea|button/i).test(e.nodeName)},focus:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(y,e){return e===0},last:function(z,y,e,A){return y===A.length-1},even:function(y,e){return e%2===0},odd:function(y,e){return e%2===1},lt:function(z,y,e){return y<e[3]-0},gt:function(z,y,e){return y>e[3]-0},nth:function(z,y,e){return e[3]-0===y},eq:function(z,y,e){return e[3]-0===y}},filter:{PSEUDO:function(z,E,D,F){var e=E[1],y=k.filters[e];if(y){return y(z,D,E,F)}else{if(e==="contains"){return(z.textContent||z.innerText||b([z])||"").indexOf(E[3])>=0}else{if(e==="not"){var A=E[3];for(var C=0,B=A.length;C<B;C++){if(A[C]===z){return false}}return true}else{d.error(e)}}}},CHILD:function(z,B){var A,H,D,G,e,C,F,E=B[1],y=z;switch(E){case"only":case"first":while((y=y.previousSibling)){if(y.nodeType===1){return false}}if(E==="first"){return true}y=z;case"last":while((y=y.nextSibling)){if(y.nodeType===1){return false}}return true;case"nth":A=B[2];H=B[3];if(A===1&&H===0){return true}D=B[0];G=z.parentNode;if(G&&(G[i]!==D||!z.nodeIndex)){C=0;for(y=G.firstChild;y;y=y.nextSibling){if(y.nodeType===1){y.nodeIndex=++C}}G[i]=D}F=z.nodeIndex-H;if(A===0){return F===0}else{return(F%A===0&&F/A>=0)}}},ID:function(y,e){return y.nodeType===1&&y.getAttribute("id")===e},TAG:function(y,e){return(e==="*"&&y.nodeType===1)||!!y.nodeName&&y.nodeName.toLowerCase()===e},CLASS:function(y,e){return(" "+(y.className||y.getAttribute("class"))+" ").indexOf(e)>-1},ATTR:function(C,A){var z=A[1],e=d.attr?d.attr(C,z):k.attrHandle[z]?k.attrHandle[z](C):C[z]!=null?C[z]:C.getAttribute(z),D=e+"",B=A[2],y=A[4];return e==null?B==="!=":!B&&d.attr?e!=null:B==="="?D===y:B==="*="?D.indexOf(y)>=0:B==="~="?(" "+D+" ").indexOf(y)>=0:!y?D&&e!==false:B==="!="?D!==y:B==="^="?D.indexOf(y)===0:B==="$="?D.substr(D.length-y.length)===y:B==="|="?D===y||D.substr(0,y.length+1)===y+"-":false},POS:function(B,y,z,C){var e=y[2],A=k.setFilters[e];if(A){return A(B,z,y,C)}}}};var j=k.match.POS,c=function(y,e){return"\\"+(e-0+1)};for(var f in k.match){k.match[f]=new RegExp(k.match[f].source+(/(?![^\[]*\])(?![^\(]*\))/.source));k.leftMatch[f]=new RegExp(/(^(?:.|\r|\n)*?)/.source+k.match[f].source.replace(/\\(\d+)/g,c))}k.match.globalPOS=j;var l=function(y,e){y=Array.prototype.slice.call(y,0);if(e){e.push.apply(e,y);return e}return y};try{Array.prototype.slice.call(document.documentElement.childNodes,0)[0].nodeType}catch(v){l=function(B,A){var z=0,y=A||[];if(r.call(B)==="[object Array]"){Array.prototype.push.apply(y,B)}else{if(typeof B.length==="number"){for(var e=B.length;z<e;z++){y.push(B[z])}}else{for(;B[z];z++){y.push(B[z])}}}return y}}var p,m;if(document.documentElement.compareDocumentPosition){p=function(y,e){if(y===e){h=true;return 0}if(!y.compareDocumentPosition||!e.compareDocumentPosition){return y.compareDocumentPosition?-1:1}return y.compareDocumentPosition(e)&4?-1:1}}else{p=function(F,E){if(F===E){h=true;return 0}else{if(F.sourceIndex&&E.sourceIndex){return F.sourceIndex-E.sourceIndex}}var C,y,z=[],e=[],B=F.parentNode,D=E.parentNode,G=B;if(B===D){return m(F,E)}else{if(!B){return -1}else{if(!D){return 1}}}while(G){z.unshift(G);G=G.parentNode}G=D;while(G){e.unshift(G);G=G.parentNode}C=z.length;y=e.length;for(var A=0;A<C&&A<y;A++){if(z[A]!==e[A]){return m(z[A],e[A])}}return A===C?m(F,e[A],-1):m(z[A],E,1)};m=function(y,e,z){if(y===e){return z}var A=y.nextSibling;while(A){if(A===e){return -1}A=A.nextSibling}return 1}}(function(){var y=document.createElement("div"),z="script"+(new Date()).getTime(),e=document.documentElement;y.innerHTML="<a name='"+z+"'/>";e.insertBefore(y,e.firstChild);if(document.getElementById(z)){k.find.ID=function(B,C,D){if(typeof C.getElementById!=="undefined"&&!D){var A=C.getElementById(B[1]);return A?A.id===B[1]||typeof A.getAttributeNode!=="undefined"&&A.getAttributeNode("id").nodeValue===B[1]?[A]:undefined:[]}};k.filter.ID=function(C,A){var B=typeof C.getAttributeNode!=="undefined"&&C.getAttributeNode("id");return C.nodeType===1&&B&&B.nodeValue===A}}e.removeChild(y);e=y=null})();(function(){var e=document.createElement("div");e.appendChild(document.createComment(""));if(e.getElementsByTagName("*").length>0){k.find.TAG=function(y,C){var B=C.getElementsByTagName(y[1]);if(y[1]==="*"){var A=[];for(var z=0;B[z];z++){if(B[z].nodeType===1){A.push(B[z])}}B=A}return B}}e.innerHTML="<a href='#'></a>";if(e.firstChild&&typeof e.firstChild.getAttribute!=="undefined"&&e.firstChild.getAttribute("href")!=="#"){k.attrHandle.href=function(y){return y.getAttribute("href",2)}}e=null})();if(document.querySelectorAll){(function(){var e=d,A=document.createElement("div"),z="__sizzle__";A.innerHTML="<p class='TEST'></p>";if(A.querySelectorAll&&A.querySelectorAll(".TEST").length===0){return}d=function(L,C,G,K){C=C||document;if(!K&&!d.isXML(C)){var J=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(L);if(J&&(C.nodeType===1||C.nodeType===9)){if(J[1]){return l(C.getElementsByTagName(L),G)}else{if(J[2]&&k.find.CLASS&&C.getElementsByClassName){return l(C.getElementsByClassName(J[2]),G)}}}if(C.nodeType===9){if(L==="body"&&C.body){return l([C.body],G)}else{if(J&&J[3]){var F=C.getElementById(J[3]);if(F&&F.parentNode){if(F.id===J[3]){return l([F],G)}}else{return l([],G)}}}try{return l(C.querySelectorAll(L),G)}catch(H){}}else{if(C.nodeType===1&&C.nodeName.toLowerCase()!=="object"){var D=C,E=C.getAttribute("id"),B=E||z,N=C.parentNode,M=/^\s*[+~]/.test(L);if(!E){C.setAttribute("id",B)}else{B=B.replace(/'/g,"\\$&")}if(M&&N){C=C.parentNode}try{if(!M||N){return l(C.querySelectorAll("[id='"+B+"'] "+L),G)}}catch(I){}finally{if(!E){D.removeAttribute("id")}}}}}return e(L,C,G,K)};for(var y in e){d[y]=e[y]}A=null})()}(function(){var e=document.documentElement,z=e.matchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.msMatchesSelector;if(z){var B=!z.call(document.createElement("div"),"div"),y=false;try{z.call(document.documentElement,"[test!='']:sizzle")}catch(A){y=true}d.matchesSelector=function(D,F){F=F.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!d.isXML(D)){try{if(y||!k.match.PSEUDO.test(F)&&!/!=/.test(F)){var C=z.call(D,F);if(C||!B||D.document&&D.document.nodeType!==11){return C}}}catch(E){}}return d(F,null,null,[D]).length>0}}})();(function(){var e=document.createElement("div");e.innerHTML="<div class='test e'></div><div class='test'></div>";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return}e.lastChild.className="e";if(e.getElementsByClassName("e").length===1){return}k.order.splice(1,0,"CLASS");k.find.CLASS=function(y,z,A){if(typeof z.getElementsByClassName!=="undefined"&&!A){return z.getElementsByClassName(y[1])}};e=null})();function a(y,D,C,G,E,F){for(var A=0,z=G.length;A<z;A++){var e=G[A];if(e){var B=false;e=e[y];while(e){if(e[i]===C){B=G[e.sizset];break}if(e.nodeType===1&&!F){e[i]=C;e.sizset=A}if(e.nodeName.toLowerCase()===D){B=e;break}e=e[y]}G[A]=B}}}function t(y,D,C,G,E,F){for(var A=0,z=G.length;A<z;A++){var e=G[A];if(e){var B=false;e=e[y];while(e){if(e[i]===C){B=G[e.sizset];break}if(e.nodeType===1){if(!F){e[i]=C;e.sizset=A}if(typeof D!=="string"){if(e===D){B=true;break}}else{if(d.filter(D,[e]).length>0){B=e;break}}}e=e[y]}G[A]=B}}}if(document.documentElement.contains){d.contains=function(y,e){return y!==e&&(y.contains?y.contains(e):true)}}else{if(document.documentElement.compareDocumentPosition){d.contains=function(y,e){return !!(y.compareDocumentPosition(e)&16)}}else{d.contains=function(){return false}}}d.isXML=function(e){var y=(e?e.ownerDocument||e:0).documentElement;return y?y.nodeName!=="HTML":false};var s=function(z,e,D){var C,E=[],B="",F=e.nodeType?[e]:e;while((C=k.match.PSEUDO.exec(z))){B+=C[0];z=z.replace(k.match.PSEUDO,"")}z=k.relative[z]?z+"*":z;for(var A=0,y=F.length;A<y;A++){d(z,F[A],E,D)}return d.filter(B,E)};window.tinymce.dom.Sizzle=d})();(function(a){a.dom.Element=function(f,d){var b=this,e,c;b.settings=d=d||{};b.id=f;b.dom=e=d.dom||a.DOM;if(!a.isIE){c=e.get(b.id)}a.each(("getPos,getRect,getParent,add,setStyle,getStyle,setStyles,setAttrib,setAttribs,getAttrib,addClass,removeClass,hasClass,getOuterHTML,setOuterHTML,remove,show,hide,isHidden,setHTML,get").split(/,/),function(g){b[g]=function(){var h=[f],j;for(j=0;j<arguments.length;j++){h.push(arguments[j])}h=e[g].apply(e,h);b.update(g);return h}});a.extend(b,{on:function(i,h,g){return a.dom.Event.add(b.id,i,h,g)},getXY:function(){return{x:parseInt(b.getStyle("left")),y:parseInt(b.getStyle("top"))}},getSize:function(){var g=e.get(b.id);return{w:parseInt(b.getStyle("width")||g.clientWidth),h:parseInt(b.getStyle("height")||g.clientHeight)}},moveTo:function(g,h){b.setStyles({left:g,top:h})},moveBy:function(g,i){var h=b.getXY();b.moveTo(h.x+g,h.y+i)},resizeTo:function(g,i){b.setStyles({width:g,height:i})},resizeBy:function(g,j){var i=b.getSize();b.resizeTo(i.w+g,i.h+j)},update:function(h){var g;if(a.isIE6&&d.blocker){h=h||"";if(h.indexOf("get")===0||h.indexOf("has")===0||h.indexOf("is")===0){return}if(h=="remove"){e.remove(b.blocker);return}if(!b.blocker){b.blocker=e.uniqueId();g=e.add(d.container||e.getRoot(),"iframe",{id:b.blocker,style:"position:absolute;",frameBorder:0,src:'javascript:""'});e.setStyle(g,"opacity",0)}else{g=e.get(b.blocker)}e.setStyles(g,{left:b.getStyle("left",1),top:b.getStyle("top",1),width:b.getStyle("width",1),height:b.getStyle("height",1),display:b.getStyle("display",1),zIndex:parseInt(b.getStyle("zIndex",1)||0)-1})}}})}})(tinymce);(function(d){function f(g){return g.replace(/[\n\r]+/g,"")}var c=d.is,b=d.isIE,e=d.each,a=d.dom.TreeWalker;d.create("tinymce.dom.Selection",{Selection:function(k,j,i,h){var g=this;g.dom=k;g.win=j;g.serializer=i;g.editor=h;e(["onBeforeSetContent","onBeforeGetContent","onSetContent","onGetContent"],function(l){g[l]=new d.util.Dispatcher(g)});if(!g.win.getSelection){g.tridentSel=new d.dom.TridentSelection(g)}if(d.isIE&&k.boxModel){this._fixIESelection()}d.addUnload(g.destroy,g)},setCursorLocation:function(i,j){var g=this;var h=g.dom.createRng();h.setStart(i,j);h.setEnd(i,j);g.setRng(h);g.collapse(false)},getContent:function(h){var g=this,i=g.getRng(),m=g.dom.create("body"),k=g.getSel(),j,l,o;h=h||{};j=l="";h.get=true;h.format=h.format||"html";h.forced_root_block="";g.onBeforeGetContent.dispatch(g,h);if(h.format=="text"){return g.isCollapsed()?"":(i.text||(k.toString?k.toString():""))}if(i.cloneContents){o=i.cloneContents();if(o){m.appendChild(o)}}else{if(c(i.item)||c(i.htmlText)){m.innerHTML="<br>"+(i.item?i.item(0).outerHTML:i.htmlText);m.removeChild(m.firstChild)}else{m.innerHTML=i.toString()}}if(/^\s/.test(m.innerHTML)){j=" "}if(/\s+$/.test(m.innerHTML)){l=" "}h.getInner=true;h.content=g.isCollapsed()?"":j+g.serializer.serialize(m,h)+l;g.onGetContent.dispatch(g,h);return h.content},setContent:function(h,j){var o=this,g=o.getRng(),k,l=o.win.document,n,m;j=j||{format:"html"};j.set=true;h=j.content=h;if(!j.no_events){o.onBeforeSetContent.dispatch(o,j)}h=j.content;if(g.insertNode){h+='<span id="__caret">_</span>';if(g.startContainer==l&&g.endContainer==l){l.body.innerHTML=h}else{g.deleteContents();if(l.body.childNodes.length===0){l.body.innerHTML=h}else{if(g.createContextualFragment){g.insertNode(g.createContextualFragment(h))}else{n=l.createDocumentFragment();m=l.createElement("div");n.appendChild(m);m.outerHTML=h;g.insertNode(n)}}}k=o.dom.get("__caret");g=l.createRange();g.setStartBefore(k);g.setEndBefore(k);o.setRng(g);o.dom.remove("__caret");try{o.setRng(g)}catch(i){}}else{if(g.item){l.execCommand("Delete",false,null);g=o.getRng()}if(/^\s+/.test(h)){g.pasteHTML('<span id="__mce_tmp">_</span>'+h);o.dom.remove("__mce_tmp")}else{g.pasteHTML(h)}}if(!j.no_events){o.onSetContent.dispatch(o,j)}},getStart:function(){var i=this,h=i.getRng(),j,g,l,k;if(h.duplicate||h.item){if(h.item){return h.item(0)}l=h.duplicate();l.collapse(1);j=l.parentElement();if(j.ownerDocument!==i.dom.doc){j=i.dom.getRoot()}g=k=h.parentElement();while(k=k.parentNode){if(k==j){j=g;break}}return j}else{j=h.startContainer;if(j.nodeType==1&&j.hasChildNodes()){j=j.childNodes[Math.min(j.childNodes.length-1,h.startOffset)]}if(j&&j.nodeType==3){return j.parentNode}return j}},getEnd:function(){var h=this,g=h.getRng(),j,i;if(g.duplicate||g.item){if(g.item){return g.item(0)}g=g.duplicate();g.collapse(0);j=g.parentElement();if(j.ownerDocument!==h.dom.doc){j=h.dom.getRoot()}if(j&&j.nodeName=="BODY"){return j.lastChild||j}return j}else{j=g.endContainer;i=g.endOffset;if(j.nodeType==1&&j.hasChildNodes()){j=j.childNodes[i>0?i-1:i]}if(j&&j.nodeType==3){return j.parentNode}return j}},getBookmark:function(s,v){var y=this,n=y.dom,h,k,j,o,i,p,q,m="\uFEFF",x;function g(z,A){var t=0;e(n.select(z),function(C,B){if(C==A){t=B}});return t}function u(t){function z(E){var A,D,C,B=E?"start":"end";A=t[B+"Container"];D=t[B+"Offset"];if(A.nodeType==1&&A.nodeName=="TR"){C=A.childNodes;A=C[Math.min(E?D:D-1,C.length-1)];if(A){D=E?0:A.childNodes.length;t["set"+(E?"Start":"End")](A,D)}}}z(true);z();return t}function l(){var z=y.getRng(true),t=n.getRoot(),A={};function B(E,J){var D=E[J?"startContainer":"endContainer"],I=E[J?"startOffset":"endOffset"],C=[],F,H,G=0;if(D.nodeType==3){if(v){for(F=D.previousSibling;F&&F.nodeType==3;F=F.previousSibling){I+=F.nodeValue.length}}C.push(I)}else{H=D.childNodes;if(I>=H.length&&H.length){G=1;I=Math.max(0,H.length-1)}C.push(y.dom.nodeIndex(H[I],v)+G)}for(;D&&D!=t;D=D.parentNode){C.push(y.dom.nodeIndex(D,v))}return C}A.start=B(z,true);if(!y.isCollapsed()){A.end=B(z)}return A}if(s==2){if(y.tridentSel){return y.tridentSel.getBookmark(s)}return l()}if(s){return{rng:y.getRng()}}h=y.getRng();j=n.uniqueId();o=tinyMCE.activeEditor.selection.isCollapsed();x="overflow:hidden;line-height:0px";if(h.duplicate||h.item){if(!h.item){k=h.duplicate();try{h.collapse();h.pasteHTML('<span data-mce-type="bookmark" id="'+j+'_start" style="'+x+'">'+m+"</span>");if(!o){k.collapse(false);h.moveToElementText(k.parentElement());if(h.compareEndPoints("StartToEnd",k)===0){k.move("character",-1)}k.pasteHTML('<span data-mce-type="bookmark" id="'+j+'_end" style="'+x+'">'+m+"</span>")}}catch(r){return null}}else{p=h.item(0);i=p.nodeName;return{name:i,index:g(i,p)}}}else{p=y.getNode();i=p.nodeName;if(i=="IMG"){return{name:i,index:g(i,p)}}k=u(h.cloneRange());if(!o){k.collapse(false);k.insertNode(n.create("span",{"data-mce-type":"bookmark",id:j+"_end",style:x},m))}h=u(h);h.collapse(true);h.insertNode(n.create("span",{"data-mce-type":"bookmark",id:j+"_start",style:x},m))}y.moveToBookmark({id:j,keep:1});return{id:j}},moveToBookmark:function(o){var s=this,m=s.dom,j,i,g,r,k,u,p,q;function h(A){var t=o[A?"start":"end"],x,y,z,v;if(t){z=t[0];for(y=r,x=t.length-1;x>=1;x--){v=y.childNodes;if(t[x]>v.length-1){return}y=v[t[x]]}if(y.nodeType===3){z=Math.min(t[0],y.nodeValue.length)}if(y.nodeType===1){z=Math.min(t[0],y.childNodes.length)}if(A){g.setStart(y,z)}else{g.setEnd(y,z)}}return true}function l(B){var v=m.get(o.id+"_"+B),A,t,y,z,x=o.keep;if(v){A=v.parentNode;if(B=="start"){if(!x){t=m.nodeIndex(v)}else{A=v.firstChild;t=1}k=u=A;p=q=t}else{if(!x){t=m.nodeIndex(v)}else{A=v.firstChild;t=1}u=A;q=t}if(!x){z=v.previousSibling;y=v.nextSibling;e(d.grep(v.childNodes),function(C){if(C.nodeType==3){C.nodeValue=C.nodeValue.replace(/\uFEFF/g,"")}});while(v=m.get(o.id+"_"+B)){m.remove(v,1)}if(z&&y&&z.nodeType==y.nodeType&&z.nodeType==3&&!d.isOpera){t=z.nodeValue.length;z.appendData(y.nodeValue);m.remove(y);if(B=="start"){k=u=z;p=q=t}else{u=z;q=t}}}}}function n(t){if(m.isBlock(t)&&!t.innerHTML&&!b){t.innerHTML='<br data-mce-bogus="1" />'}return t}if(o){if(o.start){g=m.createRng();r=m.getRoot();if(s.tridentSel){return s.tridentSel.moveToBookmark(o)}if(h(true)&&h()){s.setRng(g)}}else{if(o.id){l("start");l("end");if(k){g=m.createRng();g.setStart(n(k),p);g.setEnd(n(u),q);s.setRng(g)}}else{if(o.name){s.select(m.select(o.name)[o.index])}else{if(o.rng){s.setRng(o.rng)}}}}}},select:function(l,k){var j=this,m=j.dom,h=m.createRng(),g;function i(n,p){var o=new a(n,n);do{if(n.nodeType==3&&d.trim(n.nodeValue).length!==0){if(p){h.setStart(n,0)}else{h.setEnd(n,n.nodeValue.length)}return}if(n.nodeName=="BR"){if(p){h.setStartBefore(n)}else{h.setEndBefore(n)}return}}while(n=(p?o.next():o.prev()))}if(l){g=m.nodeIndex(l);h.setStart(l.parentNode,g);h.setEnd(l.parentNode,g+1);if(k){i(l,1);i(l)}j.setRng(h)}return l},isCollapsed:function(){var g=this,i=g.getRng(),h=g.getSel();if(!i||i.item){return false}if(i.compareEndPoints){return i.compareEndPoints("StartToEnd",i)===0}return !h||i.collapsed},collapse:function(g){var i=this,h=i.getRng(),j;if(h.item){j=h.item(0);h=i.win.document.body.createTextRange();h.moveToElementText(j)}h.collapse(!!g);i.setRng(h)},getSel:function(){var h=this,g=this.win;return g.getSelection?g.getSelection():g.document.selection},getRng:function(m){var h=this,j,g,l,k=h.win.document;if(m&&h.tridentSel){return h.tridentSel.getRangeAt(0)}try{if(j=h.getSel()){g=j.rangeCount>0?j.getRangeAt(0):(j.createRange?j.createRange():k.createRange())}}catch(i){}if(d.isIE&&g&&g.setStart&&k.selection.createRange().item){l=k.selection.createRange().item(0);g=k.createRange();g.setStartBefore(l);g.setEndAfter(l)}if(!g){g=k.createRange?k.createRange():k.body.createTextRange()}if(g.setStart&&g.startContainer.nodeType===9&&g.collapsed){l=h.dom.getRoot();g.setStart(l,0);g.setEnd(l,0)}if(h.selectedRange&&h.explicitRange){if(g.compareBoundaryPoints(g.START_TO_START,h.selectedRange)===0&&g.compareBoundaryPoints(g.END_TO_END,h.selectedRange)===0){g=h.explicitRange}else{h.selectedRange=null;h.explicitRange=null}}return g},setRng:function(k,g){var j,i=this;if(!i.tridentSel){j=i.getSel();if(j){i.explicitRange=k;try{j.removeAllRanges()}catch(h){}j.addRange(k);if(g===false&&j.extend){j.collapse(k.endContainer,k.endOffset);j.extend(k.startContainer,k.startOffset)}i.selectedRange=j.rangeCount>0?j.getRangeAt(0):null}}else{if(k.cloneRange){try{i.tridentSel.addRange(k);return}catch(h){}}try{k.select()}catch(h){}}},setNode:function(h){var g=this;g.setContent(g.dom.getOuterHTML(h));return h},getNode:function(){var i=this,h=i.getRng(),j=i.getSel(),m,l=h.startContainer,g=h.endContainer;function k(q,o){var p=q;while(q&&q.nodeType===3&&q.length===0){q=o?q.nextSibling:q.previousSibling}return q||p}if(!h){return i.dom.getRoot()}if(h.setStart){m=h.commonAncestorContainer;if(!h.collapsed){if(h.startContainer==h.endContainer){if(h.endOffset-h.startOffset<2){if(h.startContainer.hasChildNodes()){m=h.startContainer.childNodes[h.startOffset]}}}if(l.nodeType===3&&g.nodeType===3){if(l.length===h.startOffset){l=k(l.nextSibling,true)}else{l=l.parentNode}if(h.endOffset===0){g=k(g.previousSibling,false)}else{g=g.parentNode}if(l&&l===g){return l}}}if(m&&m.nodeType==3){return m.parentNode}return m}return h.item?h.item(0):h.parentElement()},getSelectedBlocks:function(p,h){var o=this,k=o.dom,m,l,i,j=[];m=k.getParent(p||o.getStart(),k.isBlock);l=k.getParent(h||o.getEnd(),k.isBlock);if(m){j.push(m)}if(m&&l&&m!=l){i=m;var g=new a(m,k.getRoot());while((i=g.next())&&i!=l){if(k.isBlock(i)){j.push(i)}}}if(l&&m!=l){j.push(l)}return j},isForward:function(){var i=this.dom,g=this.getSel(),j,h;if(!g||g.anchorNode==null||g.focusNode==null){return true}j=i.createRng();j.setStart(g.anchorNode,g.anchorOffset);j.collapse(true);h=i.createRng();h.setStart(g.focusNode,g.focusOffset);h.collapse(true);return j.compareBoundaryPoints(j.START_TO_START,h)<=0},normalize:function(){var h=this,g,m,l,j,i;function k(p){var o,r,n,s=h.dom,u=s.getRoot(),q,t,v;function y(z,A){var B=new a(z,s.getParent(z.parentNode,s.isBlock)||u);while(z=B[A?"prev":"next"]()){if(z.nodeName==="BR"){return true}}}function x(B,z){var C,A;z=z||o;C=new a(z,s.getParent(z.parentNode,s.isBlock)||u);while(q=C[B?"prev":"next"]()){if(q.nodeType===3&&q.nodeValue.length>0){o=q;r=B?q.nodeValue.length:0;m=true;return}if(s.isBlock(q)||t[q.nodeName.toLowerCase()]){return}A=q}if(l&&A){o=A;m=true;r=0}}o=g[(p?"start":"end")+"Container"];r=g[(p?"start":"end")+"Offset"];t=s.schema.getNonEmptyElements();if(o.nodeType===9){o=s.getRoot();r=0}if(o===u){if(p){q=o.childNodes[r>0?r-1:0];if(q){v=q.nodeName.toLowerCase();if(t[q.nodeName]||q.nodeName=="TABLE"){return}}}if(o.hasChildNodes()){o=o.childNodes[Math.min(!p&&r>0?r-1:r,o.childNodes.length-1)];r=0;if(o.hasChildNodes()&&!/TABLE/.test(o.nodeName)){q=o;n=new a(o,u);do{if(q.nodeType===3&&q.nodeValue.length>0){r=p?0:q.nodeValue.length;o=q;m=true;break}if(t[q.nodeName.toLowerCase()]){r=s.nodeIndex(q);o=q.parentNode;if(q.nodeName=="IMG"&&!p){r++}m=true;break}}while(q=(p?n.next():n.prev()))}}}if(l){if(o.nodeType===3&&r===0){x(true)}if(o.nodeType===1){q=o.childNodes[r];if(q&&q.nodeName==="BR"&&!y(q)&&!y(q,true)){x(true,o.childNodes[r])}}}if(p&&!l&&o.nodeType===3&&r===o.nodeValue.length){x(false)}if(m){g["set"+(p?"Start":"End")](o,r)}}if(d.isIE){return}g=h.getRng();l=g.collapsed;k(true);if(!l){k()}if(m){if(l){g.collapse(true)}h.setRng(g,h.isForward())}},selectorChanged:function(g,j){var h=this,i;if(!h.selectorChangedData){h.selectorChangedData={};i={};h.editor.onNodeChange.addToTop(function(l,k,o){var p=h.dom,m=p.getParents(o,null,p.getRoot()),n={};e(h.selectorChangedData,function(r,q){e(m,function(s){if(p.is(s,q)){if(!i[q]){e(r,function(t){t(true,{node:s,selector:q,parents:m})});i[q]=r}n[q]=r;return false}})});e(i,function(r,q){if(!n[q]){delete i[q];e(r,function(s){s(false,{node:o,selector:q,parents:m})})}})})}if(!h.selectorChangedData[g]){h.selectorChangedData[g]=[]}h.selectorChangedData[g].push(j);return h},destroy:function(h){var g=this;g.win=null;if(!h){d.removeUnload(g.destroy)}},_fixIESelection:function(){var h=this.dom,n=h.doc,i=n.body,k,o,g;function j(p,s){var q=i.createTextRange();try{q.moveToPoint(p,s)}catch(r){q=null}return q}function m(q){var p;if(q.button){p=j(q.x,q.y);if(p){if(p.compareEndPoints("StartToStart",o)>0){p.setEndPoint("StartToStart",o)}else{p.setEndPoint("EndToEnd",o)}p.select()}}else{l()}}function l(){var p=n.selection.createRange();if(o&&!p.item&&p.compareEndPoints("StartToEnd",p)===0){o.select()}h.unbind(n,"mouseup",l);h.unbind(n,"mousemove",m);o=k=0}n.documentElement.unselectable=true;h.bind(n,["mousedown","contextmenu"],function(p){if(p.target.nodeName==="HTML"){if(k){l()}g=n.documentElement;if(g.scrollHeight>g.clientHeight){return}k=1;o=j(p.x,p.y);if(o){h.bind(n,"mouseup",l);h.bind(n,"mousemove",m);h.win.focus();o.select()}}})}})})(tinymce);(function(a){a.dom.Serializer=function(e,i,f){var h,b,d=a.isIE,g=a.each,c;if(!e.apply_source_formatting){e.indent=false}i=i||a.DOM;f=f||new a.html.Schema(e);e.entity_encoding=e.entity_encoding||"named";e.remove_trailing_brs="remove_trailing_brs" in e?e.remove_trailing_brs:true;h=new a.util.Dispatcher(self);b=new a.util.Dispatcher(self);c=new a.html.DomParser(e,f);c.addAttributeFilter("src,href,style",function(k,j){var o=k.length,l,q,n="data-mce-"+j,p=e.url_converter,r=e.url_converter_scope,m;while(o--){l=k[o];q=l.attributes.map[n];if(q!==m){l.attr(j,q.length>0?q:null);l.attr(n,null)}else{q=l.attributes.map[j];if(j==="style"){q=i.serializeStyle(i.parseStyle(q),l.name)}else{if(p){q=p.call(r,q,j,l.name)}}l.attr(j,q.length>0?q:null)}}});c.addAttributeFilter("class",function(j,k){var l=j.length,m,n;while(l--){m=j[l];n=m.attr("class").replace(/(?:^|\s)mce(Item\w+|Selected)(?!\S)/g,"");m.attr("class",n.length>0?n:null)}});c.addAttributeFilter("data-mce-type",function(j,l,k){var m=j.length,n;while(m--){n=j[m];if(n.attributes.map["data-mce-type"]==="bookmark"&&!k.cleanup){n.remove()}}});c.addAttributeFilter("data-mce-expando",function(j,l,k){var m=j.length;while(m--){j[m].attr(l,null)}});c.addNodeFilter("script,style",function(k,l){var m=k.length,n,o;function j(p){return p.replace(/(<!--\[CDATA\[|\]\]-->)/g,"\n").replace(/^[\r\n]*|[\r\n]*$/g,"").replace(/^\s*((<!--)?(\s*\/\/)?\s*<!\[CDATA\[|(<!--\s*)?\/\*\s*<!\[CDATA\[\s*\*\/|(\/\/)?\s*<!--|\/\*\s*<!--\s*\*\/)\s*[\r\n]*/gi,"").replace(/\s*(\/\*\s*\]\]>\s*\*\/(-->)?|\s*\/\/\s*\]\]>(-->)?|\/\/\s*(-->)?|\]\]>|\/\*\s*-->\s*\*\/|\s*-->\s*)\s*$/g,"")}while(m--){n=k[m];o=n.firstChild?n.firstChild.value:"";if(l==="script"){n.attr("type",(n.attr("type")||"text/javascript").replace(/^mce\-/,""));if(o.length>0){n.firstChild.value="// <![CDATA[\n"+j(o)+"\n// ]]>"}}else{if(o.length>0){n.firstChild.value="<!--\n"+j(o)+"\n-->"}}}});c.addNodeFilter("#comment",function(j,k){var l=j.length,m;while(l--){m=j[l];if(m.value.indexOf("[CDATA[")===0){m.name="#cdata";m.type=4;m.value=m.value.replace(/^\[CDATA\[|\]\]$/g,"")}else{if(m.value.indexOf("mce:protected ")===0){m.name="#text";m.type=3;m.raw=true;m.value=unescape(m.value).substr(14)}}}});c.addNodeFilter("xml:namespace,input",function(j,k){var l=j.length,m;while(l--){m=j[l];if(m.type===7){m.remove()}else{if(m.type===1){if(k==="input"&&!("type" in m.attributes.map)){m.attr("type","text")}}}}});if(e.fix_list_elements){c.addNodeFilter("ul,ol",function(k,l){var m=k.length,n,j;while(m--){n=k[m];j=n.parent;if(j.name==="ul"||j.name==="ol"){if(n.prev&&n.prev.name==="li"){n.prev.append(n)}}}})}c.addAttributeFilter("data-mce-src,data-mce-href,data-mce-style",function(j,k){var l=j.length;while(l--){j[l].attr(k,null)}});return{schema:f,addNodeFilter:c.addNodeFilter,addAttributeFilter:c.addAttributeFilter,onPreProcess:h,onPostProcess:b,serialize:function(o,m){var l,p,k,j,n;if(d&&i.select("script,style,select,map").length>0){n=o.innerHTML;o=o.cloneNode(false);i.setHTML(o,n)}else{o=o.cloneNode(true)}l=o.ownerDocument.implementation;if(l.createHTMLDocument){p=l.createHTMLDocument("");g(o.nodeName=="BODY"?o.childNodes:[o],function(q){p.body.appendChild(p.importNode(q,true))});if(o.nodeName!="BODY"){o=p.body.firstChild}else{o=p.body}k=i.doc;i.doc=p}m=m||{};m.format=m.format||"html";if(!m.no_events){m.node=o;h.dispatch(self,m)}j=new a.html.Serializer(e,f);m.content=j.serialize(c.parse(a.trim(m.getInner?o.innerHTML:i.getOuterHTML(o)),m));if(!m.cleanup){m.content=m.content.replace(/\uFEFF/g,"")}if(!m.no_events){b.dispatch(self,m)}if(k){i.doc=k}m.node=null;return m.content},addRules:function(j){f.addValidElements(j)},setRules:function(j){f.setValidElements(j)}}}})(tinymce);(function(a){a.dom.ScriptLoader=function(h){var c=0,k=1,i=2,l={},j=[],e={},d=[],g=0,f;function b(m,v){var x=this,q=a.DOM,s,o,r,n;function p(){q.remove(n);if(s){s.onreadystatechange=s.onload=s=null}v()}function u(){if(typeof(console)!=="undefined"&&console.log){console.log("Failed to load: "+m)}}n=q.uniqueId();if(a.isIE6){o=new a.util.URI(m);r=location;if(o.host==r.hostname&&o.port==r.port&&(o.protocol+":")==r.protocol&&o.protocol.toLowerCase()!="file"){a.util.XHR.send({url:a._addVer(o.getURI()),success:function(y){var t=q.create("script",{type:"text/javascript"});t.text=y;document.getElementsByTagName("head")[0].appendChild(t);q.remove(t);p()},error:u});return}}s=document.createElement("script");s.id=n;s.type="text/javascript";s.src=a._addVer(m);if(!a.isIE){s.onload=p}s.onerror=u;if(!a.isOpera){s.onreadystatechange=function(){var t=s.readyState;if(t=="complete"||t=="loaded"){p()}}}(document.getElementsByTagName("head")[0]||document.body).appendChild(s)}this.isDone=function(m){return l[m]==i};this.markDone=function(m){l[m]=i};this.add=this.load=function(m,q,n){var o,p=l[m];if(p==f){j.push(m);l[m]=c}if(q){if(!e[m]){e[m]=[]}e[m].push({func:q,scope:n||this})}};this.loadQueue=function(n,m){this.loadScripts(j,n,m)};this.loadScripts=function(m,q,p){var o;function n(r){a.each(e[r],function(s){s.func.call(s.scope)});e[r]=f}d.push({func:q,scope:p||this});o=function(){var r=a.grep(m);m.length=0;a.each(r,function(s){if(l[s]==i){n(s);return}if(l[s]!=k){l[s]=k;g++;b(s,function(){l[s]=i;g--;n(s);o()})}});if(!g){a.each(d,function(s){s.func.call(s.scope)});d.length=0}};o()}};a.ScriptLoader=new a.dom.ScriptLoader()})(tinymce);(function(a){a.dom.RangeUtils=function(c){var b="\uFEFF";this.walk=function(d,s){var i=d.startContainer,l=d.startOffset,t=d.endContainer,m=d.endOffset,j,g,o,h,r,q,e;e=c.select("td.mceSelected,th.mceSelected");if(e.length>0){a.each(e,function(u){s([u])});return}function f(u){var v;v=u[0];if(v.nodeType===3&&v===i&&l>=v.nodeValue.length){u.splice(0,1)}v=u[u.length-1];if(m===0&&u.length>0&&v===t&&v.nodeType===3){u.splice(u.length-1,1)}return u}function p(x,v,u){var y=[];for(;x&&x!=u;x=x[v]){y.push(x)}return y}function n(v,u){do{if(v.parentNode==u){return v}v=v.parentNode}while(v)}function k(x,v,y){var u=y?"nextSibling":"previousSibling";for(h=x,r=h.parentNode;h&&h!=v;h=r){r=h.parentNode;q=p(h==x?h:h[u],u);if(q.length){if(!y){q.reverse()}s(f(q))}}}if(i.nodeType==1&&i.hasChildNodes()){i=i.childNodes[l]}if(t.nodeType==1&&t.hasChildNodes()){t=t.childNodes[Math.min(m-1,t.childNodes.length-1)]}if(i==t){return s(f([i]))}j=c.findCommonAncestor(i,t);for(h=i;h;h=h.parentNode){if(h===t){return k(i,j,true)}if(h===j){break}}for(h=t;h;h=h.parentNode){if(h===i){return k(t,j)}if(h===j){break}}g=n(i,j)||i;o=n(t,j)||t;k(i,g,true);q=p(g==i?g:g.nextSibling,"nextSibling",o==t?o.nextSibling:o);if(q.length){s(f(q))}k(t,o)};this.split=function(e){var h=e.startContainer,d=e.startOffset,i=e.endContainer,g=e.endOffset;function f(j,k){return j.splitText(k)}if(h==i&&h.nodeType==3){if(d>0&&d<h.nodeValue.length){i=f(h,d);h=i.previousSibling;if(g>d){g=g-d;h=i=f(i,g).previousSibling;g=i.nodeValue.length;d=0}else{g=0}}}else{if(h.nodeType==3&&d>0&&d<h.nodeValue.length){h=f(h,d);d=0}if(i.nodeType==3&&g>0&&g<i.nodeValue.length){i=f(i,g).previousSibling;g=i.nodeValue.length}}return{startContainer:h,startOffset:d,endContainer:i,endOffset:g}}};a.dom.RangeUtils.compareRanges=function(c,b){if(c&&b){if(c.item||c.duplicate){if(c.item&&b.item&&c.item(0)===b.item(0)){return true}if(c.isEqual&&b.isEqual&&b.isEqual(c)){return true}}else{return c.startContainer==b.startContainer&&c.startOffset==b.startOffset}}return false}})(tinymce);(function(b){var a=b.dom.Event,c=b.each;b.create("tinymce.ui.KeyboardNavigation",{KeyboardNavigation:function(e,f){var q=this,n=e.root,m=e.items,o=e.enableUpDown,i=e.enableLeftRight||!e.enableUpDown,l=e.excludeFromTabOrder,k,h,p,d,g;f=f||b.DOM;k=function(r){g=r.target.id};h=function(r){f.setAttrib(r.target.id,"tabindex","-1")};d=function(r){var s=f.get(g);f.setAttrib(s,"tabindex","0");s.focus()};q.focus=function(){f.get(g).focus()};q.destroy=function(){c(m,function(s){var t=f.get(s.id);f.unbind(t,"focus",k);f.unbind(t,"blur",h)});var r=f.get(n);f.unbind(r,"focus",d);f.unbind(r,"keydown",p);m=f=n=q.focus=k=h=p=d=null;q.destroy=function(){}};q.moveFocus=function(v,s){var r=-1,u=q.controls,t;if(!g){return}c(m,function(y,x){if(y.id===g){r=x;return false}});r+=v;if(r<0){r=m.length-1}else{if(r>=m.length){r=0}}t=m[r];f.setAttrib(g,"tabindex","-1");f.setAttrib(t.id,"tabindex","0");f.get(t.id).focus();if(e.actOnFocus){e.onAction(t.id)}if(s){a.cancel(s)}};p=function(z){var v=37,u=39,y=38,A=40,r=27,t=14,s=13,x=32;switch(z.keyCode){case v:if(i){q.moveFocus(-1)}break;case u:if(i){q.moveFocus(1)}break;case y:if(o){q.moveFocus(-1)}break;case A:if(o){q.moveFocus(1)}break;case r:if(e.onCancel){e.onCancel();a.cancel(z)}break;case t:case s:case x:if(e.onAction){e.onAction(g);a.cancel(z)}break}};c(m,function(t,r){var s,u;if(!t.id){t.id=f.uniqueId("_mce_item_")}u=f.get(t.id);if(l){f.bind(u,"blur",h);s="-1"}else{s=(r===0?"0":"-1")}u.setAttribute("tabindex",s);f.bind(u,"focus",k)});if(m[0]){g=m[0].id}f.setAttrib(n,"tabindex","-1");var j=f.get(n);f.bind(j,"focus",d);f.bind(j,"keydown",p)}})})(tinymce);(function(c){var b=c.DOM,a=c.is;c.create("tinymce.ui.Control",{Control:function(f,e,d){this.id=f;this.settings=e=e||{};this.rendered=false;this.onRender=new c.util.Dispatcher(this);this.classPrefix="";this.scope=e.scope||this;this.disabled=0;this.active=0;this.editor=d},setAriaProperty:function(f,e){var d=b.get(this.id+"_aria")||b.get(this.id);if(d){b.setAttrib(d,"aria-"+f,!!e)}},focus:function(){b.get(this.id).focus()},setDisabled:function(d){if(d!=this.disabled){this.setAriaProperty("disabled",d);this.setState("Disabled",d);this.setState("Enabled",!d);this.disabled=d}},isDisabled:function(){return this.disabled},setActive:function(d){if(d!=this.active){this.setState("Active",d);this.active=d;this.setAriaProperty("pressed",d)}},isActive:function(){return this.active},setState:function(f,d){var e=b.get(this.id);f=this.classPrefix+f;if(d){b.addClass(e,f)}else{b.removeClass(e,f)}},isRendered:function(){return this.rendered},renderHTML:function(){},renderTo:function(d){b.setHTML(d,this.renderHTML())},postRender:function(){var e=this,d;if(a(e.disabled)){d=e.disabled;e.disabled=-1;e.setDisabled(d)}if(a(e.active)){d=e.active;e.active=-1;e.setActive(d)}},remove:function(){b.remove(this.id);this.destroy()},destroy:function(){c.dom.Event.clear(this.id)}})})(tinymce);tinymce.create("tinymce.ui.Container:tinymce.ui.Control",{Container:function(c,b,a){this.parent(c,b,a);this.controls=[];this.lookup={}},add:function(a){this.lookup[a.id]=a;this.controls.push(a);return a},get:function(a){return this.lookup[a]}});tinymce.create("tinymce.ui.Separator:tinymce.ui.Control",{Separator:function(b,a){this.parent(b,a);this.classPrefix="mceSeparator";this.setDisabled(true)},renderHTML:function(){return tinymce.DOM.createHTML("span",{"class":this.classPrefix,role:"separator","aria-orientation":"vertical",tabindex:"-1"})}});(function(d){var c=d.is,b=d.DOM,e=d.each,a=d.walk;d.create("tinymce.ui.MenuItem:tinymce.ui.Control",{MenuItem:function(g,f){this.parent(g,f);this.classPrefix="mceMenuItem"},setSelected:function(f){this.setState("Selected",f);this.setAriaProperty("checked",!!f);this.selected=f},isSelected:function(){return this.selected},postRender:function(){var f=this;f.parent();if(c(f.selected)){f.setSelected(f.selected)}}})})(tinymce);(function(d){var c=d.is,b=d.DOM,e=d.each,a=d.walk;d.create("tinymce.ui.Menu:tinymce.ui.MenuItem",{Menu:function(h,g){var f=this;f.parent(h,g);f.items={};f.collapsed=false;f.menuCount=0;f.onAddItem=new d.util.Dispatcher(this)},expand:function(g){var f=this;if(g){a(f,function(h){if(h.expand){h.expand()}},"items",f)}f.collapsed=false},collapse:function(g){var f=this;if(g){a(f,function(h){if(h.collapse){h.collapse()}},"items",f)}f.collapsed=true},isCollapsed:function(){return this.collapsed},add:function(f){if(!f.settings){f=new d.ui.MenuItem(f.id||b.uniqueId(),f)}this.onAddItem.dispatch(this,f);return this.items[f.id]=f},addSeparator:function(){return this.add({separator:true})},addMenu:function(f){if(!f.collapse){f=this.createMenu(f)}this.menuCount++;return this.add(f)},hasMenus:function(){return this.menuCount!==0},remove:function(f){delete this.items[f.id]},removeAll:function(){var f=this;a(f,function(g){if(g.removeAll){g.removeAll()}else{g.remove()}g.destroy()},"items",f);f.items={}},createMenu:function(g){var f=new d.ui.Menu(g.id||b.uniqueId(),g);f.onAddItem.add(this.onAddItem.dispatch,this.onAddItem);return f}})})(tinymce);(function(e){var d=e.is,c=e.DOM,f=e.each,a=e.dom.Event,b=e.dom.Element;e.create("tinymce.ui.DropMenu:tinymce.ui.Menu",{DropMenu:function(h,g){g=g||{};g.container=g.container||c.doc.body;g.offset_x=g.offset_x||0;g.offset_y=g.offset_y||0;g.vp_offset_x=g.vp_offset_x||0;g.vp_offset_y=g.vp_offset_y||0;if(d(g.icons)&&!g.icons){g["class"]+=" mceNoIcons"}this.parent(h,g);this.onShowMenu=new e.util.Dispatcher(this);this.onHideMenu=new e.util.Dispatcher(this);this.classPrefix="mceMenu"},createMenu:function(j){var h=this,i=h.settings,g;j.container=j.container||i.container;j.parent=h;j.constrain=j.constrain||i.constrain;j["class"]=j["class"]||i["class"];j.vp_offset_x=j.vp_offset_x||i.vp_offset_x;j.vp_offset_y=j.vp_offset_y||i.vp_offset_y;j.keyboard_focus=i.keyboard_focus;g=new e.ui.DropMenu(j.id||c.uniqueId(),j);g.onAddItem.add(h.onAddItem.dispatch,h.onAddItem);return g},focus:function(){var g=this;if(g.keyboardNav){g.keyboardNav.focus()}},update:function(){var i=this,j=i.settings,g=c.get("menu_"+i.id+"_tbl"),l=c.get("menu_"+i.id+"_co"),h,k;h=j.max_width?Math.min(g.offsetWidth,j.max_width):g.offsetWidth;k=j.max_height?Math.min(g.offsetHeight,j.max_height):g.offsetHeight;if(!c.boxModel){i.element.setStyles({width:h+2,height:k+2})}else{i.element.setStyles({width:h,height:k})}if(j.max_width){c.setStyle(l,"width",h)}if(j.max_height){c.setStyle(l,"height",k);if(g.clientHeight<j.max_height){c.setStyle(l,"overflow","hidden")}}},showMenu:function(p,n,r){var z=this,A=z.settings,o,g=c.getViewPort(),u,l,v,q,i=2,k,j,m=z.classPrefix;z.collapse(1);if(z.isMenuVisible){return}if(!z.rendered){o=c.add(z.settings.container,z.renderNode());f(z.items,function(h){h.postRender()});z.element=new b("menu_"+z.id,{blocker:1,container:A.container})}else{o=c.get("menu_"+z.id)}if(!e.isOpera){c.setStyles(o,{left:-65535,top:-65535})}c.show(o);z.update();p+=A.offset_x||0;n+=A.offset_y||0;g.w-=4;g.h-=4;if(A.constrain){u=o.clientWidth-i;l=o.clientHeight-i;v=g.x+g.w;q=g.y+g.h;if((p+A.vp_offset_x+u)>v){p=r?r-u:Math.max(0,(v-A.vp_offset_x)-u)}if((n+A.vp_offset_y+l)>q){n=Math.max(0,(q-A.vp_offset_y)-l)}}c.setStyles(o,{left:p,top:n});z.element.update();z.isMenuVisible=1;z.mouseClickFunc=a.add(o,"click",function(s){var h;s=s.target;if(s&&(s=c.getParent(s,"tr"))&&!c.hasClass(s,m+"ItemSub")){h=z.items[s.id];if(h.isDisabled()){return}k=z;while(k){if(k.hideMenu){k.hideMenu()}k=k.settings.parent}if(h.settings.onclick){h.settings.onclick(s)}return false}});if(z.hasMenus()){z.mouseOverFunc=a.add(o,"mouseover",function(x){var h,t,s;x=x.target;if(x&&(x=c.getParent(x,"tr"))){h=z.items[x.id];if(z.lastMenu){z.lastMenu.collapse(1)}if(h.isDisabled()){return}if(x&&c.hasClass(x,m+"ItemSub")){t=c.getRect(x);h.showMenu((t.x+t.w-i),t.y-i,t.x);z.lastMenu=h;c.addClass(c.get(h.id).firstChild,m+"ItemActive")}}})}a.add(o,"keydown",z._keyHandler,z);z.onShowMenu.dispatch(z);if(A.keyboard_focus){z._setupKeyboardNav()}},hideMenu:function(j){var g=this,i=c.get("menu_"+g.id),h;if(!g.isMenuVisible){return}if(g.keyboardNav){g.keyboardNav.destroy()}a.remove(i,"mouseover",g.mouseOverFunc);a.remove(i,"click",g.mouseClickFunc);a.remove(i,"keydown",g._keyHandler);c.hide(i);g.isMenuVisible=0;if(!j){g.collapse(1)}if(g.element){g.element.hide()}if(h=c.get(g.id)){c.removeClass(h.firstChild,g.classPrefix+"ItemActive")}g.onHideMenu.dispatch(g)},add:function(i){var g=this,h;i=g.parent(i);if(g.isRendered&&(h=c.get("menu_"+g.id))){g._add(c.select("tbody",h)[0],i)}return i},collapse:function(g){this.parent(g);this.hideMenu(1)},remove:function(g){c.remove(g.id);this.destroy();return this.parent(g)},destroy:function(){var g=this,h=c.get("menu_"+g.id);if(g.keyboardNav){g.keyboardNav.destroy()}a.remove(h,"mouseover",g.mouseOverFunc);a.remove(c.select("a",h),"focus",g.mouseOverFunc);a.remove(h,"click",g.mouseClickFunc);a.remove(h,"keydown",g._keyHandler);if(g.element){g.element.remove()}c.remove(h)},renderNode:function(){var i=this,j=i.settings,l,h,k,g;g=c.create("div",{role:"listbox",id:"menu_"+i.id,"class":j["class"],style:"position:absolute;left:0;top:0;z-index:200000;outline:0"});if(i.settings.parent){c.setAttrib(g,"aria-parent","menu_"+i.settings.parent.id)}k=c.add(g,"div",{role:"presentation",id:"menu_"+i.id+"_co","class":i.classPrefix+(j["class"]?" "+j["class"]:"")});i.element=new b("menu_"+i.id,{blocker:1,container:j.container});if(j.menu_line){c.add(k,"span",{"class":i.classPrefix+"Line"})}l=c.add(k,"table",{role:"presentation",id:"menu_"+i.id+"_tbl",border:0,cellPadding:0,cellSpacing:0});h=c.add(l,"tbody");f(i.items,function(m){i._add(h,m)});i.rendered=true;return g},_setupKeyboardNav:function(){var i,h,g=this;i=c.get("menu_"+g.id);h=c.select("a[role=option]","menu_"+g.id);h.splice(0,0,i);g.keyboardNav=new e.ui.KeyboardNavigation({root:"menu_"+g.id,items:h,onCancel:function(){g.hideMenu()},enableUpDown:true});i.focus()},_keyHandler:function(g){var h=this,i;switch(g.keyCode){case 37:if(h.settings.parent){h.hideMenu();h.settings.parent.focus();a.cancel(g)}break;case 39:if(h.mouseOverFunc){h.mouseOverFunc(g)}break}},_add:function(j,h){var i,q=h.settings,p,l,k,m=this.classPrefix,g;if(q.separator){l=c.add(j,"tr",{id:h.id,"class":m+"ItemSeparator"});c.add(l,"td",{"class":m+"ItemSeparator"});if(i=l.previousSibling){c.addClass(i,"mceLast")}return}i=l=c.add(j,"tr",{id:h.id,"class":m+"Item "+m+"ItemEnabled"});i=k=c.add(i,q.titleItem?"th":"td");i=p=c.add(i,"a",{id:h.id+"_aria",role:q.titleItem?"presentation":"option",href:"javascript:;",onclick:"return false;",onmousedown:"return false;"});if(q.parent){c.setAttrib(p,"aria-haspopup","true");c.setAttrib(p,"aria-owns","menu_"+h.id)}c.addClass(k,q["class"]);g=c.add(i,"span",{"class":"mceIcon"+(q.icon?" mce_"+q.icon:"")});if(q.icon_src){c.add(g,"img",{src:q.icon_src})}i=c.add(i,q.element||"span",{"class":"mceText",title:h.settings.title},h.settings.title);if(h.settings.style){if(typeof h.settings.style=="function"){h.settings.style=h.settings.style()}c.setAttrib(i,"style",h.settings.style)}if(j.childNodes.length==1){c.addClass(l,"mceFirst")}if((i=l.previousSibling)&&c.hasClass(i,m+"ItemSeparator")){c.addClass(l,"mceFirst")}if(h.collapse){c.addClass(l,m+"ItemSub")}if(i=l.previousSibling){c.removeClass(i,"mceLast")}c.addClass(l,"mceLast")}})})(tinymce);(function(b){var a=b.DOM;b.create("tinymce.ui.Button:tinymce.ui.Control",{Button:function(e,d,c){this.parent(e,d,c);this.classPrefix="mceButton"},renderHTML:function(){var f=this.classPrefix,e=this.settings,d,c;c=a.encode(e.label||"");d='<a role="button" id="'+this.id+'" href="javascript:;" class="'+f+" "+f+"Enabled "+e["class"]+(c?" "+f+"Labeled":"")+'" onmousedown="return false;" onclick="return false;" aria-labelledby="'+this.id+'_voice" title="'+a.encode(e.title)+'">';if(e.image&&!(this.editor&&this.editor.forcedHighContrastMode)){d+='<span class="mceIcon '+e["class"]+'"><img class="mceIcon" src="'+e.image+'" alt="'+a.encode(e.title)+'" /></span>'+(c?'<span class="'+f+'Label">'+c+"</span>":"")}else{d+='<span class="mceIcon '+e["class"]+'"></span>'+(c?'<span class="'+f+'Label">'+c+"</span>":"")}d+='<span class="mceVoiceLabel mceIconOnly" style="display: none;" id="'+this.id+'_voice">'+e.title+"</span>";d+="</a>";return d},postRender:function(){var d=this,e=d.settings,c;if(b.isIE&&d.editor){b.dom.Event.add(d.id,"mousedown",function(f){var g=d.editor.selection.getNode().nodeName;c=g==="IMG"?d.editor.selection.getBookmark():null})}b.dom.Event.add(d.id,"click",function(f){if(!d.isDisabled()){if(b.isIE&&d.editor&&c!==null){d.editor.selection.moveToBookmark(c)}return e.onclick.call(e.scope,f)}});b.dom.Event.add(d.id,"keyup",function(f){if(!d.isDisabled()&&f.keyCode==b.VK.SPACEBAR){return e.onclick.call(e.scope,f)}})}})})(tinymce);(function(e){var d=e.DOM,b=e.dom.Event,f=e.each,a=e.util.Dispatcher,c;e.create("tinymce.ui.ListBox:tinymce.ui.Control",{ListBox:function(j,i,g){var h=this;h.parent(j,i,g);h.items=[];h.onChange=new a(h);h.onPostRender=new a(h);h.onAdd=new a(h);h.onRenderMenu=new e.util.Dispatcher(this);h.classPrefix="mceListBox";h.marked={}},select:function(h){var g=this,j,i;g.marked={};if(h==c){return g.selectByIndex(-1)}if(h&&typeof(h)=="function"){i=h}else{i=function(k){return k==h}}if(h!=g.selectedValue){f(g.items,function(l,k){if(i(l.value)){j=1;g.selectByIndex(k);return false}});if(!j){g.selectByIndex(-1)}}},selectByIndex:function(g){var i=this,j,k,h;i.marked={};if(g!=i.selectedIndex){j=d.get(i.id+"_text");h=d.get(i.id+"_voiceDesc");k=i.items[g];if(k){i.selectedValue=k.value;i.selectedIndex=g;d.setHTML(j,d.encode(k.title));d.setHTML(h,i.settings.title+" - "+k.title);d.removeClass(j,"mceTitle");d.setAttrib(i.id,"aria-valuenow",k.title)}else{d.setHTML(j,d.encode(i.settings.title));d.setHTML(h,d.encode(i.settings.title));d.addClass(j,"mceTitle");i.selectedValue=i.selectedIndex=null;d.setAttrib(i.id,"aria-valuenow",i.settings.title)}j=0}},mark:function(g){this.marked[g]=true},add:function(j,g,i){var h=this;i=i||{};i=e.extend(i,{title:j,value:g});h.items.push(i);h.onAdd.dispatch(h,i)},getLength:function(){return this.items.length},renderHTML:function(){var j="",g=this,i=g.settings,k=g.classPrefix;j='<span role="listbox" aria-haspopup="true" aria-labelledby="'+g.id+'_voiceDesc" aria-describedby="'+g.id+'_voiceDesc"><table role="presentation" tabindex="0" id="'+g.id+'" cellpadding="0" cellspacing="0" class="'+k+" "+k+"Enabled"+(i["class"]?(" "+i["class"]):"")+'"><tbody><tr>';j+="<td>"+d.createHTML("span",{id:g.id+"_voiceDesc","class":"voiceLabel",style:"display:none;"},g.settings.title);j+=d.createHTML("a",{id:g.id+"_text",tabindex:-1,href:"javascript:;","class":"mceText",onclick:"return false;",onmousedown:"return false;"},d.encode(g.settings.title))+"</td>";j+="<td>"+d.createHTML("a",{id:g.id+"_open",tabindex:-1,href:"javascript:;","class":"mceOpen",onclick:"return false;",onmousedown:"return false;"},'<span><span style="display:none;" class="mceIconOnly" aria-hidden="true">\u25BC</span></span>')+"</td>";j+="</tr></tbody></table></span>";return j},showMenu:function(){var h=this,j,i=d.get(this.id),g;if(h.isDisabled()||h.items.length===0){return}if(h.menu&&h.menu.isMenuVisible){return h.hideMenu()}if(!h.isMenuRendered){h.renderMenu();h.isMenuRendered=true}j=d.getPos(i);g=h.menu;g.settings.offset_x=j.x;g.settings.offset_y=j.y;g.settings.keyboard_focus=!e.isOpera;f(h.items,function(k){if(g.items[k.id]){g.items[k.id].setSelected(0)}});f(h.items,function(k){if(g.items[k.id]&&h.marked[k.value]){g.items[k.id].setSelected(1)}if(k.value===h.selectedValue){g.items[k.id].setSelected(1)}});g.showMenu(0,i.clientHeight);b.add(d.doc,"mousedown",h.hideMenu,h);d.addClass(h.id,h.classPrefix+"Selected")},hideMenu:function(h){var g=this;if(g.menu&&g.menu.isMenuVisible){d.removeClass(g.id,g.classPrefix+"Selected");if(h&&h.type=="mousedown"&&(h.target.id==g.id+"_text"||h.target.id==g.id+"_open")){return}if(!h||!d.getParent(h.target,".mceMenu")){d.removeClass(g.id,g.classPrefix+"Selected");b.remove(d.doc,"mousedown",g.hideMenu,g);g.menu.hideMenu()}}},renderMenu:function(){var h=this,g;g=h.settings.control_manager.createDropMenu(h.id+"_menu",{menu_line:1,"class":h.classPrefix+"Menu mceNoIcons",max_width:250,max_height:150});g.onHideMenu.add(function(){h.hideMenu();h.focus()});g.add({title:h.settings.title,"class":"mceMenuItemTitle",onclick:function(){if(h.settings.onselect("")!==false){h.select("")}}});f(h.items,function(i){if(i.value===c){g.add({title:i.title,role:"option","class":"mceMenuItemTitle",onclick:function(){if(h.settings.onselect("")!==false){h.select("")}}})}else{i.id=d.uniqueId();i.role="option";i.onclick=function(){if(h.settings.onselect(i.value)!==false){h.select(i.value)}};g.add(i)}});h.onRenderMenu.dispatch(h,g);h.menu=g},postRender:function(){var g=this,h=g.classPrefix;b.add(g.id,"click",g.showMenu,g);b.add(g.id,"keydown",function(i){if(i.keyCode==32){g.showMenu(i);b.cancel(i)}});b.add(g.id,"focus",function(){if(!g._focused){g.keyDownHandler=b.add(g.id,"keydown",function(i){if(i.keyCode==40){g.showMenu();b.cancel(i)}});g.keyPressHandler=b.add(g.id,"keypress",function(j){var i;if(j.keyCode==13){i=g.selectedValue;g.selectedValue=null;b.cancel(j);g.settings.onselect(i)}})}g._focused=1});b.add(g.id,"blur",function(){b.remove(g.id,"keydown",g.keyDownHandler);b.remove(g.id,"keypress",g.keyPressHandler);g._focused=0});if(e.isIE6||!d.boxModel){b.add(g.id,"mouseover",function(){if(!d.hasClass(g.id,h+"Disabled")){d.addClass(g.id,h+"Hover")}});b.add(g.id,"mouseout",function(){if(!d.hasClass(g.id,h+"Disabled")){d.removeClass(g.id,h+"Hover")}})}g.onPostRender.dispatch(g,d.get(g.id))},destroy:function(){this.parent();b.clear(this.id+"_text");b.clear(this.id+"_open")}})})(tinymce);(function(e){var d=e.DOM,b=e.dom.Event,f=e.each,a=e.util.Dispatcher,c;e.create("tinymce.ui.NativeListBox:tinymce.ui.ListBox",{NativeListBox:function(h,g){this.parent(h,g);this.classPrefix="mceNativeListBox"},setDisabled:function(g){d.get(this.id).disabled=g;this.setAriaProperty("disabled",g)},isDisabled:function(){return d.get(this.id).disabled},select:function(h){var g=this,j,i;if(h==c){return g.selectByIndex(-1)}if(h&&typeof(h)=="function"){i=h}else{i=function(k){return k==h}}if(h!=g.selectedValue){f(g.items,function(l,k){if(i(l.value)){j=1;g.selectByIndex(k);return false}});if(!j){g.selectByIndex(-1)}}},selectByIndex:function(g){d.get(this.id).selectedIndex=g+1;this.selectedValue=this.items[g]?this.items[g].value:null},add:function(k,h,g){var j,i=this;g=g||{};g.value=h;if(i.isRendered()){d.add(d.get(this.id),"option",g,k)}j={title:k,value:h,attribs:g};i.items.push(j);i.onAdd.dispatch(i,j)},getLength:function(){return this.items.length},renderHTML:function(){var i,g=this;i=d.createHTML("option",{value:""},"-- "+g.settings.title+" --");f(g.items,function(h){i+=d.createHTML("option",{value:h.value},h.title)});i=d.createHTML("select",{id:g.id,"class":"mceNativeListBox","aria-labelledby":g.id+"_aria"},i);i+=d.createHTML("span",{id:g.id+"_aria",style:"display: none"},g.settings.title);return i},postRender:function(){var h=this,i,j=true;h.rendered=true;function g(l){var k=h.items[l.target.selectedIndex-1];if(k&&(k=k.value)){h.onChange.dispatch(h,k);if(h.settings.onselect){h.settings.onselect(k)}}}b.add(h.id,"change",g);b.add(h.id,"keydown",function(l){var k;b.remove(h.id,"change",i);j=false;k=b.add(h.id,"blur",function(){if(j){return}j=true;b.add(h.id,"change",g);b.remove(h.id,"blur",k)});if(e.isWebKit&&(l.keyCode==37||l.keyCode==39)){return b.prevent(l)}if(l.keyCode==13||l.keyCode==32){g(l);return b.cancel(l)}});h.onPostRender.dispatch(h,d.get(h.id))}})})(tinymce);(function(c){var b=c.DOM,a=c.dom.Event,d=c.each;c.create("tinymce.ui.MenuButton:tinymce.ui.Button",{MenuButton:function(g,f,e){this.parent(g,f,e);this.onRenderMenu=new c.util.Dispatcher(this);f.menu_container=f.menu_container||b.doc.body},showMenu:function(){var g=this,j,i,h=b.get(g.id),f;if(g.isDisabled()){return}if(!g.isMenuRendered){g.renderMenu();g.isMenuRendered=true}if(g.isMenuVisible){return g.hideMenu()}j=b.getPos(g.settings.menu_container);i=b.getPos(h);f=g.menu;f.settings.offset_x=i.x;f.settings.offset_y=i.y;f.settings.vp_offset_x=i.x;f.settings.vp_offset_y=i.y;f.settings.keyboard_focus=g._focused;f.showMenu(0,h.firstChild.clientHeight);a.add(b.doc,"mousedown",g.hideMenu,g);g.setState("Selected",1);g.isMenuVisible=1},renderMenu:function(){var f=this,e;e=f.settings.control_manager.createDropMenu(f.id+"_menu",{menu_line:1,"class":this.classPrefix+"Menu",icons:f.settings.icons});e.onHideMenu.add(function(){f.hideMenu();f.focus()});f.onRenderMenu.dispatch(f,e);f.menu=e},hideMenu:function(g){var f=this;if(g&&g.type=="mousedown"&&b.getParent(g.target,function(h){return h.id===f.id||h.id===f.id+"_open"})){return}if(!g||!b.getParent(g.target,".mceMenu")){f.setState("Selected",0);a.remove(b.doc,"mousedown",f.hideMenu,f);if(f.menu){f.menu.hideMenu()}}f.isMenuVisible=0},postRender:function(){var e=this,f=e.settings;a.add(e.id,"click",function(){if(!e.isDisabled()){if(f.onclick){f.onclick(e.value)}e.showMenu()}})}})})(tinymce);(function(c){var b=c.DOM,a=c.dom.Event,d=c.each;c.create("tinymce.ui.SplitButton:tinymce.ui.MenuButton",{SplitButton:function(g,f,e){this.parent(g,f,e);this.classPrefix="mceSplitButton"},renderHTML:function(){var i,f=this,g=f.settings,e;i="<tbody><tr>";if(g.image){e=b.createHTML("img ",{src:g.image,role:"presentation","class":"mceAction "+g["class"]})}else{e=b.createHTML("span",{"class":"mceAction "+g["class"]},"")}e+=b.createHTML("span",{"class":"mceVoiceLabel mceIconOnly",id:f.id+"_voice",style:"display:none;"},g.title);i+="<td >"+b.createHTML("a",{role:"button",id:f.id+"_action",tabindex:"-1",href:"javascript:;","class":"mceAction "+g["class"],onclick:"return false;",onmousedown:"return false;",title:g.title},e)+"</td>";e=b.createHTML("span",{"class":"mceOpen "+g["class"]},'<span style="display:none;" class="mceIconOnly" aria-hidden="true">\u25BC</span>');i+="<td >"+b.createHTML("a",{role:"button",id:f.id+"_open",tabindex:"-1",href:"javascript:;","class":"mceOpen "+g["class"],onclick:"return false;",onmousedown:"return false;",title:g.title},e)+"</td>";i+="</tr></tbody>";i=b.createHTML("table",{role:"presentation","class":"mceSplitButton mceSplitButtonEnabled "+g["class"],cellpadding:"0",cellspacing:"0",title:g.title},i);return b.createHTML("div",{id:f.id,role:"button",tabindex:"0","aria-labelledby":f.id+"_voice","aria-haspopup":"true"},i)},postRender:function(){var e=this,g=e.settings,f;if(g.onclick){f=function(h){if(!e.isDisabled()){g.onclick(e.value);a.cancel(h)}};a.add(e.id+"_action","click",f);a.add(e.id,["click","keydown"],function(h){var k=32,m=14,i=13,j=38,l=40;if((h.keyCode===32||h.keyCode===13||h.keyCode===14)&&!h.altKey&&!h.ctrlKey&&!h.metaKey){f();a.cancel(h)}else{if(h.type==="click"||h.keyCode===l){e.showMenu();a.cancel(h)}}})}a.add(e.id+"_open","click",function(h){e.showMenu();a.cancel(h)});a.add([e.id,e.id+"_open"],"focus",function(){e._focused=1});a.add([e.id,e.id+"_open"],"blur",function(){e._focused=0});if(c.isIE6||!b.boxModel){a.add(e.id,"mouseover",function(){if(!b.hasClass(e.id,"mceSplitButtonDisabled")){b.addClass(e.id,"mceSplitButtonHover")}});a.add(e.id,"mouseout",function(){if(!b.hasClass(e.id,"mceSplitButtonDisabled")){b.removeClass(e.id,"mceSplitButtonHover")}})}},destroy:function(){this.parent();a.clear(this.id+"_action");a.clear(this.id+"_open");a.clear(this.id)}})})(tinymce);(function(d){var c=d.DOM,a=d.dom.Event,b=d.is,e=d.each;d.create("tinymce.ui.ColorSplitButton:tinymce.ui.SplitButton",{ColorSplitButton:function(i,h,f){var g=this;g.parent(i,h,f);g.settings=h=d.extend({colors:"000000,993300,333300,003300,003366,000080,333399,333333,800000,FF6600,808000,008000,008080,0000FF,666699,808080,FF0000,FF9900,99CC00,339966,33CCCC,3366FF,800080,999999,FF00FF,FFCC00,FFFF00,00FF00,00FFFF,00CCFF,993366,C0C0C0,FF99CC,FFCC99,FFFF99,CCFFCC,CCFFFF,99CCFF,CC99FF,FFFFFF",grid_width:8,default_color:"#888888"},g.settings);g.onShowMenu=new d.util.Dispatcher(g);g.onHideMenu=new d.util.Dispatcher(g);g.value=h.default_color},showMenu:function(){var f=this,g,j,i,h;if(f.isDisabled()){return}if(!f.isMenuRendered){f.renderMenu();f.isMenuRendered=true}if(f.isMenuVisible){return f.hideMenu()}i=c.get(f.id);c.show(f.id+"_menu");c.addClass(i,"mceSplitButtonSelected");h=c.getPos(i);c.setStyles(f.id+"_menu",{left:h.x,top:h.y+i.firstChild.clientHeight,zIndex:200000});i=0;a.add(c.doc,"mousedown",f.hideMenu,f);f.onShowMenu.dispatch(f);if(f._focused){f._keyHandler=a.add(f.id+"_menu","keydown",function(k){if(k.keyCode==27){f.hideMenu()}});c.select("a",f.id+"_menu")[0].focus()}f.keyboardNav=new d.ui.KeyboardNavigation({root:f.id+"_menu",items:c.select("a",f.id+"_menu"),onCancel:function(){f.hideMenu();f.focus()}});f.keyboardNav.focus();f.isMenuVisible=1},hideMenu:function(g){var f=this;if(f.isMenuVisible){if(g&&g.type=="mousedown"&&c.getParent(g.target,function(h){return h.id===f.id+"_open"})){return}if(!g||!c.getParent(g.target,".mceSplitButtonMenu")){c.removeClass(f.id,"mceSplitButtonSelected");a.remove(c.doc,"mousedown",f.hideMenu,f);a.remove(f.id+"_menu","keydown",f._keyHandler);c.hide(f.id+"_menu")}f.isMenuVisible=0;f.onHideMenu.dispatch();f.keyboardNav.destroy()}},renderMenu:function(){var p=this,h,k=0,q=p.settings,g,j,l,o,f;o=c.add(q.menu_container,"div",{role:"listbox",id:p.id+"_menu","class":q.menu_class+" "+q["class"],style:"position:absolute;left:0;top:-1000px;"});h=c.add(o,"div",{"class":q["class"]+" mceSplitButtonMenu"});c.add(h,"span",{"class":"mceMenuLine"});g=c.add(h,"table",{role:"presentation","class":"mceColorSplitMenu"});j=c.add(g,"tbody");k=0;e(b(q.colors,"array")?q.colors:q.colors.split(","),function(m){m=m.replace(/^#/,"");if(!k--){l=c.add(j,"tr");k=q.grid_width-1}g=c.add(l,"td");var i={href:"javascript:;",style:{backgroundColor:"#"+m},title:p.editor.getLang("colors."+m,m),"data-mce-color":"#"+m};if(!d.isIE){i.role="option"}g=c.add(g,"a",i);if(p.editor.forcedHighContrastMode){g=c.add(g,"canvas",{width:16,height:16,"aria-hidden":"true"});if(g.getContext&&(f=g.getContext("2d"))){f.fillStyle="#"+m;f.fillRect(0,0,16,16)}else{c.remove(g)}}});if(q.more_colors_func){g=c.add(j,"tr");g=c.add(g,"td",{colspan:q.grid_width,"class":"mceMoreColors"});g=c.add(g,"a",{role:"option",id:p.id+"_more",href:"javascript:;",onclick:"return false;","class":"mceMoreColors"},q.more_colors_title);a.add(g,"click",function(i){q.more_colors_func.call(q.more_colors_scope||this);return a.cancel(i)})}c.addClass(h,"mceColorSplitMenu");a.add(p.id+"_menu","mousedown",function(i){return a.cancel(i)});a.add(p.id+"_menu","click",function(i){var m;i=c.getParent(i.target,"a",j);if(i&&i.nodeName.toLowerCase()=="a"&&(m=i.getAttribute("data-mce-color"))){p.setColor(m)}return false});return o},setColor:function(f){this.displayColor(f);this.hideMenu();this.settings.onselect(f)},displayColor:function(g){var f=this;c.setStyle(f.id+"_preview","backgroundColor",g);f.value=g},postRender:function(){var f=this,g=f.id;f.parent();c.add(g+"_action","div",{id:g+"_preview","class":"mceColorPreview"});c.setStyle(f.id+"_preview","backgroundColor",f.value)},destroy:function(){var f=this;f.parent();a.clear(f.id+"_menu");a.clear(f.id+"_more");c.remove(f.id+"_menu");if(f.keyboardNav){f.keyboardNav.destroy()}}})})(tinymce);(function(b){var d=b.DOM,c=b.each,a=b.dom.Event;b.create("tinymce.ui.ToolbarGroup:tinymce.ui.Container",{renderHTML:function(){var f=this,i=[],e=f.controls,j=b.each,g=f.settings;i.push('<div id="'+f.id+'" role="group" aria-labelledby="'+f.id+'_voice">');i.push("<span role='application'>");i.push('<span id="'+f.id+'_voice" class="mceVoiceLabel" style="display:none;">'+d.encode(g.name)+"</span>");j(e,function(h){i.push(h.renderHTML())});i.push("</span>");i.push("</div>");return i.join("")},focus:function(){var e=this;d.get(e.id).focus()},postRender:function(){var f=this,e=[];c(f.controls,function(g){c(g.controls,function(h){if(h.id){e.push(h)}})});f.keyNav=new b.ui.KeyboardNavigation({root:f.id,items:e,onCancel:function(){if(b.isWebKit){d.get(f.editor.id+"_ifr").focus()}f.editor.focus()},excludeFromTabOrder:!f.settings.tab_focus_toolbar})},destroy:function(){var e=this;e.parent();e.keyNav.destroy();a.clear(e.id)}})})(tinymce);(function(a){var c=a.DOM,b=a.each;a.create("tinymce.ui.Toolbar:tinymce.ui.Container",{renderHTML:function(){var m=this,f="",j,k,n=m.settings,e,d,g,l;l=m.controls;for(e=0;e<l.length;e++){k=l[e];d=l[e-1];g=l[e+1];if(e===0){j="mceToolbarStart";if(k.Button){j+=" mceToolbarStartButton"}else{if(k.SplitButton){j+=" mceToolbarStartSplitButton"}else{if(k.ListBox){j+=" mceToolbarStartListBox"}}}f+=c.createHTML("td",{"class":j},c.createHTML("span",null,"<!-- IE -->"))}if(d&&k.ListBox){if(d.Button||d.SplitButton){f+=c.createHTML("td",{"class":"mceToolbarEnd"},c.createHTML("span",null,"<!-- IE -->"))}}if(c.stdMode){f+='<td style="position: relative">'+k.renderHTML()+"</td>"}else{f+="<td>"+k.renderHTML()+"</td>"}if(g&&k.ListBox){if(g.Button||g.SplitButton){f+=c.createHTML("td",{"class":"mceToolbarStart"},c.createHTML("span",null,"<!-- IE -->"))}}}j="mceToolbarEnd";if(k.Button){j+=" mceToolbarEndButton"}else{if(k.SplitButton){j+=" mceToolbarEndSplitButton"}else{if(k.ListBox){j+=" mceToolbarEndListBox"}}}f+=c.createHTML("td",{"class":j},c.createHTML("span",null,"<!-- IE -->"));return c.createHTML("table",{id:m.id,"class":"mceToolbar"+(n["class"]?" "+n["class"]:""),cellpadding:"0",cellspacing:"0",align:m.settings.align||"",role:"presentation",tabindex:"-1"},"<tbody><tr>"+f+"</tr></tbody>")}})})(tinymce);(function(b){var a=b.util.Dispatcher,c=b.each;b.create("tinymce.AddOnManager",{AddOnManager:function(){var d=this;d.items=[];d.urls={};d.lookup={};d.onAdd=new a(d)},get:function(d){if(this.lookup[d]){return this.lookup[d].instance}else{return undefined}},dependencies:function(e){var d;if(this.lookup[e]){d=this.lookup[e].dependencies}return d||[]},requireLangPack:function(e){var d=b.settings;if(d&&d.language&&d.language_load!==false){b.ScriptLoader.add(this.urls[e]+"/langs/"+d.language+".js")}},add:function(f,e,d){this.items.push(e);this.lookup[f]={instance:e,dependencies:d};this.onAdd.dispatch(this,f,e);return e},createUrl:function(d,e){if(typeof e==="object"){return e}else{return{prefix:d.prefix,resource:e,suffix:d.suffix}}},addComponents:function(f,d){var e=this.urls[f];b.each(d,function(g){b.ScriptLoader.add(e+"/"+g)})},load:function(j,f,d,h){var g=this,e=f;function i(){var k=g.dependencies(j);b.each(k,function(m){var l=g.createUrl(f,m);g.load(l.resource,l,undefined,undefined)});if(d){if(h){d.call(h)}else{d.call(b.ScriptLoader)}}}if(g.urls[j]){return}if(typeof f==="object"){e=f.prefix+f.resource+f.suffix}if(e.indexOf("/")!==0&&e.indexOf("://")==-1){e=b.baseURL+"/"+e}g.urls[j]=e.substring(0,e.lastIndexOf("/"));if(g.lookup[j]){i()}else{b.ScriptLoader.add(e,i,h)}}});b.PluginManager=new b.AddOnManager();b.ThemeManager=new b.AddOnManager()}(tinymce));(function(j){var g=j.each,d=j.extend,k=j.DOM,i=j.dom.Event,f=j.ThemeManager,b=j.PluginManager,e=j.explode,h=j.util.Dispatcher,a,c=0;j.documentBaseURL=window.location.href.replace(/[\?#].*$/,"").replace(/[\/\\][^\/]+$/,"");if(!/[\/\\]$/.test(j.documentBaseURL)){j.documentBaseURL+="/"}j.baseURL=new j.util.URI(j.documentBaseURL).toAbsolute(j.baseURL);j.baseURI=new j.util.URI(j.baseURL);j.onBeforeUnload=new h(j);i.add(window,"beforeunload",function(l){j.onBeforeUnload.dispatch(j,l)});j.onAddEditor=new h(j);j.onRemoveEditor=new h(j);j.EditorManager=d(j,{editors:[],i18n:{},activeEditor:null,init:function(x){var v=this,o,n=j.ScriptLoader,u,l=[],r;function q(t){var s=t.id;if(!s){s=t.name;if(s&&!k.get(s)){s=t.name}else{s=k.uniqueId()}t.setAttribute("id",s)}return s}function m(z,A,t){var y=z[A];if(!y){return}if(j.is(y,"string")){t=y.replace(/\.\w+$/,"");t=t?j.resolve(t):0;y=j.resolve(y)}return y.apply(t||this,Array.prototype.slice.call(arguments,2))}function p(t,s){return s.constructor===RegExp?s.test(t.className):k.hasClass(t,s)}v.settings=x;i.bind(window,"ready",function(){var s,t;m(x,"onpageload");switch(x.mode){case"exact":s=x.elements||"";if(s.length>0){g(e(s),function(y){if(k.get(y)){r=new j.Editor(y,x);l.push(r);r.render(1)}else{g(document.forms,function(z){g(z.elements,function(A){if(A.name===y){y="mce_editor_"+c++;k.setAttrib(A,"id",y);r=new j.Editor(y,x);l.push(r);r.render(1)}})})}})}break;case"textareas":case"specific_textareas":g(k.select("textarea"),function(y){if(x.editor_deselector&&p(y,x.editor_deselector)){return}if(!x.editor_selector||p(y,x.editor_selector)){r=new j.Editor(q(y),x);l.push(r);r.render(1)}});break;default:if(x.types){g(x.types,function(y){g(k.select(y.selector),function(A){var z=new j.Editor(q(A),j.extend({},x,y));l.push(z);z.render(1)})})}else{if(x.selector){g(k.select(x.selector),function(z){var y=new j.Editor(q(z),x);l.push(y);y.render(1)})}}}if(x.oninit){s=t=0;g(l,function(y){t++;if(!y.initialized){y.onInit.add(function(){s++;if(s==t){m(x,"oninit")}})}else{s++}if(s==t){m(x,"oninit")}})}})},get:function(l){if(l===a){return this.editors}return this.editors[l]},getInstanceById:function(l){return this.get(l)},add:function(m){var l=this,n=l.editors;n[m.id]=m;n.push(m);l._setActive(m);l.onAddEditor.dispatch(l,m);return m},remove:function(n){var m=this,l,o=m.editors;if(!o[n.id]){return null}delete o[n.id];for(l=0;l<o.length;l++){if(o[l]==n){o.splice(l,1);break}}if(m.activeEditor==n){m._setActive(o[0])}n.destroy();m.onRemoveEditor.dispatch(m,n);return n},execCommand:function(r,p,o){var q=this,n=q.get(o),l;function m(){n.destroy();l.detachEvent("onunload",m);l=l.tinyMCE=l.tinymce=null}switch(r){case"mceFocus":n.focus();return true;case"mceAddEditor":case"mceAddControl":if(!q.get(o)){new j.Editor(o,q.settings).render()}return true;case"mceAddFrameControl":l=o.window;l.tinyMCE=tinyMCE;l.tinymce=j;j.DOM.doc=l.document;j.DOM.win=l;n=new j.Editor(o.element_id,o);n.render();if(j.isIE){l.attachEvent("onunload",m)}o.page_window=null;return true;case"mceRemoveEditor":case"mceRemoveControl":if(n){n.remove()}return true;case"mceToggleEditor":if(!n){q.execCommand("mceAddControl",0,o);return true}if(n.isHidden()){n.show()}else{n.hide()}return true}if(q.activeEditor){return q.activeEditor.execCommand(r,p,o)}return false},execInstanceCommand:function(p,o,n,m){var l=this.get(p);if(l){return l.execCommand(o,n,m)}return false},triggerSave:function(){g(this.editors,function(l){l.save()})},addI18n:function(n,q){var l,m=this.i18n;if(!j.is(n,"string")){g(n,function(r,p){g(r,function(t,s){g(t,function(v,u){if(s==="common"){m[p+"."+u]=v}else{m[p+"."+s+"."+u]=v}})})})}else{g(q,function(r,p){m[n+"."+p]=r})}},_setActive:function(l){this.selectedInstance=this.activeEditor=l}})})(tinymce);(function(k){var l=k.DOM,j=k.dom.Event,f=k.extend,i=k.each,a=k.isGecko,b=k.isIE,e=k.isWebKit,d=k.is,h=k.ThemeManager,c=k.PluginManager,g=k.explode;k.create("tinymce.Editor",{Editor:function(p,o){var m=this,n=true;m.settings=o=f({id:p,language:"en",theme:"advanced",skin:"default",delta_width:0,delta_height:0,popup_css:"",plugins:"",document_base_url:k.documentBaseURL,add_form_submit_trigger:n,submit_patch:n,add_unload_trigger:n,convert_urls:n,relative_urls:n,remove_script_host:n,table_inline_editing:false,object_resizing:n,accessibility_focus:n,doctype:k.isIE6?'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">':"<!DOCTYPE>",visual:n,font_size_style_values:"xx-small,x-small,small,medium,large,x-large,xx-large",font_size_legacy_values:"xx-small,small,medium,large,x-large,xx-large,300%",apply_source_formatting:n,directionality:"ltr",forced_root_block:"p",hidden_input:n,padd_empty_editor:n,render_ui:n,indentation:"30px",fix_table_elements:n,inline_styles:n,convert_fonts_to_spans:n,indent:"simple",indent_before:"p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,ul,li,area,table,thead,tfoot,tbody,tr,section,article,hgroup,aside,figure,option,optgroup,datalist",indent_after:"p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,ul,li,area,table,thead,tfoot,tbody,tr,section,article,hgroup,aside,figure,option,optgroup,datalist",validate:n,entity_encoding:"named",url_converter:m.convertURL,url_converter_scope:m,ie7_compat:n},o);m.id=m.editorId=p;m.isNotDirty=false;m.plugins={};m.documentBaseURI=new k.util.URI(o.document_base_url||k.documentBaseURL,{base_uri:tinyMCE.baseURI});m.baseURI=k.baseURI;m.contentCSS=[];m.contentStyles=[];m.setupEvents();m.execCommands={};m.queryStateCommands={};m.queryValueCommands={};m.execCallback("setup",m)},render:function(o){var p=this,q=p.settings,r=p.id,m=k.ScriptLoader;if(!j.domLoaded){j.add(window,"ready",function(){p.render()});return}tinyMCE.settings=q;if(!p.getElement()){return}if(k.isIDevice&&!k.isIOS5){return}if(!/TEXTAREA|INPUT/i.test(p.getElement().nodeName)&&q.hidden_input&&l.getParent(r,"form")){l.insertAfter(l.create("input",{type:"hidden",name:r}),r)}if(!q.content_editable){p.orgVisibility=p.getElement().style.visibility;p.getElement().style.visibility="hidden"}if(k.WindowManager){p.windowManager=new k.WindowManager(p)}if(q.encoding=="xml"){p.onGetContent.add(function(s,t){if(t.save){t.content=l.encode(t.content)}})}if(q.add_form_submit_trigger){p.onSubmit.addToTop(function(){if(p.initialized){p.save();p.isNotDirty=1}})}if(q.add_unload_trigger){p._beforeUnload=tinyMCE.onBeforeUnload.add(function(){if(p.initialized&&!p.destroyed&&!p.isHidden()){p.save({format:"raw",no_events:true})}})}k.addUnload(p.destroy,p);if(q.submit_patch){p.onBeforeRenderUI.add(function(){var s=p.getElement().form;if(!s){return}if(s._mceOldSubmit){return}if(!s.submit.nodeType&&!s.submit.length){p.formElement=s;s._mceOldSubmit=s.submit;s.submit=function(){k.triggerSave();p.isNotDirty=1;return p.formElement._mceOldSubmit(p.formElement)}}s=null})}function n(){if(q.language&&q.language_load!==false){m.add(k.baseURL+"/langs/"+q.language+".js")}if(q.theme&&typeof q.theme!="function"&&q.theme.charAt(0)!="-"&&!h.urls[q.theme]){h.load(q.theme,"themes/"+q.theme+"/editor_template"+k.suffix+".js")}i(g(q.plugins),function(t){if(t&&!c.urls[t]){if(t.charAt(0)=="-"){t=t.substr(1,t.length);var s=c.dependencies(t);i(s,function(v){var u={prefix:"plugins/",resource:v,suffix:"/editor_plugin"+k.suffix+".js"};v=c.createUrl(u,v);c.load(v.resource,v)})}else{if(t=="safari"){return}c.load(t,{prefix:"plugins/",resource:t,suffix:"/editor_plugin"+k.suffix+".js"})}}});m.loadQueue(function(){if(!p.removed){p.init()}})}n()},init:function(){var q,G=this,H=G.settings,D,y,z,C=G.getElement(),p,m,E,v,B,F,x,r=[];k.add(G);H.aria_label=H.aria_label||l.getAttrib(C,"aria-label",G.getLang("aria.rich_text_area"));if(H.theme){if(typeof H.theme!="function"){H.theme=H.theme.replace(/-/,"");p=h.get(H.theme);G.theme=new p();if(G.theme.init){G.theme.init(G,h.urls[H.theme]||k.documentBaseURL.replace(/\/$/,""))}}else{G.theme=H.theme}}function A(s){var t=c.get(s),o=c.urls[s]||k.documentBaseURL.replace(/\/$/,""),n;if(t&&k.inArray(r,s)===-1){i(c.dependencies(s),function(u){A(u)});n=new t(G,o);G.plugins[s]=n;if(n.init){n.init(G,o);r.push(s)}}}i(g(H.plugins.replace(/\-/g,"")),A);if(H.popup_css!==false){if(H.popup_css){H.popup_css=G.documentBaseURI.toAbsolute(H.popup_css)}else{H.popup_css=G.baseURI.toAbsolute("themes/"+H.theme+"/skins/"+H.skin+"/dialog.css")}}if(H.popup_css_add){H.popup_css+=","+G.documentBaseURI.toAbsolute(H.popup_css_add)}G.controlManager=new k.ControlManager(G);G.onBeforeRenderUI.dispatch(G,G.controlManager);if(H.render_ui&&G.theme){G.orgDisplay=C.style.display;if(typeof H.theme!="function"){D=H.width||C.style.width||C.offsetWidth;y=H.height||C.style.height||C.offsetHeight;z=H.min_height||100;F=/^[0-9\.]+(|px)$/i;if(F.test(""+D)){D=Math.max(parseInt(D,10)+(p.deltaWidth||0),100)}if(F.test(""+y)){y=Math.max(parseInt(y,10)+(p.deltaHeight||0),z)}p=G.theme.renderUI({targetNode:C,width:D,height:y,deltaWidth:H.delta_width,deltaHeight:H.delta_height});l.setStyles(p.sizeContainer||p.editorContainer,{width:D,height:y});y=(p.iframeHeight||y)+(typeof(y)=="number"?(p.deltaHeight||0):"");if(y<z){y=z}}else{p=H.theme(G,C);if(p.editorContainer.nodeType){p.editorContainer=p.editorContainer.id=p.editorContainer.id||G.id+"_parent"}if(p.iframeContainer.nodeType){p.iframeContainer=p.iframeContainer.id=p.iframeContainer.id||G.id+"_iframecontainer"}y=p.iframeHeight||C.offsetHeight;if(b){G.onInit.add(function(n){n.dom.bind(n.getBody(),"beforedeactivate keydown",function(){n.lastIERng=n.selection.getRng()})})}}G.editorContainer=p.editorContainer}if(H.content_css){i(g(H.content_css),function(n){G.contentCSS.push(G.documentBaseURI.toAbsolute(n))})}if(H.content_style){G.contentStyles.push(H.content_style)}if(H.content_editable){C=q=p=null;return G.initContentBody()}if(document.domain&&location.hostname!=document.domain){k.relaxedDomain=document.domain}G.iframeHTML=H.doctype+'<html><head xmlns="http://www.w3.org/1999/xhtml">';if(H.document_base_url!=k.documentBaseURL){G.iframeHTML+='<base href="'+G.documentBaseURI.getURI()+'" />'}if(H.ie7_compat){G.iframeHTML+='<meta http-equiv="X-UA-Compatible" content="IE=7" />'}else{G.iframeHTML+='<meta http-equiv="X-UA-Compatible" content="IE=edge" />'}G.iframeHTML+='<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />';for(x=0;x<G.contentCSS.length;x++){G.iframeHTML+='<link type="text/css" rel="stylesheet" href="'+G.contentCSS[x]+'" />'}G.contentCSS=[];v=H.body_id||"tinymce";if(v.indexOf("=")!=-1){v=G.getParam("body_id","","hash");v=v[G.id]||v}B=H.body_class||"";if(B.indexOf("=")!=-1){B=G.getParam("body_class","","hash");B=B[G.id]||""}G.iframeHTML+='</head><body id="'+v+'" class="mceContentBody '+B+'" onload="window.parent.tinyMCE.get(\''+G.id+"').onLoad.dispatch();\"><br></body></html>";if(k.relaxedDomain&&(b||(k.isOpera&&parseFloat(opera.version())<11))){E='javascript:(function(){document.open();document.domain="'+document.domain+'";var ed = window.parent.tinyMCE.get("'+G.id+'");document.write(ed.iframeHTML);document.close();ed.initContentBody();})()'}q=l.add(p.iframeContainer,"iframe",{id:G.id+"_ifr",src:E||'javascript:""',frameBorder:"0",allowTransparency:"true",title:H.aria_label,style:{width:"100%",height:y,display:"block"}});G.contentAreaContainer=p.iframeContainer;if(p.editorContainer){l.get(p.editorContainer).style.display=G.orgDisplay}C.style.visibility=G.orgVisibility;l.get(G.id).style.display="none";l.setAttrib(G.id,"aria-hidden",true);if(!k.relaxedDomain||!E){G.initContentBody()}C=q=p=null},initContentBody:function(){var n=this,p=n.settings,q=l.get(n.id),r=n.getDoc(),o,m,s;if((!b||!k.relaxedDomain)&&!p.content_editable){r.open();r.write(n.iframeHTML);r.close();if(k.relaxedDomain){r.domain=k.relaxedDomain}}if(p.content_editable){l.addClass(q,"mceContentBody");n.contentDocument=r=p.content_document||document;n.contentWindow=p.content_window||window;n.bodyElement=q;p.content_document=p.content_window=null}m=n.getBody();m.disabled=true;if(!p.readonly){m.contentEditable=n.getParam("content_editable_state",true)}m.disabled=false;n.schema=new k.html.Schema(p);n.dom=new k.dom.DOMUtils(r,{keep_values:true,url_converter:n.convertURL,url_converter_scope:n,hex_colors:p.force_hex_style_colors,class_filter:p.class_filter,update_styles:true,root_element:p.content_editable?n.id:null,schema:n.schema});n.parser=new k.html.DomParser(p,n.schema);n.parser.addAttributeFilter("src,href,style",function(t,u){var v=t.length,y,A=n.dom,z,x;while(v--){y=t[v];z=y.attr(u);x="data-mce-"+u;if(!y.attributes.map[x]){if(u==="style"){y.attr(x,A.serializeStyle(A.parseStyle(z),y.name))}else{y.attr(x,n.convertURL(z,u,y.name))}}}});n.parser.addNodeFilter("script",function(t,u){var v=t.length,x;while(v--){x=t[v];x.attr("type","mce-"+(x.attr("type")||"text/javascript"))}});n.parser.addNodeFilter("#cdata",function(t,u){var v=t.length,x;while(v--){x=t[v];x.type=8;x.name="#comment";x.value="[CDATA["+x.value+"]]"}});n.parser.addNodeFilter("p,h1,h2,h3,h4,h5,h6,div",function(u,v){var x=u.length,y,t=n.schema.getNonEmptyElements();while(x--){y=u[x];if(y.isEmpty(t)){y.empty().append(new k.html.Node("br",1)).shortEnded=true}}});n.serializer=new k.dom.Serializer(p,n.dom,n.schema);n.selection=new k.dom.Selection(n.dom,n.getWin(),n.serializer,n);n.formatter=new k.Formatter(n);n.undoManager=new k.UndoManager(n);n.forceBlocks=new k.ForceBlocks(n);n.enterKey=new k.EnterKey(n);n.editorCommands=new k.EditorCommands(n);n.onExecCommand.add(function(t,u){if(!/^(FontName|FontSize)$/.test(u)){n.nodeChanged()}});n.serializer.onPreProcess.add(function(t,u){return n.onPreProcess.dispatch(n,u,t)});n.serializer.onPostProcess.add(function(t,u){return n.onPostProcess.dispatch(n,u,t)});n.onPreInit.dispatch(n);if(!p.browser_spellcheck&&!p.gecko_spellcheck){r.body.spellcheck=false}if(!p.readonly){n.bindNativeEvents()}n.controlManager.onPostRender.dispatch(n,n.controlManager);n.onPostRender.dispatch(n);n.quirks=k.util.Quirks(n);if(p.directionality){m.dir=p.directionality}if(p.nowrap){m.style.whiteSpace="nowrap"}if(p.protect){n.onBeforeSetContent.add(function(t,u){i(p.protect,function(v){u.content=u.content.replace(v,function(x){return"<!--mce:protected "+escape(x)+"-->"})})})}n.onSetContent.add(function(){n.addVisual(n.getBody())});if(p.padd_empty_editor){n.onPostProcess.add(function(t,u){u.content=u.content.replace(/^(<p[^>]*>(&nbsp;|&#160;|\s|\u00a0|)<\/p>[\r\n]*|<br \/>[\r\n]*)$/,"")})}n.load({initial:true,format:"html"});n.startContent=n.getContent({format:"raw"});n.initialized=true;n.onInit.dispatch(n);n.execCallback("setupcontent_callback",n.id,m,r);n.execCallback("init_instance_callback",n);n.focus(true);n.nodeChanged({initial:true});if(n.contentStyles.length>0){s="";i(n.contentStyles,function(t){s+=t+"\r\n"});n.dom.addStyle(s)}i(n.contentCSS,function(t){n.dom.loadCSS(t)});if(p.auto_focus){setTimeout(function(){var t=k.get(p.auto_focus);t.selection.select(t.getBody(),1);t.selection.collapse(1);t.getBody().focus();t.getWin().focus()},100)}q=r=m=null},focus:function(p){var o,u=this,t=u.selection,q=u.settings.content_editable,n,r,s=u.getDoc(),m;if(!p){if(u.lastIERng){t.setRng(u.lastIERng)}n=t.getRng();if(n.item){r=n.item(0)}u._refreshContentEditable();if(!q){u.getWin().focus()}if(k.isGecko||q){m=u.getBody();if(m.setActive){m.setActive()}else{m.focus()}if(q){t.normalize()}}if(r&&r.ownerDocument==s){n=s.body.createControlRange();n.addElement(r);n.select()}}if(k.activeEditor!=u){if((o=k.activeEditor)!=null){o.onDeactivate.dispatch(o,u)}u.onActivate.dispatch(u,o)}k._setActive(u)},execCallback:function(q){var m=this,p=m.settings[q],o;if(!p){return}if(m.callbackLookup&&(o=m.callbackLookup[q])){p=o.func;o=o.scope}if(d(p,"string")){o=p.replace(/\.\w+$/,"");o=o?k.resolve(o):0;p=k.resolve(p);m.callbackLookup=m.callbackLookup||{};m.callbackLookup[q]={func:p,scope:o}}return p.apply(o||m,Array.prototype.slice.call(arguments,1))},translate:function(m){var o=this.settings.language||"en",n=k.i18n;if(!m){return""}return n[o+"."+m]||m.replace(/\{\#([^\}]+)\}/g,function(q,p){return n[o+"."+p]||"{#"+p+"}"})},getLang:function(o,m){return k.i18n[(this.settings.language||"en")+"."+o]||(d(m)?m:"{#"+o+"}")},getParam:function(t,q,m){var r=k.trim,p=d(this.settings[t])?this.settings[t]:q,s;if(m==="hash"){s={};if(d(p,"string")){i(p.indexOf("=")>0?p.split(/[;,](?![^=;,]*(?:[;,]|$))/):p.split(","),function(n){n=n.split("=");if(n.length>1){s[r(n[0])]=r(n[1])}else{s[r(n[0])]=r(n)}})}else{s=p}return s}return p},nodeChanged:function(q){var m=this,n=m.selection,p;if(m.initialized){q=q||{};p=n.getStart()||m.getBody();p=b&&p.ownerDocument!=m.getDoc()?m.getBody():p;q.parents=[];m.dom.getParent(p,function(o){if(o.nodeName=="BODY"){return true}q.parents.push(o)});m.onNodeChange.dispatch(m,q?q.controlManager||m.controlManager:m.controlManager,p,n.isCollapsed(),q)}},addButton:function(n,o){var m=this;m.buttons=m.buttons||{};m.buttons[n]=o},addCommand:function(m,o,n){this.execCommands[m]={func:o,scope:n||this}},addQueryStateHandler:function(m,o,n){this.queryStateCommands[m]={func:o,scope:n||this}},addQueryValueHandler:function(m,o,n){this.queryValueCommands[m]={func:o,scope:n||this}},addShortcut:function(o,q,m,p){var n=this,r;if(n.settings.custom_shortcuts===false){return false}n.shortcuts=n.shortcuts||{};if(d(m,"string")){r=m;m=function(){n.execCommand(r,false,null)}}if(d(m,"object")){r=m;m=function(){n.execCommand(r[0],r[1],r[2])}}i(g(o),function(s){var t={func:m,scope:p||this,desc:n.translate(q),alt:false,ctrl:false,shift:false};i(g(s,"+"),function(u){switch(u){case"alt":case"ctrl":case"shift":t[u]=true;break;default:t.charCode=u.charCodeAt(0);t.keyCode=u.toUpperCase().charCodeAt(0)}});n.shortcuts[(t.ctrl?"ctrl":"")+","+(t.alt?"alt":"")+","+(t.shift?"shift":"")+","+t.keyCode]=t});return true},execCommand:function(u,r,x,m){var p=this,q=0,v,n;if(!/^(mceAddUndoLevel|mceEndUndoLevel|mceBeginUndoLevel|mceRepaint|SelectAll)$/.test(u)&&(!m||!m.skip_focus)){p.focus()}m=f({},m);p.onBeforeExecCommand.dispatch(p,u,r,x,m);if(m.terminate){return false}if(p.execCallback("execcommand_callback",p.id,p.selection.getNode(),u,r,x)){p.onExecCommand.dispatch(p,u,r,x,m);return true}if(v=p.execCommands[u]){n=v.func.call(v.scope,r,x);if(n!==true){p.onExecCommand.dispatch(p,u,r,x,m);return n}}i(p.plugins,function(o){if(o.execCommand&&o.execCommand(u,r,x)){p.onExecCommand.dispatch(p,u,r,x,m);q=1;return false}});if(q){return true}if(p.theme&&p.theme.execCommand&&p.theme.execCommand(u,r,x)){p.onExecCommand.dispatch(p,u,r,x,m);return true}if(p.editorCommands.execCommand(u,r,x)){p.onExecCommand.dispatch(p,u,r,x,m);return true}p.getDoc().execCommand(u,r,x);p.onExecCommand.dispatch(p,u,r,x,m)},queryCommandState:function(q){var n=this,r,p;if(n._isHidden()){return}if(r=n.queryStateCommands[q]){p=r.func.call(r.scope);if(p!==true){return p}}r=n.editorCommands.queryCommandState(q);if(r!==-1){return r}try{return this.getDoc().queryCommandState(q)}catch(m){}},queryCommandValue:function(r){var n=this,q,p;if(n._isHidden()){return}if(q=n.queryValueCommands[r]){p=q.func.call(q.scope);if(p!==true){return p}}q=n.editorCommands.queryCommandValue(r);if(d(q)){return q}try{return this.getDoc().queryCommandValue(r)}catch(m){}},show:function(){var m=this;l.show(m.getContainer());l.hide(m.id);m.load()},hide:function(){var m=this,n=m.getDoc();if(b&&n){n.execCommand("SelectAll")}m.save();l.hide(m.getContainer());l.setStyle(m.id,"display",m.orgDisplay)},isHidden:function(){return !l.isHidden(this.id)},setProgressState:function(m,n,p){this.onSetProgressState.dispatch(this,m,n,p);return m},load:function(q){var m=this,p=m.getElement(),n;if(p){q=q||{};q.load=true;n=m.setContent(d(p.value)?p.value:p.innerHTML,q);q.element=p;if(!q.no_events){m.onLoadContent.dispatch(m,q)}q.element=p=null;return n}},save:function(r){var m=this,q=m.getElement(),n,p;if(!q||!m.initialized){return}r=r||{};r.save=true;r.element=q;n=r.content=m.getContent(r);if(!r.no_events){m.onSaveContent.dispatch(m,r)}n=r.content;if(!/TEXTAREA|INPUT/i.test(q.nodeName)){q.innerHTML=n;if(p=l.getParent(m.id,"form")){i(p.elements,function(o){if(o.name==m.id){o.value=n;return false}})}}else{q.value=n}r.element=q=null;return n},setContent:function(r,p){var o=this,n,m=o.getBody(),q;p=p||{};p.format=p.format||"html";p.set=true;p.content=r;if(!p.no_events){o.onBeforeSetContent.dispatch(o,p)}r=p.content;if(!k.isIE&&(r.length===0||/^\s+$/.test(r))){q=o.settings.forced_root_block;if(q){r="<"+q+'><br data-mce-bogus="1"></'+q+">"}else{r='<br data-mce-bogus="1">'}m.innerHTML=r;o.selection.select(m,true);o.selection.collapse(true);return}if(p.format!=="raw"){r=new k.html.Serializer({},o.schema).serialize(o.parser.parse(r))}p.content=k.trim(r);o.dom.setHTML(m,p.content);if(!p.no_events){o.onSetContent.dispatch(o,p)}if(!o.settings.content_editable||document.activeElement===o.getBody()){o.selection.normalize()}return p.content},getContent:function(o){var n=this,p,m=n.getBody();o=o||{};o.format=o.format||"html";o.get=true;o.getInner=true;if(!o.no_events){n.onBeforeGetContent.dispatch(n,o)}if(o.format=="raw"){p=m.innerHTML}else{if(o.format=="text"){p=m.innerText||m.textContent}else{p=n.serializer.serialize(m,o)}}if(o.format!="text"){o.content=k.trim(p)}else{o.content=p}if(!o.no_events){n.onGetContent.dispatch(n,o)}return o.content},isDirty:function(){var m=this;return k.trim(m.startContent)!=k.trim(m.getContent({format:"raw",no_events:1}))&&!m.isNotDirty},getContainer:function(){var m=this;if(!m.container){m.container=l.get(m.editorContainer||m.id+"_parent")}return m.container},getContentAreaContainer:function(){return this.contentAreaContainer},getElement:function(){return l.get(this.settings.content_element||this.id)},getWin:function(){var m=this,n;if(!m.contentWindow){n=l.get(m.id+"_ifr");if(n){m.contentWindow=n.contentWindow}}return m.contentWindow},getDoc:function(){var m=this,n;if(!m.contentDocument){n=m.getWin();if(n){m.contentDocument=n.document}}return m.contentDocument},getBody:function(){return this.bodyElement||this.getDoc().body},convertURL:function(o,n,q){var m=this,p=m.settings;if(p.urlconverter_callback){return m.execCallback("urlconverter_callback",o,q,true,n)}if(!p.convert_urls||(q&&q.nodeName=="LINK")||o.indexOf("file:")===0){return o}if(p.relative_urls){return m.documentBaseURI.toRelative(o)}o=m.documentBaseURI.toAbsolute(o,p.remove_script_host);return o},addVisual:function(q){var n=this,o=n.settings,p=n.dom,m;q=q||n.getBody();if(!d(n.hasVisual)){n.hasVisual=o.visual}i(p.select("table,a",q),function(s){var r;switch(s.nodeName){case"TABLE":m=o.visual_table_class||"mceItemTable";r=p.getAttrib(s,"border");if(!r||r=="0"){if(n.hasVisual){p.addClass(s,m)}else{p.removeClass(s,m)}}return;case"A":if(!p.getAttrib(s,"href",false)){r=p.getAttrib(s,"name")||s.id;m="mceItemAnchor";if(r){if(n.hasVisual){p.addClass(s,m)}else{p.removeClass(s,m)}}}return}});n.onVisualAid.dispatch(n,q,n.hasVisual)},remove:function(){var m=this,n=m.getContainer();if(!m.removed){m.removed=1;m.hide();if(!m.settings.content_editable){j.unbind(m.getWin());j.unbind(m.getDoc())}j.unbind(m.getBody());j.clear(n);m.execCallback("remove_instance_callback",m);m.onRemove.dispatch(m);m.onExecCommand.listeners=[];k.remove(m);l.remove(n)}},destroy:function(n){var m=this;if(m.destroyed){return}if(a){j.unbind(m.getDoc());j.unbind(m.getWin());j.unbind(m.getBody())}if(!n){k.removeUnload(m.destroy);tinyMCE.onBeforeUnload.remove(m._beforeUnload);if(m.theme&&m.theme.destroy){m.theme.destroy()}m.controlManager.destroy();m.selection.destroy();m.dom.destroy()}if(m.formElement){m.formElement.submit=m.formElement._mceOldSubmit;m.formElement._mceOldSubmit=null}m.contentAreaContainer=m.formElement=m.container=m.settings.content_element=m.bodyElement=m.contentDocument=m.contentWindow=null;if(m.selection){m.selection=m.selection.win=m.selection.dom=m.selection.dom.doc=null}m.destroyed=1},_refreshContentEditable:function(){var n=this,m,o;if(n._isHidden()){m=n.getBody();o=m.parentNode;o.removeChild(m);o.appendChild(m);m.focus()}},_isHidden:function(){var m;if(!a){return 0}m=this.selection.getSel();return(!m||!m.rangeCount||m.rangeCount===0)}})})(tinymce);(function(a){var b=a.each;a.Editor.prototype.setupEvents=function(){var c=this,d=c.settings;b(["onPreInit","onBeforeRenderUI","onPostRender","onLoad","onInit","onRemove","onActivate","onDeactivate","onClick","onEvent","onMouseUp","onMouseDown","onDblClick","onKeyDown","onKeyUp","onKeyPress","onContextMenu","onSubmit","onReset","onPaste","onPreProcess","onPostProcess","onBeforeSetContent","onBeforeGetContent","onSetContent","onGetContent","onLoadContent","onSaveContent","onNodeChange","onChange","onBeforeExecCommand","onExecCommand","onUndo","onRedo","onVisualAid","onSetProgressState","onSetAttrib"],function(e){c[e]=new a.util.Dispatcher(c)});if(d.cleanup_callback){c.onBeforeSetContent.add(function(e,f){f.content=e.execCallback("cleanup_callback","insert_to_editor",f.content,f)});c.onPreProcess.add(function(e,f){if(f.set){e.execCallback("cleanup_callback","insert_to_editor_dom",f.node,f)}if(f.get){e.execCallback("cleanup_callback","get_from_editor_dom",f.node,f)}});c.onPostProcess.add(function(e,f){if(f.set){f.content=e.execCallback("cleanup_callback","insert_to_editor",f.content,f)}if(f.get){f.content=e.execCallback("cleanup_callback","get_from_editor",f.content,f)}})}if(d.save_callback){c.onGetContent.add(function(e,f){if(f.save){f.content=e.execCallback("save_callback",e.id,f.content,e.getBody())}})}if(d.handle_event_callback){c.onEvent.add(function(f,g,h){if(c.execCallback("handle_event_callback",g,f,h)===false){g.preventDefault();g.stopPropagation()}})}if(d.handle_node_change_callback){c.onNodeChange.add(function(f,e,g){f.execCallback("handle_node_change_callback",f.id,g,-1,-1,true,f.selection.isCollapsed())})}if(d.save_callback){c.onSaveContent.add(function(e,g){var f=e.execCallback("save_callback",e.id,g.content,e.getBody());if(f){g.content=f}})}if(d.onchange_callback){c.onChange.add(function(f,e){f.execCallback("onchange_callback",f,e)})}};a.Editor.prototype.bindNativeEvents=function(){var l=this,f,d=l.settings,e=l.dom,h;h={mouseup:"onMouseUp",mousedown:"onMouseDown",click:"onClick",keyup:"onKeyUp",keydown:"onKeyDown",keypress:"onKeyPress",submit:"onSubmit",reset:"onReset",contextmenu:"onContextMenu",dblclick:"onDblClick",paste:"onPaste"};function c(i,m){var n=i.type;if(l.removed){return}if(l.onEvent.dispatch(l,i,m)!==false){l[h[i.fakeType||i.type]].dispatch(l,i,m)}}function j(i){l.focus(true)}function k(i,m){if(m.keyCode!=65||!a.VK.metaKeyPressed(m)){l.selection.normalize()}l.nodeChanged()}b(h,function(m,n){var i=d.content_editable?l.getBody():l.getDoc();switch(n){case"contextmenu":e.bind(i,n,c);break;case"paste":e.bind(l.getBody(),n,c);break;case"submit":case"reset":e.bind(l.getElement().form||a.DOM.getParent(l.id,"form"),n,c);break;default:e.bind(i,n,c)}});e.bind(d.content_editable?l.getBody():(a.isGecko?l.getDoc():l.getWin()),"focus",function(i){l.focus(true)});if(d.content_editable&&a.isOpera){e.bind(l.getBody(),"click",j);e.bind(l.getBody(),"keydown",j)}l.onMouseUp.add(k);l.onKeyUp.add(function(i,n){var m=n.keyCode;if((m>=33&&m<=36)||(m>=37&&m<=40)||m==13||m==45||m==46||m==8||(a.isMac&&(m==91||m==93))||n.ctrlKey){k(i,n)}});l.onReset.add(function(){l.setContent(l.startContent,{format:"raw"})});function g(m,i){if(m.altKey||m.ctrlKey||m.metaKey){b(l.shortcuts,function(n){var o=a.isMac?m.metaKey:m.ctrlKey;if(n.ctrl!=o||n.alt!=m.altKey||n.shift!=m.shiftKey){return}if(m.keyCode==n.keyCode||(m.charCode&&m.charCode==n.charCode)){m.preventDefault();if(i){n.func.call(n.scope)}return true}})}}l.onKeyUp.add(function(i,m){g(m)});l.onKeyPress.add(function(i,m){g(m)});l.onKeyDown.add(function(i,m){g(m,true)});if(a.isOpera){l.onClick.add(function(i,m){m.preventDefault()})}}})(tinymce);(function(d){var e=d.each,b,a=true,c=false;d.EditorCommands=function(n){var m=n.dom,p=n.selection,j={state:{},exec:{},value:{}},k=n.settings,q=n.formatter,o;function r(z,y,x){var v;z=z.toLowerCase();if(v=j.exec[z]){v(z,y,x);return a}return c}function l(x){var v;x=x.toLowerCase();if(v=j.state[x]){return v(x)}return -1}function h(x){var v;x=x.toLowerCase();if(v=j.value[x]){return v(x)}return c}function u(v,x){x=x||"exec";e(v,function(z,y){e(y.toLowerCase().split(","),function(A){j[x][A]=z})})}d.extend(this,{execCommand:r,queryCommandState:l,queryCommandValue:h,addCommands:u});function f(y,x,v){if(x===b){x=c}if(v===b){v=null}return n.getDoc().execCommand(y,x,v)}function t(v){return q.match(v)}function s(v,x){q.toggle(v,x?{value:x}:b)}function i(v){o=p.getBookmark(v)}function g(){p.moveToBookmark(o)}u({"mceResetDesignMode,mceBeginUndoLevel":function(){},"mceEndUndoLevel,mceAddUndoLevel":function(){n.undoManager.add()},"Cut,Copy,Paste":function(z){var y=n.getDoc(),v;try{f(z)}catch(x){v=a}if(v||!y.queryCommandSupported(z)){if(d.isGecko){n.windowManager.confirm(n.getLang("clipboard_msg"),function(A){if(A){open("http://www.mozilla.org/editor/midasdemo/securityprefs.html","_blank")}})}else{n.windowManager.alert(n.getLang("clipboard_no_support"))}}},unlink:function(v){if(p.isCollapsed()){p.select(p.getNode())}f(v);p.collapse(c)},"JustifyLeft,JustifyCenter,JustifyRight,JustifyFull":function(v){var x=v.substring(7);e("left,center,right,full".split(","),function(y){if(x!=y){q.remove("align"+y)}});s("align"+x);r("mceRepaint")},"InsertUnorderedList,InsertOrderedList":function(y){var v,x;f(y);v=m.getParent(p.getNode(),"ol,ul");if(v){x=v.parentNode;if(/^(H[1-6]|P|ADDRESS|PRE)$/.test(x.nodeName)){i();m.split(x,v);g()}}},"Bold,Italic,Underline,Strikethrough,Superscript,Subscript":function(v){s(v)},"ForeColor,HiliteColor,FontName":function(y,x,v){s(y,v)},FontSize:function(z,y,x){var v,A;if(x>=1&&x<=7){A=d.explode(k.font_size_style_values);v=d.explode(k.font_size_classes);if(v){x=v[x-1]||x}else{x=A[x-1]||x}}s(z,x)},RemoveFormat:function(v){q.remove(v)},mceBlockQuote:function(v){s("blockquote")},FormatBlock:function(y,x,v){return s(v||"p")},mceCleanup:function(){var v=p.getBookmark();n.setContent(n.getContent({cleanup:a}),{cleanup:a});p.moveToBookmark(v)},mceRemoveNode:function(z,y,x){var v=x||p.getNode();if(v!=n.getBody()){i();n.dom.remove(v,a);g()}},mceSelectNodeDepth:function(z,y,x){var v=0;m.getParent(p.getNode(),function(A){if(A.nodeType==1&&v++==x){p.select(A);return c}},n.getBody())},mceSelectNode:function(y,x,v){p.select(v)},mceInsertContent:function(B,I,K){var y,J,E,z,F,G,D,C,L,x,A,M,v,H;y=n.parser;J=new d.html.Serializer({},n.schema);v='<span id="mce_marker" data-mce-type="bookmark">\uFEFF</span>';G={content:K,format:"html"};p.onBeforeSetContent.dispatch(p,G);K=G.content;if(K.indexOf("{$caret}")==-1){K+="{$caret}"}K=K.replace(/\{\$caret\}/,v);if(!p.isCollapsed()){n.getDoc().execCommand("Delete",false,null)}E=p.getNode();G={context:E.nodeName.toLowerCase()};F=y.parse(K,G);A=F.lastChild;if(A.attr("id")=="mce_marker"){D=A;for(A=A.prev;A;A=A.walk(true)){if(A.type==3||!m.isBlock(A.name)){A.parent.insert(D,A,A.name==="br");break}}}if(!G.invalid){K=J.serialize(F);A=E.firstChild;M=E.lastChild;if(!A||(A===M&&A.nodeName==="BR")){m.setHTML(E,K)}else{p.setContent(K)}}else{p.setContent(v);E=p.getNode();z=n.getBody();if(E.nodeType==9){E=A=z}else{A=E}while(A!==z){E=A;A=A.parentNode}K=E==z?z.innerHTML:m.getOuterHTML(E);K=J.serialize(y.parse(K.replace(/<span (id="mce_marker"|id=mce_marker).+?<\/span>/i,function(){return J.serialize(F)})));if(E==z){m.setHTML(z,K)}else{m.setOuterHTML(E,K)}}D=m.get("mce_marker");C=m.getRect(D);L=m.getViewPort(n.getWin());if((C.y+C.h>L.y+L.h||C.y<L.y)||(C.x>L.x+L.w||C.x<L.x)){H=d.isIE?n.getDoc().documentElement:n.getBody();H.scrollLeft=C.x;H.scrollTop=C.y-L.h+25}x=m.createRng();A=D.previousSibling;if(A&&A.nodeType==3){x.setStart(A,A.nodeValue.length)}else{x.setStartBefore(D);x.setEndBefore(D)}m.remove(D);p.setRng(x);p.onSetContent.dispatch(p,G);n.addVisual()},mceInsertRawHTML:function(y,x,v){p.setContent("tiny_mce_marker");n.setContent(n.getContent().replace(/tiny_mce_marker/g,function(){return v}))},mceToggleFormat:function(y,x,v){s(v)},mceSetContent:function(y,x,v){n.setContent(v)},"Indent,Outdent":function(z){var x,v,y;x=k.indentation;v=/[a-z%]+$/i.exec(x);x=parseInt(x);if(!l("InsertUnorderedList")&&!l("InsertOrderedList")){if(!k.forced_root_block&&!m.getParent(p.getNode(),m.isBlock)){q.apply("div")}e(p.getSelectedBlocks(),function(A){if(z=="outdent"){y=Math.max(0,parseInt(A.style.paddingLeft||0)-x);m.setStyle(A,"paddingLeft",y?y+v:"")}else{m.setStyle(A,"paddingLeft",(parseInt(A.style.paddingLeft||0)+x)+v)}})}else{f(z)}},mceRepaint:function(){var x;if(d.isGecko){try{i(a);if(p.getSel()){p.getSel().selectAllChildren(n.getBody())}p.collapse(a);g()}catch(v){}}},mceToggleFormat:function(y,x,v){q.toggle(v)},InsertHorizontalRule:function(){n.execCommand("mceInsertContent",false,"<hr />")},mceToggleVisualAid:function(){n.hasVisual=!n.hasVisual;n.addVisual()},mceReplaceContent:function(y,x,v){n.execCommand("mceInsertContent",false,v.replace(/\{\$selection\}/g,p.getContent({format:"text"})))},mceInsertLink:function(z,y,x){var v;if(typeof(x)=="string"){x={href:x}}v=m.getParent(p.getNode(),"a");x.href=x.href.replace(" ","%20");if(!v||!x.href){q.remove("link")}if(x.href){q.apply("link",x,v)}},selectAll:function(){var x=m.getRoot(),v=m.createRng();if(p.getRng().setStart){v.setStart(x,0);v.setEnd(x,x.childNodes.length);p.setRng(v)}else{f("SelectAll")}}});u({"JustifyLeft,JustifyCenter,JustifyRight,JustifyFull":function(z){var x="align"+z.substring(7);var v=p.isCollapsed()?[m.getParent(p.getNode(),m.isBlock)]:p.getSelectedBlocks();var y=d.map(v,function(A){return !!q.matchNode(A,x)});return d.inArray(y,a)!==-1},"Bold,Italic,Underline,Strikethrough,Superscript,Subscript":function(v){return t(v)},mceBlockQuote:function(){return t("blockquote")},Outdent:function(){var v;if(k.inline_styles){if((v=m.getParent(p.getStart(),m.isBlock))&&parseInt(v.style.paddingLeft)>0){return a}if((v=m.getParent(p.getEnd(),m.isBlock))&&parseInt(v.style.paddingLeft)>0){return a}}return l("InsertUnorderedList")||l("InsertOrderedList")||(!k.inline_styles&&!!m.getParent(p.getNode(),"BLOCKQUOTE"))},"InsertUnorderedList,InsertOrderedList":function(x){var v=m.getParent(p.getNode(),"ul,ol");return v&&(x==="insertunorderedlist"&&v.tagName==="UL"||x==="insertorderedlist"&&v.tagName==="OL")}},"state");u({"FontSize,FontName":function(y){var x=0,v;if(v=m.getParent(p.getNode(),"span")){if(y=="fontsize"){x=v.style.fontSize}else{x=v.style.fontFamily.replace(/, /g,",").replace(/[\'\"]/g,"").toLowerCase()}}return x}},"value");u({Undo:function(){n.undoManager.undo()},Redo:function(){n.undoManager.redo()}})}})(tinymce);(function(b){var a=b.util.Dispatcher;b.UndoManager=function(h){var l,i=0,e=[],g,k,j,f;function c(){return b.trim(h.getContent({format:"raw",no_events:1}).replace(/<span[^>]+data-mce-bogus[^>]+>[\u200B\uFEFF]+<\/span>/g,""))}function d(){l.typing=false;l.add()}onBeforeAdd=new a(l);k=new a(l);j=new a(l);f=new a(l);k.add(function(m,n){if(m.hasUndo()){return h.onChange.dispatch(h,n,m)}});j.add(function(m,n){return h.onUndo.dispatch(h,n,m)});f.add(function(m,n){return h.onRedo.dispatch(h,n,m)});h.onInit.add(function(){l.add()});h.onBeforeExecCommand.add(function(m,p,o,q,n){if(p!="Undo"&&p!="Redo"&&p!="mceRepaint"&&(!n||!n.skip_undo)){l.beforeChange()}});h.onExecCommand.add(function(m,p,o,q,n){if(p!="Undo"&&p!="Redo"&&p!="mceRepaint"&&(!n||!n.skip_undo)){l.add()}});h.onSaveContent.add(d);h.dom.bind(h.dom.getRoot(),"dragend",d);h.dom.bind(h.getDoc(),b.isGecko?"blur":"focusout",function(m){if(!h.removed&&l.typing){d()}});h.onKeyUp.add(function(m,o){var n=o.keyCode;if((n>=33&&n<=36)||(n>=37&&n<=40)||n==45||n==13||o.ctrlKey){d()}});h.onKeyDown.add(function(m,o){var n=o.keyCode;if((n>=33&&n<=36)||(n>=37&&n<=40)||n==45){if(l.typing){d()}return}if((n<16||n>20)&&n!=224&&n!=91&&!l.typing){l.beforeChange();l.typing=true;l.add()}});h.onMouseDown.add(function(m,n){if(l.typing){d()}});h.addShortcut("ctrl+z","undo_desc","Undo");h.addShortcut("ctrl+y","redo_desc","Redo");l={data:e,typing:false,onBeforeAdd:onBeforeAdd,onAdd:k,onUndo:j,onRedo:f,beforeChange:function(){g=h.selection.getBookmark(2,true)},add:function(p){var m,n=h.settings,o;p=p||{};p.content=c();l.onBeforeAdd.dispatch(l,p);o=e[i];if(o&&o.content==p.content){return null}if(e[i]){e[i].beforeBookmark=g}if(n.custom_undo_redo_levels){if(e.length>n.custom_undo_redo_levels){for(m=0;m<e.length-1;m++){e[m]=e[m+1]}e.length--;i=e.length}}p.bookmark=h.selection.getBookmark(2,true);if(i<e.length-1){e.length=i+1}e.push(p);i=e.length-1;l.onAdd.dispatch(l,p);h.isNotDirty=0;return p},undo:function(){var n,m;if(l.typing){l.add();l.typing=false}if(i>0){n=e[--i];h.setContent(n.content,{format:"raw"});h.selection.moveToBookmark(n.beforeBookmark);l.onUndo.dispatch(l,n)}return n},redo:function(){var m;if(i<e.length-1){m=e[++i];h.setContent(m.content,{format:"raw"});h.selection.moveToBookmark(m.bookmark);l.onRedo.dispatch(l,m)}return m},clear:function(){e=[];i=0;l.typing=false},hasUndo:function(){return i>0||this.typing},hasRedo:function(){return i<e.length-1&&!this.typing}};return l}})(tinymce);tinymce.ForceBlocks=function(c){var b=c.settings,e=c.dom,a=c.selection,d=c.schema.getBlockElements();function f(){var j=a.getStart(),h=c.getBody(),g,k,o,s,q,i,l,m=-16777215,p,r;if(!j||j.nodeType!==1||!b.forced_root_block){return}while(j&&j!=h){if(d[j.nodeName]){return}j=j.parentNode}g=a.getRng();if(g.setStart){k=g.startContainer;o=g.startOffset;s=g.endContainer;q=g.endOffset}else{if(g.item){j=g.item(0);g=c.getDoc().body.createTextRange();g.moveToElementText(j)}r=g.parentElement().ownerDocument===c.getDoc();tmpRng=g.duplicate();tmpRng.collapse(true);o=tmpRng.move("character",m)*-1;if(!tmpRng.collapsed){tmpRng=g.duplicate();tmpRng.collapse(false);q=(tmpRng.move("character",m)*-1)-o}}j=h.firstChild;while(j){if(j.nodeType===3||(j.nodeType==1&&!d[j.nodeName])){if(j.nodeType===3&&j.nodeValue.length==0){l=j;j=j.nextSibling;e.remove(l);continue}if(!i){i=e.create(b.forced_root_block);j.parentNode.insertBefore(i,j);p=true}l=j;j=j.nextSibling;i.appendChild(l)}else{i=null;j=j.nextSibling}}if(p){if(g.setStart){g.setStart(k,o);g.setEnd(s,q);a.setRng(g)}else{if(r){try{g=c.getDoc().body.createTextRange();g.moveToElementText(h);g.collapse(true);g.moveStart("character",o);if(q>0){g.moveEnd("character",q)}g.select()}catch(n){}}}c.nodeChanged()}}if(b.forced_root_block){c.onKeyUp.add(f);c.onNodeChange.add(f)}};(function(c){var b=c.DOM,a=c.dom.Event,d=c.each,e=c.extend;c.create("tinymce.ControlManager",{ControlManager:function(f,j){var h=this,g;j=j||{};h.editor=f;h.controls={};h.onAdd=new c.util.Dispatcher(h);h.onPostRender=new c.util.Dispatcher(h);h.prefix=j.prefix||f.id+"_";h._cls={};h.onPostRender.add(function(){d(h.controls,function(i){i.postRender()})})},get:function(f){return this.controls[this.prefix+f]||this.controls[f]},setActive:function(h,f){var g=null;if(g=this.get(h)){g.setActive(f)}return g},setDisabled:function(h,f){var g=null;if(g=this.get(h)){g.setDisabled(f)}return g},add:function(g){var f=this;if(g){f.controls[g.id]=g;f.onAdd.dispatch(g,f)}return g},createControl:function(j){var o,k,g,h=this,m=h.editor,n,f;if(!h.controlFactories){h.controlFactories=[];d(m.plugins,function(i){if(i.createControl){h.controlFactories.push(i)}})}n=h.controlFactories;for(k=0,g=n.length;k<g;k++){o=n[k].createControl(j,h);if(o){return h.add(o)}}if(j==="|"||j==="separator"){return h.createSeparator()}if(m.buttons&&(o=m.buttons[j])){return h.createButton(j,o)}return h.add(o)},createDropMenu:function(f,n,h){var m=this,i=m.editor,j,g,k,l;n=e({"class":"mceDropDown",constrain:i.settings.constrain_menus},n);n["class"]=n["class"]+" "+i.getParam("skin")+"Skin";if(k=i.getParam("skin_variant")){n["class"]+=" "+i.getParam("skin")+"Skin"+k.substring(0,1).toUpperCase()+k.substring(1)}n["class"]+=i.settings.directionality=="rtl"?" mceRtl":"";f=m.prefix+f;l=h||m._cls.dropmenu||c.ui.DropMenu;j=m.controls[f]=new l(f,n);j.onAddItem.add(function(r,q){var p=q.settings;p.title=i.getLang(p.title,p.title);if(!p.onclick){p.onclick=function(o){if(p.cmd){i.execCommand(p.cmd,p.ui||false,p.value)}}}});i.onRemove.add(function(){j.destroy()});if(c.isIE){j.onShowMenu.add(function(){i.focus();g=i.selection.getBookmark(1)});j.onHideMenu.add(function(){if(g){i.selection.moveToBookmark(g);g=0}})}return m.add(j)},createListBox:function(f,n,h){var l=this,j=l.editor,i,k,m;if(l.get(f)){return null}n.title=j.translate(n.title);n.scope=n.scope||j;if(!n.onselect){n.onselect=function(o){j.execCommand(n.cmd,n.ui||false,o||n.value)}}n=e({title:n.title,"class":"mce_"+f,scope:n.scope,control_manager:l},n);f=l.prefix+f;function g(o){return o.settings.use_accessible_selects&&!c.isGecko}if(j.settings.use_native_selects||g(j)){k=new c.ui.NativeListBox(f,n)}else{m=h||l._cls.listbox||c.ui.ListBox;k=new m(f,n,j)}l.controls[f]=k;if(c.isWebKit){k.onPostRender.add(function(p,o){a.add(o,"mousedown",function(){j.bookmark=j.selection.getBookmark(1)});a.add(o,"focus",function(){j.selection.moveToBookmark(j.bookmark);j.bookmark=null})})}if(k.hideMenu){j.onMouseDown.add(k.hideMenu,k)}return l.add(k)},createButton:function(m,i,l){var h=this,g=h.editor,j,k,f;if(h.get(m)){return null}i.title=g.translate(i.title);i.label=g.translate(i.label);i.scope=i.scope||g;if(!i.onclick&&!i.menu_button){i.onclick=function(){g.execCommand(i.cmd,i.ui||false,i.value)}}i=e({title:i.title,"class":"mce_"+m,unavailable_prefix:g.getLang("unavailable",""),scope:i.scope,control_manager:h},i);m=h.prefix+m;if(i.menu_button){f=l||h._cls.menubutton||c.ui.MenuButton;k=new f(m,i,g);g.onMouseDown.add(k.hideMenu,k)}else{f=h._cls.button||c.ui.Button;k=new f(m,i,g)}return h.add(k)},createMenuButton:function(h,f,g){f=f||{};f.menu_button=1;return this.createButton(h,f,g)},createSplitButton:function(m,i,l){var h=this,g=h.editor,j,k,f;if(h.get(m)){return null}i.title=g.translate(i.title);i.scope=i.scope||g;if(!i.onclick){i.onclick=function(n){g.execCommand(i.cmd,i.ui||false,n||i.value)}}if(!i.onselect){i.onselect=function(n){g.execCommand(i.cmd,i.ui||false,n||i.value)}}i=e({title:i.title,"class":"mce_"+m,scope:i.scope,control_manager:h},i);m=h.prefix+m;f=l||h._cls.splitbutton||c.ui.SplitButton;k=h.add(new f(m,i,g));g.onMouseDown.add(k.hideMenu,k);return k},createColorSplitButton:function(f,n,h){var l=this,j=l.editor,i,k,m,g;if(l.get(f)){return null}n.title=j.translate(n.title);n.scope=n.scope||j;if(!n.onclick){n.onclick=function(o){if(c.isIE){g=j.selection.getBookmark(1)}j.execCommand(n.cmd,n.ui||false,o||n.value)}}if(!n.onselect){n.onselect=function(o){j.execCommand(n.cmd,n.ui||false,o||n.value)}}n=e({title:n.title,"class":"mce_"+f,menu_class:j.getParam("skin")+"Skin",scope:n.scope,more_colors_title:j.getLang("more_colors")},n);f=l.prefix+f;m=h||l._cls.colorsplitbutton||c.ui.ColorSplitButton;k=new m(f,n,j);j.onMouseDown.add(k.hideMenu,k);j.onRemove.add(function(){k.destroy()});if(c.isIE){k.onShowMenu.add(function(){j.focus();g=j.selection.getBookmark(1)});k.onHideMenu.add(function(){if(g){j.selection.moveToBookmark(g);g=0}})}return l.add(k)},createToolbar:function(k,h,j){var i,g=this,f;k=g.prefix+k;f=j||g._cls.toolbar||c.ui.Toolbar;i=new f(k,h,g.editor);if(g.get(k)){return null}return g.add(i)},createToolbarGroup:function(k,h,j){var i,g=this,f;k=g.prefix+k;f=j||this._cls.toolbarGroup||c.ui.ToolbarGroup;i=new f(k,h,g.editor);if(g.get(k)){return null}return g.add(i)},createSeparator:function(g){var f=g||this._cls.separator||c.ui.Separator;return new f()},setControlType:function(g,f){return this._cls[g.toLowerCase()]=f},destroy:function(){d(this.controls,function(f){f.destroy()});this.controls=null}})})(tinymce);(function(d){var a=d.util.Dispatcher,e=d.each,c=d.isIE,b=d.isOpera;d.create("tinymce.WindowManager",{WindowManager:function(f){var g=this;g.editor=f;g.onOpen=new a(g);g.onClose=new a(g);g.params={};g.features={}},open:function(z,h){var v=this,k="",n,m,i=v.editor.settings.dialog_type=="modal",q,o,j,g=d.DOM.getViewPort(),r;z=z||{};h=h||{};o=b?g.w:screen.width;j=b?g.h:screen.height;z.name=z.name||"mc_"+new Date().getTime();z.width=parseInt(z.width||320);z.height=parseInt(z.height||240);z.resizable=true;z.left=z.left||parseInt(o/2)-(z.width/2);z.top=z.top||parseInt(j/2)-(z.height/2);h.inline=false;h.mce_width=z.width;h.mce_height=z.height;h.mce_auto_focus=z.auto_focus;if(i){if(c){z.center=true;z.help=false;z.dialogWidth=z.width+"px";z.dialogHeight=z.height+"px";z.scroll=z.scrollbars||false}}e(z,function(p,f){if(d.is(p,"boolean")){p=p?"yes":"no"}if(!/^(name|url)$/.test(f)){if(c&&i){k+=(k?";":"")+f+":"+p}else{k+=(k?",":"")+f+"="+p}}});v.features=z;v.params=h;v.onOpen.dispatch(v,z,h);r=z.url||z.file;r=d._addVer(r);try{if(c&&i){q=1;window.showModalDialog(r,window,k)}else{q=window.open(r,z.name,k)}}catch(l){}if(!q){alert(v.editor.getLang("popup_blocked"))}},close:function(f){f.close();this.onClose.dispatch(this)},createInstance:function(i,h,g,m,l,k){var j=d.resolve(i);return new j(h,g,m,l,k)},confirm:function(h,f,i,g){g=g||window;f.call(i||this,g.confirm(this._decode(this.editor.getLang(h,h))))},alert:function(h,f,j,g){var i=this;g=g||window;g.alert(i._decode(i.editor.getLang(h,h)));if(f){f.call(j||i)}},resizeBy:function(f,g,h){h.resizeBy(f,g)},_decode:function(f){return d.DOM.decode(f).replace(/\\n/g,"\n")}})}(tinymce));(function(a){a.Formatter=function(aa){var Q={},T=a.each,c=aa.dom,r=aa.selection,t=a.dom.TreeWalker,N=new a.dom.RangeUtils(c),d=aa.schema.isValidChild,H=c.isBlock,m=aa.settings.forced_root_block,s=c.nodeIndex,G="\uFEFF",e=/^(src|href|style)$/,X=false,C=true,P,D,x=c.getContentEditable;function A(ab){return ab instanceof Array}function n(ac,ab){return c.getParents(ac,ab,c.getRoot())}function b(ab){return ab.nodeType===1&&ab.id==="_mce_caret"}function j(){l({alignleft:[{selector:"figure,p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li",styles:{textAlign:"left"},defaultBlock:"div"},{selector:"img,table",collapsed:false,styles:{"float":"left"}}],aligncenter:[{selector:"figure,p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li",styles:{textAlign:"center"},defaultBlock:"div"},{selector:"img",collapsed:false,styles:{display:"block",marginLeft:"auto",marginRight:"auto"}},{selector:"table",collapsed:false,styles:{marginLeft:"auto",marginRight:"auto"}}],alignright:[{selector:"figure,p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li",styles:{textAlign:"right"},defaultBlock:"div"},{selector:"img,table",collapsed:false,styles:{"float":"right"}}],alignfull:[{selector:"figure,p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li",styles:{textAlign:"justify"},defaultBlock:"div"}],bold:[{inline:"strong",remove:"all"},{inline:"span",styles:{fontWeight:"bold"}},{inline:"b",remove:"all"}],italic:[{inline:"em",remove:"all"},{inline:"span",styles:{fontStyle:"italic"}},{inline:"i",remove:"all"}],underline:[{inline:"span",styles:{textDecoration:"underline"},exact:true},{inline:"u",remove:"all"}],strikethrough:[{inline:"span",styles:{textDecoration:"line-through"},exact:true},{inline:"strike",remove:"all"}],forecolor:{inline:"span",styles:{color:"%value"},wrap_links:false},hilitecolor:{inline:"span",styles:{backgroundColor:"%value"},wrap_links:false},fontname:{inline:"span",styles:{fontFamily:"%value"}},fontsize:{inline:"span",styles:{fontSize:"%value"}},fontsize_class:{inline:"span",attributes:{"class":"%value"}},blockquote:{block:"blockquote",wrapper:1,remove:"all"},subscript:{inline:"sub"},superscript:{inline:"sup"},link:{inline:"a",selector:"a",remove:"all",split:true,deep:true,onmatch:function(ab){return true},onformat:function(ad,ab,ac){T(ac,function(af,ae){c.setAttrib(ad,ae,af)})}},removeformat:[{selector:"b,strong,em,i,font,u,strike",remove:"all",split:true,expand:false,block_expand:true,deep:true},{selector:"span",attributes:["style","class"],remove:"empty",split:true,expand:false,deep:true},{selector:"*",attributes:["style","class"],split:false,expand:false,deep:true}]});T("p h1 h2 h3 h4 h5 h6 div address pre div code dt dd samp".split(/\s/),function(ab){l(ab,{block:ab,remove:"all"})});l(aa.settings.formats)}function W(){aa.addShortcut("ctrl+b","bold_desc","Bold");aa.addShortcut("ctrl+i","italic_desc","Italic");aa.addShortcut("ctrl+u","underline_desc","Underline");for(var ab=1;ab<=6;ab++){aa.addShortcut("ctrl+"+ab,"",["FormatBlock",false,"h"+ab])}aa.addShortcut("ctrl+7","",["FormatBlock",false,"p"]);aa.addShortcut("ctrl+8","",["FormatBlock",false,"div"]);aa.addShortcut("ctrl+9","",["FormatBlock",false,"address"])}function V(ab){return ab?Q[ab]:Q}function l(ab,ac){if(ab){if(typeof(ab)!=="string"){T(ab,function(ae,ad){l(ad,ae)})}else{ac=ac.length?ac:[ac];T(ac,function(ad){if(ad.deep===D){ad.deep=!ad.selector}if(ad.split===D){ad.split=!ad.selector||ad.inline}if(ad.remove===D&&ad.selector&&!ad.inline){ad.remove="none"}if(ad.selector&&ad.inline){ad.mixed=true;ad.block_expand=true}if(typeof(ad.classes)==="string"){ad.classes=ad.classes.split(/\s+/)}});Q[ab]=ac}}}var i=function(ac){var ab;aa.dom.getParent(ac,function(ad){ab=aa.dom.getStyle(ad,"text-decoration");return ab&&ab!=="none"});return ab};var L=function(ab){var ac;if(ab.nodeType===1&&ab.parentNode&&ab.parentNode.nodeType===1){ac=i(ab.parentNode);if(aa.dom.getStyle(ab,"color")&&ac){aa.dom.setStyle(ab,"text-decoration",ac)}else{if(aa.dom.getStyle(ab,"textdecoration")===ac){aa.dom.setStyle(ab,"text-decoration",null)}}}};function Y(ae,al,ag){var ah=V(ae),am=ah[0],ak,ac,aj,ai=r.isCollapsed();function ab(aq,ap){ap=ap||am;if(aq){if(ap.onformat){ap.onformat(aq,ap,al,ag)}T(ap.styles,function(at,ar){c.setStyle(aq,ar,q(at,al))});T(ap.attributes,function(at,ar){c.setAttrib(aq,ar,q(at,al))});T(ap.classes,function(ar){ar=q(ar,al);if(!c.hasClass(aq,ar)){c.addClass(aq,ar)}})}}function af(){function ar(ay,aw){var ax=new t(aw);for(ag=ax.current();ag;ag=ax.prev()){if(ag.childNodes.length>1||ag==ay||ag.tagName=="BR"){return ag}}}var aq=aa.selection.getRng();var av=aq.startContainer;var ap=aq.endContainer;if(av!=ap&&aq.endOffset===0){var au=ar(av,ap);var at=au.nodeType==3?au.length:au.childNodes.length;aq.setEnd(au,at)}return aq}function ad(at,ay,aw,av,aq){var ap=[],ar=-1,ax,aA=-1,au=-1,az;T(at.childNodes,function(aC,aB){if(aC.nodeName==="UL"||aC.nodeName==="OL"){ar=aB;ax=aC;return false}});T(at.childNodes,function(aC,aB){if(aC.nodeName==="SPAN"&&c.getAttrib(aC,"data-mce-type")=="bookmark"){if(aC.id==ay.id+"_start"){aA=aB}else{if(aC.id==ay.id+"_end"){au=aB}}}});if(ar<=0||(aA<ar&&au>ar)){T(a.grep(at.childNodes),aq);return 0}else{az=c.clone(aw,X);T(a.grep(at.childNodes),function(aC,aB){if((aA<ar&&aB<ar)||(aA>ar&&aB>ar)){ap.push(aC);aC.parentNode.removeChild(aC)}});if(aA<ar){at.insertBefore(az,ax)}else{if(aA>ar){at.insertBefore(az,ax.nextSibling)}}av.push(az);T(ap,function(aB){az.appendChild(aB)});return az}}function an(aq,at,aw){var ap=[],av,ar,au=true;av=am.inline||am.block;ar=c.create(av);ab(ar);N.walk(aq,function(ax){var ay;function az(aA){var aF,aD,aB,aC,aE;aE=au;aF=aA.nodeName.toLowerCase();aD=aA.parentNode.nodeName.toLowerCase();if(aA.nodeType===1&&x(aA)){aE=au;au=x(aA)==="true";aC=true}if(g(aF,"br")){ay=0;if(am.block){c.remove(aA)}return}if(am.wrapper&&y(aA,ae,al)){ay=0;return}if(au&&!aC&&am.block&&!am.wrapper&&I(aF)){aA=c.rename(aA,av);ab(aA);ap.push(aA);ay=0;return}if(am.selector){T(ah,function(aG){if("collapsed" in aG&&aG.collapsed!==ai){return}if(c.is(aA,aG.selector)&&!b(aA)){ab(aA,aG);aB=true}});if(!am.inline||aB){ay=0;return}}if(au&&!aC&&d(av,aF)&&d(aD,av)&&!(!aw&&aA.nodeType===3&&aA.nodeValue.length===1&&aA.nodeValue.charCodeAt(0)===65279)&&!b(aA)){if(!ay){ay=c.clone(ar,X);aA.parentNode.insertBefore(ay,aA);ap.push(ay)}ay.appendChild(aA)}else{if(aF=="li"&&at){ay=ad(aA,at,ar,ap,az)}else{ay=0;T(a.grep(aA.childNodes),az);if(aC){au=aE}ay=0}}}T(ax,az)});if(am.wrap_links===false){T(ap,function(ax){function ay(aC){var aB,aA,az;if(aC.nodeName==="A"){aA=c.clone(ar,X);ap.push(aA);az=a.grep(aC.childNodes);for(aB=0;aB<az.length;aB++){aA.appendChild(az[aB])}aC.appendChild(aA)}T(a.grep(aC.childNodes),ay)}ay(ax)})}T(ap,function(az){var ax;function aA(aC){var aB=0;T(aC.childNodes,function(aD){if(!f(aD)&&!K(aD)){aB++}});return aB}function ay(aB){var aD,aC;T(aB.childNodes,function(aE){if(aE.nodeType==1&&!K(aE)&&!b(aE)){aD=aE;return X}});if(aD&&h(aD,am)){aC=c.clone(aD,X);ab(aC);c.replace(aC,aB,C);c.remove(aD,1)}return aC||aB}ax=aA(az);if((ap.length>1||!H(az))&&ax===0){c.remove(az,1);return}if(am.inline||am.wrapper){if(!am.exact&&ax===1){az=ay(az)}T(ah,function(aB){T(c.select(aB.inline,az),function(aD){var aC;if(aB.wrap_links===false){aC=aD.parentNode;do{if(aC.nodeName==="A"){return}}while(aC=aC.parentNode)}Z(aB,al,aD,aB.exact?aD:null)})});if(y(az.parentNode,ae,al)){c.remove(az,1);az=0;return C}if(am.merge_with_parents){c.getParent(az.parentNode,function(aB){if(y(aB,ae,al)){c.remove(az,1);az=0;return C}})}if(az&&am.merge_siblings!==false){az=u(E(az),az);az=u(az,E(az,C))}}})}if(am){if(ag){if(ag.nodeType){ac=c.createRng();ac.setStartBefore(ag);ac.setEndAfter(ag);an(p(ac,ah),null,true)}else{an(ag,null,true)}}else{if(!ai||!am.inline||c.select("td.mceSelected,th.mceSelected").length){var ao=aa.selection.getNode();if(!m&&ah[0].defaultBlock&&!c.getParent(ao,c.isBlock)){Y(ah[0].defaultBlock)}aa.selection.setRng(af());ak=r.getBookmark();an(p(r.getRng(C),ah),ak);if(am.styles&&(am.styles.color||am.styles.textDecoration)){a.walk(ao,L,"childNodes");L(ao)}r.moveToBookmark(ak);R(r.getRng(C));aa.nodeChanged()}else{U("apply",ae,al)}}}}function B(ad,am,af){var ag=V(ad),ao=ag[0],ak,aj,ac,al=true;function ae(av){var au,at,ar,aq,ax,aw;if(av.nodeType===1&&x(av)){ax=al;al=x(av)==="true";aw=true}au=a.grep(av.childNodes);if(al&&!aw){for(at=0,ar=ag.length;at<ar;at++){if(Z(ag[at],am,av,av)){break}}}if(ao.deep){if(au.length){for(at=0,ar=au.length;at<ar;at++){ae(au[at])}if(aw){al=ax}}}}function ah(aq){var ar;T(n(aq.parentNode).reverse(),function(at){var au;if(!ar&&at.id!="_start"&&at.id!="_end"){au=y(at,ad,am);if(au&&au.split!==false){ar=at}}});return ar}function ab(au,aq,aw,az){var aA,ay,ax,at,av,ar;if(au){ar=au.parentNode;for(aA=aq.parentNode;aA&&aA!=ar;aA=aA.parentNode){ay=c.clone(aA,X);for(av=0;av<ag.length;av++){if(Z(ag[av],am,ay,ay)){ay=0;break}}if(ay){if(ax){ay.appendChild(ax)}if(!at){at=ay}ax=ay}}if(az&&(!ao.mixed||!H(au))){aq=c.split(au,aq)}if(ax){aw.parentNode.insertBefore(ax,aw);at.appendChild(aw)}}return aq}function an(aq){return ab(ah(aq),aq,aq,true)}function ai(at){var ar=c.get(at?"_start":"_end"),aq=ar[at?"firstChild":"lastChild"];if(K(aq)){aq=aq[at?"firstChild":"lastChild"]}c.remove(ar,true);return aq}function ap(aq){var at,au,ar;aq=p(aq,ag,C);if(ao.split){at=M(aq,C);au=M(aq);if(at!=au){if(/^(TR|TD)$/.test(at.nodeName)&&at.firstChild){at=(at.nodeName=="TD"?at.firstChild:at.firstChild.firstChild)||at}at=S(at,"span",{id:"_start","data-mce-type":"bookmark"});au=S(au,"span",{id:"_end","data-mce-type":"bookmark"});an(at);an(au);at=ai(C);au=ai()}else{at=au=an(at)}aq.startContainer=at.parentNode;aq.startOffset=s(at);aq.endContainer=au.parentNode;aq.endOffset=s(au)+1}N.walk(aq,function(av){T(av,function(aw){ae(aw);if(aw.nodeType===1&&aa.dom.getStyle(aw,"text-decoration")==="underline"&&aw.parentNode&&i(aw.parentNode)==="underline"){Z({deep:false,exact:true,inline:"span",styles:{textDecoration:"underline"}},null,aw)}})})}if(af){if(af.nodeType){ac=c.createRng();ac.setStartBefore(af);ac.setEndAfter(af);ap(ac)}else{ap(af)}return}if(!r.isCollapsed()||!ao.inline||c.select("td.mceSelected,th.mceSelected").length){ak=r.getBookmark();ap(r.getRng(C));r.moveToBookmark(ak);if(ao.inline&&k(ad,am,r.getStart())){R(r.getRng(true))}aa.nodeChanged()}else{U("remove",ad,am)}}function F(ac,ae,ad){var ab=V(ac);if(k(ac,ae,ad)&&(!("toggle" in ab[0])||ab[0].toggle)){B(ac,ae,ad)}else{Y(ac,ae,ad)}}function y(ac,ab,ah,af){var ad=V(ab),ai,ag,ae;function aj(an,ap,aq){var am,ao,ak=ap[aq],al;if(ap.onmatch){return ap.onmatch(an,ap,aq)}if(ak){if(ak.length===D){for(am in ak){if(ak.hasOwnProperty(am)){if(aq==="attributes"){ao=c.getAttrib(an,am)}else{ao=O(an,am)}if(af&&!ao&&!ap.exact){return}if((!af||ap.exact)&&!g(ao,q(ak[am],ah))){return}}}}else{for(al=0;al<ak.length;al++){if(aq==="attributes"?c.getAttrib(an,ak[al]):O(an,ak[al])){return ap}}}}return ap}if(ad&&ac){for(ag=0;ag<ad.length;ag++){ai=ad[ag];if(h(ac,ai)&&aj(ac,ai,"attributes")&&aj(ac,ai,"styles")){if(ae=ai.classes){for(ag=0;ag<ae.length;ag++){if(!c.hasClass(ac,ae[ag])){return}}}return ai}}}}function k(ad,af,ae){var ac;function ab(ag){ag=c.getParent(ag,function(ah){return !!y(ah,ad,af,true)});return y(ag,ad,af)}if(ae){return ab(ae)}ae=r.getNode();if(ab(ae)){return C}ac=r.getStart();if(ac!=ae){if(ab(ac)){return C}}return X}function v(ai,ah){var af,ag=[],ae={},ad,ac,ab;af=r.getStart();c.getParent(af,function(al){var ak,aj;for(ak=0;ak<ai.length;ak++){aj=ai[ak];if(!ae[aj]&&y(al,aj,ah)){ae[aj]=true;ag.push(aj)}}},c.getRoot());return ag}function z(af){var ah=V(af),ae,ad,ag,ac,ab;if(ah){ae=r.getStart();ad=n(ae);for(ac=ah.length-1;ac>=0;ac--){ab=ah[ac].selector;if(!ab){return C}for(ag=ad.length-1;ag>=0;ag--){if(c.is(ad[ag],ab)){return C}}}}return X}function J(ab,ae,ac){var ad;if(!P){P={};ad={};aa.onNodeChange.addToTop(function(ag,af,ai){var ah=n(ai),aj={};T(P,function(ak,al){T(ah,function(am){if(y(am,al,{},ak.similar)){if(!ad[al]){T(ak,function(an){an(true,{node:am,format:al,parents:ah})});ad[al]=ak}aj[al]=ak;return false}})});T(ad,function(ak,al){if(!aj[al]){delete ad[al];T(ak,function(am){am(false,{node:ai,format:al,parents:ah})})}})})}T(ab.split(","),function(af){if(!P[af]){P[af]=[];P[af].similar=ac}P[af].push(ae)});return this}a.extend(this,{get:V,register:l,apply:Y,remove:B,toggle:F,match:k,matchAll:v,matchNode:y,canApply:z,formatChanged:J});j();W();function h(ab,ac){if(g(ab,ac.inline)){return C}if(g(ab,ac.block)){return C}if(ac.selector){return c.is(ab,ac.selector)}}function g(ac,ab){ac=ac||"";ab=ab||"";ac=""+(ac.nodeName||ac);ab=""+(ab.nodeName||ab);return ac.toLowerCase()==ab.toLowerCase()}function O(ac,ab){var ad=c.getStyle(ac,ab);if(ab=="color"||ab=="backgroundColor"){ad=c.toHex(ad)}if(ab=="fontWeight"&&ad==700){ad="bold"}return""+ad}function q(ab,ac){if(typeof(ab)!="string"){ab=ab(ac)}else{if(ac){ab=ab.replace(/%(\w+)/g,function(ae,ad){return ac[ad]||ae})}}return ab}function f(ab){return ab&&ab.nodeType===3&&/^([\t \r\n]+|)$/.test(ab.nodeValue)}function S(ad,ac,ab){var ae=c.create(ac,ab);ad.parentNode.insertBefore(ae,ad);ae.appendChild(ad);return ae}function p(ab,am,ae){var ap,an,ah,al,ad=ab.startContainer,ai=ab.startOffset,ar=ab.endContainer,ak=ab.endOffset;function ao(az){var au,ax,ay,aw,av,at;au=ax=az?ad:ar;av=az?"previousSibling":"nextSibling";at=c.getRoot();if(au.nodeType==3&&!f(au)){if(az?ai>0:ak<au.nodeValue.length){return au}}for(;;){if(!am[0].block_expand&&H(ax)){return ax}for(aw=ax[av];aw;aw=aw[av]){if(!K(aw)&&!f(aw)){return ax}}if(ax.parentNode==at){au=ax;break}ax=ax.parentNode}return au}function ag(at,au){if(au===D){au=at.nodeType===3?at.length:at.childNodes.length}while(at&&at.hasChildNodes()){at=at.childNodes[au];if(at){au=at.nodeType===3?at.length:at.childNodes.length}}return{node:at,offset:au}}if(ad.nodeType==1&&ad.hasChildNodes()){an=ad.childNodes.length-1;ad=ad.childNodes[ai>an?an:ai];if(ad.nodeType==3){ai=0}}if(ar.nodeType==1&&ar.hasChildNodes()){an=ar.childNodes.length-1;ar=ar.childNodes[ak>an?an:ak-1];if(ar.nodeType==3){ak=ar.nodeValue.length}}function aq(au){var at=au;while(at){if(at.nodeType===1&&x(at)){return x(at)==="false"?at:au}at=at.parentNode}return au}function aj(au,ay,aA){var ax,av,az,at;function aw(aC,aE){var aF,aB,aD=aC.nodeValue;if(typeof(aE)=="undefined"){aE=aA?aD.length:0}if(aA){aF=aD.lastIndexOf(" ",aE);aB=aD.lastIndexOf("\u00a0",aE);aF=aF>aB?aF:aB;if(aF!==-1&&!ae){aF++}}else{aF=aD.indexOf(" ",aE);aB=aD.indexOf("\u00a0",aE);aF=aF!==-1&&(aB===-1||aF<aB)?aF:aB}return aF}if(au.nodeType===3){az=aw(au,ay);if(az!==-1){return{container:au,offset:az}}at=au}ax=new t(au,c.getParent(au,H)||aa.getBody());while(av=ax[aA?"prev":"next"]()){if(av.nodeType===3){at=av;az=aw(av);if(az!==-1){return{container:av,offset:az}}}else{if(H(av)){break}}}if(at){if(aA){ay=0}else{ay=at.length}return{container:at,offset:ay}}}function af(au,at){var av,aw,ay,ax;if(au.nodeType==3&&au.nodeValue.length===0&&au[at]){au=au[at]}av=n(au);for(aw=0;aw<av.length;aw++){for(ay=0;ay<am.length;ay++){ax=am[ay];if("collapsed" in ax&&ax.collapsed!==ab.collapsed){continue}if(c.is(av[aw],ax.selector)){return av[aw]}}}return au}function ac(au,at,aw){var av;if(!am[0].wrapper){av=c.getParent(au,am[0].block)}if(!av){av=c.getParent(au.nodeType==3?au.parentNode:au,H)}if(av&&am[0].wrapper){av=n(av,"ul,ol").reverse()[0]||av}if(!av){av=au;while(av[at]&&!H(av[at])){av=av[at];if(g(av,"br")){break}}}return av||au}ad=aq(ad);ar=aq(ar);if(K(ad.parentNode)||K(ad)){ad=K(ad)?ad:ad.parentNode;ad=ad.nextSibling||ad;if(ad.nodeType==3){ai=0}}if(K(ar.parentNode)||K(ar)){ar=K(ar)?ar:ar.parentNode;ar=ar.previousSibling||ar;if(ar.nodeType==3){ak=ar.length}}if(am[0].inline){if(ab.collapsed){al=aj(ad,ai,true);if(al){ad=al.container;ai=al.offset}al=aj(ar,ak);if(al){ar=al.container;ak=al.offset}}ah=ag(ar,ak);if(ah.node){while(ah.node&&ah.offset===0&&ah.node.previousSibling){ah=ag(ah.node.previousSibling)}if(ah.node&&ah.offset>0&&ah.node.nodeType===3&&ah.node.nodeValue.charAt(ah.offset-1)===" "){if(ah.offset>1){ar=ah.node;ar.splitText(ah.offset-1)}}}}if(am[0].inline||am[0].block_expand){if(!am[0].inline||(ad.nodeType!=3||ai===0)){ad=ao(true)}if(!am[0].inline||(ar.nodeType!=3||ak===ar.nodeValue.length)){ar=ao()}}if(am[0].selector&&am[0].expand!==X&&!am[0].inline){ad=af(ad,"previousSibling");ar=af(ar,"nextSibling")}if(am[0].block||am[0].selector){ad=ac(ad,"previousSibling");ar=ac(ar,"nextSibling");if(am[0].block){if(!H(ad)){ad=ao(true)}if(!H(ar)){ar=ao()}}}if(ad.nodeType==1){ai=s(ad);ad=ad.parentNode}if(ar.nodeType==1){ak=s(ar)+1;ar=ar.parentNode}return{startContainer:ad,startOffset:ai,endContainer:ar,endOffset:ak}}function Z(ah,ag,ae,ab){var ad,ac,af;if(!h(ae,ah)){return X}if(ah.remove!="all"){T(ah.styles,function(aj,ai){aj=q(aj,ag);if(typeof(ai)==="number"){ai=aj;ab=0}if(!ab||g(O(ab,ai),aj)){c.setStyle(ae,ai,"")}af=1});if(af&&c.getAttrib(ae,"style")==""){ae.removeAttribute("style");ae.removeAttribute("data-mce-style")}T(ah.attributes,function(ak,ai){var aj;ak=q(ak,ag);if(typeof(ai)==="number"){ai=ak;ab=0}if(!ab||g(c.getAttrib(ab,ai),ak)){if(ai=="class"){ak=c.getAttrib(ae,ai);if(ak){aj="";T(ak.split(/\s+/),function(al){if(/mce\w+/.test(al)){aj+=(aj?" ":"")+al}});if(aj){c.setAttrib(ae,ai,aj);return}}}if(ai=="class"){ae.removeAttribute("className")}if(e.test(ai)){ae.removeAttribute("data-mce-"+ai)}ae.removeAttribute(ai)}});T(ah.classes,function(ai){ai=q(ai,ag);if(!ab||c.hasClass(ab,ai)){c.removeClass(ae,ai)}});ac=c.getAttribs(ae);for(ad=0;ad<ac.length;ad++){if(ac[ad].nodeName.indexOf("_")!==0){return X}}}if(ah.remove!="none"){o(ae,ah);return C}}function o(ad,ae){var ab=ad.parentNode,ac;function af(ah,ag,ai){ah=E(ah,ag,ai);return !ah||(ah.nodeName=="BR"||H(ah))}if(ae.block){if(!m){if(H(ad)&&!H(ab)){if(!af(ad,X)&&!af(ad.firstChild,C,1)){ad.insertBefore(c.create("br"),ad.firstChild)}if(!af(ad,C)&&!af(ad.lastChild,X,1)){ad.appendChild(c.create("br"))}}}else{if(ab==c.getRoot()){if(!ae.list_block||!g(ad,ae.list_block)){T(a.grep(ad.childNodes),function(ag){if(d(m,ag.nodeName.toLowerCase())){if(!ac){ac=S(ag,m)}else{ac.appendChild(ag)}}else{ac=0}})}}}}if(ae.selector&&ae.inline&&!g(ae.inline,ad)){return}c.remove(ad,1)}function E(ac,ab,ad){if(ac){ab=ab?"nextSibling":"previousSibling";for(ac=ad?ac:ac[ab];ac;ac=ac[ab]){if(ac.nodeType==1||!f(ac)){return ac}}}}function K(ab){return ab&&ab.nodeType==1&&ab.getAttribute("data-mce-type")=="bookmark"}function u(af,ae){var ab,ad,ac;function ah(ak,aj){if(ak.nodeName!=aj.nodeName){return X}function ai(am){var an={};T(c.getAttribs(am),function(ao){var ap=ao.nodeName.toLowerCase();if(ap.indexOf("_")!==0&&ap!=="style"){an[ap]=c.getAttrib(am,ap)}});return an}function al(ap,ao){var an,am;for(am in ap){if(ap.hasOwnProperty(am)){an=ao[am];if(an===D){return X}if(ap[am]!=an){return X}delete ao[am]}}for(am in ao){if(ao.hasOwnProperty(am)){return X}}return C}if(!al(ai(ak),ai(aj))){return X}if(!al(c.parseStyle(c.getAttrib(ak,"style")),c.parseStyle(c.getAttrib(aj,"style")))){return X}return C}function ag(aj,ai){for(ad=aj;ad;ad=ad[ai]){if(ad.nodeType==3&&ad.nodeValue.length!==0){return aj}if(ad.nodeType==1&&!K(ad)){return ad}}return aj}if(af&&ae){af=ag(af,"previousSibling");ae=ag(ae,"nextSibling");if(ah(af,ae)){for(ad=af.nextSibling;ad&&ad!=ae;){ac=ad;ad=ad.nextSibling;af.appendChild(ac)}c.remove(ae);T(a.grep(ae.childNodes),function(ai){af.appendChild(ai)});return af}}return ae}function I(ab){return/^(h[1-6]|p|div|pre|address|dl|dt|dd)$/.test(ab)}function M(ac,ag){var ab,af,ad,ae;ab=ac[ag?"startContainer":"endContainer"];af=ac[ag?"startOffset":"endOffset"];if(ab.nodeType==1){ad=ab.childNodes.length-1;if(!ag&&af){af--}ab=ab.childNodes[af>ad?ad:af]}if(ab.nodeType===3&&ag&&af>=ab.nodeValue.length){ab=new t(ab,aa.getBody()).next()||ab}if(ab.nodeType===3&&!ag&&af===0){ab=new t(ab,aa.getBody()).prev()||ab}return ab}function U(ak,ab,ai){var al="_mce_caret",ac=aa.settings.caret_debug;function ad(ap){var ao=c.create("span",{id:al,"data-mce-bogus":true,style:ac?"color:red":""});if(ap){ao.appendChild(aa.getDoc().createTextNode(G))}return ao}function aj(ap,ao){while(ap){if((ap.nodeType===3&&ap.nodeValue!==G)||ap.childNodes.length>1){return false}if(ao&&ap.nodeType===1){ao.push(ap)}ap=ap.firstChild}return true}function ag(ao){while(ao){if(ao.id===al){return ao}ao=ao.parentNode}}function af(ao){var ap;if(ao){ap=new t(ao,ao);for(ao=ap.current();ao;ao=ap.next()){if(ao.nodeType===3){return ao}}}}function ae(aq,ap){var ar,ao;if(!aq){aq=ag(r.getStart());if(!aq){while(aq=c.get(al)){ae(aq,false)}}}else{ao=r.getRng(true);if(aj(aq)){if(ap!==false){ao.setStartBefore(aq);ao.setEndBefore(aq)}c.remove(aq)}else{ar=af(aq);if(ar.nodeValue.charAt(0)===G){ar=ar.deleteData(0,1)}c.remove(aq,1)}r.setRng(ao)}}function ah(){var aq,ao,av,au,ar,ap,at;aq=r.getRng(true);au=aq.startOffset;ap=aq.startContainer;at=ap.nodeValue;ao=ag(r.getStart());if(ao){av=af(ao)}if(at&&au>0&&au<at.length&&/\w/.test(at.charAt(au))&&/\w/.test(at.charAt(au-1))){ar=r.getBookmark();aq.collapse(true);aq=p(aq,V(ab));aq=N.split(aq);Y(ab,ai,aq);r.moveToBookmark(ar)}else{if(!ao||av.nodeValue!==G){ao=ad(true);av=ao.firstChild;aq.insertNode(ao);au=1;Y(ab,ai,ao)}else{Y(ab,ai,ao)}r.setCursorLocation(av,au)}}function am(){var ao=r.getRng(true),ap,ar,av,au,aq,ay,ax=[],at,aw;ap=ao.startContainer;ar=ao.startOffset;aq=ap;if(ap.nodeType==3){if(ar!=ap.nodeValue.length||ap.nodeValue===G){au=true}aq=aq.parentNode}while(aq){if(y(aq,ab,ai)){ay=aq;break}if(aq.nextSibling){au=true}ax.push(aq);aq=aq.parentNode}if(!ay){return}if(au){av=r.getBookmark();ao.collapse(true);ao=p(ao,V(ab),true);ao=N.split(ao);B(ab,ai,ao);r.moveToBookmark(av)}else{aw=ad();aq=aw;for(at=ax.length-1;at>=0;at--){aq.appendChild(c.clone(ax[at],false));aq=aq.firstChild}aq.appendChild(c.doc.createTextNode(G));aq=aq.firstChild;c.insertAfter(aw,ay);r.setCursorLocation(aq,1)}}function an(){var ap,ao,aq;ao=ag(r.getStart());if(ao&&!c.isEmpty(ao)){a.walk(ao,function(ar){if(ar.nodeType==1&&ar.id!==al&&!c.isEmpty(ar)){c.setAttrib(ar,"data-mce-bogus",null)}},"childNodes")}}if(!self._hasCaretEvents){aa.onBeforeGetContent.addToTop(function(){var ao=[],ap;if(aj(ag(r.getStart()),ao)){ap=ao.length;while(ap--){c.setAttrib(ao[ap],"data-mce-bogus","1")}}});a.each("onMouseUp onKeyUp".split(" "),function(ao){aa[ao].addToTop(function(){ae();an()})});aa.onKeyDown.addToTop(function(ao,aq){var ap=aq.keyCode;if(ap==8||ap==37||ap==39){ae(ag(r.getStart()))}an()});r.onSetContent.add(an);self._hasCaretEvents=true}if(ak=="apply"){ah()}else{am()}}function R(ac){var ab=ac.startContainer,ai=ac.startOffset,ae,ah,ag,ad,af;if(ab.nodeType==3&&ai>=ab.nodeValue.length){ai=s(ab);ab=ab.parentNode;ae=true}if(ab.nodeType==1){ad=ab.childNodes;ab=ad[Math.min(ai,ad.length-1)];ah=new t(ab,c.getParent(ab,c.isBlock));if(ai>ad.length-1||ae){ah.next()}for(ag=ah.current();ag;ag=ah.next()){if(ag.nodeType==3&&!f(ag)){af=c.create("a",null,G);ag.parentNode.insertBefore(af,ag);ac.setStart(ag,0);r.setRng(ac);c.remove(af);return}}}}}})(tinymce);tinymce.onAddEditor.add(function(e,a){var d,h,g,c=a.settings;function b(j,i){e.each(i,function(l,k){if(l){g.setStyle(j,k,l)}});g.rename(j,"span")}function f(i,j){g=i.dom;if(c.convert_fonts_to_spans){e.each(g.select("font,u,strike",j.node),function(k){d[k.nodeName.toLowerCase()](a.dom,k)})}}if(c.inline_styles){h=e.explode(c.font_size_legacy_values);d={font:function(j,i){b(i,{backgroundColor:i.style.backgroundColor,color:i.color,fontFamily:i.face,fontSize:h[parseInt(i.size,10)-1]})},u:function(j,i){b(i,{textDecoration:"underline"})},strike:function(j,i){b(i,{textDecoration:"line-through"})}};a.onPreProcess.add(f);a.onSetContent.add(f);a.onInit.add(function(){a.selection.onSetContent.add(f)})}});(function(b){var a=b.dom.TreeWalker;b.EnterKey=function(f){var i=f.dom,e=f.selection,d=f.settings,h=f.undoManager,c=f.schema.getNonEmptyElements();function g(A){var v=e.getRng(true),G,j,z,u,p,M,B,o,k,n,t,J,x,C;function E(N){return N&&i.isBlock(N)&&!/^(TD|TH|CAPTION|FORM)$/.test(N.nodeName)&&!/^(fixed|absolute)/i.test(N.style.position)&&i.getContentEditable(N)!=="true"}function F(O){var N;if(b.isIE&&i.isBlock(O)){N=e.getRng();O.appendChild(i.create("span",null,"\u00a0"));e.select(O);O.lastChild.outerHTML="";e.setRng(N)}}function y(P){var O=P,Q=[],N;while(O=O.firstChild){if(i.isBlock(O)){return}if(O.nodeType==1&&!c[O.nodeName.toLowerCase()]){Q.push(O)}}N=Q.length;while(N--){O=Q[N];if(!O.hasChildNodes()||(O.firstChild==O.lastChild&&O.firstChild.nodeValue==="")){i.remove(O)}else{if(O.nodeName=="A"&&(O.innerText||O.textContent)===" "){i.remove(O)}}}}function m(O){var T,R,N,U,S,Q=O,P;N=i.createRng();if(O.hasChildNodes()){T=new a(O,O);while(R=T.current()){if(R.nodeType==3){N.setStart(R,0);N.setEnd(R,0);break}if(c[R.nodeName.toLowerCase()]){N.setStartBefore(R);N.setEndBefore(R);break}Q=R;R=T.next()}if(!R){N.setStart(Q,0);N.setEnd(Q,0)}}else{if(O.nodeName=="BR"){if(O.nextSibling&&i.isBlock(O.nextSibling)){if(!M||M<9){P=i.create("br");O.parentNode.insertBefore(P,O)}N.setStartBefore(O);N.setEndBefore(O)}else{N.setStartAfter(O);N.setEndAfter(O)}}else{N.setStart(O,0);N.setEnd(O,0)}}e.setRng(N);i.remove(P);S=i.getViewPort(f.getWin());U=i.getPos(O).y;if(U<S.y||U+25>S.y+S.h){f.getWin().scrollTo(0,U<S.y?U:U-S.h+25)}}function r(O){var P=z,R,Q,N;R=O||t=="TABLE"?i.create(O||x):p.cloneNode(false);N=R;if(d.keep_styles!==false){do{if(/^(SPAN|STRONG|B|EM|I|FONT|STRIKE|U)$/.test(P.nodeName)){Q=P.cloneNode(false);i.setAttrib(Q,"id","");if(R.hasChildNodes()){Q.appendChild(R.firstChild);R.appendChild(Q)}else{N=Q;R.appendChild(Q)}}}while(P=P.parentNode)}if(!b.isIE){N.innerHTML="<br>"}return R}function q(Q){var P,O,N;if(z.nodeType==3&&(Q?u>0:u<z.nodeValue.length)){return false}if(z.parentNode==p&&C&&!Q){return true}if(Q&&z.nodeType==1&&z==p.firstChild){return true}if(z.nodeName==="TABLE"||(z.previousSibling&&z.previousSibling.nodeName=="TABLE")){return(C&&!Q)||(!C&&Q)}P=new a(z,p);if(z.nodeType==3){if(Q&&u==0){P.prev()}else{if(!Q&&u==z.nodeValue.length){P.next()}}}while(O=P.current()){if(O.nodeType===1){if(!O.getAttribute("data-mce-bogus")){N=O.nodeName.toLowerCase();if(c[N]&&N!=="br"){return false}}}else{if(O.nodeType===3&&!/^[ \t\r\n]*$/.test(O.nodeValue)){return false}}if(Q){P.prev()}else{P.next()}}return true}function l(N,T){var U,S,P,R,Q,O=x||"P";S=i.getParent(N,i.isBlock);if(!S||!E(S)){S=S||j;if(!S.hasChildNodes()){U=i.create(O);S.appendChild(U);v.setStart(U,0);v.setEnd(U,0);return U}R=N;while(R.parentNode!=S){R=R.parentNode}while(R&&!i.isBlock(R)){P=R;R=R.previousSibling}if(P){U=i.create(O);P.parentNode.insertBefore(U,P);R=P;while(R&&!i.isBlock(R)){Q=R.nextSibling;U.appendChild(R);R=Q}v.setStart(N,T);v.setEnd(N,T)}}return N}function H(){function N(P){var O=n[P?"firstChild":"lastChild"];while(O){if(O.nodeType==1){break}O=O[P?"nextSibling":"previousSibling"]}return O===p}o=x?r(x):i.create("BR");if(N(true)&&N()){i.replace(o,n)}else{if(N(true)){n.parentNode.insertBefore(o,n)}else{if(N()){i.insertAfter(o,n);F(o)}else{G=v.cloneRange();G.setStartAfter(p);G.setEndAfter(n);k=G.extractContents();i.insertAfter(k,n);i.insertAfter(o,n)}}}i.remove(p);m(o);h.add()}function D(){var O=new a(z,p),N;while(N=O.current()){if(N.nodeName=="BR"){return true}N=O.next()}}function L(){var O,N;if(z&&z.nodeType==3&&u>=z.nodeValue.length){if(!b.isIE&&!D()){O=i.create("br");v.insertNode(O);v.setStartAfter(O);v.setEndAfter(O);N=true}}O=i.create("br");v.insertNode(O);if(b.isIE&&t=="PRE"&&(!M||M<8)){O.parentNode.insertBefore(i.doc.createTextNode("\r"),O)}if(!N){v.setStartAfter(O);v.setEndAfter(O)}else{v.setStartBefore(O);v.setEndBefore(O)}e.setRng(v);h.add()}function s(N){do{if(N.nodeType===3){N.nodeValue=N.nodeValue.replace(/^[\r\n]+/,"")}N=N.firstChild}while(N)}function K(P){var N=i.getRoot(),O,Q;O=P;while(O!==N&&i.getContentEditable(O)!=="false"){if(i.getContentEditable(O)==="true"){Q=O}O=O.parentNode}return O!==N?Q:N}function I(O){var N;if(!b.isIE){O.normalize();N=O.lastChild;if(!N||(/^(left|right)$/gi.test(i.getStyle(N,"float",true)))){i.add(O,"br")}}}if(!v.collapsed){f.execCommand("Delete");return}if(A.isDefaultPrevented()){return}z=v.startContainer;u=v.startOffset;x=(d.force_p_newlines?"p":"")||d.forced_root_block;x=x?x.toUpperCase():"";M=i.doc.documentMode;B=A.shiftKey;if(z.nodeType==1&&z.hasChildNodes()){C=u>z.childNodes.length-1;z=z.childNodes[Math.min(u,z.childNodes.length-1)]||z;if(C&&z.nodeType==3){u=z.nodeValue.length}else{u=0}}j=K(z);if(!j){return}h.beforeChange();if(!i.isBlock(j)&&j!=i.getRoot()){if(!x||B){L()}return}if((x&&!B)||(!x&&B)){z=l(z,u)}p=i.getParent(z,i.isBlock);n=p?i.getParent(p.parentNode,i.isBlock):null;t=p?p.nodeName.toUpperCase():"";J=n?n.nodeName.toUpperCase():"";if(t=="LI"){if(!x&&B){L();return}if(i.isEmpty(p)){if(/^(UL|OL|LI)$/.test(n.parentNode.nodeName)){return false}H();return}}if(t=="PRE"&&d.br_in_pre!==false){if(!B){L();return}}else{if((!x&&!B&&t!="LI")||(x&&B)){L();return}}x=x||"P";if(q()){if(/^(H[1-6]|PRE)$/.test(t)&&J!="HGROUP"){o=r(x)}else{o=r()}if(d.end_container_on_empty_block&&E(n)&&i.isEmpty(p)){o=i.split(n,p)}else{i.insertAfter(o,p)}m(o)}else{if(q(true)){o=p.parentNode.insertBefore(r(),p);F(o)}else{G=v.cloneRange();G.setEndAfter(p);k=G.extractContents();s(k);o=k.firstChild;i.insertAfter(k,p);y(o);I(p);m(o)}}i.setAttrib(o,"id","");h.add()}f.onKeyDown.add(function(k,j){if(j.keyCode==13){if(g(j)!==false){j.preventDefault()}}})}})(tinymce); \ No newline at end of file
diff --git a/program/js/tiny_mce/tiny_mce_src.js b/program/js/tiny_mce/tiny_mce_src.js
index 1f1fc021e..e38fb7efb 100644
--- a/program/js/tiny_mce/tiny_mce_src.js
+++ b/program/js/tiny_mce/tiny_mce_src.js
@@ -6,9 +6,9 @@
var tinymce = {
majorVersion : '3',
- minorVersion : '5.2',
+ minorVersion : '5.6',
- releaseDate : '2012-05-31',
+ releaseDate : '2012-07-26',
_init : function() {
var t = this, d = document, na = navigator, ua = na.userAgent, i, nl, n, base, p, v;
@@ -1083,6 +1083,11 @@ tinymce.create('static tinymce.util.XHR', {
modifierPressed: function (e) {
return e.shiftKey || e.ctrlKey || e.altKey;
+ },
+
+ metaKeyPressed: function(e) {
+ // Check if ctrl or meta key is pressed also check if alt is false for Polish users
+ return tinymce.isMac ? e.metaKey : e.ctrlKey && !e.altKey;
}
};
})(tinymce);
@@ -1098,6 +1103,12 @@ tinymce.util.Quirks = function(editor) {
}
}
+ function getDocumentMode() {
+ var documentMode = editor.getDoc().documentMode;
+
+ return documentMode ? documentMode : 6;
+ };
+
function cleanupStylesWhenDeleting() {
function removeMergedFormatSpans(isDelete) {
var rng, blockElm, node, clonedSpan;
@@ -1157,74 +1168,58 @@ tinymce.util.Quirks = function(editor) {
};
function emptyEditorWhenDeleting() {
- function getEndPointNode(rng, start) {
- var container, offset, prefix = start ? 'start' : 'end';
+ function serializeRng(rng) {
+ var body = dom.create("body");
+ var contents = rng.cloneContents();
+ body.appendChild(contents);
+ return selection.serializer.serialize(body, {format: 'html'});
+ }
- container = rng[prefix + 'Container'];
- offset = rng[prefix + 'Offset'];
+ function allContentsSelected(rng) {
+ var selection = serializeRng(rng);
- // Resolve indexed container
- if (container.nodeType == 1 && container.hasChildNodes()) {
- container = container.childNodes[Math.min(start ? offset : (offset > 0 ? offset - 1 : 0), container.childNodes.length - 1)]
- }
+ var allRng = dom.createRng();
+ allRng.selectNode(editor.getBody());
- return container;
- };
-
- function isAtStartEndOfBody(rng, start) {
- var container, offset, root, childNode, prefix = start ? 'start' : 'end', isAfter;
+ var allSelection = serializeRng(allRng);
+ return selection === allSelection;
+ }
- container = rng[prefix + 'Container'];
- offset = rng[prefix + 'Offset'];
- root = dom.getRoot();
+ editor.onKeyDown.add(function(editor, e) {
+ var keyCode = e.keyCode, isCollapsed;
- // Resolve indexed container
- if (container.nodeType == 1) {
- isAfter = offset >= container.childNodes.length;
- container = getEndPointNode(rng, start);
+ // Empty the editor if it's needed for example backspace at <p><b>|</b></p>
+ if (!e.isDefaultPrevented() && (keyCode == DELETE || keyCode == BACKSPACE)) {
+ isCollapsed = editor.selection.isCollapsed();
- if (container.nodeType == 3) {
- offset = start && !isAfter ? 0 : container.nodeValue.length;
+ // Selection is collapsed but the editor isn't empty
+ if (isCollapsed && !dom.isEmpty(editor.getBody())) {
+ return;
}
- }
-
- // Check if start/end is in the middle of text
- if (container.nodeType == 3 && ((start && offset > 0) || (!start && offset < container.nodeValue.length))) {
- return false;
- }
-
- // Walk up the DOM tree to see if the endpoint is at the beginning/end of body
- while (container !== root) {
- childNode = container.parentNode[start ? 'firstChild' : 'lastChild'];
- // If first/last element is a BR then jump to it's sibling in case: <p>x<br></p>
- if (childNode.nodeName == "BR") {
- childNode = childNode[start ? 'nextSibling' : 'previousSibling'] || childNode;
+ // IE deletes all contents correctly when everything is selected
+ if (tinymce.isIE && !isCollapsed) {
+ return;
}
- // If the childNode isn't the container node then break in case <p><span>A</span>[X]</p>
- if (childNode !== container) {
- return false;
+ // Selection isn't collapsed but not all the contents is selected
+ if (!isCollapsed && !allContentsSelected(editor.selection.getRng())) {
+ return;
}
- container = container.parentNode;
+ // Manually empty the editor
+ editor.setContent('');
+ editor.selection.setCursorLocation(editor.getBody(), 0);
+ editor.nodeChanged();
}
+ });
+ };
- return true;
- };
-
- editor.onKeyDown.addToTop(function(editor, e) {
- var rng, keyCode = e.keyCode;
-
- if (!e.isDefaultPrevented() && (keyCode == DELETE || keyCode == BACKSPACE)) {
- rng = selection.getRng(true);
-
- if (isAtStartEndOfBody(rng, true) && isAtStartEndOfBody(rng, false) &&
- (rng.collapsed || dom.findCommonAncestor(getEndPointNode(rng, true), getEndPointNode(rng)) === dom.getRoot())) {
- editor.setContent('');
- editor.nodeChanged();
- e.preventDefault();
- }
+ function selectAll() {
+ editor.onKeyDown.add(function(editor, e) {
+ if (e.keyCode == 65 && VK.metaKeyPressed(e)) {
+ e.preventDefault();
+ editor.execCommand('SelectAll');
}
});
};
@@ -1319,7 +1314,7 @@ tinymce.util.Quirks = function(editor) {
}
function isSelectionAcrossElements() {
- return !selection.isCollapsed() && selection.getStart() != selection.getEnd();
+ return !selection.isCollapsed() && dom.getParent(selection.getStart(), dom.isBlock) != dom.getParent(selection.getEnd(), dom.isBlock);
}
function blockEvent(editor, e) {
@@ -1393,16 +1388,15 @@ tinymce.util.Quirks = function(editor) {
}
function addNewLinesBeforeBrInPre() {
- var documentMode = editor.getDoc().documentMode;
-
// IE8+ rendering mode does the right thing with BR in PRE
- if (documentMode && documentMode > 7) {
+ if (getDocumentMode() > 7) {
return;
}
// Enable display: none in area and add a specific class that hides all BR elements in PRE to
// avoid the caret from getting stuck at the BR elements while pressing the right arrow key
setEditorCommandState('RespectVisibilityInDesign', true);
+ editor.contentStyles.push('.mceHideBrInPre pre br {display: none}');
dom.addClass(editor.getBody(), 'mceHideBrInPre');
// Adds a \n before all BR elements in PRE to get them visual
@@ -1608,17 +1602,269 @@ tinymce.util.Quirks = function(editor) {
editor.onSetContent.add(repaint);
};
- function deleteImageOnBackSpace() {
+ function deleteControlItemOnBackSpace() {
editor.onKeyDown.add(function(editor, e) {
- if (!e.isDefaultPrevented() && e.keyCode == 8 && selection.getNode().nodeName == 'IMG') {
- e.preventDefault();
- editor.undoManager.beforeChange();
- dom.remove(selection.getNode());
- editor.undoManager.add();
+ var rng;
+
+ if (!e.isDefaultPrevented() && e.keyCode == BACKSPACE) {
+ rng = editor.getDoc().selection.createRange();
+ if (rng && rng.item) {
+ e.preventDefault();
+ editor.undoManager.beforeChange();
+ dom.remove(rng.item(0));
+ editor.undoManager.add();
+ }
}
});
};
+ function renderEmptyBlocksFix() {
+ var emptyBlocksCSS;
+
+ // IE10+
+ if (getDocumentMode() >= 10) {
+ emptyBlocksCSS = '';
+ tinymce.each('p div h1 h2 h3 h4 h5 h6'.split(' '), function(name, i) {
+ emptyBlocksCSS += (i > 0 ? ',' : '') + name + ':empty';
+ });
+
+ editor.contentStyles.push(emptyBlocksCSS + '{padding-right: 1px !important}');
+ }
+ };
+
+ function fakeImageResize() {
+ var selectedElmX, selectedElmY, selectedElm, selectedElmGhost, selectedHandle, startX, startY, startW, startH, ratio,
+ resizeHandles, width, height, rootDocument = document, editableDoc = editor.getDoc();
+
+ if (!settings.object_resizing || settings.webkit_fake_resize === false) {
+ return;
+ }
+
+ // Try disabling object resizing if WebKit implements resizing in the future
+ setEditorCommandState("enableObjectResizing", false);
+
+ // Details about each resize handle how to scale etc
+ resizeHandles = {
+ // Name: x multiplier, y multiplier, delta size x, delta size y
+ n: [.5, 0, 0, -1],
+ e: [1, .5, 1, 0],
+ s: [.5, 1, 0, 1],
+ w: [0, .5, -1, 0],
+ nw: [0, 0, -1, -1],
+ ne: [1, 0, 1, -1],
+ se: [1, 1, 1, 1],
+ sw : [0, 1, -1, 1]
+ };
+
+ function resizeElement(e) {
+ var deltaX, deltaY;
+
+ // Calc new width/height
+ deltaX = e.screenX - startX;
+ deltaY = e.screenY - startY;
+
+ // Calc new size
+ width = deltaX * selectedHandle[2] + startW;
+ height = deltaY * selectedHandle[3] + startH;
+
+ // Never scale down lower than 5 pixels
+ width = width < 5 ? 5 : width;
+ height = height < 5 ? 5 : height;
+
+ // Constrain proportions when modifier key is pressed or if the nw, ne, sw, se corners are moved on an image
+ if (VK.modifierPressed(e) || (selectedElm.nodeName == "IMG" && selectedHandle[2] * selectedHandle[3] !== 0)) {
+ width = Math.round(height / ratio);
+ height = Math.round(width * ratio);
+ }
+
+ // Update ghost size
+ dom.setStyles(selectedElmGhost, {
+ width: width,
+ height: height
+ });
+
+ // Update ghost X position if needed
+ if (selectedHandle[2] < 0 && selectedElmGhost.clientWidth <= width) {
+ dom.setStyle(selectedElmGhost, 'left', selectedElmX + (startW - width));
+ }
+
+ // Update ghost Y position if needed
+ if (selectedHandle[3] < 0 && selectedElmGhost.clientHeight <= height) {
+ dom.setStyle(selectedElmGhost, 'top', selectedElmY + (startH - height));
+ }
+ }
+
+ function endResize() {
+ function setSizeProp(name, value) {
+ if (value) {
+ // Resize by using style or attribute
+ if (selectedElm.style[name] || !editor.schema.isValid(selectedElm.nodeName.toLowerCase(), name)) {
+ dom.setStyle(selectedElm, name, value);
+ } else {
+ dom.setAttrib(selectedElm, name, value);
+ }
+ }
+ }
+
+ // Set width/height properties
+ setSizeProp('width', width);
+ setSizeProp('height', height);
+
+ dom.unbind(editableDoc, 'mousemove', resizeElement);
+ dom.unbind(editableDoc, 'mouseup', endResize);
+
+ if (rootDocument != editableDoc) {
+ dom.unbind(rootDocument, 'mousemove', resizeElement);
+ dom.unbind(rootDocument, 'mouseup', endResize);
+ }
+
+ // Remove ghost and update resize handle positions
+ dom.remove(selectedElmGhost);
+ showResizeRect(selectedElm);
+ }
+
+ function showResizeRect(targetElm) {
+ var position, targetWidth, targetHeight;
+
+ hideResizeRect();
+
+ // Get position and size of target
+ position = dom.getPos(targetElm);
+ selectedElmX = position.x;
+ selectedElmY = position.y;
+ targetWidth = targetElm.offsetWidth;
+ targetHeight = targetElm.offsetHeight;
+
+ // Reset width/height if user selects a new image/table
+ if (selectedElm != targetElm) {
+ selectedElm = targetElm;
+ width = height = 0;
+ }
+
+ tinymce.each(resizeHandles, function(handle, name) {
+ var handleElm;
+
+ // Get existing or render resize handle
+ handleElm = dom.get('mceResizeHandle' + name);
+ if (!handleElm) {
+ handleElm = dom.add(editableDoc.documentElement, 'div', {
+ id: 'mceResizeHandle' + name,
+ 'class': 'mceResizeHandle',
+ style: 'cursor:' + name + '-resize; margin:0; padding:0'
+ });
+
+ dom.bind(handleElm, 'mousedown', function(e) {
+ e.preventDefault();
+
+ endResize();
+
+ startX = e.screenX;
+ startY = e.screenY;
+ startW = selectedElm.clientWidth;
+ startH = selectedElm.clientHeight;
+ ratio = startH / startW;
+ selectedHandle = handle;
+
+ selectedElmGhost = selectedElm.cloneNode(true);
+ dom.addClass(selectedElmGhost, 'mceClonedResizable');
+ dom.setStyles(selectedElmGhost, {
+ left: selectedElmX,
+ top: selectedElmY,
+ margin: 0
+ });
+
+ editableDoc.documentElement.appendChild(selectedElmGhost);
+
+ dom.bind(editableDoc, 'mousemove', resizeElement);
+ dom.bind(editableDoc, 'mouseup', endResize);
+
+ if (rootDocument != editableDoc) {
+ dom.bind(rootDocument, 'mousemove', resizeElement);
+ dom.bind(rootDocument, 'mouseup', endResize);
+ }
+ });
+ } else {
+ dom.show(handleElm);
+ }
+
+ // Position element
+ dom.setStyles(handleElm, {
+ left: (targetWidth * handle[0] + selectedElmX) - (handleElm.offsetWidth / 2),
+ top: (targetHeight * handle[1] + selectedElmY) - (handleElm.offsetHeight / 2)
+ });
+ });
+
+ // Only add resize rectangle on WebKit and only on images
+ if (!tinymce.isOpera && selectedElm.nodeName == "IMG") {
+ selectedElm.setAttribute('data-mce-selected', '1');
+ }
+ }
+
+ function hideResizeRect() {
+ if (selectedElm) {
+ selectedElm.removeAttribute('data-mce-selected');
+ }
+
+ for (var name in resizeHandles) {
+ dom.hide('mceResizeHandle' + name);
+ }
+ }
+
+ // Add CSS for resize handles, cloned element and selected
+ editor.contentStyles.push(
+ '.mceResizeHandle {' +
+ 'position: absolute;' +
+ 'border: 1px solid black;' +
+ 'background: #FFF;' +
+ 'width: 5px;' +
+ 'height: 5px;' +
+ 'z-index: 10000' +
+ '}' +
+ '.mceResizeHandle:hover {' +
+ 'background: #000' +
+ '}' +
+ 'img[data-mce-selected] {' +
+ 'outline: 1px solid black' +
+ '}' +
+ 'img.mceClonedResizable, table.mceClonedResizable {' +
+ 'position: absolute;' +
+ 'outline: 1px dashed black;' +
+ 'opacity: .5;' +
+ 'z-index: 10000' +
+ '}'
+ );
+
+ function updateResizeRect() {
+ var controlElm = dom.getParent(selection.getNode(), 'table,img');
+
+ // Remove data-mce-selected from all elements since they might have been copied using Ctrl+c/v
+ tinymce.each(dom.select('img[data-mce-selected]'), function(img) {
+ img.removeAttribute('data-mce-selected');
+ });
+
+ if (controlElm) {
+ showResizeRect(controlElm);
+ } else {
+ hideResizeRect();
+ }
+ }
+
+ // Show/hide resize rect when image is selected
+ editor.onNodeChange.add(updateResizeRect);
+
+ // Fixes WebKit quirk where it returns IMG on getNode if caret is after last image in container
+ dom.bind(editableDoc, 'selectionchange', updateResizeRect);
+
+ // Remove the internal attribute when serializing the DOM
+ editor.serializer.addAttributeFilter('data-mce-selected', function(nodes, name) {
+ var i = nodes.length;
+
+ while (i--) {
+ nodes[i].attr(name, null);
+ }
+ });
+ }
+
// All browsers
disableBackspaceIntoATable();
removeBlockQuoteOnBackSpace();
@@ -1635,6 +1881,9 @@ tinymce.util.Quirks = function(editor) {
// iOS
if (tinymce.isIDevice) {
selectionChangeNodeChanged();
+ } else {
+ fakeImageResize();
+ selectAll();
}
}
@@ -1644,7 +1893,8 @@ tinymce.util.Quirks = function(editor) {
ensureBodyHasRoleApplication();
addNewLinesBeforeBrInPre();
removePreSerializedStylesWhenSelectingControls();
- deleteImageOnBackSpace();
+ deleteControlItemOnBackSpace();
+ renderEmptyBlocksFix();
}
// Gecko
@@ -1656,6 +1906,11 @@ tinymce.util.Quirks = function(editor) {
addBrAfterLastLinks();
removeGhostSelection();
}
+
+ // Opera
+ if (tinymce.isOpera) {
+ fakeImageResize();
+ }
};
(function(tinymce) {
var namedEntities, baseEntities, reverseEntities,
@@ -2107,9 +2362,9 @@ tinymce.html.Styles = function(settings, schema) {
if (!html5) {
html5 = mapCache.html5 = unpack({
- A : 'id|accesskey|class|dir|draggable|item|hidden|itemprop|role|spellcheck|style|subject|title',
+ A : 'id|accesskey|class|dir|draggable|item|hidden|itemprop|role|spellcheck|style|subject|title|onclick|ondblclick|onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup',
B : '#|a|abbr|area|audio|b|bdo|br|button|canvas|cite|code|command|datalist|del|dfn|em|embed|i|iframe|img|input|ins|kbd|keygen|label|link|map|mark|meta|' +
- 'meter|noscript|object|output|progress|q|ruby|samp|script|select|small|span|strong|sub|sup|svg|textarea|time|var|video',
+ 'meter|noscript|object|output|progress|q|ruby|samp|script|select|small|span|strong|sub|sup|svg|textarea|time|var|video|wbr',
C : '#|a|abbr|area|address|article|aside|audio|b|bdo|blockquote|br|button|canvas|cite|code|command|datalist|del|details|dfn|dialog|div|dl|em|embed|fieldset|' +
'figure|footer|form|h1|h2|h3|h4|h5|h6|header|hgroup|hr|i|iframe|img|input|ins|kbd|keygen|label|link|map|mark|menu|meta|meter|nav|noscript|ol|object|output|' +
'p|pre|progress|q|ruby|samp|script|section|select|small|span|strong|style|sub|sup|svg|table|textarea|time|ul|var|video'
@@ -2218,7 +2473,8 @@ tinymce.html.Styles = function(settings, schema) {
'tbody[A][tr]' +
'tr[A][th|td]' +
'th[A|headers|rowspan|colspan|scope][B]' +
- 'td[A|headers|rowspan|colspan][C]'
+ 'td[A|headers|rowspan|colspan][C]' +
+ 'wbr[A][]'
);
}
@@ -2399,7 +2655,7 @@ tinymce.html.Styles = function(settings, schema) {
// Setup map objects
whiteSpaceElementsMap = createLookupTable('whitespace_elements', 'pre script style textarea');
selfClosingElementsMap = createLookupTable('self_closing_elements', 'colgroup dd dt li option p td tfoot th thead tr');
- shortEndedElementsMap = createLookupTable('short_ended_elements', 'area base basefont br col frame hr img input isindex link meta param embed source');
+ shortEndedElementsMap = createLookupTable('short_ended_elements', 'area base basefont br col frame hr img input isindex link meta param embed source wbr');
boolAttrMap = createLookupTable('boolean_attributes', 'checked compact declare defer disabled ismap multiple nohref noresize noshade nowrap readonly selected autoplay loop controls');
nonEmptyElementsMap = createLookupTable('non_empty_elements', 'td th iframe video audio object', shortEndedElementsMap);
blockElementsMap = createLookupTable('block_elements', 'h1 h2 h3 h4 h5 h6 hr p div address pre form table tbody thead tfoot ' +
@@ -4657,7 +4913,7 @@ tinymce.dom = {};
// Old API supported multiple targets
if (target && target instanceof Array) {
- var i = target;
+ var i = target.length;
while (i--) {
self.add(target[i], events, func, scope);
@@ -5499,6 +5755,32 @@ tinymce.dom.TreeWalker = function(start_node, root_node) {
return this.styles.serialize(o, name);
},
+ addStyle: function(cssText) {
+ var doc = this.doc, head;
+
+ // Create style element if needed
+ styleElm = doc.getElementById('mceDefaultStyles');
+ if (!styleElm) {
+ styleElm = doc.createElement('style'),
+ styleElm.id = 'mceDefaultStyles';
+ styleElm.type = 'text/css';
+
+ head = doc.getElementsByTagName('head')[0];
+ if (head.firstChild) {
+ head.insertBefore(styleElm, head.firstChild);
+ } else {
+ head.appendChild(styleElm);
+ }
+ }
+
+ // Append style data to old or new style element
+ if (styleElm.styleSheet) {
+ styleElm.styleSheet.cssText += cssText;
+ } else {
+ styleElm.appendChild(doc.createTextNode(cssText));
+ }
+ },
+
loadCSS : function(u) {
var t = this, d = t.doc, head;
@@ -5622,13 +5904,13 @@ tinymce.dom.TreeWalker = function(start_node, root_node) {
// This seems to fix this problem
// Create new div with HTML contents and a BR infront to keep comments
- element = self.create('div');
- element.innerHTML = '<br />' + html;
+ var newElement = self.create('div');
+ newElement.innerHTML = '<br />' + html;
// Add all children from div to target
- each (element.childNodes, function(node, i) {
+ each (tinymce.grep(newElement.childNodes), function(node, i) {
// Skip br element
- if (i)
+ if (i && element.canHaveHTML)
element.appendChild(node);
});
}
@@ -7233,7 +7515,8 @@ tinymce.dom.TreeWalker = function(start_node, root_node) {
};
this.addRange = function(rng) {
- var ieRng, ctrlRng, startContainer, startOffset, endContainer, endOffset, sibling, doc = selection.dom.doc, body = doc.body;
+ var ieRng, ctrlRng, startContainer, startOffset, endContainer, endOffset, sibling,
+ doc = selection.dom.doc, body = doc.body, nativeRng, ctrlElm;
function setEndPoint(start) {
var container, offset, marker, tmpRng, nodes;
@@ -7319,10 +7602,17 @@ tinymce.dom.TreeWalker = function(start_node, root_node) {
if (startOffset == endOffset - 1) {
try {
+ ctrlElm = startContainer.childNodes[startOffset];
ctrlRng = body.createControlRange();
- ctrlRng.addElement(startContainer.childNodes[startOffset]);
+ ctrlRng.addElement(ctrlElm);
ctrlRng.select();
- return;
+
+ // Check if the range produced is on the correct element and is a control range
+ // On IE 8 it will select the parent contentEditable container if you select an inner element see: #5398
+ nativeRng = selection.getRng();
+ if (nativeRng.item && ctrlElm === nativeRng.item(0)) {
+ return;
+ }
} catch (ex) {
// Ignore
}
@@ -9069,7 +9359,7 @@ window.tinymce.dom.Sizzle = Sizzle;
},
getStart : function() {
- var rng = this.getRng(), startElement, parentElement, checkRng, node;
+ var self = this, rng = self.getRng(), startElement, parentElement, checkRng, node;
if (rng.duplicate || rng.item) {
// Control selection, return first item
@@ -9080,6 +9370,9 @@ window.tinymce.dom.Sizzle = Sizzle;
checkRng = rng.duplicate();
checkRng.collapse(1);
startElement = checkRng.parentElement();
+ if (startElement.ownerDocument !== self.dom.doc) {
+ startElement = self.dom.getRoot();
+ }
// Check if range parent is inside the start element, then return the inner parent element
// This will fix issues when a single element is selected, IE would otherwise return the wrong start element
@@ -9106,31 +9399,34 @@ window.tinymce.dom.Sizzle = Sizzle;
},
getEnd : function() {
- var t = this, r = t.getRng(), e, eo;
+ var self = this, rng = self.getRng(), endElement, endOffset;
- if (r.duplicate || r.item) {
- if (r.item)
- return r.item(0);
+ if (rng.duplicate || rng.item) {
+ if (rng.item)
+ return rng.item(0);
- r = r.duplicate();
- r.collapse(0);
- e = r.parentElement();
+ rng = rng.duplicate();
+ rng.collapse(0);
+ endElement = rng.parentElement();
+ if (endElement.ownerDocument !== self.dom.doc) {
+ endElement = self.dom.getRoot();
+ }
- if (e && e.nodeName == 'BODY')
- return e.lastChild || e;
+ if (endElement && endElement.nodeName == 'BODY')
+ return endElement.lastChild || endElement;
- return e;
+ return endElement;
} else {
- e = r.endContainer;
- eo = r.endOffset;
+ endElement = rng.endContainer;
+ endOffset = rng.endOffset;
- if (e.nodeType == 1 && e.hasChildNodes())
- e = e.childNodes[eo > 0 ? eo - 1 : eo];
+ if (endElement.nodeType == 1 && endElement.hasChildNodes())
+ endElement = endElement.childNodes[endOffset > 0 ? endOffset - 1 : endOffset];
- if (e && e.nodeType == 3)
- return e.parentNode;
+ if (endElement && endElement.nodeType == 3)
+ return endElement.parentNode;
- return e;
+ return endElement;
}
},
@@ -10257,7 +10553,7 @@ window.tinymce.dom.Sizzle = Sizzle;
// Replace all BOM characters for now until we can find a better solution
if (!args.cleanup)
- args.content = args.content.replace(/\uFEFF|\u200B/g, '');
+ args.content = args.content.replace(/\uFEFF/g, '');
// Post process
if (!args.no_events)
@@ -11475,7 +11771,7 @@ tinymce.create('tinymce.ui.Separator:tinymce.ui.Control', {
l = DOM.encode(s.label || '');
h = '<a role="button" id="' + this.id + '" href="javascript:;" class="' + cp + ' ' + cp + 'Enabled ' + s['class'] + (l ? ' ' + cp + 'Labeled' : '') +'" onmousedown="return false;" onclick="return false;" aria-labelledby="' + this.id + '_voice" title="' + DOM.encode(s.title) + '">';
if (s.image && !(this.editor &&this.editor.forcedHighContrastMode) )
- h += '<img class="mceIcon" src="' + s.image + '" alt="' + DOM.encode(s.title) + '" />' + l;
+ h += '<span class="mceIcon ' + s['class'] + '"><img class="mceIcon" src="' + s.image + '" alt="' + DOM.encode(s.title) + '" /></span>' + (l ? '<span class="' + cp + 'Label">' + l + '</span>' : '');
else
h += '<span class="mceIcon ' + s['class'] + '"></span>' + (l ? '<span class="' + cp + 'Label">' + l + '</span>' : '');
@@ -12183,6 +12479,16 @@ tinymce.create('tinymce.ui.Separator:tinymce.ui.Control', {
DOM.select('a', t.id + '_menu')[0].focus(); // Select first link
}
+ t.keyboardNav = new tinymce.ui.KeyboardNavigation({
+ root: t.id + '_menu',
+ items: DOM.select('a', t.id + '_menu'),
+ onCancel: function() {
+ t.hideMenu();
+ t.focus();
+ }
+ });
+
+ t.keyboardNav.focus();
t.isMenuVisible = 1;
},
@@ -12203,6 +12509,7 @@ tinymce.create('tinymce.ui.Separator:tinymce.ui.Control', {
t.isMenuVisible = 0;
t.onHideMenu.dispatch();
+ t.keyboardNav.destroy();
}
},
@@ -12267,15 +12574,6 @@ tinymce.create('tinymce.ui.Separator:tinymce.ui.Control', {
}
DOM.addClass(m, 'mceColorSplitMenu');
-
- new tinymce.ui.KeyboardNavigation({
- root: t.id + '_menu',
- items: DOM.select('a', t.id + '_menu'),
- onCancel: function() {
- t.hideMenu();
- t.focus();
- }
- });
// Prevent IE from scrolling and hindering click to occur #4019
Event.add(t.id + '_menu', 'mousedown', function(e) {return Event.cancel(e);});
@@ -12317,11 +12615,17 @@ tinymce.create('tinymce.ui.Separator:tinymce.ui.Control', {
},
destroy : function() {
- this.parent();
+ var self = this;
+
+ self.parent();
- Event.clear(this.id + '_menu');
- Event.clear(this.id + '_more');
- DOM.remove(this.id + '_menu');
+ Event.clear(self.id + '_menu');
+ Event.clear(self.id + '_more');
+ DOM.remove(self.id + '_menu');
+
+ if (self.keyboardNav) {
+ self.keyboardNav.destroy();
+ }
}
});
})(tinymce);
@@ -12965,6 +13269,8 @@ tinymce.create('tinymce.ui.Toolbar:tinymce.ui.Container', {
self.contentCSS = [];
+ self.contentStyles = [];
+
// Creates all events like onClick, onSetContent etc see Editor.Events.js for the actual logic
self.setupEvents();
@@ -13156,12 +13462,6 @@ tinymce.create('tinymce.ui.Toolbar:tinymce.ui.Container', {
t.controlManager = new tinymce.ControlManager(t);
- t.onExecCommand.add(function(ed, c) {
- // Don't refresh the select lists until caret move
- if (!/^(FontName|FontSize)$/.test(c))
- t.nodeChanged();
- });
-
// Enables users to override the control factory
t.onBeforeRenderUI.dispatch(t, t.controlManager);
@@ -13235,6 +13535,11 @@ tinymce.create('tinymce.ui.Toolbar:tinymce.ui.Container', {
});
}
+ // Load specified content CSS last
+ if (s.content_style) {
+ t.contentStyles.push(s.content_style);
+ }
+
// Content editable mode ends here
if (s.content_editable) {
e = n = o = null; // Fix IE leak
@@ -13321,7 +13626,7 @@ tinymce.create('tinymce.ui.Toolbar:tinymce.ui.Container', {
},
initContentBody : function() {
- var self = this, settings = self.settings, targetElm = DOM.get(self.id), doc = self.getDoc(), html, body;
+ var self = this, settings = self.settings, targetElm = DOM.get(self.id), doc = self.getDoc(), html, body, contentCssText;
// Setup iframe body
if ((!isIE || !tinymce.relaxedDomain) && !settings.content_editable) {
@@ -13430,6 +13735,12 @@ tinymce.create('tinymce.ui.Toolbar:tinymce.ui.Container', {
self.enterKey = new tinymce.EnterKey(self);
self.editorCommands = new tinymce.EditorCommands(self);
+ self.onExecCommand.add(function(editor, command) {
+ // Don't refresh the select lists until caret move
+ if (!/^(FontName|FontSize)$/.test(command))
+ self.nodeChanged();
+ });
+
// Pass through
self.serializer.onPreProcess.add(function(se, o) {
return self.onPreProcess.dispatch(self, o, se);
@@ -13492,6 +13803,17 @@ tinymce.create('tinymce.ui.Toolbar:tinymce.ui.Container', {
self.focus(true);
self.nodeChanged({initial : true});
+ // Add editor specific CSS styles
+ if (self.contentStyles.length > 0) {
+ contentCssText = '';
+
+ each(self.contentStyles, function(style) {
+ contentCssText += style + "\r\n";
+ });
+
+ self.dom.addStyle(contentCssText);
+ }
+
// Load specified content CSS last
each(self.contentCSS, function(url) {
self.dom.loadCSS(url);
@@ -13992,7 +14314,7 @@ tinymce.create('tinymce.ui.Toolbar:tinymce.ui.Container', {
},
getContent : function(args) {
- var self = this, content;
+ var self = this, content, body = self.getBody();
// Setup args object
args = args || {};
@@ -14006,11 +14328,18 @@ tinymce.create('tinymce.ui.Toolbar:tinymce.ui.Container', {
// Get raw contents or by default the cleaned contents
if (args.format == 'raw')
- content = self.getBody().innerHTML;
+ content = body.innerHTML;
+ else if (args.format == 'text')
+ content = body.innerText || body.textContent;
else
- content = self.serializer.serialize(self.getBody(), args);
+ content = self.serializer.serialize(body, args);
- args.content = tinymce.trim(content);
+ // Trim whitespace in beginning/end of HTML
+ if (args.format != 'text') {
+ args.content = tinymce.trim(content);
+ } else {
+ args.content = content;
+ }
// Do post processing
if (!args.no_events)
@@ -14119,7 +14448,7 @@ tinymce.create('tinymce.ui.Toolbar:tinymce.ui.Container', {
return;
case 'A':
- if (!elm.href) {
+ if (!dom.getAttrib(elm, 'href', false)) {
value = dom.getAttrib(elm, 'name') || elm.id;
cls = 'mceItemAnchor';
@@ -14148,13 +14477,12 @@ tinymce.create('tinymce.ui.Toolbar:tinymce.ui.Container', {
// Don't clear the window or document if content editable
// is enabled since other instances might still be present
if (!self.settings.content_editable) {
- Event.clear(self.getWin());
- Event.clear(self.getDoc());
+ Event.unbind(self.getWin());
+ Event.unbind(self.getDoc());
}
- Event.clear(self.getBody());
- Event.clear(self.formElement);
- Event.unbind(elm);
+ Event.unbind(self.getBody());
+ Event.clear(elm);
self.execCallback('remove_instance_callback', self);
self.onRemove.dispatch(self);
@@ -14356,8 +14684,10 @@ tinymce.create('tinymce.ui.Toolbar:tinymce.ui.Container', {
// Handle legacy handle_event_callback option
if (settings.handle_event_callback) {
self.onEvent.add(function(ed, e, o) {
- if (self.execCallback('handle_event_callback', e, ed, o) === false)
- Event.cancel(e);
+ if (self.execCallback('handle_event_callback', e, ed, o) === false) {
+ e.preventDefault();
+ e.stopPropagation();
+ }
});
}
@@ -14423,9 +14753,12 @@ tinymce.create('tinymce.ui.Toolbar:tinymce.ui.Container', {
self.focus(true);
};
- function nodeChanged() {
- // Normalize selection for example <b>a</b><i>|a</i> becomes <b>a|</b><i>a</i>
- self.selection.normalize();
+ function nodeChanged(ed, e) {
+ // Normalize selection for example <b>a</b><i>|a</i> becomes <b>a|</b><i>a</i> except for Ctrl+A since it selects everything
+ if (e.keyCode != 65 || !tinymce.VK.metaKeyPressed(e)) {
+ self.selection.normalize();
+ }
+
self.nodeChanged();
}
@@ -14469,7 +14802,7 @@ tinymce.create('tinymce.ui.Toolbar:tinymce.ui.Container', {
var keyCode = e.keyCode;
if ((keyCode >= 33 && keyCode <= 36) || (keyCode >= 37 && keyCode <= 40) || keyCode == 13 || keyCode == 45 || keyCode == 46 || keyCode == 8 || (tinymce.isMac && (keyCode == 91 || keyCode == 93)) || e.ctrlKey)
- nodeChanged();
+ nodeChanged(ed, e);
});
// Add reset handler
@@ -14822,7 +15155,7 @@ tinymce.create('tinymce.ui.Toolbar:tinymce.ui.Container', {
// Insert bookmark node and get the parent
selection.setContent(bookmarkHtml);
- parentNode = editor.selection.getNode();
+ parentNode = selection.getNode();
rootNode = editor.getBody();
// Opera will return the document node when selection is in root
@@ -14896,6 +15229,10 @@ tinymce.create('tinymce.ui.Toolbar:tinymce.ui.Container', {
editor.setContent(editor.getContent().replace(/tiny_mce_marker/g, function() { return value }));
},
+ mceToggleFormat : function(command, ui, value) {
+ toggleFormat(value);
+ },
+
mceSetContent : function(command, ui, value) {
editor.setContent(value);
},
@@ -14985,10 +15322,15 @@ tinymce.create('tinymce.ui.Toolbar:tinymce.ui.Container', {
selectAll : function() {
var root = dom.getRoot(), rng = dom.createRng();
- rng.setStart(root, 0);
- rng.setEnd(root, root.childNodes.length);
+ // Old IE does a better job with selectall than new versions
+ if (selection.getRng().setStart) {
+ rng.setStart(root, 0);
+ rng.setEnd(root, root.childNodes.length);
- editor.selection.setRng(rng);
+ selection.setRng(rng);
+ } else {
+ execNativeCommand('SelectAll');
+ }
}
});
@@ -15027,7 +15369,10 @@ tinymce.create('tinymce.ui.Toolbar:tinymce.ui.Container', {
},
'InsertUnorderedList,InsertOrderedList' : function(command) {
- return dom.getParent(selection.getNode(), command == 'insertunorderedlist' ? 'UL' : 'OL');
+ var list = dom.getParent(selection.getNode(), 'ul,ol');
+ return list &&
+ (command === 'insertunorderedlist' && list.tagName === 'UL'
+ || command === 'insertorderedlist' && list.tagName === 'OL');
}
}, 'state');
@@ -15284,7 +15629,7 @@ tinymce.ForceBlocks = function(editor) {
var settings = editor.settings, dom = editor.dom, selection = editor.selection, blockElements = editor.schema.getBlockElements();
function addRootBlocks() {
- var node = selection.getStart(), rootNode = editor.getBody(), rng, startContainer, startOffset, endContainer, endOffset, rootBlockNode, tempNode, offset = -0xFFFFFF, wrapped;
+ var node = selection.getStart(), rootNode = editor.getBody(), rng, startContainer, startOffset, endContainer, endOffset, rootBlockNode, tempNode, offset = -0xFFFFFF, wrapped, isInEditorDocument;
if (!node || node.nodeType !== 1 || !settings.forced_root_block)
return;
@@ -15312,6 +15657,7 @@ tinymce.ForceBlocks = function(editor) {
rng.moveToElementText(node);
}
+ isInEditorDocument = rng.parentElement().ownerDocument === editor.getDoc();
tmpRng = rng.duplicate();
tmpRng.collapse(true);
startOffset = tmpRng.move('character', offset) * -1;
@@ -15327,6 +15673,14 @@ tinymce.ForceBlocks = function(editor) {
node = rootNode.firstChild;
while (node) {
if (node.nodeType === 3 || (node.nodeType == 1 && !blockElements[node.nodeName])) {
+ // Remove empty text nodes
+ if (node.nodeType === 3 && node.nodeValue.length == 0) {
+ tempNode = node;
+ node = node.nextSibling;
+ dom.remove(tempNode);
+ continue;
+ }
+
if (!rootBlockNode) {
rootBlockNode = dom.create(settings.forced_root_block);
node.parentNode.insertBefore(rootBlockNode, node);
@@ -15342,28 +15696,30 @@ tinymce.ForceBlocks = function(editor) {
}
}
- if (rng.setStart) {
- rng.setStart(startContainer, startOffset);
- rng.setEnd(endContainer, endOffset);
- selection.setRng(rng);
- } else {
- try {
- rng = editor.getDoc().body.createTextRange();
- rng.moveToElementText(rootNode);
- rng.collapse(true);
- rng.moveStart('character', startOffset);
+ if (wrapped) {
+ if (rng.setStart) {
+ rng.setStart(startContainer, startOffset);
+ rng.setEnd(endContainer, endOffset);
+ selection.setRng(rng);
+ } else {
+ // Only select if the previous selection was inside the document to prevent auto focus in quirks mode
+ if (isInEditorDocument) {
+ try {
+ rng = editor.getDoc().body.createTextRange();
+ rng.moveToElementText(rootNode);
+ rng.collapse(true);
+ rng.moveStart('character', startOffset);
- if (endOffset > 0)
- rng.moveEnd('character', endOffset);
+ if (endOffset > 0)
+ rng.moveEnd('character', endOffset);
- rng.select();
- } catch (ex) {
- // Ignore
+ rng.select();
+ } catch (ex) {
+ // Ignore
+ }
+ }
}
- }
- // Only trigger nodeChange when we wrapped nodes to prevent a forever loop
- if (wrapped) {
editor.nodeChanged();
}
};
@@ -15895,7 +16251,7 @@ tinymce.ForceBlocks = function(editor) {
isBlock = dom.isBlock,
forcedRootBlock = ed.settings.forced_root_block,
nodeIndex = dom.nodeIndex,
- INVISIBLE_CHAR = tinymce.isGecko ? '\u200B' : '\uFEFF',
+ INVISIBLE_CHAR = '\uFEFF',
MCE_ATTR_RE = /^(src|href|style)$/,
FALSE = false,
TRUE = true,
@@ -16810,7 +17166,7 @@ tinymce.ForceBlocks = function(editor) {
return FALSE;
};
- function formatChanged(formats, callback) {
+ function formatChanged(formats, callback, similar) {
var currentFormats;
// Setup format node change logic
@@ -16824,7 +17180,7 @@ tinymce.ForceBlocks = function(editor) {
// Check for new formats
each(formatChangeData, function(callbacks, format) {
each(parents, function(node) {
- if (matchNode(node, format, {}, true)) {
+ if (matchNode(node, format, {}, callbacks.similar)) {
if (!currentFormats[format]) {
// Execute callbacks
each(callbacks, function(callback) {
@@ -16857,6 +17213,7 @@ tinymce.ForceBlocks = function(editor) {
each(formats.split(','), function(format) {
if (!formatChangeData[format]) {
formatChangeData[format] = [];
+ formatChangeData[format].similar = similar;
}
formatChangeData[format].push(callback);
@@ -17949,21 +18306,63 @@ tinymce.onAddEditor.add(function(tinymce, ed) {
var TreeWalker = tinymce.dom.TreeWalker;
tinymce.EnterKey = function(editor) {
- var dom = editor.dom, selection = editor.selection, settings = editor.settings, undoManager = editor.undoManager;
+ var dom = editor.dom, selection = editor.selection, settings = editor.settings, undoManager = editor.undoManager, nonEmptyElementsMap = editor.schema.getNonEmptyElements();
function handleEnterKey(evt) {
- var rng = selection.getRng(true), tmpRng, editableRoot, container, offset, parentBlock, documentMode,
+ var rng = selection.getRng(true), tmpRng, editableRoot, container, offset, parentBlock, documentMode, shiftKey,
newBlock, fragment, containerBlock, parentBlockName, containerBlockName, newBlockName, isAfterLastNodeInContainer;
// Returns true if the block can be split into two blocks or not
function canSplitBlock(node) {
return node &&
dom.isBlock(node) &&
- !/^(TD|TH|CAPTION)$/.test(node.nodeName) &&
+ !/^(TD|TH|CAPTION|FORM)$/.test(node.nodeName) &&
!/^(fixed|absolute)/i.test(node.style.position) &&
dom.getContentEditable(node) !== "true";
};
+ // Renders empty block on IE
+ function renderBlockOnIE(block) {
+ var oldRng;
+
+ if (tinymce.isIE && dom.isBlock(block)) {
+ oldRng = selection.getRng();
+ block.appendChild(dom.create('span', null, '\u00a0'));
+ selection.select(block);
+ block.lastChild.outerHTML = '';
+ selection.setRng(oldRng);
+ }
+ };
+
+ // Remove the first empty inline element of the block so this: <p><b><em></em></b>x</p> becomes this: <p>x</p>
+ function trimInlineElementsOnLeftSideOfBlock(block) {
+ var node = block, firstChilds = [], i;
+
+ // Find inner most first child ex: <p><i><b>*</b></i></p>
+ while (node = node.firstChild) {
+ if (dom.isBlock(node)) {
+ return;
+ }
+
+ if (node.nodeType == 1 && !nonEmptyElementsMap[node.nodeName.toLowerCase()]) {
+ firstChilds.push(node);
+ }
+ }
+
+ i = firstChilds.length;
+ while (i--) {
+ node = firstChilds[i];
+ if (!node.hasChildNodes() || (node.firstChild == node.lastChild && node.firstChild.nodeValue === '')) {
+ dom.remove(node);
+ } else {
+ // Remove <a> </a> see #5381
+ if (node.nodeName == "A" && (node.innerText || node.textContent) === ' ') {
+ dom.remove(node);
+ }
+ }
+ }
+ };
+
// Moves the caret to a suitable position within the root for example in the first non pure whitespace text node or before an image
function moveToCaretPosition(root) {
var walker, node, rng, y, viewPort, lastNode = root, tempElm;
@@ -17980,7 +18379,7 @@ tinymce.onAddEditor.add(function(tinymce, ed) {
break;
}
- if (/^(BR|IMG)$/.test(node.nodeName)) {
+ if (nonEmptyElementsMap[node.nodeName.toLowerCase()]) {
rng.setStartBefore(node);
rng.setEndBefore(node);
break;
@@ -18077,6 +18476,11 @@ tinymce.onAddEditor.add(function(tinymce, ed) {
return true;
}
+ // If the caret if before the first element in parentBlock
+ if (start && container.nodeType == 1 && container == parentBlock.firstChild) {
+ return true;
+ }
+
// Caret can be before/after a table
if (container.nodeName === "TABLE" || (container.previousSibling && container.previousSibling.nodeName == "TABLE")) {
return (isAfterLastNodeInContainer && !start) || (!isAfterLastNodeInContainer && start);
@@ -18084,21 +18488,35 @@ tinymce.onAddEditor.add(function(tinymce, ed) {
// Walk the DOM and look for text nodes or non empty elements
walker = new TreeWalker(container, parentBlock);
- while (node = (start ? walker.prev() : walker.next())) {
+
+ // If caret is in beginning or end of a text block then jump to the next/previous node
+ if (container.nodeType == 3) {
+ if (start && offset == 0) {
+ walker.prev();
+ } else if (!start && offset == container.nodeValue.length) {
+ walker.next();
+ }
+ }
+
+ while (node = walker.current()) {
if (node.nodeType === 1) {
// Ignore bogus elements
- if (node.getAttribute('data-mce-bogus')) {
- continue;
- }
-
- // Keep empty elements like <img />
- name = node.nodeName.toLowerCase();
- if (name === 'IMG') {
- return false;
+ if (!node.getAttribute('data-mce-bogus')) {
+ // Keep empty elements like <img /> <input /> but not trailing br:s like <p>text|<br></p>
+ name = node.nodeName.toLowerCase();
+ if (nonEmptyElementsMap[name] && name !== 'br') {
+ return false;
+ }
}
} else if (node.nodeType === 3 && !/^[ \t\r\n]*$/.test(node.nodeValue)) {
return false;
}
+
+ if (start) {
+ walker.prev();
+ } else {
+ walker.next();
+ }
}
return true;
@@ -18182,6 +18600,7 @@ tinymce.onAddEditor.add(function(tinymce, ed) {
} else if (isFirstOrLastLi()) {
// Last LI in list then temove LI and add text block after list
dom.insertAfter(newBlock, containerBlock);
+ renderBlockOnIE(newBlock);
} else {
// Middle LI in list the split the list and insert a text block in the middle
// Extract after fragment and insert it after the current block
@@ -18218,7 +18637,7 @@ tinymce.onAddEditor.add(function(tinymce, ed) {
if (container && container.nodeType == 3 && offset >= container.nodeValue.length) {
// Insert extra BR element at the end block elements
if (!tinymce.isIE && !hasRightSideBr()) {
- brElm = dom.create('br')
+ brElm = dom.create('br');
rng.insertNode(brElm);
rng.setStartAfter(brElm);
rng.setEndAfter(brElm);
@@ -18273,6 +18692,22 @@ tinymce.onAddEditor.add(function(tinymce, ed) {
return parent !== root ? editableRoot : root;
};
+ // Adds a BR at the end of blocks that only contains an IMG or INPUT since these might be floated and then they won't expand the block
+ function addBrToBlockIfNeeded(block) {
+ var lastChild;
+
+ // IE will render the blocks correctly other browsers needs a BR
+ if (!tinymce.isIE) {
+ block.normalize(); // Remove empty text nodes that got left behind by the extract
+
+ // Check if the block is empty or contains a floated last child
+ lastChild = block.lastChild;
+ if (!lastChild || (/^(left|right)$/gi.test(dom.getStyle(lastChild, 'float', true)))) {
+ dom.add(block, 'br');
+ }
+ }
+ };
+
// Delete any selected contents
if (!rng.collapsed) {
editor.execCommand('Delete');
@@ -18287,15 +18722,20 @@ tinymce.onAddEditor.add(function(tinymce, ed) {
// Setup range items and newBlockName
container = rng.startContainer;
offset = rng.startOffset;
- newBlockName = settings.forced_root_block;
+ newBlockName = (settings.force_p_newlines ? 'p' : '') || settings.forced_root_block;
newBlockName = newBlockName ? newBlockName.toUpperCase() : '';
documentMode = dom.doc.documentMode;
+ shiftKey = evt.shiftKey;
// Resolve node index
if (container.nodeType == 1 && container.hasChildNodes()) {
isAfterLastNodeInContainer = offset > container.childNodes.length - 1;
container = container.childNodes[Math.min(offset, container.childNodes.length - 1)] || container;
- offset = 0;
+ if (isAfterLastNodeInContainer && container.nodeType == 3) {
+ offset = container.nodeValue.length;
+ } else {
+ offset = 0;
+ }
}
// Get editable root node normaly the body element but sometimes a div or span
@@ -18310,7 +18750,7 @@ tinymce.onAddEditor.add(function(tinymce, ed) {
// If editable root isn't block nor the root of the editor
if (!dom.isBlock(editableRoot) && editableRoot != dom.getRoot()) {
- if (!newBlockName || evt.shiftKey) {
+ if (!newBlockName || shiftKey) {
insertBr();
}
@@ -18320,7 +18760,7 @@ tinymce.onAddEditor.add(function(tinymce, ed) {
// Wrap the current node and it's sibling in a default block if it's needed.
// for example this <td>text|<b>text2</b></td> will become this <td><p>text|<b>text2</p></b></td>
// This won't happen if root blocks are disabled or the shiftKey is pressed
- if ((newBlockName && !evt.shiftKey) || (!newBlockName && evt.shiftKey)) {
+ if ((newBlockName && !shiftKey) || (!newBlockName && shiftKey)) {
container = wrapSelfAndSiblingsInDefaultBlock(container, offset);
}
@@ -18332,26 +18772,34 @@ tinymce.onAddEditor.add(function(tinymce, ed) {
parentBlockName = parentBlock ? parentBlock.nodeName.toUpperCase() : ''; // IE < 9 & HTML5
containerBlockName = containerBlock ? containerBlock.nodeName.toUpperCase() : ''; // IE < 9 & HTML5
- // Handle enter inside an empty list item
- if (parentBlockName == 'LI' && dom.isEmpty(parentBlock)) {
- // Let the list plugin or browser handle nested lists for now
- if (/^(UL|OL|LI)$/.test(containerBlock.parentNode.nodeName)) {
- return false;
+ // Handle enter in LI
+ if (parentBlockName == 'LI') {
+ if (!newBlockName && shiftKey) {
+ insertBr();
+ return;
}
- handleEmptyListItem();
- return;
+ // Handle enter inside an empty list item
+ if (dom.isEmpty(parentBlock)) {
+ // Let the list plugin or browser handle nested lists for now
+ if (/^(UL|OL|LI)$/.test(containerBlock.parentNode.nodeName)) {
+ return false;
+ }
+
+ handleEmptyListItem();
+ return;
+ }
}
// Don't split PRE tags but insert a BR instead easier when writing code samples etc
if (parentBlockName == 'PRE' && settings.br_in_pre !== false) {
- if (!evt.shiftKey) {
+ if (!shiftKey) {
insertBr();
return;
}
} else {
// If no root block is configured then insert a BR by default or if the shiftKey is pressed
- if ((!newBlockName && !evt.shiftKey && parentBlockName != 'LI') || (newBlockName && evt.shiftKey)) {
+ if ((!newBlockName && !shiftKey && parentBlockName != 'LI') || (newBlockName && shiftKey)) {
insertBr();
return;
}
@@ -18376,9 +18824,12 @@ tinymce.onAddEditor.add(function(tinymce, ed) {
} else {
dom.insertAfter(newBlock, parentBlock);
}
+
+ moveToCaretPosition(newBlock);
} else if (isCaretAtStartOrEndOfBlock(true)) {
// Insert new block before
newBlock = parentBlock.parentNode.insertBefore(createNewBlock(), parentBlock);
+ renderBlockOnIE(newBlock);
} else {
// Extract after fragment and insert it after the current block
tmpRng = rng.cloneRange();
@@ -18387,10 +18838,12 @@ tinymce.onAddEditor.add(function(tinymce, ed) {
trimLeadingLineBreaks(fragment);
newBlock = fragment.firstChild;
dom.insertAfter(fragment, parentBlock);
+ trimInlineElementsOnLeftSideOfBlock(newBlock);
+ addBrToBlockIfNeeded(parentBlock);
+ moveToCaretPosition(newBlock);
}
dom.setAttrib(newBlock, 'id', ''); // Remove ID since it needs to be document unique
- moveToCaretPosition(newBlock);
undoManager.add();
}
diff --git a/program/lib/Auth/SASL.php b/program/lib/Auth/SASL.php
index b2be93cc8..5bd6eb096 100644
--- a/program/lib/Auth/SASL.php
+++ b/program/lib/Auth/SASL.php
@@ -1,41 +1,41 @@
<?php
-// +-----------------------------------------------------------------------+
-// | Copyright (c) 2002-2003 Richard Heyes |
-// | All rights reserved. |
-// | |
-// | Redistribution and use in source and binary forms, with or without |
-// | modification, are permitted provided that the following conditions |
-// | are met: |
-// | |
-// | o Redistributions of source code must retain the above copyright |
-// | notice, this list of conditions and the following disclaimer. |
-// | o Redistributions in binary form must reproduce the above copyright |
-// | notice, this list of conditions and the following disclaimer in the |
-// | documentation and/or other materials provided with the distribution.|
-// | o The names of the authors may not be used to endorse or promote |
-// | products derived from this software without specific prior written |
-// | permission. |
-// | |
-// | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
-// | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
-// | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
-// | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
-// | OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
-// | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
-// | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
-// | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
-// | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
-// | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
-// | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
-// | |
-// +-----------------------------------------------------------------------+
-// | Author: Richard Heyes <richard@php.net> |
-// +-----------------------------------------------------------------------+
-//
+// +-----------------------------------------------------------------------+
+// | Copyright (c) 2002-2003 Richard Heyes |
+// | All rights reserved. |
+// | |
+// | Redistribution and use in source and binary forms, with or without |
+// | modification, are permitted provided that the following conditions |
+// | are met: |
+// | |
+// | o Redistributions of source code must retain the above copyright |
+// | notice, this list of conditions and the following disclaimer. |
+// | o Redistributions in binary form must reproduce the above copyright |
+// | notice, this list of conditions and the following disclaimer in the |
+// | documentation and/or other materials provided with the distribution.|
+// | o The names of the authors may not be used to endorse or promote |
+// | products derived from this software without specific prior written |
+// | permission. |
+// | |
+// | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
+// | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
+// | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
+// | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
+// | OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
+// | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
+// | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
+// | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
+// | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
+// | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
+// | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
+// | |
+// +-----------------------------------------------------------------------+
+// | Author: Richard Heyes <richard@php.net> |
+// +-----------------------------------------------------------------------+
+//
// $Id$
/**
-* Client implementation of various SASL mechanisms
+* Client implementation of various SASL mechanisms
*
* @author Richard Heyes <richard@php.net>
* @access public
@@ -55,6 +55,7 @@ class Auth_SASL
* Plain
* CramMD5
* DigestMD5
+ * SCRAM-* (any mechanism of the SCRAM family)
* Types are not case sensitive
*/
function &factory($type)
@@ -81,22 +82,42 @@ class Auth_SASL
break;
case 'crammd5':
+ // $msg = 'Deprecated mechanism name. Use IANA-registered name: CRAM-MD5.';
+ // trigger_error($msg, E_USER_DEPRECATED);
+ case 'cram-md5':
$filename = 'Auth/SASL/CramMD5.php';
$classname = 'Auth_SASL_CramMD5';
break;
case 'digestmd5':
+ // $msg = 'Deprecated mechanism name. Use IANA-registered name: DIGEST-MD5.';
+ // trigger_error($msg, E_USER_DEPRECATED);
+ case 'digest-md5':
+ // $msg = 'DIGEST-MD5 is a deprecated SASL mechanism as per RFC-6331. Using it could be a security risk.';
+ // trigger_error($msg, E_USER_NOTICE);
$filename = 'Auth/SASL/DigestMD5.php';
$classname = 'Auth_SASL_DigestMD5';
break;
default:
+ $scram = '/^SCRAM-(.{1,9})$/i';
+ if (preg_match($scram, $type, $matches))
+ {
+ $hash = $matches[1];
+ $filename = dirname(__FILE__) .'/SASL/SCRAM.php';
+ $classname = 'Auth_SASL_SCRAM';
+ $parameter = $hash;
+ break;
+ }
return PEAR::raiseError('Invalid SASL mechanism type');
break;
}
require_once($filename);
- $obj = new $classname();
+ if (isset($parameter))
+ $obj = new $classname($parameter);
+ else
+ $obj = new $classname();
return $obj;
}
}
diff --git a/program/lib/Auth/SASL/Common.php b/program/lib/Auth/SASL/Common.php
index e7a18e2de..d8c5610d1 100644
--- a/program/lib/Auth/SASL/Common.php
+++ b/program/lib/Auth/SASL/Common.php
@@ -1,37 +1,37 @@
<?php
-// +-----------------------------------------------------------------------+
-// | Copyright (c) 2002-2003 Richard Heyes |
-// | All rights reserved. |
-// | |
-// | Redistribution and use in source and binary forms, with or without |
-// | modification, are permitted provided that the following conditions |
-// | are met: |
-// | |
-// | o Redistributions of source code must retain the above copyright |
-// | notice, this list of conditions and the following disclaimer. |
-// | o Redistributions in binary form must reproduce the above copyright |
-// | notice, this list of conditions and the following disclaimer in the |
-// | documentation and/or other materials provided with the distribution.|
-// | o The names of the authors may not be used to endorse or promote |
-// | products derived from this software without specific prior written |
-// | permission. |
-// | |
-// | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
-// | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
-// | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
-// | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
-// | OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
-// | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
-// | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
-// | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
-// | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
-// | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
-// | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
-// | |
-// +-----------------------------------------------------------------------+
-// | Author: Richard Heyes <richard@php.net> |
-// +-----------------------------------------------------------------------+
-//
+// +-----------------------------------------------------------------------+
+// | Copyright (c) 2002-2003 Richard Heyes |
+// | All rights reserved. |
+// | |
+// | Redistribution and use in source and binary forms, with or without |
+// | modification, are permitted provided that the following conditions |
+// | are met: |
+// | |
+// | o Redistributions of source code must retain the above copyright |
+// | notice, this list of conditions and the following disclaimer. |
+// | o Redistributions in binary form must reproduce the above copyright |
+// | notice, this list of conditions and the following disclaimer in the |
+// | documentation and/or other materials provided with the distribution.|
+// | o The names of the authors may not be used to endorse or promote |
+// | products derived from this software without specific prior written |
+// | permission. |
+// | |
+// | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
+// | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
+// | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
+// | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
+// | OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
+// | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
+// | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
+// | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
+// | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
+// | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
+// | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
+// | |
+// +-----------------------------------------------------------------------+
+// | Author: Richard Heyes <richard@php.net> |
+// +-----------------------------------------------------------------------+
+//
// $Id$
/**
@@ -49,10 +49,12 @@ class Auth_SASL_Common
* Function which implements HMAC MD5 digest
*
* @param string $key The secret key
- * @param string $data The data to protect
- * @return string The HMAC MD5 digest
+ * @param string $data The data to hash
+ * @param bool $raw_output Whether the digest is returned in binary or hexadecimal format.
+ *
+ * @return string The HMAC-MD5 digest
*/
- function _HMAC_MD5($key, $data)
+ function _HMAC_MD5($key, $data, $raw_output = FALSE)
{
if (strlen($key) > 64) {
$key = pack('H32', md5($key));
@@ -66,9 +68,38 @@ class Auth_SASL_Common
$k_opad = substr($key, 0, 64) ^ str_repeat(chr(0x5C), 64);
$inner = pack('H32', md5($k_ipad . $data));
- $digest = md5($k_opad . $inner);
+ $digest = md5($k_opad . $inner, $raw_output);
return $digest;
}
+
+ /**
+ * Function which implements HMAC-SHA-1 digest
+ *
+ * @param string $key The secret key
+ * @param string $data The data to hash
+ * @param bool $raw_output Whether the digest is returned in binary or hexadecimal format.
+ * @return string The HMAC-SHA-1 digest
+ * @author Jehan <jehan.marmottard@gmail.com>
+ * @access protected
+ */
+ protected function _HMAC_SHA1($key, $data, $raw_output = FALSE)
+ {
+ if (strlen($key) > 64) {
+ $key = sha1($key, TRUE);
+ }
+
+ if (strlen($key) < 64) {
+ $key = str_pad($key, 64, chr(0));
+ }
+
+ $k_ipad = substr($key, 0, 64) ^ str_repeat(chr(0x36), 64);
+ $k_opad = substr($key, 0, 64) ^ str_repeat(chr(0x5C), 64);
+
+ $inner = pack('H40', sha1($k_ipad . $data));
+ $digest = sha1($k_opad . $inner, $raw_output);
+
+ return $digest;
+ }
}
?>
diff --git a/program/lib/Auth/SASL/External.php b/program/lib/Auth/SASL/External.php
index 86a17cb7a..c5ae25e75 100644
--- a/program/lib/Auth/SASL/External.php
+++ b/program/lib/Auth/SASL/External.php
@@ -32,7 +32,7 @@
// | Author: Christoph Schulz <develop@kristov.de> |
// +-----------------------------------------------------------------------+
//
-// $Id: External.php 286825 2009-08-05 06:23:42Z cweiske $
+// $Id$
/**
* Implmentation of EXTERNAL SASL mechanism
diff --git a/program/lib/Auth/SASL/SCRAM.php b/program/lib/Auth/SASL/SCRAM.php
new file mode 100644
index 000000000..cbca500e4
--- /dev/null
+++ b/program/lib/Auth/SASL/SCRAM.php
@@ -0,0 +1,306 @@
+<?php
+// +-----------------------------------------------------------------------+
+// | Copyright (c) 2011 Jehan |
+// | All rights reserved. |
+// | |
+// | Redistribution and use in source and binary forms, with or without |
+// | modification, are permitted provided that the following conditions |
+// | are met: |
+// | |
+// | o Redistributions of source code must retain the above copyright |
+// | notice, this list of conditions and the following disclaimer. |
+// | o Redistributions in binary form must reproduce the above copyright |
+// | notice, this list of conditions and the following disclaimer in the |
+// | documentation and/or other materials provided with the distribution.|
+// | o The names of the authors may not be used to endorse or promote |
+// | products derived from this software without specific prior written |
+// | permission. |
+// | |
+// | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
+// | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
+// | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
+// | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
+// | OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
+// | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
+// | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
+// | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
+// | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
+// | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
+// | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
+// | |
+// +-----------------------------------------------------------------------+
+// | Author: Jehan <jehan.marmottard@gmail.com |
+// +-----------------------------------------------------------------------+
+//
+// $Id$
+
+/**
+* Implementation of SCRAM-* SASL mechanisms.
+* SCRAM mechanisms have 3 main steps (initial response, response to the server challenge, then server signature
+* verification) which keep state-awareness. Therefore a single class instanciation must be done and reused for the whole
+* authentication process.
+*
+* @author Jehan <jehan.marmottard@gmail.com>
+* @access public
+* @version 1.0
+* @package Auth_SASL
+*/
+
+require_once('Auth/SASL/Common.php');
+
+class Auth_SASL_SCRAM extends Auth_SASL_Common
+{
+ /**
+ * Construct a SCRAM-H client where 'H' is a cryptographic hash function.
+ *
+ * @param string $hash The name cryptographic hash function 'H' as registered by IANA in the "Hash Function Textual
+ * Names" registry.
+ * @link http://www.iana.org/assignments/hash-function-text-names/hash-function-text-names.xml "Hash Function Textual
+ * Names"
+ * format of core PHP hash function.
+ * @access public
+ */
+ function __construct($hash)
+ {
+ // Though I could be strict, I will actually also accept the naming used in the PHP core hash framework.
+ // For instance "sha1" is accepted, while the registered hash name should be "SHA-1".
+ $hash = strtolower($hash);
+ $hashes = array('md2' => 'md2',
+ 'md5' => 'md5',
+ 'sha-1' => 'sha1',
+ 'sha1' => 'sha1',
+ 'sha-224' > 'sha224',
+ 'sha224' > 'sha224',
+ 'sha-256' => 'sha256',
+ 'sha256' => 'sha256',
+ 'sha-384' => 'sha384',
+ 'sha384' => 'sha384',
+ 'sha-512' => 'sha512',
+ 'sha512' => 'sha512');
+ if (function_exists('hash_hmac') && isset($hashes[$hash]))
+ {
+ $this->hash = create_function('$data', 'return hash("' . $hashes[$hash] . '", $data, TRUE);');
+ $this->hmac = create_function('$key,$str,$raw', 'return hash_hmac("' . $hashes[$hash] . '", $str, $key, $raw);');
+ }
+ elseif ($hash == 'md5')
+ {
+ $this->hash = create_function('$data', 'return md5($data, true);');
+ $this->hmac = array($this, '_HMAC_MD5');
+ }
+ elseif (in_array($hash, array('sha1', 'sha-1')))
+ {
+ $this->hash = create_function('$data', 'return sha1($data, true);');
+ $this->hmac = array($this, '_HMAC_SHA1');
+ }
+ else
+ return PEAR::raiseError('Invalid SASL mechanism type');
+ }
+
+ /**
+ * Provides the (main) client response for SCRAM-H.
+ *
+ * @param string $authcid Authentication id (username)
+ * @param string $pass Password
+ * @param string $challenge The challenge sent by the server.
+ * If the challenge is NULL or an empty string, the result will be the "initial response".
+ * @param string $authzid Authorization id (username to proxy as)
+ * @return string|false The response (binary, NOT base64 encoded)
+ * @access public
+ */
+ public function getResponse($authcid, $pass, $challenge = NULL, $authzid = NULL)
+ {
+ $authcid = $this->_formatName($authcid);
+ if (empty($authcid))
+ {
+ return false;
+ }
+ if (!empty($authzid))
+ {
+ $authzid = $this->_formatName($authzid);
+ if (empty($authzid))
+ {
+ return false;
+ }
+ }
+
+ if (empty($challenge))
+ {
+ return $this->_generateInitialResponse($authcid, $authzid);
+ }
+ else
+ {
+ return $this->_generateResponse($challenge, $pass);
+ }
+
+ }
+
+ /**
+ * Prepare a name for inclusion in a SCRAM response.
+ *
+ * @param string $username a name to be prepared.
+ * @return string the reformated name.
+ * @access private
+ */
+ private function _formatName($username)
+ {
+ // TODO: prepare through the SASLprep profile of the stringprep algorithm.
+ // See RFC-4013.
+
+ $username = str_replace('=', '=3D', $username);
+ $username = str_replace(',', '=2C', $username);
+ return $username;
+ }
+
+ /**
+ * Generate the initial response which can be either sent directly in the first message or as a response to an empty
+ * server challenge.
+ *
+ * @param string $authcid Prepared authentication identity.
+ * @param string $authzid Prepared authorization identity.
+ * @return string The SCRAM response to send.
+ * @access private
+ */
+ private function _generateInitialResponse($authcid, $authzid)
+ {
+ $init_rep = '';
+ $gs2_cbind_flag = 'n,'; // TODO: support channel binding.
+ $this->gs2_header = $gs2_cbind_flag . (!empty($authzid)? 'a=' . $authzid : '') . ',';
+
+ // I must generate a client nonce and "save" it for later comparison on second response.
+ $this->cnonce = $this->_getCnonce();
+ // XXX: in the future, when mandatory and/or optional extensions are defined in any updated RFC,
+ // this message can be updated.
+ $this->first_message_bare = 'n=' . $authcid . ',r=' . $this->cnonce;
+ return $this->gs2_header . $this->first_message_bare;
+ }
+
+ /**
+ * Parses and verifies a non-empty SCRAM challenge.
+ *
+ * @param string $challenge The SCRAM challenge
+ * @return string|false The response to send; false in case of wrong challenge or if an initial response has not
+ * been generated first.
+ * @access private
+ */
+ private function _generateResponse($challenge, $password)
+ {
+ // XXX: as I don't support mandatory extension, I would fail on them.
+ // And I simply ignore any optional extension.
+ $server_message_regexp = "#^r=([\x21-\x2B\x2D-\x7E]+),s=((?:[A-Za-z0-9/+]{4})*(?:[A-Za-z0-9]{3}=|[A-Xa-z0-9]{2}==)?),i=([0-9]*)(,[A-Za-z]=[^,])*$#";
+ if (!isset($this->cnonce, $this->gs2_header)
+ || !preg_match($server_message_regexp, $challenge, $matches))
+ {
+ return false;
+ }
+ $nonce = $matches[1];
+ $salt = base64_decode($matches[2]);
+ if (!$salt)
+ {
+ // Invalid Base64.
+ return false;
+ }
+ $i = intval($matches[3]);
+
+ $cnonce = substr($nonce, 0, strlen($this->cnonce));
+ if ($cnonce <> $this->cnonce)
+ {
+ // Invalid challenge! Are we under attack?
+ return false;
+ }
+
+ $channel_binding = 'c=' . base64_encode($this->gs2_header); // TODO: support channel binding.
+ $final_message = $channel_binding . ',r=' . $nonce; // XXX: no extension.
+
+ // TODO: $password = $this->normalize($password); // SASLprep profile of stringprep.
+ $saltedPassword = $this->hi($password, $salt, $i);
+ $this->saltedPassword = $saltedPassword;
+ $clientKey = call_user_func($this->hmac, $saltedPassword, "Client Key", TRUE);
+ $storedKey = call_user_func($this->hash, $clientKey, TRUE);
+ $authMessage = $this->first_message_bare . ',' . $challenge . ',' . $final_message;
+ $this->authMessage = $authMessage;
+ $clientSignature = call_user_func($this->hmac, $storedKey, $authMessage, TRUE);
+ $clientProof = $clientKey ^ $clientSignature;
+ $proof = ',p=' . base64_encode($clientProof);
+
+ return $final_message . $proof;
+ }
+
+ /**
+ * SCRAM has also a server verification step. On a successful outcome, it will send additional data which must
+ * absolutely be checked against this function. If this fails, the entity which we are communicating with is probably
+ * not the server as it has not access to your ServerKey.
+ *
+ * @param string $data The additional data sent along a successful outcome.
+ * @return bool Whether the server has been authenticated.
+ * If false, the client must close the connection and consider to be under a MITM attack.
+ * @access public
+ */
+ public function processOutcome($data)
+ {
+ $verifier_regexp = '#^v=((?:[A-Za-z0-9/+]{4})*(?:[A-Za-z0-9]{3}=|[A-Xa-z0-9]{2}==)?)$#';
+ if (!isset($this->saltedPassword, $this->authMessage)
+ || !preg_match($verifier_regexp, $data, $matches))
+ {
+ // This cannot be an outcome, you never sent the challenge's response.
+ return false;
+ }
+
+ $verifier = $matches[1];
+ $proposed_serverSignature = base64_decode($verifier);
+ $serverKey = call_user_func($this->hmac, $this->saltedPassword, "Server Key", true);
+ $serverSignature = call_user_func($this->hmac, $serverKey, $this->authMessage, TRUE);
+ return ($proposed_serverSignature === $serverSignature);
+ }
+
+ /**
+ * Hi() call, which is essentially PBKDF2 (RFC-2898) with HMAC-H() as the pseudorandom function.
+ *
+ * @param string $str The string to hash.
+ * @param string $hash The hash value.
+ * @param int $i The iteration count.
+ * @access private
+ */
+ private function hi($str, $salt, $i)
+ {
+ $int1 = "\0\0\0\1";
+ $ui = call_user_func($this->hmac, $str, $salt . $int1, true);
+ $result = $ui;
+ for ($k = 1; $k < $i; $k++)
+ {
+ $ui = call_user_func($this->hmac, $str, $ui, true);
+ $result = $result ^ $ui;
+ }
+ return $result;
+ }
+
+
+ /**
+ * Creates the client nonce for the response
+ *
+ * @return string The cnonce value
+ * @access private
+ * @author Richard Heyes <richard@php.net>
+ */
+ private function _getCnonce()
+ {
+ // TODO: I reused the nonce function from the DigestMD5 class.
+ // I should probably make this a protected function in Common.
+ if (@file_exists('/dev/urandom') && $fd = @fopen('/dev/urandom', 'r')) {
+ return base64_encode(fread($fd, 32));
+
+ } elseif (@file_exists('/dev/random') && $fd = @fopen('/dev/random', 'r')) {
+ return base64_encode(fread($fd, 32));
+
+ } else {
+ $str = '';
+ for ($i=0; $i<32; $i++) {
+ $str .= chr(mt_rand(0, 255));
+ }
+
+ return base64_encode($str);
+ }
+ }
+
+}
+
+?>
diff --git a/program/lib/Net/SMTP.php b/program/lib/Net/SMTP.php
index 4e04f9191..2c1ef5c55 100644
--- a/program/lib/Net/SMTP.php
+++ b/program/lib/Net/SMTP.php
@@ -17,8 +17,6 @@
// | Jon Parise <jon@php.net> |
// | Damian Alejandro Fernandez Sosa <damlists@cnba.uba.ar> |
// +----------------------------------------------------------------------+
-//
-// $Id$
require_once 'PEAR.php';
require_once 'Net/Socket.php';
@@ -189,7 +187,7 @@ class Net_SMTP
/* Include the Auth_SASL package. If the package is available, we
* enable the authentication methods that depend upon it. */
- if ((@include_once 'Auth/SASL.php') === true) {
+ if (@include_once 'Auth/SASL.php') {
$this->setAuthMethod('CRAM-MD5', array($this, '_authCram_MD5'));
$this->setAuthMethod('DIGEST-MD5', array($this, '_authDigest_MD5'));
}
@@ -727,7 +725,7 @@ class Net_SMTP
}
$challenge = base64_decode($this->_arguments[0]);
- $digest = &Auth_SASL::factory('digestmd5');
+ $digest = &Auth_SASL::factory('digest-md5');
$auth_str = base64_encode($digest->getResponse($uid, $pwd, $challenge,
$this->host, "smtp",
$authz));
@@ -779,7 +777,7 @@ class Net_SMTP
}
$challenge = base64_decode($this->_arguments[0]);
- $cram = &Auth_SASL::factory('crammd5');
+ $cram = &Auth_SASL::factory('cram-md5');
$auth_str = base64_encode($cram->getResponse($uid, $pwd, $challenge));
if (PEAR::isError($error = $this->_put($auth_str))) {
@@ -1004,14 +1002,12 @@ class Net_SMTP
*/
function quotedata(&$data)
{
- /* Change Unix (\n) and Mac (\r) linefeeds into
- * Internet-standard CRLF (\r\n) linefeeds. */
- $data = preg_replace(array('/(?<!\r)\n/','/\r(?!\n)/'), "\r\n", $data);
-
/* Because a single leading period (.) signifies an end to the
- * data, legitimate leading periods need to be "doubled"
- * (e.g. '..'). */
- $data = str_replace("\n.", "\n..", $data);
+ * data, legitimate leading periods need to be "doubled" ('..'). */
+ $data = preg_replace('/^\./m', '..', $data);
+
+ /* Change Unix (\n) and Mac (\r) linefeeds into CRLF's (\r\n). */
+ $data = preg_replace('/(?:\r\n|\n|\r(?!\n))/', "\r\n", $data);
}
/**
diff --git a/program/localization/ar_SA/labels.inc b/program/localization/ar_SA/labels.inc
index 4e69520e3..7d5235be7 100644
--- a/program/localization/ar_SA/labels.inc
+++ b/program/localization/ar_SA/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: Thomas |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -39,7 +38,6 @@ $labels['followupto'] = 'Mail-Followup-To';
$labels['date'] = 'التاريخ';
$labels['size'] = 'الحجم';
$labels['priority'] = 'الأولوية';
-$labels['organization'] = 'المنظمة';
$labels['readstatus'] = 'حالة القراءة';
$labels['mailboxlist'] = 'مجلدات';
$labels['folders'] = 'مجلدات';
@@ -93,7 +91,6 @@ $labels['longnov'] = 'نوÙمبر';
$labels['longdec'] = 'ديسمبر';
$labels['today'] = 'اليوم';
$labels['checkmail'] = 'التحقق من وجود رسائل جديدة';
-$labels['compose'] = 'إنشاء رسالة';
$labels['writenewmessage'] = 'إنشاء رسالة جديدة';
$labels['replytomessage'] = 'الرد على الرسالة';
$labels['replytoallmessage'] = 'الرد على المرسل وجميع مستقبلي الرسالة';
@@ -161,8 +158,6 @@ $labels['msgtext'] = 'كامل الرسالة';
$labels['openinextwin'] = 'اÙتح ÙÙŠ ناÙذة جديدة';
$labels['emlsave'] = 'تنزيل (.eml)';
$labels['editasnew'] = 'تعديل كجديد';
-$labels['savemessage'] = 'Ø­Ùظ هذه المسودة';
-$labels['sendmessage'] = 'إرسال الرسالة الآن';
$labels['addattachment'] = 'إرÙاق ملÙ';
$labels['charset'] = 'مجموعة المحارÙ';
$labels['editortype'] = 'نوع المÙحرّر';
@@ -197,10 +192,8 @@ $labels['addcc'] = 'أض٠CC';
$labels['addbcc'] = 'أض٠BCC';
$labels['addreplyto'] = 'أضي٠Reply-To';
$labels['addfollowupto'] = 'إضاÙØ© Mail-Followup-To';
-$labels['mdnrequest'] = 'طلب المرسل إعلامه عند قراءتك لرسالته. هل تود إعلام المرسل؟';
$labels['receiptread'] = 'إيصال الاستلام )بالقراءة)';
$labels['yourmessage'] = 'هذا إيصال بقراءة رسالتك';
-$labels['receiptnote'] = 'ملاحظة: ÙŠÙعلمك هذا الإيصال بأن رسالتك قد ظهرت على جهاز المستقبÙÙ„. ليست هناك أية ضمانات أن المستقبل قد قرأ أو Ùهم محتويات الرسالة.';
$labels['name'] = 'اسم العرض';
$labels['firstname'] = 'الإسم الأول';
$labels['surname'] = 'الإسم الأخير';
@@ -285,7 +278,6 @@ $labels['importcontacts'] = 'استورد المراسلين';
$labels['importfromfile'] = 'استورد من ملÙ:';
$labels['importtarget'] = 'أض٠المراسلين الجدد إلى دÙتر العناوين:';
$labels['importreplace'] = 'استبدل دÙتر العناوين بأكمله';
-$labels['importtext'] = 'يمكنك رÙع قائمة المراسلين من دÙتر عناوين موجود.<br/>ندعم حالياً استيراد العناوين من نسق بيانات <a href="http://en.wikipedia.org/wiki/VCard">vCard</a>.';
$labels['done'] = 'تم';
$labels['settingsfor'] = 'إعدادات';
$labels['about'] = 'نبذة';
@@ -323,13 +315,13 @@ $labels['mailboxview'] = 'مظهر صندوق البريد';
$labels['mdnrequests'] = 'عند طلب إشعار استلام';
$labels['askuser'] = 'اسأل المستخدم';
$labels['autosend'] = 'أرسلها تلقائياً';
-$labels['autosendknown'] = 'أرسل إشعار استلام إلى جهات اتصالي، وإلا اسألني';
-$labels['autosendknownignore'] = 'أرسل إشعار استلام إلى جهات اتصالي، وإلا تجاهل الأمر';
+$labels['autosendknown'] = 'أرسل إشعار استلام إلى جهات اتصالي، وإلااسألني';
+$labels['autosendknownignore'] = 'أرسل إشعار استلام إلى جهات اتصالي، وإلاتجاهل الأمر';
$labels['ignore'] = 'تجاهلها';
$labels['readwhendeleted'] = 'تحديد الرسالة كمقروءة عند حذÙها';
-$labels['flagfordeletion'] = 'وضع علامة على الرسالة لحذÙها بدلاً من حذÙها';
+$labels['flagfordeletion'] = 'وضع علامة على الرسالة لحذÙها بدلاً منحذÙها';
$labels['skipdeleted'] = 'لا تظهر الرسائل المحذوÙØ©';
-$labels['deletealways'] = 'حذ٠الرسائل مباشرة، إن تعذر نقلها إلى المهملات';
+$labels['deletealways'] = 'حذ٠الرسائل مباشرة، إن تعذر نقلها إلىالمهملات';
$labels['showremoteimages'] = 'إظهار الصور الخارجية المدمجة';
$labels['fromknownsenders'] = 'للمرسلين المعلومين';
$labels['always'] = 'دائماً';
@@ -345,11 +337,11 @@ $labels['mimeparamfolding'] = 'أسماء الملÙات المرÙقة';
$labels['2231folding'] = 'RFC 2231 بأكملها (ثندربيرد)';
$labels['miscfolding'] = 'RFC 2047/2231 (ميكروسوÙت آوتلوك)';
$labels['2047folding'] = 'RFC 2047 بأكملها (غيرها)';
-$labels['force7bit'] = 'استخدام ترميز MIME للحرو٠ذات الثمانية بتّات';
+$labels['force7bit'] = 'استخدام ترميز MIME للحرو٠ذات الثمانيةبتّات';
$labels['advancedoptions'] = 'خيارات متقدّمة';
-$labels['focusonnewmessage'] = 'التركيز على ناÙذة المتصÙØ­ عند وجود رسالة جديدة';
-$labels['checkallfolders'] = 'التحقق من وجود رسائل جديدة ÙÙŠ جميع المجلدات';
-$labels['displaynext'] = 'إظهار الرسالة التالية بعد حذÙ/نقل الرسالة الحالية';
+$labels['focusonnewmessage'] = 'التركيز على ناÙذة المتصÙØ­ عند وجود رسالةجديدة';
+$labels['checkallfolders'] = 'التحقق من وجود رسائل جديدة ÙÙŠ جميعالمجلدات';
+$labels['displaynext'] = 'إظهار الرسالة التالية بعد حذÙ/نقلالرسالة الحالية';
$labels['mainoptions'] = 'الخيارات الأساسية';
$labels['section'] = 'قسم';
$labels['maintenance'] = 'الصيانة';
@@ -370,9 +362,9 @@ $labels['previewpanemarkread'] = 'تحديد الرسائل المÙعاينة Ù
$labels['afternseconds'] = 'بعد $n ثواني';
$labels['reqmdn'] = 'طلب إشعار استلام دائماً';
$labels['reqdsn'] = 'طلب تنويه لحالة التوصيل دائماً';
-$labels['replysamefolder'] = 'وضع الردود ÙÙŠ المجلد الذي يحوي الرسالة المردود عليها';
-$labels['defaultaddressbook'] = 'أض٠المراسلين الجديد إلى دÙتر العناوين المحدد';
-$labels['autocompletesingle'] = 'تجاهل عنوان البريد الإلكتروني البديل ÙÙŠ التكملة التلقائية';
+$labels['replysamefolder'] = 'وضع الردود ÙÙŠ المجلد الذي يحوي الرسالةالمردود عليها';
+$labels['defaultaddressbook'] = 'أض٠المراسلين الجديد إلى دÙتر العناوينالمحدد';
+$labels['autocompletesingle'] = 'تجاهل عنوان البريد الإلكتروني البديل Ùيالتكملة التلقائية';
$labels['spellcheckbeforesend'] = 'تحقق من الإملاء قبل إرسال الرسائل';
$labels['spellcheckoptions'] = 'خيارات التدقيق الإملاءي';
$labels['spellcheckignoresyms'] = 'تجاهل الكلمات التي تحتوي رموز';
diff --git a/program/localization/ar_SA/messages.inc b/program/localization/ar_SA/messages.inc
index df1d2843e..eda96270c 100644
--- a/program/localization/ar_SA/messages.inc
+++ b/program/localization/ar_SA/messages.inc
@@ -9,16 +9,14 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: Thomas |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
$messages['loginfailed'] = 'Ùشل تسجيل الدخول';
$messages['cookiesdisabled'] = 'المتصÙØ­ الخاص بك لا يقبل الكوكيز';
-$messages['sessionerror'] = 'انتهت صلاحية الجلسة الحالية أو أنها غير صالحة';
-$messages['storageerror'] = 'Ùشل الاتصال بخادم IMAP';
+$messages['sessionerror'] = 'انتهت صلاحية الجلسة الحالية أو أنها غيرصالحة';
$messages['servererror'] = 'خطأ ÙÙŠ الخادم!';
$messages['servererrormsg'] = 'خطأ خادم: $msg';
$messages['dberror'] = 'خطأ ÙÙŠ قاعدة البيانات!';
@@ -38,14 +36,14 @@ $messages['messagesent'] = 'تم إرسال الرسالة بنجاح';
$messages['savingmessage'] = 'Ø­Ùظ الرسالة...';
$messages['messagesaved'] = 'تم Ø­Ùظ الرسالة ÙÙŠ المسودات';
$messages['successfullysaved'] = 'تم الحÙظ بنجاح';
-$messages['addedsuccessfully'] = 'تمت إضاÙØ© المراسل إلى دÙتر العناوين بنجاح';
-$messages['contactexists'] = 'هناك مراسل له Ù†Ùس هذا البريد الالكتروني موجود مسبقاً';
+$messages['addedsuccessfully'] = 'تمت إضاÙØ© المراسل إلى دÙتر العناوينبنجاح';
+$messages['contactexists'] = 'هناك مراسل له Ù†Ùس هذا البريد الالكترونيموجود مسبقاً';
$messages['contactnameexists'] = 'هناك Ù…Ùرسال له Ù†Ùس الإسم موجود مسبقاً.';
-$messages['blockedimages'] = 'لحماية خصوصيتك، تم حجب الصور الغير مضمنة (البعيدة) ÙÙŠ هذه الرسالة.';
+$messages['blockedimages'] = 'لحماية خصوصيتك، تم حجب الصور الغير مضمنة(البعيدة) ÙÙŠ هذه الرسالة.';
$messages['encryptedmessage'] = 'هذه الرسالة مشÙرة ولا يمكن عرضها. عذراً!';
$messages['nocontactsfound'] = 'لم يعثر على أي مراسل';
$messages['contactnotfound'] = 'تعذر العثور على المراسل المطلوب';
-$messages['contactsearchonly'] = 'اكتب بعض كلمات البحث للعثور على المÙراسلين';
+$messages['contactsearchonly'] = 'اكتب بعض كلمات البحث للعثور علىالمÙراسلين';
$messages['sendingfailed'] = 'Ùشل إرسال الرسالة';
$messages['senttooquickly'] = 'رجاء انتظر $sec ثوان قبل إرسال هذه الرسالة';
$messages['errorsavingsent'] = 'حدث خطأ أثناء Ø­Ùظ الرسالة المÙرسلة';
@@ -58,7 +56,7 @@ $messages['deletecontactconfirm'] = 'هل تريد حقاً حذ٠المراسÙ
$messages['deletegroupconfirm'] = 'هل تريد Ùعلاً حذ٠المجموعة المحددة؟';
$messages['deletemessagesconfirm'] = 'هل تريد حذ٠الرسائل المحددة؟';
$messages['deletefolderconfirm'] = 'هل تريد حقاً حذ٠هذا المجلد؟';
-$messages['purgefolderconfirm'] = 'هل تريد حقاً حذ٠جميع الرسائل ÙÙŠ هذا المجلد؟';
+$messages['purgefolderconfirm'] = 'هل تريد حقاً حذ٠جميع الرسائل ÙÙŠ هذاالمجلد؟';
$messages['contactdeleting'] = 'جاري حذ٠المÙراسلين...';
$messages['groupdeleting'] = 'جاري حذ٠المجموعة...';
$messages['folderdeleting'] = 'جاري حذ٠المجلد...';
@@ -69,14 +67,13 @@ $messages['formincomplete'] = 'لم يتم تعبئة بيانات الاستمØ
$messages['noemailwarning'] = 'الرجاء إدخال عنوان بريد إلكتروني صالح';
$messages['nonamewarning'] = 'الرجاء إدخال اسم';
$messages['nopagesizewarning'] = 'الرجاء إدخال حجم الصÙحة';
-$messages['nosenderwarning'] = 'رجاء اكتب عنوان البريد الالكتروني للمÙرسل';
+$messages['nosenderwarning'] = 'رجاء اكتب عنوان البريد الالكترونيللمÙرسل';
$messages['norecipientwarning'] = 'الرجاء إدخال اسم مستقبل واحد على الأقل';
-$messages['nosubjectwarning'] = 'حقل "الموضوع" Ùارغ. هل تريد كتابة موضوع للرسالة؟';
+$messages['nosubjectwarning'] = 'حقل "الموضوع" Ùارغ. هل تريد كتابة موضوعللرسالة؟';
$messages['nobodywarning'] = 'إرسال هذه الرسالة دون نص؟';
-$messages['notsentwarning'] = 'لم يتم إرسال الرسالة. هل تريد تجاهل الرسالة؟';
+$messages['notsentwarning'] = 'لم يتم إرسال الرسالة. هل تريد تجاهلالرسالة؟';
$messages['noldapserver'] = 'الرجاء اختيار خادم ldap للبحث Ùيه';
-$messages['nosearchname'] = 'الرجاء إدخال اسم مراسل أو عنوان بريد إلكتروني';
-$messages['notuploadedwarning'] = 'لم يتم رÙع جميع المرÙقات بعد. رجاءً الانتظار أو إلغاء عملية الرÙع.';
+$messages['nosearchname'] = 'الرجاء إدخال اسم مراسل أو عنوان بريدإلكتروني';
$messages['searchsuccessful'] = 'عثر على $nr رسائل';
$messages['contactsearchsuccessful'] = 'عÙثر على $nr Ù…Ùراسَل';
$messages['searchnomatch'] = 'لم يعثر على شيء';
@@ -92,7 +89,7 @@ $messages['deletedsuccessfully'] = 'تم الحذ٠بنجاح';
$messages['converting'] = 'إزالة التنسيق من الرسالة...';
$messages['messageopenerror'] = 'تعذرت قراءة الرسالة من الخادم';
$messages['fileuploaderror'] = 'Ùشل رÙع الملÙ';
-$messages['filesizeerror'] = 'حجم المل٠الذي تحاول رÙعه أكبر من الحجم الأقصى $size';
+$messages['filesizeerror'] = 'حجم المل٠الذي تحاول رÙعه أكبر من الحجمالأقصى $size';
$messages['copysuccess'] = 'تم نسخ $nr رسائل بنجاح';
$messages['copyerror'] = 'لم يمكن نسخ أية عناوين';
$messages['sourceisreadonly'] = 'لا يمكن تعديل مصدر العنوان هذا';
@@ -106,20 +103,18 @@ $messages['addingmember'] = 'جاري إضاÙØ© المÙراسلين إلى اÙ
$messages['removingmember'] = 'جاري إزالة المراسلين من المجموعة...';
$messages['receiptsent'] = 'أرسل إيصال الاستلام بنجاح';
$messages['errorsendingreceipt'] = 'تعذر إرسال إيصال الاستلام';
-$messages['nodeletelastidentity'] = 'لا يمكن حذ٠هذا السجل حيث أنه الوحيد المتبقي.';
+$messages['nodeletelastidentity'] = 'لا يمكن حذ٠هذا السجل حيث أنه الوحيدالمتبقي.';
$messages['forbiddencharacter'] = 'اسم المجلّد يحتوي حروÙاً ممنوعة';
$messages['selectimportfile'] = 'رجاء اختر ملÙاً لرÙعه';
$messages['addresswriterror'] = 'دÙتر العناوين المحدد غير قابل للكتابة';
-$messages['contactaddedtogroup'] = 'تمت إضاÙØ© المراسلين إلى هذه المجموعة بنجاح';
-$messages['contactremovedfromgroup'] = 'تمت إزالة المراسلين من هذه المجموعة بنجاح';
+$messages['contactaddedtogroup'] = 'تمت إضاÙØ© المراسلين إلى هذه المجموعةبنجاح';
+$messages['contactremovedfromgroup'] = 'تمت إزالة المراسلين من هذه المجموعةبنجاح';
$messages['importwait'] = 'جاري الاستيراد، رجاء انتظر...';
-$messages['importerror'] = 'Ùشل الاستيراد! المل٠المرÙوع ليس مل٠vCard صالح.';
-$messages['importconfirm'] = '<b>تم استيراد $inserted مراسلين بنجاح، وتجاهل $skipped موجودين مسبقاً</b>:<p><em>$names</em></p>';
+$messages['importerror'] = 'Ùشل الاستيراد! المل٠المرÙوع ليس مل٠vCardصالح.';
+$messages['importconfirm'] = '<b>تم استيراد $inserted مراسلين بنجاح، وتجاهل$skipped موجودين مسبقاً</b>:<p><em>$names</em></p>';
$messages['importconfirmskipped'] = '<b>تم تجاهل $skipped عناصر موجودة</b>';
$messages['opnotpermitted'] = 'العملية ممنوعة!';
-$messages['nofromaddress'] = 'عنوان البريد الالكتروني غير محدد ÙÙŠ الهويّة المنتقاة';
-$messages['editorwarning'] = 'يتسبب الانتقال إلى محرر النص البسيط بضياع جميع التنسيق. هل تريد الاستمرار؟';
-$messages['httpreceivedencrypterror'] = 'حدث خطأ جسيم ÙÙŠ التهيئة. رجاءً اتصال بمدير الخادم حالاً. <b>لا يمكن إرسال بريدك.</b>';
+$messages['nofromaddress'] = 'عنوان البريد الالكتروني غير محدد Ùيالهويّة المنتقاة';
$messages['smtpconnerror'] = 'خطأ SMTP ($code): تعذر الاتصال بالخادم';
$messages['smtpautherror'] = 'خطأ SMTP ($code): تعذر التحقق من هويتك';
$messages['smtpfromerror'] = 'خطأ SMTP ($code): تعذر تحديد المرسل "$from" ($msg)';
@@ -145,14 +140,14 @@ $messages['messagedeleted'] = 'تم حذ٠الرسائل بنجاح';
$messages['messagemoved'] = 'تم نقل الرسائل بنجاح';
$messages['messagecopied'] = 'تم نسخ الرسائل بنجاح';
$messages['messagemarked'] = 'تم تحديد الرسائل بنجاح';
-$messages['autocompletechars'] = 'إكتب $min أحر٠على الأقل للحصول على التكملة التلقائية';
-$messages['autocompletemore'] = 'هناك المزيد من النتائج المطابقة. رجاء اكتب كلمات بحث أكثر.';
+$messages['autocompletechars'] = 'إكتب $min أحر٠على الأقل للحصول على التكملةالتلقائية';
+$messages['autocompletemore'] = 'هناك المزيد من النتائج المطابقة. رجاءاكتب كلمات بحث أكثر.';
$messages['namecannotbeempty'] = 'لا يمكن ترك الإسم Ùارغاً';
$messages['nametoolong'] = 'الإسم طويل جداً';
$messages['folderupdated'] = 'تم تحديث المجلد بنجاح';
$messages['foldercreated'] = 'تم إنشاء المجلد بنجاح';
$messages['invalidimageformat'] = 'ليست صيغة صورة صحيحة';
$messages['mispellingsfound'] = 'عÙثر على أخطاء إملائية ÙÙŠ الرسالة';
-$messages['parentnotwritable'] = 'تعذر إنشاء/نقل المجلد إلى المجلد المحدد. ليست لديك الصلاحية.';
+$messages['parentnotwritable'] = 'تعذر إنشاء/نقل المجلد إلى المجلد المحدد.ليست لديك الصلاحية.';
$messages['messagetoobig'] = 'جزء الرسالة أكبر بكثير مما يمكن معالجته.';
diff --git a/program/localization/bs_BA/messages.inc b/program/localization/bs_BA/messages.inc
index 9ed06a7d5..3c5340654 100644
--- a/program/localization/bs_BA/messages.inc
+++ b/program/localization/bs_BA/messages.inc
@@ -11,7 +11,6 @@
+-----------------------------------------------------------------------+
| Author: Kenan Dervišević <kenan3008@gmail.com> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
@@ -23,6 +22,7 @@ $messages['storageerror'] = 'Neuspješna konekcija na IMAP server';
$messages['servererror'] = 'Serverska greška!';
$messages['servererrormsg'] = 'Serverska greška: $msg';
$messages['dberror'] = 'Greška u bazi podataka!';
+$messages['requesttimedout'] = 'Zahtjev je istekao';
$messages['errorreadonly'] = 'Nije moguće izvrÅ¡iti operaciju. Folder je samo za Äitanje.';
$messages['errornoperm'] = 'Nije moguće izvršiti operaciju. Pristup je odbijen.';
$messages['invalidrequest'] = 'Neispravan zahtjev! Podaci nisu saÄuvani.';
diff --git a/program/localization/ca_ES/labels.inc b/program/localization/ca_ES/labels.inc
index f0f23f732..908922ace 100644
--- a/program/localization/ca_ES/labels.inc
+++ b/program/localization/ca_ES/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: Jordi Sanfeliu <jordi@fibranet.cat> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -21,10 +20,10 @@ $labels['password'] = 'Contrasenya';
$labels['server'] = 'Servidor';
$labels['login'] = 'Entra';
$labels['logout'] = 'Tanca sessió';
-$labels['mail'] = 'E-Mail';
+$labels['mail'] = 'Correu';
$labels['settings'] = 'Configuració';
$labels['addressbook'] = 'Contactes';
-$labels['inbox'] = 'Entrada';
+$labels['inbox'] = 'Safata d\'entrada';
$labels['drafts'] = 'Esborranys';
$labels['sent'] = 'Enviats';
$labels['trash'] = 'Paperera';
@@ -32,34 +31,36 @@ $labels['junk'] = 'Correu brossa';
$labels['subject'] = 'Assumpte';
$labels['from'] = 'Remitent';
$labels['to'] = 'Destinatari';
-$labels['cc'] = 'CC';
-$labels['bcc'] = 'BCC';
+$labels['cc'] = 'Cc';
+$labels['bcc'] = 'Bcc';
$labels['replyto'] = 'Respon a';
-$labels['followupto'] = 'Seguiment-Per';
+$labels['followupto'] = 'Seguiment-a';
$labels['date'] = 'Data';
-$labels['size'] = 'Grandària';
+$labels['size'] = 'Mida';
$labels['priority'] = 'Prioritat';
$labels['organization'] = 'Organització';
$labels['readstatus'] = 'Estat de lectura';
+$labels['listoptions'] = 'Llista d\'opcions...';
$labels['mailboxlist'] = 'Carpetes';
$labels['folders'] = 'Carpetes';
$labels['messagesfromto'] = 'Missatges des de $from a $to de $count';
$labels['threadsfromto'] = 'Fils $from a $to de $count';
$labels['messagenrof'] = 'Missatge $nr de $count';
+$labels['fromtoshort'] = '$from - $to de $count';
$labels['copy'] = 'Copia';
$labels['move'] = 'Mou';
-$labels['moveto'] = 'mou a...';
-$labels['download'] = 'descarrega';
+$labels['moveto'] = 'Mou a...';
+$labels['download'] = 'Descarrega';
$labels['filename'] = 'Nom del fitxer';
-$labels['filesize'] = 'Grandària de fitxer';
+$labels['filesize'] = 'Mida del fitxer';
$labels['addtoaddressbook'] = 'Afegeix a contactes';
-$labels['sun'] = 'DG';
-$labels['mon'] = 'DL';
-$labels['tue'] = 'DM';
-$labels['wed'] = 'DC';
-$labels['thu'] = 'DJ';
-$labels['fri'] = 'DV';
-$labels['sat'] = 'DS';
+$labels['sun'] = 'Diu';
+$labels['mon'] = 'Dll';
+$labels['tue'] = 'Dmt';
+$labels['wed'] = 'Dmc';
+$labels['thu'] = 'Dij';
+$labels['fri'] = 'Div';
+$labels['sat'] = 'Dis';
$labels['sunday'] = 'Diumenge';
$labels['monday'] = 'Dilluns';
$labels['tuesday'] = 'Dimarts';
@@ -71,8 +72,8 @@ $labels['jan'] = 'gen';
$labels['feb'] = 'feb';
$labels['mar'] = 'mar';
$labels['apr'] = 'abr';
-$labels['may'] = 'maig';
-$labels['longmay'] = 'maig';
+$labels['may'] = 'mai';
+$labels['longmay'] = 'mai';
$labels['jun'] = 'jun';
$labels['jul'] = 'jul';
$labels['aug'] = 'ago';
@@ -92,31 +93,38 @@ $labels['longoct'] = 'octubre';
$labels['longnov'] = 'novembre';
$labels['longdec'] = 'desembre';
$labels['today'] = 'Avui';
+$labels['refresh'] = 'Actualitza';
$labels['checkmail'] = 'Recupera missatges nous';
$labels['compose'] = 'Escriu un missatge';
-$labels['writenewmessage'] = 'Crea nou missatge';
-$labels['replytomessage'] = 'Respon al missatge';
+$labels['writenewmessage'] = 'Crea un nou missatge';
+$labels['reply'] = 'Respon';
+$labels['replytomessage'] = 'Respon al remitent';
$labels['replytoallmessage'] = 'Respon al remitent i a tots els destinataris';
-$labels['replyall'] = 'Respondre a tots';
+$labels['replyall'] = 'Respon a tots';
$labels['replylist'] = 'Llista de resposta';
-$labels['forwardinline'] = 'Reenvia';
-$labels['forwardattachment'] = 'Reenvia adjunt';
-$labels['forwardmessage'] = 'Reenvia missatge';
-$labels['deletemessage'] = 'Suprimeix missatge';
-$labels['movemessagetotrash'] = 'Mou missatge a la paperera';
+$labels['forward'] = 'Reenvia';
+$labels['forwardinline'] = 'Reenvia com en línia';
+$labels['forwardattachment'] = 'Reenvia com a adjunt';
+$labels['forwardmessage'] = 'Reenvia el missatge';
+$labels['deletemessage'] = 'Suprimeix el missatge';
+$labels['movemessagetotrash'] = 'Mou el missatge a la paperera';
$labels['printmessage'] = 'Imprimeix aquest missatge';
$labels['previousmessage'] = 'Mostra el missatge anterior';
$labels['firstmessage'] = 'Mostra el primer missatge';
$labels['nextmessage'] = 'Mostra el missatge següent';
$labels['lastmessage'] = 'Mostra l\'últim missatge';
$labels['backtolist'] = 'Torna a la llista de missatges';
-$labels['viewsource'] = 'Visualitza el codi font';
+$labels['viewsource'] = 'Mostra el codi font';
+$labels['mark'] = 'Marca';
$labels['markmessages'] = 'Marca missatges';
$labels['markread'] = 'Com a llegits';
$labels['markunread'] = 'Com a no llegits';
-$labels['markflagged'] = 'Com marcat';
-$labels['markunflagged'] = 'Com no marcat';
+$labels['markflagged'] = 'Com a marcat';
+$labels['markunflagged'] = 'Com a no marcat';
$labels['moreactions'] = 'Més accions...';
+$labels['more'] = 'Més';
+$labels['back'] = 'Torna';
+$labels['options'] = 'Opcions';
$labels['select'] = 'Selecciona';
$labels['all'] = 'Tots';
$labels['none'] = 'Cap';
@@ -125,21 +133,21 @@ $labels['currpage'] = 'Pàgina actual';
$labels['unread'] = 'No llegits';
$labels['flagged'] = 'Marcat';
$labels['unanswered'] = 'No respost';
-$labels['deleted'] = 'Esborrat';
+$labels['deleted'] = 'Suprimit';
$labels['invert'] = 'Inverteix';
$labels['filter'] = 'Filtre';
$labels['list'] = 'Llista';
-$labels['threads'] = 'Fils';
+$labels['threads'] = 'Fils de discusió';
$labels['expand-all'] = 'Expandeix tots';
$labels['expand-unread'] = 'Expandeix No llegits';
-$labels['collapse-all'] = 'Col·lapsa tots';
+$labels['collapse-all'] = 'Redueix tots';
$labels['threaded'] = 'Encadenat';
$labels['autoexpand_threads'] = 'Expandeix els missatges encadenats';
-$labels['do_expand'] = 'tots els fils';
+$labels['do_expand'] = 'tots els fils de discusió';
$labels['expand_only_unread'] = 'només amb missatges no llegits';
$labels['fromto'] = 'Remitent/Destinatari';
$labels['flag'] = 'Marca';
-$labels['attachment'] = 'Adjunt';
+$labels['attachment'] = 'Adjunció';
$labels['sentdate'] = 'Data d\'enviament';
$labels['arrival'] = 'Data d\'arribada';
$labels['asc'] = 'ascendent';
@@ -151,7 +159,7 @@ $labels['listmode'] = 'Mode de vista de llista';
$labels['folderactions'] = 'Accions de carpeta';
$labels['compact'] = 'Compacta';
$labels['empty'] = 'Buida';
-$labels['quota'] = 'Utilització de disc';
+$labels['quota'] = 'Ús del disc';
$labels['unknown'] = 'desconegut';
$labels['unlimited'] = 'il·limitat';
$labels['quicksearch'] = 'Cerca ràpida';
@@ -162,44 +170,46 @@ $labels['openinextwin'] = 'Obre a una nova finestra';
$labels['emlsave'] = 'Descarrega (.eml)';
$labels['editasnew'] = 'Edita com a nou';
$labels['savemessage'] = 'Desa aquest esborrany';
-$labels['sendmessage'] = 'Envia ara el missatge';
-$labels['addattachment'] = 'Afegeix un fitxer';
+$labels['sendmessage'] = 'Envia el missatge';
+$labels['addattachment'] = 'Adjunta un fitxer';
$labels['charset'] = 'Codificació de caràcters';
$labels['editortype'] = 'Tipus d\'editor';
$labels['returnreceipt'] = 'Confirmació de recepció';
$labels['dsn'] = 'Notificació d\'estat de lliurament';
$labels['mailreplyintro'] = 'A $date, $sender escrigué:';
$labels['originalmessage'] = 'Missatge Original';
-$labels['editidents'] = 'Editar identitats';
+$labels['editidents'] = 'Edita identitats';
+$labels['spellcheck'] = 'Ortografia';
$labels['checkspelling'] = 'Comprova l\'ortografia';
-$labels['resumeediting'] = 'Continua l\'edició';
+$labels['resumeediting'] = 'Reprèn l\'edició';
$labels['revertto'] = 'Torna a';
-$labels['attachments'] = 'Adjunts';
+$labels['attach'] = 'Adjunta';
+$labels['attachments'] = 'Adjuncions';
$labels['upload'] = 'Afegeix';
$labels['uploadprogress'] = '$percent ($current de $total)';
-$labels['close'] = 'Cancel·la';
+$labels['close'] = 'Tanca';
$labels['messageoptions'] = 'Opcions de missatge...';
$labels['low'] = 'Baixa';
-$labels['lowest'] = 'Molt baixa';
+$labels['lowest'] = 'La més baixa';
$labels['normal'] = 'Normal';
$labels['high'] = 'Alta';
-$labels['highest'] = 'Molt alta';
+$labels['highest'] = 'La més alta';
$labels['nosubject'] = '(sense assumpte)';
-$labels['showimages'] = 'Mostra imatges';
-$labels['alwaysshow'] = 'Sempre mostra imatges de $sender';
+$labels['showimages'] = 'Mostra les imatges';
+$labels['alwaysshow'] = 'Mostra sempre les imatges de $sender';
$labels['isdraft'] = 'Aquest és un missatge esborrany.';
$labels['htmltoggle'] = 'HTML';
-$labels['plaintoggle'] = 'Text pla';
+$labels['plaintoggle'] = 'Text net';
$labels['savesentmessagein'] = 'Desa el missatge enviat a';
-$labels['dontsave'] = 'no deseu';
-$labels['maxuploadsize'] = 'El tamany màxim de fitxer és $size';
+$labels['dontsave'] = 'no ho desis';
+$labels['maxuploadsize'] = 'El mida màxima del fitxer és $size';
$labels['addcc'] = 'Afegeix Cc';
$labels['addbcc'] = 'Afegeix Bcc';
-$labels['addreplyto'] = 'Afegeix Reply-To';
-$labels['addfollowupto'] = 'Afegir Seguiment-Per';
+$labels['addreplyto'] = 'Afegeix Respon-A';
+$labels['addfollowupto'] = 'Afegir Seguiment-A';
$labels['mdnrequest'] = 'El remitent d\'aquest missatge ha demanat ser notificat quan llegiu aquest missatge. Voleu notificar al remitent?';
$labels['receiptread'] = 'Confirmació de recepció';
-$labels['yourmessage'] = 'Aquesta és una confirmació de recepció per al vostre missatge';
+$labels['yourmessage'] = 'Això és una confirmació de recepció per al vostre missatge';
$labels['receiptnote'] = 'Nota: Aquesta confirmació només indica que el missatge ha estat mostrat a l\'ordinador del destinatari. No hi ha garantia que el destinatari hagi llegit o entès el contingut del missatge.';
$labels['name'] = 'Nom a mostrar';
$labels['firstname'] = 'Nom';
@@ -212,7 +222,7 @@ $labels['jobtitle'] = 'Càrrec';
$labels['department'] = 'Departament';
$labels['gender'] = 'Sexe';
$labels['maidenname'] = 'Cognom de Solter/a';
-$labels['email'] = 'E-Mail';
+$labels['email'] = 'Correu electrònic';
$labels['phone'] = 'Telèfon';
$labels['address'] = 'Adreça';
$labels['street'] = 'Carrer';
@@ -220,37 +230,38 @@ $labels['locality'] = 'Ciutat';
$labels['zipcode'] = 'Codi postal';
$labels['region'] = 'Estat/Província';
$labels['country'] = 'País';
-$labels['birthday'] = 'Aniversari';
+$labels['birthday'] = 'Data de naixement';
$labels['anniversary'] = 'Aniversari';
$labels['website'] = 'Pàgina web';
$labels['instantmessenger'] = 'IM';
$labels['notes'] = 'Notes';
-$labels['male'] = 'masculí';
-$labels['female'] = 'femení';
+$labels['male'] = 'home';
+$labels['female'] = 'dona';
$labels['manager'] = 'Gerent';
$labels['assistant'] = 'Assistent';
$labels['typeassistant'] = 'Assistent';
$labels['spouse'] = 'Cònjuge';
$labels['allfields'] = 'Tots els camps';
-$labels['search'] = 'Cercar';
+$labels['search'] = 'Cerca';
$labels['advsearch'] = 'Cerca Avançada';
-$labels['other'] = 'Altre';
-$labels['typeother'] = 'Altre';
+$labels['advanced'] = 'Paràmetres avançats';
+$labels['other'] = 'Un altre';
+$labels['typeother'] = 'Un altre';
$labels['typehome'] = 'Casa';
$labels['typework'] = 'Feina';
$labels['typemobile'] = 'Mòbil';
$labels['typemain'] = 'Principal';
-$labels['typehomefax'] = 'Fax de Casa';
-$labels['typeworkfax'] = 'Fax de la Feina';
+$labels['typehomefax'] = 'Fax particular';
+$labels['typeworkfax'] = 'Fax de la feina';
$labels['typecar'] = 'Cotxe';
-$labels['typepager'] = 'Paginador';
+$labels['typepager'] = 'Cercapersones';
$labels['typevideo'] = 'Vídeo';
$labels['typehomepage'] = 'Pàgina Inicial';
-$labels['typeblog'] = 'Blog';
+$labels['typeblog'] = 'Bloc';
$labels['typeprofile'] = 'Perfil';
$labels['addfield'] = 'Afegeix camp...';
-$labels['addcontact'] = 'Afegeix nou contacte';
-$labels['editcontact'] = 'Edita contacte';
+$labels['addcontact'] = 'Afegeix un nou contacte';
+$labels['editcontact'] = 'Edita el contacte';
$labels['contacts'] = 'Contactes';
$labels['contactproperties'] = 'Propietats del contacte';
$labels['personalinfo'] = 'Informació personal';
@@ -258,52 +269,54 @@ $labels['edit'] = 'Edita';
$labels['cancel'] = 'Cancel·la';
$labels['save'] = 'Desa';
$labels['delete'] = 'Suprimeix';
-$labels['rename'] = 'Renombrar';
+$labels['rename'] = 'Reanomena';
$labels['addphoto'] = 'Afegeix';
$labels['replacephoto'] = 'Reemplaça';
-$labels['newcontact'] = 'Crea nou contacte';
-$labels['deletecontact'] = 'Suprimeix contactes seleccionats';
+$labels['uploadphoto'] = 'Puja una fotografia';
+$labels['newcontact'] = 'Crea un nou contacte';
+$labels['deletecontact'] = 'Suprimeix els contactes seleccionats';
$labels['composeto'] = 'Redacta correu per a';
$labels['contactsfromto'] = 'Contactes $from a $to de $count';
$labels['print'] = 'Imprimeix';
$labels['export'] = 'Exporta';
$labels['exportvcards'] = 'Exporta contactes en format vCard';
$labels['newcontactgroup'] = 'Crea un nou grup de contactes';
-$labels['grouprename'] = 'Renomena el grup';
-$labels['groupdelete'] = 'Elimina el grup';
-$labels['previouspage'] = 'Mostra anteriors';
-$labels['firstpage'] = 'Mostra primers';
-$labels['nextpage'] = 'Mostra següents';
-$labels['lastpage'] = 'Mostra darrers';
+$labels['grouprename'] = 'Reanomena el grup';
+$labels['groupdelete'] = 'Suprimeix el grup';
+$labels['groupremoveselected'] = 'Suprimeix els contactes seleccionats del grup';
+$labels['previouspage'] = 'Mostra la pàgina anterior';
+$labels['firstpage'] = 'Mostra la primera pàgina';
+$labels['nextpage'] = 'Mostra la pàgina següent';
+$labels['lastpage'] = 'Mostra la darrera pàgina';
$labels['group'] = 'Grup';
$labels['groups'] = 'Grups';
$labels['personaladrbook'] = 'Llibreta d\'adreces';
$labels['searchsave'] = 'Desa la cerca';
-$labels['searchdelete'] = 'Elimina la cerca';
+$labels['searchdelete'] = 'Suprimeix la cerca';
$labels['import'] = 'Importa';
$labels['importcontacts'] = 'Importa contactes';
$labels['importfromfile'] = 'Importa des d\'un fitxer:';
$labels['importtarget'] = 'Afegeix contactes nous a la llibreta d\'adreces:';
$labels['importreplace'] = 'Reemplaça la llibreta d\'adreçes sencera';
-$labels['importtext'] = 'Podeu importar contactes des d\'una llibreta d\'adreces existent.<br/>Actualment suportem l\'importació d\'adreces amb el format <a href="http://en.wikipedia.org/wiki/VCard">vCard</a>.';
+$labels['importtext'] = 'Podeu importar contactes des d\'una llibreta d\'adreces existent.<br/>Actualment s\'admet l\'importació d\'adreces amb el format <a href="http://en.wikipedia.org/wiki/VCard">vCard</a>.';
$labels['done'] = 'Fet';
$labels['settingsfor'] = 'Configuració per a';
$labels['about'] = 'Quant a';
$labels['preferences'] = 'Preferències';
-$labels['userpreferences'] = 'Preferències d\'usuari';
-$labels['editpreferences'] = 'Edita preferències d\'usuari';
+$labels['userpreferences'] = 'Preferències de l\'usuari';
+$labels['editpreferences'] = 'Edita les preferències de l\'usuari';
$labels['identities'] = 'Identitats';
-$labels['manageidentities'] = 'Gestiona identitats per a aquest compte';
+$labels['manageidentities'] = 'Gestiona les identitats per a aquest compte';
$labels['newidentity'] = 'Nova identitat';
-$labels['newitem'] = 'Nou';
-$labels['edititem'] = 'Edita';
+$labels['newitem'] = 'Nou element';
+$labels['edititem'] = 'Edita l\'element';
$labels['preferhtml'] = 'Mostra HTML';
-$labels['defaultcharset'] = 'Joc de caracters per defecte';
+$labels['defaultcharset'] = 'Joc de caràcters per defecte';
$labels['htmlmessage'] = 'Missatge HTML';
$labels['dateformat'] = 'Format de la data';
$labels['timeformat'] = 'Format horari';
$labels['prettydate'] = 'Dates curtes';
-$labels['setdefault'] = 'Selecciona opció per defecte';
+$labels['setdefault'] = 'Posa-ho per defecte';
$labels['autodetect'] = 'Auto';
$labels['language'] = 'Idioma';
$labels['timezone'] = 'Fus horari';
@@ -311,30 +324,31 @@ $labels['pagesize'] = 'Files per pàgina';
$labels['signature'] = 'Signatura';
$labels['dstactive'] = 'Horari d\'estiu';
$labels['htmleditor'] = 'Escriu missatges en HTML';
-$labels['htmlonreply'] = 'només en resposta a missatge HTML';
-$labels['htmlsignature'] = 'Signatura HTML';
+$labels['htmlonreply'] = 'només en resposta a missatges en HTML';
+$labels['htmlsignature'] = 'Signatura en HTML';
$labels['previewpane'] = 'Mostra el panell de previsualització';
$labels['skin'] = 'Aparença d\'interfície';
-$labels['logoutclear'] = 'Buida la paperera al tancar sessió';
-$labels['logoutcompact'] = 'Compacta la safata d\'entrada al tancar sessió';
-$labels['uisettings'] = 'Interfície d\'usuari';
+$labels['logoutclear'] = 'Buida la paperera al tancar la sessió';
+$labels['logoutcompact'] = 'Compacta la safata d\'entrada al tancar la sessió';
+$labels['uisettings'] = 'Interfície de l\'usuari';
$labels['serversettings'] = 'Configuració del servidor';
$labels['mailboxview'] = 'Vista de la bústia';
-$labels['mdnrequests'] = 'Notificacions de recepció';
-$labels['askuser'] = 'Pregunta-ho a l\'usuari';
-$labels['autosend'] = 'Envia-les automàticament';
-$labels['autosendknown'] = 'Envia-les automàticament només als meus contactes';
-$labels['autosendknownignore'] = 'enviar recepció als meus contactes, sinó ignora';
-$labels['ignore'] = 'Ignora-les';
+$labels['mdnrequests'] = 'Notificacions de confirmació de recepció';
+$labels['askuser'] = 'demana\'m què vull fer';
+$labels['autosend'] = 'envia la confirmació de recepció';
+$labels['autosendknown'] = 'envia la confirmació de recepció als meus contactes, pels demés damana-m\'ho';
+$labels['autosendknownignore'] = 'envia la confirmació als meus contactes, pels demés ignora-ho';
+$labels['ignore'] = 'ignora';
$labels['readwhendeleted'] = 'Marca el missatge com a llegit quan se suprimeixi';
-$labels['flagfordeletion'] = 'Afegeix marca d\'esborrat en comptes d\'esborrar-lo';
+$labels['flagfordeletion'] = 'Marca el missatge com a suprimit en comptes de suprimir-lo';
$labels['skipdeleted'] = 'No mostris els missatges suprimits';
-$labels['deletealways'] = 'Si falla quan es mou un missatge a la Paperera, aleshores esborra\'l';
-$labels['showremoteimages'] = 'Mostra imatges remotes sota el missatge';
+$labels['deletealways'] = 'Si falla quan es mou un missatge a la Paperera, aleshores suprimeix-lo';
+$labels['deletejunk'] = 'Suprimeix directament els missatges de Correu brossa';
+$labels['showremoteimages'] = 'Mostra les imatges remotes del missatge';
$labels['fromknownsenders'] = 'de remitent conegut';
$labels['always'] = 'sempre';
$labels['showinlineimages'] = 'Mostra les imatges adjuntes sota el missatge';
-$labels['autosavedraft'] = 'Desa esborrany automàticament';
+$labels['autosavedraft'] = 'Desa l\'esborrany automàticament';
$labels['everynminutes'] = 'cada $n minut(s)';
$labels['keepalive'] = 'Comprova nous missatges a';
$labels['never'] = 'mai';
@@ -345,89 +359,92 @@ $labels['mimeparamfolding'] = 'Noms dels adjunts';
$labels['2231folding'] = 'Compleix RFC 2231 (Thunderbird)';
$labels['miscfolding'] = 'RFC 2047/2231 (MS Outlook)';
$labels['2047folding'] = 'Compleix RFC 2047 (un altre)';
-$labels['force7bit'] = 'Fes servir la codificació MIME per a caracters de 8-bits';
+$labels['force7bit'] = 'Fes servir la codificació MIME per a caràcters de 8-bits';
$labels['advancedoptions'] = 'Opcions avançades';
$labels['focusonnewmessage'] = 'Envia el focus al navegador quan hi hagi un nou missatge';
$labels['checkallfolders'] = 'Comprova totes les carpetes per missatges nous';
-$labels['displaynext'] = 'Mostra el següent missatge després de esborrar-ne o moure\'n un';
-$labels['defaultfont'] = 'Font per defecte al missatge HTML';
+$labels['displaynext'] = 'Mostra el següent missatge després de suprimir-ne o moure\'n un';
+$labels['defaultfont'] = 'Font de lletra per defecte de missatge HTML';
$labels['mainoptions'] = 'Opcions principals';
+$labels['browseroptions'] = 'Opcions del navegador';
$labels['section'] = 'Secció';
$labels['maintenance'] = 'Manteniment';
$labels['newmessage'] = 'Missatge nou';
$labels['signatureoptions'] = 'Opcions de signatura';
$labels['whenreplying'] = 'Quan es respon';
-$labels['replytopposting'] = 'comença un nou missatge per sobre de l\'original';
-$labels['replybottomposting'] = 'comença un nou missatge per sota de l\'original';
-$labels['replyremovesignature'] = 'Quan es contesti, elimina la signatura original del missatge';
+$labels['replytopposting'] = 'comença el missatge nou per sobre de l\'original';
+$labels['replybottomposting'] = 'comença el missatge nou per sota de l\'original';
+$labels['replyremovesignature'] = 'Quan es contesti, suprimeix la signatura original del missatge';
$labels['autoaddsignature'] = 'Afegeix la signatura automàticament';
-$labels['newmessageonly'] = 'només missatge nou';
-$labels['replyandforwardonly'] = 'només respostes i reenviaments';
-$labels['replysignaturepos'] = 'Quan es contesti o reenviï, posa la signatura';
+$labels['newmessageonly'] = 'només si és un missatge nou';
+$labels['replyandforwardonly'] = 'només a respostes i reenviaments';
+$labels['replysignaturepos'] = 'Quan es contesti o reenviï, posa-hi la signatura';
$labels['belowquote'] = 'sota les cometes';
$labels['abovequote'] = 'sobre les cometes';
-$labels['insertsignature'] = 'Inserta signatura';
-$labels['previewpanemarkread'] = 'Marca missatges previsualitzats com a llegits';
+$labels['insertsignature'] = 'Inserta la signatura';
+$labels['previewpanemarkread'] = 'Marca els missatges previsualitzats com a llegits';
$labels['afternseconds'] = 'després de $n segons';
$labels['reqmdn'] = 'Demana sempre la confirmació de recepció';
-$labels['reqdsn'] = 'Sempre demanar una notificació d\'estat de lliurament';
-$labels['replysamefolder'] = 'Col·locar respostes a la carpeta del missatge que es respon';
+$labels['reqdsn'] = 'Demana sempre una notificació d\'estat de lliurament';
+$labels['replysamefolder'] = 'Posa les respostes a la carpeta del missatge que es respon';
$labels['defaultaddressbook'] = 'Afegeix contactes nous a la llibreta d\'adreces seleccionada';
-$labels['autocompletesingle'] = 'Salta l\'adreça de correu alternativa a l\'autocompleció';
+$labels['autocompletesingle'] = 'Omet adreces alternatives quan s\'autocompleti';
+$labels['listnamedisplay'] = 'Llista contactes com a';
$labels['spellcheckbeforesend'] = 'Comprova l\'ortografia abans d\'enviar un missatge';
$labels['spellcheckoptions'] = 'Opcions del corrector ortogràfic';
$labels['spellcheckignoresyms'] = 'Ignora paraules amb símbols';
$labels['spellcheckignorenums'] = 'Ignora paraules amb números';
$labels['spellcheckignorecaps'] = 'Ignora paraules amb lletres capitalitzades';
$labels['addtodict'] = 'Afegeix al diccionari';
+$labels['mailtoprotohandler'] = 'Registra controlador de protocol pels enllaços mailto:';
$labels['folder'] = 'Carpeta';
-$labels['foldername'] = 'Nom de carpeta';
-$labels['subscribed'] = 'Subscriure\'s';
+$labels['foldername'] = 'Nom de la carpeta';
+$labels['subscribed'] = 'Subscrit';
$labels['messagecount'] = 'Missatges';
$labels['create'] = 'Crea';
-$labels['createfolder'] = 'Crea nova carpeta';
+$labels['createfolder'] = 'Crea una carpeta nova';
$labels['managefolders'] = 'Gestiona carpetes';
-$labels['specialfolders'] = 'Carpetes Especials';
+$labels['specialfolders'] = 'Carpetes especials';
$labels['properties'] = 'Propietats';
$labels['folderproperties'] = 'Propietats de la carpeta';
-$labels['parentfolder'] = 'Carpeta pare';
-$labels['location'] = 'Localització';
+$labels['parentfolder'] = 'Carpeta superior';
+$labels['location'] = 'Ubicació';
$labels['info'] = 'Informació';
-$labels['getfoldersize'] = 'Clica per a veure la mida de la carpeta';
-$labels['changesubscription'] = 'Clica per a canviar la subscripció';
+$labels['getfoldersize'] = 'Clica per veure la mida de la carpeta';
+$labels['changesubscription'] = 'Clica per canviar la subscripció';
$labels['foldertype'] = 'Tipus de Carpeta';
-$labels['personalfolder'] = 'Carpeta Privada';
-$labels['otherfolder'] = 'Carpeta d\'un Altre Usuari';
-$labels['sharedfolder'] = 'Carpeta Pública';
+$labels['personalfolder'] = 'Carpeta privada';
+$labels['otherfolder'] = 'Carpeta d\'un altre usuari';
+$labels['sharedfolder'] = 'Carpeta pública';
$labels['sortby'] = 'Ordena per';
$labels['sortasc'] = 'Ordena ascendentment';
$labels['sortdesc'] = 'Ordena descendentment';
$labels['undo'] = 'Desfés';
-$labels['plugin'] = 'Connector';
+$labels['plugin'] = 'Complement';
$labels['version'] = 'Versió';
$labels['source'] = 'Font';
$labels['license'] = 'Llicència';
-$labels['support'] = 'Obtenir ajuda';
+$labels['support'] = 'Obtingueu ajuda';
$labels['B'] = 'B';
$labels['KB'] = 'KB';
$labels['MB'] = 'MB';
$labels['GB'] = 'GB';
$labels['unicode'] = 'Unicode';
-$labels['english'] = 'Anglés';
-$labels['westerneuropean'] = 'Europeu Occidental';
-$labels['easterneuropean'] = 'Europeu Oriental';
+$labels['english'] = 'Anglès';
+$labels['westerneuropean'] = 'Europeu occidental';
+$labels['easterneuropean'] = 'Europeu oriental';
$labels['southeasterneuropean'] = 'Europeu Sud-Oriental';
$labels['baltic'] = 'Bàltic';
-$labels['cyrillic'] = 'Cirilic';
+$labels['cyrillic'] = 'Ciríl·lic';
$labels['arabic'] = 'Àrab';
$labels['greek'] = 'Grec';
$labels['hebrew'] = 'Hebreu';
$labels['turkish'] = 'Turc';
$labels['nordic'] = 'Nòrdic';
-$labels['thai'] = 'Tailandés';
-$labels['celtic'] = 'Celta';
+$labels['thai'] = 'Tailandès';
+$labels['celtic'] = 'Cèltic';
$labels['vietnamese'] = 'Vietnamita';
-$labels['japanese'] = 'Japonés';
-$labels['korean'] = 'Koreà';
-$labels['chinese'] = 'Xinés';
+$labels['japanese'] = 'Japonès';
+$labels['korean'] = 'Coreà';
+$labels['chinese'] = 'Xinès';
diff --git a/program/localization/ca_ES/messages.inc b/program/localization/ca_ES/messages.inc
index 441c07da2..c5b036820 100644
--- a/program/localization/ca_ES/messages.inc
+++ b/program/localization/ca_ES/messages.inc
@@ -9,12 +9,12 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Emi Bcn <Unknown> |
+ | Author: Jordi Sanfeliu <jordi@fibranet.cat> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
+$messages['errortitle'] = 'Hi ha hagut un error!';
$messages['loginfailed'] = 'L\'accés ha fallat.';
$messages['cookiesdisabled'] = 'El vostre navegador no accepta cookies';
$messages['sessionerror'] = 'La vostra sessió no existeix o ha expirat';
@@ -22,137 +22,139 @@ $messages['storageerror'] = 'Error de conexió amb el servidor IMAP';
$messages['servererror'] = 'Error del Servidor!';
$messages['servererrormsg'] = 'Error del Servidor: $msg';
$messages['dberror'] = 'Error a la Base de Dades!';
-$messages['errorreadonly'] = 'Impossible de realitzar l\'operació. La carpeta és de només lectura';
-$messages['errornoperm'] = 'Impossible de realitzar l\'operació. Permís denegat';
+$messages['requesttimedout'] = 'S\'ha esgotat el temps de la sol·licitud';
+$messages['errorreadonly'] = 'Impossible de realitzar l\'operació. La carpeta és de només lectura.';
+$messages['errornoperm'] = 'Impossible de realitzar l\'operació. Permís denegat.';
$messages['invalidrequest'] = 'Petició no vàlida! No s\'ha desat les dades.';
-$messages['nomessagesfound'] = 'No s\'han trobat missatges en aquesta bústia';
-$messages['loggedout'] = 'Heu tancat la sessió. Fins aviat!';
-$messages['mailboxempty'] = 'La bústia és buida';
-$messages['loading'] = 'Carregant...';
-$messages['uploading'] = 'Pujant fitxer...';
-$messages['uploadingmany'] = 'Pujant fitxers...';
-$messages['loadingdata'] = 'Carregant dades...';
-$messages['checkingmail'] = 'Cercant nous missatges...';
-$messages['sendingmessage'] = 'Enviant missatge...';
-$messages['messagesent'] = 'Missatge enviat correctament';
+$messages['nomessagesfound'] = 'No s\'han trobat missatges en aquesta bústia.';
+$messages['loggedout'] = 'Heu tancat la sessió. A reveure!';
+$messages['mailboxempty'] = 'La bústia és buida.';
+$messages['loading'] = 'S\'està carregant…';
+$messages['uploading'] = 'S\'està pujant el fitxer...';
+$messages['uploadingmany'] = 'S\'està pujant els fitxers...';
+$messages['loadingdata'] = 'S\'estan carregant les dades...';
+$messages['checkingmail'] = 'S’està comprovant si hi ha missatges nous…';
+$messages['sendingmessage'] = 'S’està enviant el missatge…';
+$messages['messagesent'] = 'Missatge enviat correctament.';
$messages['savingmessage'] = 'Desant missatge...';
-$messages['messagesaved'] = 'Missatge desat a Esborranys';
-$messages['successfullysaved'] = 'Desat correctament';
-$messages['addedsuccessfully'] = 'Contacte afegit correctament a la llibreta d\'adreces';
-$messages['contactexists'] = 'Ja hi ha un contacte amb aquesta adreça de correu';
+$messages['messagesaved'] = 'Missatge desat a Esborranys.';
+$messages['successfullysaved'] = 'Desat correctament.';
+$messages['addedsuccessfully'] = 'Contacte afegit correctament a la llibreta d\'adreces.';
+$messages['contactexists'] = 'Ja hi ha un contacte amb aquesta adreça de correu.';
$messages['contactnameexists'] = 'Ja existeix un contacte amb el mateix nom.';
-$messages['blockedimages'] = 'Per a protegir la vostra privacitat, les imatges remotes han estat bloquejades en aquest missatge';
+$messages['blockedimages'] = 'Per protegir la vostra privacitat, les imatges remotes han estat bloquejades en aquest missatge.';
$messages['encryptedmessage'] = 'Aquest és un missatge xifrat i no pot ser mostrat. Ho sento!';
-$messages['nocontactsfound'] = 'No hi ha contactes';
-$messages['contactnotfound'] = 'No s\'ha trobat el contacte sol·licitat';
-$messages['contactsearchonly'] = 'Introdueix termes de cerca per a trobar contactes';
-$messages['sendingfailed'] = 'Error enviant missatge';
-$messages['senttooquickly'] = 'Si us plau, espereu $sec segon(s) abans d\'enviar aquest missatge';
-$messages['errorsavingsent'] = 'Hi ha hagut un error mentre es desava el missatge enviat';
-$messages['errorsaving'] = 'Hi ha hagut un error mentre es desava';
-$messages['errormoving'] = 'No s\'ha pogut moure el missatge';
-$messages['errorcopying'] = 'No s\'ha pogut copiar el(s) missatge(s)';
-$messages['errordeleting'] = 'No s\'ha pogut eliminar el missatge';
-$messages['errormarking'] = 'No s\'ha pogut marcar el missatge.';
+$messages['nocontactsfound'] = 'No s\'ha trobat cap contacte.';
+$messages['contactnotfound'] = 'No s\'ha trobat el contacte sol·licitat.';
+$messages['contactsearchonly'] = 'Introduïu termes de cerca per trobar contactes';
+$messages['sendingfailed'] = 'Error enviant missatge.';
+$messages['senttooquickly'] = 'Si us plau, espereu $sec segon(s) abans d\'enviar aquest missatge.';
+$messages['errorsavingsent'] = 'Hi ha hagut un error mentre es desava el missatge enviat.';
+$messages['errorsaving'] = 'Hi ha hagut un error mentre es desava.';
+$messages['errormoving'] = 'No s\'ha pogut moure el(s) missatge(s).';
+$messages['errorcopying'] = 'No s\'ha pogut copiar el(s) missatge(s).';
+$messages['errordeleting'] = 'No s\'ha pogut suprimir el missatge.';
+$messages['errormarking'] = 'No s\'ha pogut marcar el(s) missatge(s).';
$messages['deletecontactconfirm'] = 'Esteu segurs de voler suprimir el(s) contacte(s) selecionat(s)?';
-$messages['deletegroupconfirm'] = 'De veres voleu eliminar el grup seleccionat?';
+$messages['deletegroupconfirm'] = 'Esteu segurs de voler suprimirr el grup seleccionat?';
$messages['deletemessagesconfirm'] = 'Esteu segurs de voler suprimir el(s) missatge(s) selecionat(s)?';
$messages['deletefolderconfirm'] = 'Esteu segurs de voler suprimir aquesta carpeta?';
$messages['purgefolderconfirm'] = 'Esteu segurs de voler suprimir tots els missatges d\'aquesta carpeta?';
-$messages['contactdeleting'] = 'Esborrant contacte(s)...';
-$messages['groupdeleting'] = 'Eliminant el grup...';
-$messages['folderdeleting'] = 'Suprimint la carpeta...';
-$messages['foldermoving'] = 'Movent la carpeta...';
-$messages['foldersubscribing'] = 'Subscribint la carpeta...';
-$messages['folderunsubscribing'] = 'Desubscribint la carpeta...';
-$messages['formincomplete'] = 'El formulari no ha sigut emplenat totalment';
-$messages['noemailwarning'] = 'Introduïu una adreça d\'e-mail vàlida';
-$messages['nonamewarning'] = 'Introduïu un nom';
-$messages['nopagesizewarning'] = 'Introduïu una mida de pàgina';
-$messages['nosenderwarning'] = 'Si us plau, entreu l\'adreça d\'e-mail del remitent';
-$messages['norecipientwarning'] = 'Introduïu com a mínim un destinatari';
+$messages['contactdeleting'] = 'S\'està suprimint els contacte(s)...';
+$messages['groupdeleting'] = 'S\'està suprimint el grup...';
+$messages['folderdeleting'] = 'S\'està suprimint la carpeta...';
+$messages['foldermoving'] = 'S\'està movent la carpeta...';
+$messages['foldersubscribing'] = 'S\'està subscribint la carpeta...';
+$messages['folderunsubscribing'] = 'S\'està cancelant la subscripció de la carpeta...';
+$messages['formincomplete'] = 'El formulari no ha estat emplenat totalment.';
+$messages['noemailwarning'] = 'Si us plau, introduïu una adreça de correu electrònic vàlida.';
+$messages['nonamewarning'] = 'Si us plau, introduïu un nom.';
+$messages['nopagesizewarning'] = 'Si us plau, introduïu una mida de pàgina.';
+$messages['nosenderwarning'] = 'Si us plau, entreu l\'adreça de correu del remitent.';
+$messages['norecipientwarning'] = 'Si us plau, introduïu com a mínim un destinatari.';
$messages['nosubjectwarning'] = 'El camp "Assumpte" és buit. Voleu introduir-ne un ara?';
$messages['nobodywarning'] = 'Voleu enviar aquest missatge sense text?';
$messages['notsentwarning'] = 'El missatge no s\'ha enviat. Voleu descartar el vostre missatge?';
-$messages['noldapserver'] = 'Seleccioneu un servidor LDAP per a cercar';
-$messages['nosearchname'] = 'Introduïu un nom de contacte o una adreça e-mail';
+$messages['noldapserver'] = 'Si us plau, seleccioneu un servidor LDAP per cercar.';
+$messages['nosearchname'] = 'Si us plau, introduïu un nom de contacte o una adreça de correu.';
$messages['notuploadedwarning'] = 'Encara no s\'han pujat tots els adjunts. Si us plau, espereu o cancel·leu la pujada.';
-$messages['searchsuccessful'] = '$nr missatges trobats';
-$messages['contactsearchsuccessful'] = '$nr contactes trobats';
-$messages['searchnomatch'] = 'No s\'ha trobat cap coincidència';
-$messages['searching'] = 'Cercant...';
-$messages['checking'] = 'Comprovant...';
-$messages['nospellerrors'] = 'No s\'han trobat errors d\'ortografia';
-$messages['folderdeleted'] = 'Carpeta eliminada correctament';
-$messages['foldersubscribed'] = 'Carpeta subscrita correctament';
-$messages['folderunsubscribed'] = 'Carpeta desubscrita correctament';
-$messages['folderpurged'] = 'La carpeta ha estat buidada satisfactòriament';
-$messages['folderexpunged'] = 'La carpeta ha estat compactada satisfactòriament';
-$messages['deletedsuccessfully'] = 'Eliminat correctament';
-$messages['converting'] = 'Traient format del missatge...';
-$messages['messageopenerror'] = 'No s\'ha pogut carregar el missatge del servidor';
-$messages['fileuploaderror'] = 'La pujada del fitxer ha fallat';
-$messages['filesizeerror'] = 'El fitxer pujat excedeix la grandària màxima de $size';
-$messages['copysuccess'] = 'S\'han copiat $nr adreces correctament';
-$messages['copyerror'] = 'No s\'ha pogut copiar cap adreça';
-$messages['sourceisreadonly'] = 'Aquesta adreça és només de lectura';
-$messages['errorsavingcontact'] = 'No s\'ha pogut desar l\'adreça de contacte';
-$messages['movingmessage'] = 'Movent el missatge...';
-$messages['copyingmessage'] = 'Copiant missatge...';
-$messages['copyingcontact'] = 'Copiant contacte(s)...';
-$messages['deletingmessage'] = 'Esborrant missatge(s)...';
-$messages['markingmessage'] = 'Marcant missatge(s)...';
-$messages['addingmember'] = 'Afegint contacte(s) al grup...';
-$messages['removingmember'] = 'Eliminant contacte(s) del grup';
-$messages['receiptsent'] = 'Confirmació de lectura enviada satisfactòriament';
-$messages['errorsendingreceipt'] = 'No es pot enviar la confirmació';
+$messages['searchsuccessful'] = '$nr missatges trobats.';
+$messages['contactsearchsuccessful'] = '$nr contactes trobats.';
+$messages['searchnomatch'] = 'No s\'ha trobat cap coincidència.';
+$messages['searching'] = 'S\'està cercant...';
+$messages['checking'] = 'S\'està comprovant...';
+$messages['nospellerrors'] = 'No s\'han trobat errors d\'ortografia.';
+$messages['folderdeleted'] = 'Carpeta suprimida correctament.';
+$messages['foldersubscribed'] = 'Carpeta subscrita correctament.';
+$messages['folderunsubscribed'] = 'Carpeta desubscrita correctament.';
+$messages['folderpurged'] = 'La carpeta ha estat buidada correctament.';
+$messages['folderexpunged'] = 'La carpeta ha estat compactada correctament.';
+$messages['deletedsuccessfully'] = 'Suprimit correctament.';
+$messages['converting'] = 'S\'està traient format del missatge...';
+$messages['messageopenerror'] = 'No s\'ha pogut carregar el missatge del servidor.';
+$messages['fileuploaderror'] = 'La pujada del fitxer ha fallat.';
+$messages['filesizeerror'] = 'El fitxer pujat excedeix la mida màxima de $size.';
+$messages['copysuccess'] = 'S\'han copiat $nr adreces correctament.';
+$messages['copyerror'] = 'No s\'ha pogut copiar cap adreça.';
+$messages['sourceisreadonly'] = 'Aquesta adreça és només de lectura.';
+$messages['errorsavingcontact'] = 'No s\'ha pogut desar l\'adreça de contacte.';
+$messages['movingmessage'] = 'S\'està movent el missatge...';
+$messages['copyingmessage'] = 'S\'està copiant missatge...';
+$messages['copyingcontact'] = 'S\'està copiant els contacte(s)...';
+$messages['deletingmessage'] = 'S\'està suprimint els missatge(s)...';
+$messages['markingmessage'] = 'S\'està marcant els missatge(s)...';
+$messages['addingmember'] = 'S\'està afegint els contacte(s) al grup...';
+$messages['removingmember'] = 'S\'està suprimint els contacte(s) del grup...';
+$messages['receiptsent'] = 'Confirmació de lectura enviada correctament.';
+$messages['errorsendingreceipt'] = 'No es pot enviar la confirmació.';
+$messages['deleteidentityconfirm'] = 'Esteu segurs de voler suprimir aquesta identitat?';
$messages['nodeletelastidentity'] = 'No podeu suprimir aquesta identitat, és l\'última.';
-$messages['forbiddencharacter'] = 'El nom de carpeta conté un caràcter prohibit';
-$messages['selectimportfile'] = 'Si us plau, seleccioneu un fitxer per pujar';
-$messages['addresswriterror'] = 'La llibreta d\'adreces seleccionada no és modificable';
-$messages['contactaddedtogroup'] = 'S\'han afegit correctament els contactes a aquest grup';
-$messages['contactremovedfromgroup'] = 'S\'han suprimit correctament els contactes d\'aquest grup';
+$messages['forbiddencharacter'] = 'El nom de carpeta conté un caràcter no permès.';
+$messages['selectimportfile'] = 'Si us plau, seleccioneu un fitxer per pujar.';
+$messages['addresswriterror'] = 'La llibreta d\'adreces seleccionada no és modificable.';
+$messages['contactaddedtogroup'] = 'S\'han afegit correctament els contactes a aquest grup.';
+$messages['contactremovedfromgroup'] = 'S\'han suprimit correctament els contactes d\'aquest grup.';
$messages['importwait'] = 'S\'està important, espereu si us plau...';
-$messages['importerror'] = 'La importació ha fallt! El fitxer pujat no és un fitxer vCard vàlid';
-$messages['importconfirm'] = '<b>S\'han importat $inserted contactes satisfactòriament, s\'han descartat $skipped entrades ja existents</b>:<p><em>$names</em></p>';
-$messages['importconfirmskipped'] = '<b>Saltades $skipped entrades existents</b>';
+$messages['importerror'] = 'La importació ha fallat! El fitxer pujat no és un fitxer vCard vàlid.';
+$messages['importconfirm'] = '<b>S\'han importat $inserted contactes correctament</b>';
+$messages['importconfirmskipped'] = '<b>S\'han descartat $skipped entrades ja existents</b>';
$messages['opnotpermitted'] = 'Operació no permesa!';
-$messages['nofromaddress'] = 'Falta l\'adreça d\'e-mail a la identitat seleccionada';
+$messages['nofromaddress'] = 'Falta l\'adreça de correu a la identitat seleccionada.';
$messages['editorwarning'] = 'Si canvieu a l\'editor de text pla perdreu tot el format del text. Voleu continuar?';
$messages['httpreceivedencrypterror'] = 'Hi ha hagut un error fatal de configuració. Contacteu amb el vostre administrador immediatament. <b>El vostre missatge no pot ser enviat.</b>';
$messages['smtpconnerror'] = 'Error SMTP ($code): La connexió al servidor ha fallat.';
$messages['smtpautherror'] = 'Error SMTP ($code): La identificació ha fallat.';
-$messages['smtpfromerror'] = 'Error SMTP ($code): No s\'ha pogut posar "$from" com a remitent ($msg)';
-$messages['smtptoerror'] = 'Error SMTP ($code): No s\'ha pogut posar "$to" com a destinatari ($msg)';
-$messages['smtprecipientserror'] = 'Error SMTP: No s\'ha pogut analitzar la lista de destinataris';
+$messages['smtpfromerror'] = 'Error SMTP ($code): No s\'ha pogut posar "$from" com a remitent ($msg).';
+$messages['smtptoerror'] = 'Error SMTP ($code): No s\'ha pogut posar "$to" com a destinatari ($msg).';
+$messages['smtprecipientserror'] = 'Error SMTP: No s\'ha pogut analitzar la lista de destinataris.';
$messages['smtperror'] = 'Error SMTP: $msg';
-$messages['emailformaterror'] = 'Adreça d\'e-mail incorrecta: $email';
+$messages['emailformaterror'] = 'Adreça de correu no vàlida: $email';
$messages['toomanyrecipients'] = 'Massa destinataris. Reduïu el nombre de destinataris a $max.';
$messages['maxgroupmembersreached'] = 'El nombre de membres del grup excedeix el màxim de $max.';
-$messages['internalerror'] = 'Hi ha hagut un error intern. Si us plau torneu-ho a provar';
-$messages['contactdelerror'] = 'No s\'ha pogut esborrar el(s) contacte(s)';
-$messages['contactdeleted'] = 'Contacte(s) esborrat(s) satisfactòriament';
-$messages['contactrestoreerror'] = 'No s\'ha pogut restaurar el(s) contacte(s) eliminat(s).';
+$messages['internalerror'] = 'Hi ha hagut un error intern. Si us plau torneu-ho a provar.';
+$messages['contactdelerror'] = 'No s\'ha pogut suprimir el(s) contacte(s).';
+$messages['contactdeleted'] = 'Contacte(s) suprimits(s) correctament.';
+$messages['contactrestoreerror'] = 'No s\'ha pogut restaurar el(s) contacte(s) suprimits(s).';
$messages['contactrestored'] = 'Contacte(s) restaurats correctament.';
-$messages['groupdeleted'] = 'Grup esborrat satisfactòriament';
-$messages['grouprenamed'] = 'Grup renombrat satisfactòriament';
-$messages['groupcreated'] = 'Grup creat satisfactòriament';
-$messages['savedsearchdeleted'] = 'S\'ha eliminat correctament la cerca desada.';
-$messages['savedsearchdeleteerror'] = 'No s\'ha pogut eliminar la cerca desada.';
+$messages['groupdeleted'] = 'Grup suprimit correctament.';
+$messages['grouprenamed'] = 'Grup reanomenat correctament.';
+$messages['groupcreated'] = 'Grup creat correctament.';
+$messages['savedsearchdeleted'] = 'S\'ha suprimit correctament la cerca desada.';
+$messages['savedsearchdeleteerror'] = 'No s\'ha pogut suprimit la cerca desada.';
$messages['savedsearchcreated'] = 'S\'ha creat correctament la cerca desada.';
$messages['savedsearchcreateerror'] = 'No s\'ha pogut crear la cerca desada.';
-$messages['messagedeleted'] = 'Missatge(s) esborrat(s) satisfactòriament';
-$messages['messagemoved'] = 'Missatge(s) mogut(s) satisfactòriament';
-$messages['messagecopied'] = 'Missatge(s) copiat(s) satisfactòriament';
-$messages['messagemarked'] = 'Missatge(s) marcat(s) satisfactòriament';
-$messages['autocompletechars'] = 'Introdueix al menys $min caracters per a l\'autocompleció';
-$messages['autocompletemore'] = 'S¡han trobat més entrades coincidents. Si us plau, introdueix més caràcters.';
-$messages['namecannotbeempty'] = 'El nom no pot estar buit';
-$messages['nametoolong'] = 'El nom és massa llarg';
-$messages['folderupdated'] = 'La carpeta ha estat actualitzada satisfactòriament';
-$messages['foldercreated'] = 'La carpeta ha estat creada satisfactòriament';
+$messages['messagedeleted'] = 'Missatge(s) suprimits(s) correctament.';
+$messages['messagemoved'] = 'Missatge(s) mogut(s) correctament.';
+$messages['messagecopied'] = 'Missatge(s) copiat(s) correctament.';
+$messages['messagemarked'] = 'Missatge(s) marcat(s) correctament.';
+$messages['autocompletechars'] = 'Introduïu com a mínim $min caràcters per l\'autocompleció.';
+$messages['autocompletemore'] = 'S\'han trobat més entrades coincidents. Si us plau, introduïu més caràcters.';
+$messages['namecannotbeempty'] = 'El nom no pot estar buit.';
+$messages['nametoolong'] = 'El nom és massa llarg.';
+$messages['folderupdated'] = 'La carpeta ha estat actualitzada correctament.';
+$messages['foldercreated'] = 'La carpeta ha estat creada correctament.';
$messages['invalidimageformat'] = 'No és un format d\'imatge vàlid.';
$messages['mispellingsfound'] = 'S\'han detectat errors d\'ortografia al misstage.';
-$messages['parentnotwritable'] = 'No ha etsat possible crear/moure la carpeta dins de la carpeta ascendent seleccionada. No hi ha permisos d\'escriptura.';
-$messages['messagetoobig'] = 'La part del missatge és massa gran per a processar-la.';
+$messages['parentnotwritable'] = 'No s\'ha pogut crear/moure la carpeta dins de la carpeta ascendent seleccionada. No hi ha permisos d\'escriptura.';
+$messages['messagetoobig'] = 'La part del missatge és massa gran per processar-la.';
diff --git a/program/localization/cs_CZ/messages.inc b/program/localization/cs_CZ/messages.inc
index dcb82ef12..0335c62a1 100644
--- a/program/localization/cs_CZ/messages.inc
+++ b/program/localization/cs_CZ/messages.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Tomáš Bittner <tbittner@itoutsourcing.cz> |
+ | Author: Tomáš Kyzlink |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
@@ -23,6 +22,7 @@ $messages['storageerror'] = 'Připojení na IMAP server selhalo';
$messages['servererror'] = 'Chyba serveru!';
$messages['servererrormsg'] = 'Chyba serveru: $msg';
$messages['dberror'] = 'Chyba v databázi!';
+$messages['requesttimedout'] = 'Došlo k vypršení požadavku';
$messages['errorreadonly'] = 'Příkaz nelze provést, složka je urÄena jen ke Ätení.';
$messages['errornoperm'] = 'Příkaz nelze provést, nemáte oprávnění.';
$messages['invalidrequest'] = 'Nesprávný požadavek. Data nebyla uložena.';
diff --git a/program/localization/cy_GB/messages.inc b/program/localization/cy_GB/messages.inc
index 547b9bafa..72ef6a2cf 100644
--- a/program/localization/cy_GB/messages.inc
+++ b/program/localization/cy_GB/messages.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Dafydd Tomos <Unknown> |
+ | Author: Dafydd Tomos |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
@@ -23,6 +22,7 @@ $messages['storageerror'] = 'Methwyd cysylltu a\'r gweinydd IMAP';
$messages['servererror'] = 'Gwall Gweinydd!';
$messages['servererrormsg'] = 'Gwall Gweinydd: $msg';
$messages['dberror'] = 'Gwall Cronfa Ddata!';
+$messages['requesttimedout'] = 'Cais wedi dod i derfyn amser';
$messages['errorreadonly'] = 'Methwyd gweithredu. Mae\'r ffolder yn darllen-yn-unig';
$messages['errornoperm'] = 'Methwyd gweithredu. Gwrthodwyd caniatad';
$messages['invalidrequest'] = 'Cais annilys! Ni chadwyd unrhyw wybodaeth.';
diff --git a/program/localization/da_DK/messages.inc b/program/localization/da_DK/messages.inc
index 602df50c6..bb9038fe6 100644
--- a/program/localization/da_DK/messages.inc
+++ b/program/localization/da_DK/messages.inc
@@ -11,7 +11,6 @@
+-----------------------------------------------------------------------+
| Author: Johannes Hessellund <osos@openeyes.dk> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
@@ -23,6 +22,7 @@ $messages['storageerror'] = 'Forbindelse til e-mailserveren fejlede.';
$messages['servererror'] = 'Server fejl!';
$messages['servererrormsg'] = 'Server fejl: $msg';
$messages['dberror'] = 'Database fejl!';
+$messages['requesttimedout'] = 'Forespørgselstiden udløb';
$messages['errorreadonly'] = 'Kunne ikke udføre den ønskede handling. Mappen er skrivebeskyttet.';
$messages['errornoperm'] = 'Kunne ikke udføre den ønskede handling. Adgang nægtet.';
$messages['invalidrequest'] = 'Ugyldig forespørgsel! Ingen data blev gemt.';
@@ -38,7 +38,7 @@ $messages['sendingmessage'] = 'Sender besked...';
$messages['messagesent'] = 'Beskeden blev afsendt succesfuldt.';
$messages['savingmessage'] = 'Gemmer besked...';
$messages['messagesaved'] = 'Beskeden er gemt i kladdemappen.';
-$messages['successfullysaved'] = 'Beskeden er gemt.';
+$messages['successfullysaved'] = 'Gemt succesfuldt';
$messages['addedsuccessfully'] = 'Kontakten blev tilføjet adressebogen.';
$messages['contactexists'] = 'Der er allerede en kontakt med denne e-mailadresse.';
$messages['contactnameexists'] = 'En kontakt med samme navn eksisterer allerede.';
diff --git a/program/localization/de_CH/labels.inc b/program/localization/de_CH/labels.inc
index 7ff3ae782..4164e0333 100644
--- a/program/localization/de_CH/labels.inc
+++ b/program/localization/de_CH/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: Thomas |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -120,8 +119,8 @@ $labels['mark'] = 'Markieren';
$labels['markmessages'] = 'Nachrichten markieren';
$labels['markread'] = 'Als gelesen';
$labels['markunread'] = 'Als ungelesen';
-$labels['markflagged'] = 'Stern hinzufügen';
-$labels['markunflagged'] = 'Stern entfernen';
+$labels['markflagged'] = 'Markierung hinzufügen';
+$labels['markunflagged'] = 'Markierung entfernen';
$labels['moreactions'] = 'Mehr ...';
$labels['more'] = 'Mehr';
$labels['back'] = 'Zurück';
@@ -344,6 +343,7 @@ $labels['readwhendeleted'] = 'Beim Löschen als gelesen markieren';
$labels['flagfordeletion'] = 'Als gelöscht markieren anstatt in den Papierkorb verschieben';
$labels['skipdeleted'] = 'Zeige keine gelöschten Nachrichten an';
$labels['deletealways'] = 'Löschen wenn Verschieben in den Papierkorb nicht möglich';
+$labels['deletejunk'] = 'Nachrichten in Spam direkt löschen';
$labels['showremoteimages'] = 'Eingebettete Bilder vom Internet laden';
$labels['fromknownsenders'] = 'bei bekannten Absendern';
$labels['always'] = 'immer';
diff --git a/program/localization/de_DE/labels.inc b/program/localization/de_DE/labels.inc
index 470af7d7b..71d5b80f2 100644
--- a/program/localization/de_DE/labels.inc
+++ b/program/localization/de_DE/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: Thomas |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -120,8 +119,8 @@ $labels['mark'] = 'Markieren';
$labels['markmessages'] = 'Nachrichten markieren';
$labels['markread'] = 'Als gelesen';
$labels['markunread'] = 'Als ungelesen';
-$labels['markflagged'] = 'Stern hinzufügen';
-$labels['markunflagged'] = 'Stern entfernen';
+$labels['markflagged'] = 'Markierung hinzufügen';
+$labels['markunflagged'] = 'Markierung entfernen';
$labels['moreactions'] = 'Mehr...';
$labels['more'] = 'Mehr';
$labels['back'] = 'Zurück';
@@ -344,6 +343,7 @@ $labels['readwhendeleted'] = 'Beim Löschen als gelesen markieren';
$labels['flagfordeletion'] = 'Als gelöscht markieren anstatt in den Papierkorb verschieben';
$labels['skipdeleted'] = 'Zeige keine gelöschten Nachrichten an';
$labels['deletealways'] = 'Wenn verschieben in den Papierkorb fehlschlägt, Nachricht löschen';
+$labels['deletejunk'] = 'Nachrichten in Spam direkt löschen';
$labels['showremoteimages'] = 'Eingebettete Bilder vom Internet laden';
$labels['fromknownsenders'] = 'bei bekannten Absendern';
$labels['always'] = 'immer';
diff --git a/program/localization/de_DE/messages.inc b/program/localization/de_DE/messages.inc
index 6a4bc213b..d8b78d6c8 100644
--- a/program/localization/de_DE/messages.inc
+++ b/program/localization/de_DE/messages.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Steven Beer <Unknown> |
+ | Author: akn |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
@@ -19,9 +18,11 @@ $messages['errortitle'] = 'Ein Fehler ist aufgetreten!';
$messages['loginfailed'] = 'Die Anmeldung ist fehlgeschlagen.';
$messages['cookiesdisabled'] = 'Ihr Browser akzeptiert keine Cookies.';
$messages['sessionerror'] = 'Ihre Sitzung ist ungültig oder abgelaufen.';
+$messages['storageerror'] = 'Verbindung zum Speicherserver fehlgeschlagen.';
$messages['servererror'] = 'Serverfehler!';
$messages['servererrormsg'] = 'Serverfehler: $msg';
$messages['dberror'] = 'Datenbankfehler!';
+$messages['requesttimedout'] = 'Zeitüberschreitung der Anforderung';
$messages['errorreadonly'] = 'Die Aktion kann nicht ausgeführt werden. Der Ordner ist schreibgeschützt.';
$messages['errornoperm'] = 'Die Aktion kann nicht ausgeführt werden. Zugriff verweigert.';
$messages['invalidrequest'] = 'Ungültige Anfrage! Es wurden keine Daten gespeichert.';
@@ -34,15 +35,15 @@ $messages['uploadingmany'] = 'Dateien werden hochgeladen...';
$messages['loadingdata'] = 'Daten werden geladen...';
$messages['checkingmail'] = 'Überprüfung auf neue Nachrichten...';
$messages['sendingmessage'] = 'Nachricht wird gesendet...';
-$messages['messagesent'] = 'Nachricht erfolgreich gesendet';
+$messages['messagesent'] = 'Nachricht erfolgreich gesendet.';
$messages['savingmessage'] = 'Nachricht wird gespeichert...';
-$messages['messagesaved'] = 'Nachricht als Entwurf gespeichert';
+$messages['messagesaved'] = 'Nachricht als Entwurf gespeichert.';
$messages['successfullysaved'] = 'Erfolgreich gespeichert.';
$messages['addedsuccessfully'] = 'Kontakt zum Adressbuch hinzugefügt.';
$messages['contactexists'] = 'Es existiert bereits ein Kontakt mit dieser E-Mail-Adresse.';
-$messages['contactnameexists'] = 'Ein Kontakt mit demselben Namen existiert bereits.';
+$messages['contactnameexists'] = 'Ein Kontakt mit dem gleichen Namen existiert bereits.';
$messages['blockedimages'] = 'Um Ihre Privatsphäre zur schützen, wurden externe Bilder blockiert.';
-$messages['encryptedmessage'] = 'Dies ist eine verschlüsselte Nachricht und kann leider nicht angezeigtwerden.';
+$messages['encryptedmessage'] = 'Dies ist eine verschlüsselte Nachricht und kann leider nicht angezeigt werden.';
$messages['nocontactsfound'] = 'Keine Kontakte gefunden.';
$messages['contactnotfound'] = 'Der angeforderte Kontakt wurde nicht gefunden.';
$messages['contactsearchonly'] = 'Geben Sie einen Suchbegriff ein, um Kontakte zu finden.';
@@ -113,7 +114,6 @@ $messages['selectimportfile'] = 'Bitte wählen Sie eine Datei zum Importieren au
$messages['addresswriterror'] = 'Das gewählte Adressbuch kann nicht verändert werden.';
$messages['contactaddedtogroup'] = 'Kontakte wurden dieser Gruppe hinzugefügt.';
$messages['contactremovedfromgroup'] = 'Kontakte wurden aus dieser Gruppe entfernt.';
-$messages['nogroupassignmentschanged'] = 'Es wurde keine Gruppenzuweisung verändert.';
$messages['importwait'] = 'Daten werden importiert, bitte warten...';
$messages['importerror'] = 'Import fehlgeschlagen! Die hochgeladene Datei ist nicht im vCard-Format.';
$messages['importconfirm'] = '<b>Es wurden $inserted Adressen erfolgreich importiert.</b>';
diff --git a/program/localization/en_GB/labels.inc b/program/localization/en_GB/labels.inc
index ea6456045..cb9c25c97 100644
--- a/program/localization/en_GB/labels.inc
+++ b/program/localization/en_GB/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: Lazlo |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -41,6 +40,7 @@ $labels['size'] = 'Size';
$labels['priority'] = 'Priority';
$labels['organization'] = 'Company';
$labels['readstatus'] = 'Read status';
+$labels['listoptions'] = 'List options...';
$labels['mailboxlist'] = 'Folders';
$labels['folders'] = 'Folders';
$labels['messagesfromto'] = 'Messages $from to $to of $count';
@@ -272,6 +272,7 @@ $labels['delete'] = 'Delete';
$labels['rename'] = 'Rename';
$labels['addphoto'] = 'Add';
$labels['replacephoto'] = 'Replace';
+$labels['uploadphoto'] = 'Upload photo';
$labels['newcontact'] = 'Create new contact card';
$labels['deletecontact'] = 'Delete selected contacts';
$labels['composeto'] = 'Compose mail to';
@@ -282,6 +283,7 @@ $labels['exportvcards'] = 'Export contacts in vCard format';
$labels['newcontactgroup'] = 'Create new contact group';
$labels['grouprename'] = 'Rename group';
$labels['groupdelete'] = 'Delete group';
+$labels['groupremoveselected'] = 'Remove selected contacts from group';
$labels['previouspage'] = 'Show previous set';
$labels['firstpage'] = 'Show first set';
$labels['nextpage'] = 'Show next set';
@@ -364,6 +366,7 @@ $labels['checkallfolders'] = 'Check all folders for new messages';
$labels['displaynext'] = 'After message delete/move display the next message';
$labels['defaultfont'] = 'Default font of HTML message';
$labels['mainoptions'] = 'Main Options';
+$labels['browseroptions'] = 'Browser Options';
$labels['section'] = 'Section';
$labels['maintenance'] = 'Maintenance';
$labels['newmessage'] = 'New Message';
@@ -386,12 +389,14 @@ $labels['reqdsn'] = 'Always request a delivery status notification';
$labels['replysamefolder'] = 'Place replies in the folder of the message being replied to';
$labels['defaultaddressbook'] = 'Add new contacts to the selected addressbook';
$labels['autocompletesingle'] = 'Skip alternative email addresses in autocompletion';
+$labels['listnamedisplay'] = 'List contacts as';
$labels['spellcheckbeforesend'] = 'Check spelling before sending a message';
$labels['spellcheckoptions'] = 'Spellcheck Options';
$labels['spellcheckignoresyms'] = 'Ignore words with symbols';
$labels['spellcheckignorenums'] = 'Ignore words with numbers';
$labels['spellcheckignorecaps'] = 'Ignore words with all letters capitalised';
$labels['addtodict'] = 'Add to dictionary';
+$labels['mailtoprotohandler'] = 'Register protocol handler for mailto: links';
$labels['folder'] = 'Folder';
$labels['foldername'] = 'Folder name';
$labels['subscribed'] = 'Subscribed';
diff --git a/program/localization/en_GB/messages.inc b/program/localization/en_GB/messages.inc
index a5b1f3126..daa44d1bb 100644
--- a/program/localization/en_GB/messages.inc
+++ b/program/localization/en_GB/messages.inc
@@ -9,12 +9,12 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: Kevin Beynon |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
+$messages['errortitle'] = 'An error occured.';
$messages['loginfailed'] = 'Login failed.';
$messages['cookiesdisabled'] = 'Your browser does not accept cookies.';
$messages['sessionerror'] = 'Your session is invalid or has expired.';
@@ -22,6 +22,7 @@ $messages['storageerror'] = 'Connection to IMAP server failed.';
$messages['servererror'] = 'Server Error!';
$messages['servererrormsg'] = 'Server Error: $msg';
$messages['dberror'] = 'Database Error!';
+$messages['requesttimedout'] = 'Request timed out';
$messages['errorreadonly'] = 'Unable to perform operation. Folder is read-only.';
$messages['errornoperm'] = 'Unable to perform operation. Permission denied.';
$messages['invalidrequest'] = 'Invalid request! No data was saved.';
diff --git a/program/localization/en_US/messages.inc b/program/localization/en_US/messages.inc
index 995be7b65..cabc9998b 100644
--- a/program/localization/en_US/messages.inc
+++ b/program/localization/en_US/messages.inc
@@ -33,6 +33,7 @@ $messages['requesttimedout'] = 'Request timed out';
$messages['errorreadonly'] = 'Unable to perform operation. Folder is read-only.';
$messages['errornoperm'] = 'Unable to perform operation. Permission denied.';
$messages['invalidrequest'] = 'Invalid request! No data was saved.';
+$messages['invalidhost'] = 'Invalid server name.';
$messages['nomessagesfound'] = 'No messages found in this mailbox.';
$messages['loggedout'] = 'You have successfully terminated the session. Good bye!';
$messages['mailboxempty'] = 'Mailbox is empty.';
diff --git a/program/localization/eo/labels.inc b/program/localization/eo/labels.inc
index 22347a8cf..bea8df9bd 100644
--- a/program/localization/eo/labels.inc
+++ b/program/localization/eo/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Andreas van Cranenburgh <andreas@unstable.nl> |
+ | Author: Kristjan SCHMIDT |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -84,7 +83,7 @@ $labels['nov'] = 'Nov';
$labels['dec'] = 'Dec';
$labels['longjan'] = 'Januaro';
$labels['longfeb'] = 'Februaro';
-$labels['longmar'] = 'Marĉo';
+$labels['longmar'] = 'Marto';
$labels['longapr'] = 'Aprilo';
$labels['longjun'] = 'Junio';
$labels['longjul'] = 'Julio';
@@ -115,9 +114,9 @@ $labels['firstmessage'] = 'Montru unuan mesaÄon';
$labels['nextmessage'] = 'Montru sekvan mesaÄon';
$labels['lastmessage'] = 'Montru lastan mesaÄon';
$labels['backtolist'] = 'Reen al mesaÄo-listo';
-$labels['viewsource'] = 'Montru fonton';
-$labels['mark'] = 'Marku';
-$labels['markmessages'] = 'Marku mesaÄojn';
+$labels['viewsource'] = 'Montri fonton';
+$labels['mark'] = 'Marki';
+$labels['markmessages'] = 'Marki mesaÄojn';
$labels['markread'] = 'Kiel legita';
$labels['markunread'] = 'Kiel nelegita';
$labels['markflagged'] = 'kiel markita';
@@ -179,6 +178,7 @@ $labels['dsn'] = 'Ricev-status-konfirmo';
$labels['mailreplyintro'] = 'Je $date, $sender skribis:';
$labels['originalmessage'] = 'Originala mesaÄo';
$labels['editidents'] = 'Redaktu identojn';
+$labels['spellcheck'] = 'Literumu';
$labels['checkspelling'] = 'Kontrolu literumadon';
$labels['resumeediting'] = 'Rekomencu redaktadon';
$labels['revertto'] = 'Reiru al';
@@ -242,6 +242,7 @@ $labels['spouse'] = 'Edz(in)o';
$labels['allfields'] = 'Ĉiuj kampoj';
$labels['search'] = 'Serĉu';
$labels['advsearch'] = 'Detala sercô';
+$labels['advanced'] = 'Altnivela';
$labels['other'] = 'Alia';
$labels['typeother'] = 'Alia';
$labels['typehome'] = 'Hejmo';
@@ -262,7 +263,7 @@ $labels['contacts'] = 'Kontaktoj';
$labels['contactproperties'] = 'Kontakt-informoj';
$labels['personalinfo'] = 'Personaj informoj';
$labels['edit'] = 'Redaktu';
-$labels['cancel'] = 'Rezignu';
+$labels['cancel'] = 'Nuligi';
$labels['save'] = 'Konservi';
$labels['delete'] = 'Forigi';
$labels['rename'] = 'Alinomigu';
diff --git a/program/localization/eo/messages.inc b/program/localization/eo/messages.inc
index ffaeb6fc7..038249fb0 100644
--- a/program/localization/eo/messages.inc
+++ b/program/localization/eo/messages.inc
@@ -11,7 +11,6 @@
+-----------------------------------------------------------------------+
| Author: Andreas van Cranenburgh <andreas@unstable.nl> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
@@ -23,6 +22,7 @@ $messages['storageerror'] = 'Konekto kun IMAP-servilo malsukcesis';
$messages['servererror'] = 'Servil-eraro!';
$messages['servererrormsg'] = 'Servil-eraro: $msg';
$messages['dberror'] = 'Datumbaz-eraro!';
+$messages['errorreadonly'] = 'Ne povis fari agon. Dosierujo estas nurlega';
$messages['errornoperm'] = 'Ne povis fari agon. Ne havas permeson.';
$messages['invalidrequest'] = 'Nevalida peto';
$messages['nomessagesfound'] = 'Neniu mesaÄo en ĉi tiu dosierujo';
diff --git a/program/localization/es_ES/labels.inc b/program/localization/es_ES/labels.inc
index 3163283b4..7425dd7b8 100644
--- a/program/localization/es_ES/labels.inc
+++ b/program/localization/es_ES/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Juan Pablo <Unknown> |
+ | Author: Jorge López <jorge@adobo.org> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -212,7 +211,7 @@ $labels['mdnrequest'] = 'El emisor de este mensaje desea ser notificado cuando u
$labels['receiptread'] = 'Notificación de lectura';
$labels['yourmessage'] = 'Esto es un acuse de recibo de su mensaje';
$labels['receiptnote'] = 'Nota: Esta notificación sólo significa que su mensaje fue abierto en el ordenador del destinatario. Eso no garantiza que el destinatario haya leído o entendido el contenido del mensaje.';
-$labels['name'] = 'Mostra nombre';
+$labels['name'] = 'Nombre para mostrar';
$labels['firstname'] = 'Nombre';
$labels['surname'] = 'Apellido';
$labels['middlename'] = 'Segundo nombre';
@@ -234,7 +233,7 @@ $labels['country'] = 'País';
$labels['birthday'] = 'Cumpleaños';
$labels['anniversary'] = 'Santo';
$labels['website'] = 'Página web';
-$labels['instantmessenger'] = 'Instant Messenger';
+$labels['instantmessenger'] = 'Mensajería instantánea';
$labels['notes'] = 'Notas';
$labels['male'] = 'Hombre';
$labels['female'] = 'Mujer';
diff --git a/program/localization/es_ES/messages.inc b/program/localization/es_ES/messages.inc
index d58407fa2..186554ff7 100644
--- a/program/localization/es_ES/messages.inc
+++ b/program/localization/es_ES/messages.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: David Marzal <Unknown> |
+ | Author: pompilos <ciordia@gmail.com> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
@@ -23,6 +22,7 @@ $messages['storageerror'] = 'Error de conexión con el servidor IMAP';
$messages['servererror'] = '¡Error del servidor!';
$messages['servererrormsg'] = 'Error de servidor: $msg';
$messages['dberror'] = '¡Error de base de datos!';
+$messages['requesttimedout'] = 'Ha expirado el tiempo de respuesta';
$messages['errorreadonly'] = 'No se ha podido hacer. La bandeja es sólo de lectura';
$messages['errornoperm'] = 'Imposible realizar la operación. Permiso denegado';
$messages['invalidrequest'] = '¡Petición no válida! No se han guardado los datos.';
diff --git a/program/localization/et_EE/labels.inc b/program/localization/et_EE/labels.inc
index c9a9fcd19..3b7c1300b 100644
--- a/program/localization/et_EE/labels.inc
+++ b/program/localization/et_EE/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: yllar <Unknown> |
+ | Author: yllar |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -272,6 +271,7 @@ $labels['delete'] = 'Kustuta';
$labels['rename'] = 'Nimeta ümber';
$labels['addphoto'] = 'Lisa';
$labels['replacephoto'] = 'Asenda';
+$labels['uploadphoto'] = 'Lisa foto';
$labels['newcontact'] = 'Uue sissekande loomine';
$labels['deletecontact'] = 'Kustuta märgistatud kontaktid';
$labels['composeto'] = 'Kirjuta kiri';
diff --git a/program/localization/eu_ES/labels.inc b/program/localization/eu_ES/labels.inc
index 3c516f847..4248dbae6 100644
--- a/program/localization/eu_ES/labels.inc
+++ b/program/localization/eu_ES/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Asier Iturralde Sarasola <Unknown> |
+ | Author: Thomas |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -38,7 +37,6 @@ $labels['replyto'] = 'Erantzun-Honi';
$labels['date'] = 'Data';
$labels['size'] = 'Tamaina';
$labels['priority'] = 'Lehentasuna';
-$labels['organization'] = 'Erakundea';
$labels['mailboxlist'] = 'Karpetak';
$labels['folders'] = 'Karpetak';
$labels['messagesfromto'] = '$from -tik $to -ra $count mezuetatik';
@@ -110,8 +108,8 @@ $labels['markflagged'] = 'Markatua bezala';
$labels['markunflagged'] = 'Ez-markatua bezala';
$labels['select'] = 'Hautatu';
$labels['all'] = 'Denak';
-$labels['none'] = 'Bat ere ez';
-$labels['nonesort'] = 'Bat ere ez';
+$labels['none'] = 'Batez';
+$labels['nonesort'] = 'Batez';
$labels['unread'] = 'Irakurri gabeak';
$labels['compact'] = 'Trinkotu';
$labels['empty'] = 'Hustu';
diff --git a/program/localization/fa_IR/messages.inc b/program/localization/fa_IR/messages.inc
index f505ef7ec..2489676da 100644
--- a/program/localization/fa_IR/messages.inc
+++ b/program/localization/fa_IR/messages.inc
@@ -11,7 +11,6 @@
+-----------------------------------------------------------------------+
| Author: Hamid <abbaszadeh.h@gmail.com> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
@@ -23,6 +22,7 @@ $messages['storageerror'] = 'اتصال به سرور انباره ناموÙÙ‚
$messages['servererror'] = 'خطای سرور!';
$messages['servererrormsg'] = 'خطای سرور: $msg';
$messages['dberror'] = 'خطای پایگاه‌داده';
+$messages['requesttimedout'] = 'زمان درخواست تمام شد';
$messages['errorreadonly'] = 'ناتوانی در انجام عملیات. پوشه Ùقط خواندنی است.';
$messages['errornoperm'] = 'ناتوانی در انجام عملیات. دسترسی وجود ندارد.';
$messages['invalidrequest'] = 'درخواست نامعتبر! هیچ داده‌ای ذخیره نشد.';
diff --git a/program/localization/fi_FI/labels.inc b/program/localization/fi_FI/labels.inc
index ce37b745b..9d3cb05e0 100644
--- a/program/localization/fi_FI/labels.inc
+++ b/program/localization/fi_FI/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Jiri Grönroos <Unknown> |
+ | Author: Jiri Grönroos |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -22,7 +21,7 @@ $labels['server'] = 'Palvelin';
$labels['login'] = 'Kirjaudu';
$labels['logout'] = 'Kirjaudu ulos';
$labels['mail'] = 'Sähköposti';
-$labels['settings'] = 'Omat asetukset';
+$labels['settings'] = 'Asetukset';
$labels['addressbook'] = 'Osoitekirja';
$labels['inbox'] = 'Saapuneet';
$labels['drafts'] = 'Luonnokset';
@@ -41,6 +40,7 @@ $labels['size'] = 'Koko';
$labels['priority'] = 'Tärkeys';
$labels['organization'] = 'Organisaatio';
$labels['readstatus'] = 'Luettu';
+$labels['listoptions'] = 'Listaa valinnat...';
$labels['mailboxlist'] = 'Kansiot';
$labels['folders'] = 'Kansiot';
$labels['messagesfromto'] = 'Viestit $from-$to/$count';
@@ -396,6 +396,7 @@ $labels['spellcheckignoresyms'] = 'Jätä huomiotta sanat, joissa on symboleja';
$labels['spellcheckignorenums'] = 'Jätä huomiotta sanat, joissa on numeroita';
$labels['spellcheckignorecaps'] = 'Jätä huomiotta sanat, joissa kaikki kirjaimet on isoja';
$labels['addtodict'] = 'Lisää sanakirjaan';
+$labels['mailtoprotohandler'] = 'Rekisteröi mailto:-linkkien protokollakäsitteljä';
$labels['folder'] = 'Kansio';
$labels['foldername'] = 'Kansion nimi';
$labels['subscribed'] = 'Näytetään';
diff --git a/program/localization/fi_FI/messages.inc b/program/localization/fi_FI/messages.inc
index 004b18ca1..cfaa623b2 100644
--- a/program/localization/fi_FI/messages.inc
+++ b/program/localization/fi_FI/messages.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Jiri Grönroos <Unknown> |
+ | Author: Jiri Grönroos |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
@@ -23,6 +22,7 @@ $messages['storageerror'] = 'Yhteys IMAP-palvelimeen epäonnistui';
$messages['servererror'] = 'Palvelinvirhe!';
$messages['servererrormsg'] = 'Palvelinvirhe: $msg';
$messages['dberror'] = 'Tietokantavirhe!';
+$messages['requesttimedout'] = 'Pyyntö aikakatkaistiin';
$messages['errorreadonly'] = 'Toiminnon suoritus ei onnistu, koska hakemisto on vain lukutilassa.';
$messages['errornoperm'] = 'Toimintoa ei voitu suorittaa. Ei oikeuksia.';
$messages['invalidrequest'] = 'Virheellinen pyyntö! Tietoa ei tallennettu.';
diff --git a/program/localization/fr_FR/labels.inc b/program/localization/fr_FR/labels.inc
index ae46ea702..b6f8e462c 100644
--- a/program/localization/fr_FR/labels.inc
+++ b/program/localization/fr_FR/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Nicolas DERIVE <kalon33@ubuntu.com> |
+ | Author: Nicolas Delvaux |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -284,6 +283,7 @@ $labels['exportvcards'] = 'Exporter les contacts au format vCard';
$labels['newcontactgroup'] = 'Créer un nouveau groupe de contacts';
$labels['grouprename'] = 'Renommer le groupe';
$labels['groupdelete'] = 'Supprimer le groupe';
+$labels['groupremoveselected'] = 'Retiré les contacts sélectionnés du groupe';
$labels['previouspage'] = 'Montrer page précédente';
$labels['firstpage'] = 'Voir la première page';
$labels['nextpage'] = 'Montrer page suivante';
@@ -343,6 +343,7 @@ $labels['readwhendeleted'] = 'Marquer le message comme lu à la suppression';
$labels['flagfordeletion'] = 'Mettre le drapeau de suppression au lieu de supprimer';
$labels['skipdeleted'] = 'Ne pas montrer les messages supprimés';
$labels['deletealways'] = 'Lorsque le déplacement des messages à la corbeille échoue, supprimez-les';
+$labels['deletejunk'] = 'Supprimer directement les pourriels';
$labels['showremoteimages'] = 'Afficher les images distantes';
$labels['fromknownsenders'] = 'venant d\'expéditeurs connus';
$labels['always'] = 'toujours';
@@ -388,6 +389,7 @@ $labels['reqdsn'] = 'Toujours demander une notification d\'état de distribution
$labels['replysamefolder'] = 'Placer les réponses dans le dossier du message auquel il est répondu';
$labels['defaultaddressbook'] = 'Ajouter de nouveaux contacts au carnet d’adresses sélectionné';
$labels['autocompletesingle'] = 'Ne pas tenir compte des adresses emails alternatives dans l\'autoremplissage';
+$labels['listnamedisplay'] = 'Lister les contacts comme';
$labels['spellcheckbeforesend'] = 'Vérifier l’orthographe avant l’envoie d’un message';
$labels['spellcheckoptions'] = 'Options du vérificateur d\'orthographe';
$labels['spellcheckignoresyms'] = 'Ignorer les mots avec des symboles';
diff --git a/program/localization/fr_FR/messages.inc b/program/localization/fr_FR/messages.inc
index 8dd92b5f6..23d6af82a 100644
--- a/program/localization/fr_FR/messages.inc
+++ b/program/localization/fr_FR/messages.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Emmanuel Andry <Unknown> |
+ | Author: Nicolas Delvaux |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
@@ -23,6 +22,7 @@ $messages['storageerror'] = 'Erreur de connexion au serveur IMAP';
$messages['servererror'] = 'Erreur Serveur !';
$messages['servererrormsg'] = 'Erreur du serveur: $msg';
$messages['dberror'] = 'Erreur avec la base de donnée!';
+$messages['requesttimedout'] = 'Délai de la requête expiré';
$messages['errorreadonly'] = 'Impossible d\'effectuer cette opération. Le dossier est en lecture seule';
$messages['errornoperm'] = 'Impossible d\'effectuer cette opération. Permission refusée';
$messages['invalidrequest'] = 'Requête invalide ! Aucune donnée n\'a été sauvegardée.';
diff --git a/program/localization/he_IL/labels.inc b/program/localization/he_IL/labels.inc
index bb348d447..1d8916ef1 100644
--- a/program/localization/he_IL/labels.inc
+++ b/program/localization/he_IL/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Yaron <sh.yaron@gmail.com> |
+ | Author: Moshe Leibovitch <moish@mln.co.il> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -30,8 +29,8 @@ $labels['sent'] = 'נשלח';
$labels['trash'] = '×שפה';
$labels['junk'] = 'זבל';
$labels['subject'] = 'נוש×';
-$labels['from'] = 'השולח';
-$labels['to'] = 'הנמען';
+$labels['from'] = 'מ×ת';
+$labels['to'] = '×ל';
$labels['cc'] = 'לידיעה';
$labels['bcc'] = 'מכותב מוסתר';
$labels['replyto'] = 'כתובת למענה';
diff --git a/program/localization/he_IL/messages.inc b/program/localization/he_IL/messages.inc
index be46bea69..35e03cf32 100644
--- a/program/localization/he_IL/messages.inc
+++ b/program/localization/he_IL/messages.inc
@@ -11,7 +11,6 @@
+-----------------------------------------------------------------------+
| Author: Moshe Leibovitch <moish@mln.co.il> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
@@ -23,6 +22,7 @@ $messages['storageerror'] = 'הקשר לשרת הדו×ר נכשל';
$messages['servererror'] = '! שגי×ת שרת';
$messages['servererrormsg'] = '$msg שגי×ת שרת';
$messages['dberror'] = '! שגי××” במסד הנתוני×';
+$messages['requesttimedout'] = '×ª× ×”×–×ž×Ÿ המוקצב לבקשה';
$messages['errorreadonly'] = '×œ× × ×™×ª×Ÿ לבצע הפעולה ×›×™ התיק ניתן לקרי××” בלבד';
$messages['errornoperm'] = '×œ× × ×™×ª×Ÿ לבצע הפעולה ×›×™ ×ין הרש××” לבצעה';
$messages['invalidrequest'] = 'בקשה ×œ× ×—×•×§×™×ª. המידע ×œ× × ×©×ž×¨';
diff --git a/program/localization/hr_HR/labels.inc b/program/localization/hr_HR/labels.inc
index 930af8e25..74ef41955 100644
--- a/program/localization/hr_HR/labels.inc
+++ b/program/localization/hr_HR/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Svebor PrstaÄić <svebor.prstacic@gmail.com> |
+ | Author: gogo <trebelnik2@gmail.com> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -415,7 +414,7 @@ $labels['sortasc'] = 'Sortiraj rastućim nizom';
$labels['sortdesc'] = 'Sortiraj opadajućim nizom';
$labels['undo'] = 'Poništi';
$labels['plugin'] = 'Plugin';
-$labels['version'] = 'Verzija';
+$labels['version'] = 'InaÄica';
$labels['source'] = 'Izvor';
$labels['license'] = 'Licenca';
$labels['support'] = 'Podrška';
diff --git a/program/localization/hu_HU/labels.inc b/program/localization/hu_HU/labels.inc
index cca86185d..e3d79d5dd 100644
--- a/program/localization/hu_HU/labels.inc
+++ b/program/localization/hu_HU/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: bela <Unknown> |
+ | Author: bela |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -245,7 +244,7 @@ $labels['spouse'] = 'Házastárs';
$labels['allfields'] = 'Összes mező';
$labels['search'] = 'Keresés';
$labels['advsearch'] = 'Részletes keresés';
-$labels['advanced'] = 'Haladó beállítások';
+$labels['advanced'] = 'Haladó';
$labels['other'] = 'Egyéb';
$labels['typeother'] = 'Egyéb';
$labels['typehome'] = 'Otthon';
@@ -264,7 +263,7 @@ $labels['addfield'] = 'Új mező hozzáadása...';
$labels['addcontact'] = 'Új kapcsolat hozzáadása';
$labels['editcontact'] = 'Kapcsolat szerkesztése';
$labels['contacts'] = 'Kapcsolatok';
-$labels['contactproperties'] = 'Kapcsolatok tulajdonságai';
+$labels['contactproperties'] = 'Kapcsolat tulajdonságai';
$labels['personalinfo'] = 'Személyes adatok';
$labels['edit'] = 'Szerkesztés';
$labels['cancel'] = 'Mégsem';
@@ -345,7 +344,7 @@ $labels['flagfordeletion'] = 'Üzenet törlendőnek jelölése törlés helyett'
$labels['skipdeleted'] = 'Törölt üzenetek ne legyenek megjelenítve';
$labels['deletealways'] = 'Üzenet törlése, ha nem sikerül áthelyezni a törölt elemek mappába';
$labels['deletejunk'] = 'Közvetlen törlése az üzeneteknek a levélszemét mappában';
-$labels['showremoteimages'] = 'Távoli beágyazott képek mutatása';
+$labels['showremoteimages'] = 'Távoli beágyazott képek megjelenítése';
$labels['fromknownsenders'] = 'csak ismert feladóktól';
$labels['always'] = 'mindig';
$labels['showinlineimages'] = 'Csatolt képek megjelenítése az üzenet alatt';
@@ -397,10 +396,10 @@ $labels['spellcheckignoresyms'] = 'Speciális karaktereket tartalmazó szavak ki
$labels['spellcheckignorenums'] = 'Számot tartalmazó szavak kihagyása';
$labels['spellcheckignorecaps'] = 'Csak nagybetűt tartalmazó szavak kihagyása';
$labels['addtodict'] = 'Hozzáadás a szótárhoz';
-$labels['mailtoprotohandler'] = 'A roundcube beállítása a mailto: linkek kezelőjeként.';
+$labels['mailtoprotohandler'] = 'Beállítás a mailto: linkek kezelőjeként';
$labels['folder'] = 'Mappa';
$labels['foldername'] = 'Mappa neve';
-$labels['subscribed'] = 'Feliratkozott';
+$labels['subscribed'] = 'Feliratkozva';
$labels['messagecount'] = 'Ãœzenet';
$labels['create'] = 'Létrehozás';
$labels['createfolder'] = 'Új mappa létrehozása';
diff --git a/program/localization/hu_HU/messages.inc b/program/localization/hu_HU/messages.inc
index 6b26d8f5c..4f101b5e0 100644
--- a/program/localization/hu_HU/messages.inc
+++ b/program/localization/hu_HU/messages.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: bela <Unknown> |
+ | Author: Németh András <narzym@hotmail.com> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
@@ -23,6 +22,7 @@ $messages['storageerror'] = 'Nem sikerült csatlakozni az IMAP szerverhez';
$messages['servererror'] = 'Szerverhiba!';
$messages['servererrormsg'] = 'Szerverhiba: $msg';
$messages['dberror'] = 'Adatbázishiba!';
+$messages['requesttimedout'] = 'A kérés túllépte az időkorlátot';
$messages['errorreadonly'] = 'A műveletet nem sikerült végrehajtani. A mappa írásvédett.';
$messages['errornoperm'] = 'A műveletet nem sikerült végrehajtani. Hozzáférés megtagadva.';
$messages['invalidrequest'] = 'Érvénytelen kérés! Az adatok nem lettek elmentve.';
diff --git a/program/localization/hy_AM/labels.inc b/program/localization/hy_AM/labels.inc
index d21b48b7b..8d3f2dcdc 100644
--- a/program/localization/hy_AM/labels.inc
+++ b/program/localization/hy_AM/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: Vahan Yerkanian <vahan@yerkanian.com> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -38,15 +37,21 @@ $labels['to'] = 'ÕÕ¿Õ¡ÖÕ¸Õ²';
$labels['cc'] = 'Cc';
$labels['bcc'] = 'Bcc';
$labels['replyto'] = 'Reply-To';
+$labels['followupto'] = 'Ô» Õ°Õ¡Õ¾Õ¥Õ¬Õ¸Ö‚Õ´';
$labels['date'] = 'Ô±Õ´Õ½Õ¡Õ©Õ«Õ¾';
$labels['size'] = 'Õ‰Õ¡Öƒ';
$labels['priority'] = 'Ô±Õ¼Õ¡Õ¾Õ¥Õ¬Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶';
$labels['organization'] = 'Ô¿Õ¡Õ¦Õ´Õ¡Õ¯Õ¥Ö€ÕºÕ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶';
+$labels['readstatus'] = 'Ô¸Õ¶Õ©Õ¥Ö€ÖÕ´Õ¡Õ¶ Õ¯Õ¡Ö€Õ£Õ¡Õ¾Õ«Õ³Õ¡Õ¯';
+$labels['listoptions'] = 'Õ‘Õ¸Ö‚ÖÕ¡Õ¯Õ« ընտրանքներ…';
$labels['mailboxlist'] = 'Ô´Õ¡Ö€Õ¡Õ¯Õ¶Õ¥Ö€';
$labels['folders'] = 'Ô´Õ¡Ö€Õ¡Õ¯Õ¶Õ¥Ö€';
$labels['messagesfromto'] = 'Õ†Õ¡Õ´Õ¡Õ¯Õ¶Õ¥Ö€ $fromâ€“Õ«Ö $to–ը Õ¥Õ²Õ¡Õ® $count–իÖ';
+$labels['threadsfromto'] = 'Ô¹Õ¥Õ´Õ¡Õ¶Õ¥Ö€ $from-Õ«Ö $to Õ¨Õ¶Õ¤Õ°Õ¡Õ¶Õ¸Ö‚Ö€ $count-Õ«Ö';
$labels['messagenrof'] = 'Õ†Õ¡Õ´Õ¡Õ¯ $nr Õ¥Õ²Õ¡Õ® $count–իÖ';
+$labels['fromtoshort'] = '$from-Õ«Ö $to Õ¨Õ¶Õ¤Õ°Õ¡Õ¶Õ¸Ö‚Ö€ $count-Õ«Ö';
$labels['copy'] = 'Cc';
+$labels['move'] = 'ÕÕ¥Õ²Õ¡ÖƒÕ¸Õ­Õ¥Õ¬';
$labels['moveto'] = 'ÕÕ¥Õ²Õ¡ÖƒÕ¸Õ­Õ¥Õ¬...';
$labels['download'] = 'Õ”Õ¡Õ·Õ¥Õ¬';
$labels['filename'] = 'Õ–Õ¡ÕµÕ¬Õ« Õ¡Õ¶Õ¸Ö‚Õ¶';
@@ -91,11 +96,18 @@ $labels['longoct'] = 'Õ€Õ¸Õ¯Õ¿Õ¥Õ´Õ¢Õ¥Ö€';
$labels['longnov'] = 'Õ†Õ¸ÕµÕ¥Õ´Õ¢Õ¥Ö€';
$labels['longdec'] = 'Ô´Õ¥Õ¯Õ¿Õ¥Õ´Õ¢Õ¥Ö€';
$labels['today'] = 'Ô±ÕµÕ½Ö…Ö€';
+$labels['refresh'] = 'Ô¹Õ¡Ö€Õ´Õ¡ÖÕ¶Õ¥Õ¬';
$labels['checkmail'] = 'ÕÕ¿Õ¸Ö‚Õ£Õ¥Õ¬ Õ¶Õ¸Ö€ Õ¶Õ¡Õ´Õ¡Õ¯Õ¶Õ¥Ö€Õ¨';
$labels['compose'] = 'Ô³Ö€Õ¥Õ¬ Õ¶Õ¡Õ´Õ¡Õ¯';
$labels['writenewmessage'] = 'Õ†Õ¸Ö€ Õ¶Õ¡Õ´Õ¡Õ¯';
+$labels['reply'] = 'ÕŠÕ¡Õ¿Õ¡Õ½Õ­Õ¡Õ¶Õ¥Õ¬';
$labels['replytomessage'] = 'ÕŠÕ¡Õ¿Õ¡Õ½Õ­Õ¡Õ¶Õ¥Õ¬ Õ¶Õ¡Õ´Õ¡Õ¯Õ«Õ¶';
$labels['replytoallmessage'] = 'ÕŠÕ¡Õ¿Õ¡Õ½Õ­Õ¡Õ¶Õ¥Õ¬ Õ¢Õ¸Õ¬Õ¸Ö€Õ«Õ¶';
+$labels['replyall'] = 'ÕŠÕ¡Õ¿Õ¡Õ½Õ­Õ¡Õ¶Õ¥Õ¬ Õ¢Õ¸Õ¬Õ¸Ö€Õ«Õ¶';
+$labels['replylist'] = 'ÕŠÕ¡Õ¿Õ¡Õ½Õ­Õ¡Õ¶Õ¥Õ¬ ÖÕ¸Ö‚ÖÕ¡Õ¯Õ«Õ¶';
+$labels['forward'] = 'Ô±Õ¼Õ¡Õ»';
+$labels['forwardinline'] = 'Õ“Õ¸Õ­Õ¡Õ¶ÖÕ¥Õ¬ Õ¶Õ¡Õ´Õ¡Õ¯Õ« Õ´Õ¥Õ»';
+$labels['forwardattachment'] = 'Õ“Õ¸Õ­Õ¡Õ¶ÖÕ¥Õ¬ Õ¯ÖÕ¾Õ¡Õ®';
$labels['forwardmessage'] = 'Õ“Õ¸Õ­Õ¡Õ¶ÖÕ¥Õ¬ Õ¶Õ¡Õ´Õ¡Õ¯Õ¨';
$labels['deletemessage'] = 'Õ‹Õ¶Õ»Õ¥Õ¬ Õ¶Õ¡Õ´Õ¡Õ¯Õ¨';
$labels['movemessagetotrash'] = 'Ô³ÖÕ¥Õ¬ Õ¡Õ²Õ¢Õ¡Ö€Õ¯Õ²Õ¨';
@@ -106,19 +118,48 @@ $labels['nextmessage'] = 'Õ‘Õ¸Ö‚ÖÕ¡Õ¤Ö€Õ¥Õ¬ Õ°Õ¡Õ»Õ¸Ö€Õ¤ Õ¶Õ¡Õ´Õ¡Õ¯Õ¨';
$labels['lastmessage'] = 'Õ‘Õ¸Ö‚ÖÕ¡Õ¤Ö€Õ¥Õ¬ Õ¾Õ¥Ö€Õ»Õ«Õ¶ Õ¶Õ¡Õ´Õ¡Õ¯Õ¨';
$labels['backtolist'] = 'ÕŽÕ¥Ö€Õ¡Õ¤Õ¡Õ¼Õ¶Õ¡Õ¬ Õ¶Õ¡Õ´Õ¡Õ¯Õ¶Õ¥Ö€Õ« ÖÕ¸Ö‚ÖÕ¡Õ¯';
$labels['viewsource'] = 'Õ‘Õ¸Ö‚ÖÕ¡Õ¤Ö€Õ¥Õ¬ Õ¶Õ¡Õ´Õ¡Õ¯Õ« Õ¯Õ¸Õ¤Õ¨';
+$labels['mark'] = 'Õ†Õ·Õ¥Õ¬';
$labels['markmessages'] = 'Õ†Õ·Õ¥Õ¬ Õ¶Õ¡Õ´Õ¡Õ¯Õ¶Õ¥Ö€Õ¨';
$labels['markread'] = 'Õ¸Ö€ÕºÕ¥Õ½ Õ¯Õ¡Ö€Õ¤Õ¡ÖÕ¡Õ®';
$labels['markunread'] = 'Õ¸Ö€ÕºÕ¥Õ½ Õ¹Õ¯Õ¡Ö€Õ¤Õ¡ÖÕ¡Õ®';
$labels['markflagged'] = 'Õ¸Ö€ÕºÕ¥Õ½ Õ¶Õ·Õ¾Õ¡Õ®';
$labels['markunflagged'] = 'Õ¸Ö€ÕºÕ¥Õ½ Õ¹Õ¶Õ·Õ¾Õ¡Õ®';
+$labels['moreactions'] = 'Հավելյալ գործողություններ…';
+$labels['more'] = 'Ô±Õ¾Õ¥Õ¬Õ«Õ¶';
+$labels['back'] = 'ÔµÕ¿';
+$labels['options'] = 'Ô¸Õ¶Õ¿Ö€Õ¡Õ¶Ö„Õ¶Õ¥Ö€';
$labels['select'] = 'Õ†Õ·Õ¥Õ¬';
$labels['all'] = 'Ô²Õ¸Õ¬Õ¸Ö€Õ¨';
$labels['none'] = 'Õ‰Õ¶Õ·Õ¥Õ¬';
$labels['nonesort'] = 'Õ‰Õ¶Õ·Õ¥Õ¬';
+$labels['currpage'] = 'Ô±Õ¼Õ¯Õ¡ Õ§Õ»';
$labels['unread'] = 'Õ‰Õ¯Õ¡Ö€Õ¤Õ¡ÖÕ¡Õ®Õ¨';
$labels['flagged'] = 'Õ†Õ·Õ¾Õ¡Õ®';
$labels['unanswered'] = 'Ô±Õ¶ÕºÕ¡Õ¿Õ¡Õ½Õ­Õ¡Õ¶';
+$labels['deleted'] = 'Õ‹Õ¶Õ»Õ¾Õ¡Õ®';
+$labels['invert'] = 'Õ“Õ¸Õ­Õ¡Õ¿Õ¥Õ²Õ¥Õ¬';
$labels['filter'] = 'Ô¶Õ¿Õ«Õ¹';
+$labels['list'] = 'Õ‘Õ¸Ö‚ÖÕ¡Õ¯';
+$labels['threads'] = 'Ô¹Õ¥Õ´Õ¡Õ¶Õ¥Ö€';
+$labels['expand-all'] = 'Ô¸Õ¶Õ¤Õ¬Õ¡ÕµÕ¶Õ¥Õ¬ Õ¢Õ¸Õ¬Õ¸Ö€Õ¨';
+$labels['expand-unread'] = 'Ô¸Õ¶Õ¤Õ¬Õ¡ÕµÕ¶Õ¥Õ¬ Õ¹Õ¯Õ¡Ö€Õ¤Õ¡ÖÕ¾Õ¡Õ®Õ¨';
+$labels['collapse-all'] = 'Õ“Õ¬Õ¹Õ¥Õ¬ Õ¢Õ¸Õ¬Õ¸Ö€Õ¨';
+$labels['threaded'] = 'Ô¹Õ¥Õ´Õ¡Õ¾Õ¸Ö€Õ¾Õ¡Õ®';
+$labels['autoexpand_threads'] = 'Ô²Õ¡Ö Õ¡Õ¶Õ¥Õ¬ Õ©Õ¥Õ´Õ¡Õ¶Õ¥Ö€Õ¨';
+$labels['do_expand'] = 'Õ¢Õ¸Õ¬Õ¸Ö€ Õ©Õ¥Õ´Õ¡Õ¶Õ¥Ö€Õ¨';
+$labels['expand_only_unread'] = 'Õ´Õ«Õ¡ÕµÕ¶ Õ¹Õ¯Õ¡Ö€Õ¤Õ¡ÖÕ¾Õ¡Õ® Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¸Õ¾';
+$labels['fromto'] = 'ÕˆÖ‚Õ´Õ«Ö/ÕˆÖ‚Õ´';
+$labels['flag'] = 'Õ†Õ·Õ¡Õ¶';
+$labels['attachment'] = 'Ô¿ÖÕ¸Ö€Õ¤';
+$labels['sentdate'] = 'ÕˆÖ‚Õ²Õ¡Ö€Õ¯Õ´Õ¡Õ¶ Õ¡Õ´Õ½Õ¡Õ©Õ«Õ¾';
+$labels['arrival'] = 'ÕÕ¿Õ¡ÖÕ´Õ¡Õ¶ Ô±Õ´Õ½Õ¡Õ©Õ«Õ¾';
+$labels['asc'] = 'Õ¨Õ½Õ¿ Õ¡Õ³Õ´Õ¡Õ¶';
+$labels['desc'] = 'Õ¨Õ½Õ¿ Õ¶Õ¾Õ¡Õ¦Õ´Õ¡Õ¶';
+$labels['listcolumns'] = 'Õ‘Õ¸Ö‚ÖÕ¡Õ¯Õ« Õ½ÕµÕ¸Ö‚Õ¶ÕµÕ¡Õ¯Õ¶Õ¥Ö€';
+$labels['listsorting'] = 'ÕÕ¥Õ½Õ¡Õ¯Õ¡Õ¾Õ¸Ö€Õ´Õ¡Õ¶ Õ½ÕµÕ¸Ö‚Õ¶ÕµÕ¡Õ¯';
+$labels['listorder'] = 'ÕÕ¥Õ½Õ¡Õ¯Õ¡Õ¾Õ¸Ö€Õ´Õ¡Õ¶ Õ¯Õ¡Ö€Õ£Õ¨';
+$labels['listmode'] = 'Õ‘Õ¸Ö‚ÖÕ¡Õ¯Õ¸Õ¾ Õ¿Õ¥Õ½Ö„Õ« Õ¿Õ¡Ö€Õ¢Õ¥Ö€Õ¡Õ¯Õ¨';
+$labels['folderactions'] = 'Պանակի գործողություններ…';
$labels['compact'] = 'ÕÕ¥Õ²Õ´Õ¥Õ¬';
$labels['empty'] = 'Ô´Õ¡Õ¿Õ¡Ö€Õ¯Õ¥Õ¬';
$labels['quota'] = 'Ô´Õ«Õ½Õ¯Õ¡ÕµÕ«Õ¶ Õ¿Õ¡Ö€Õ¡Õ®Ö„';
@@ -126,19 +167,31 @@ $labels['unknown'] = 'Õ¡Õ¶Õ°Õ¡ÕµÕ¿';
$labels['unlimited'] = 'Õ¡Õ¶Õ½Õ¡Õ°Õ´Õ¡Õ¶Õ¡ÖƒÕ¡Õ¯';
$labels['quicksearch'] = 'Ô±Ö€Õ¡Õ£ Õ¸Ö€Õ¸Õ¶Õ¸Ö‚Õ´';
$labels['resetsearch'] = 'ÕŽÕ¥Ö€Õ½Õ¯Õ½Õ¥Õ¬ Õ¸Ö€Õ¸Õ¶Õ¸Ö‚Õ´Õ¨';
+$labels['searchmod'] = 'ÕˆÖ€Õ¸Õ¶Õ´Õ¡Õ¶ ÖƒÕ¸ÖƒÕ¸Õ­Õ«Õ¹Õ¶Õ¥Ö€';
+$labels['msgtext'] = 'ÕˆÕ²Õ» Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨';
$labels['openinextwin'] = 'Ô²Õ¡ÖÕ¥Õ¬ Õ¶Õ¸Ö€ ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ¸Ö‚Õ´';
+$labels['emlsave'] = 'Õ†Õ¥Ö€Õ¢Õ¥Õ¼Õ¶Õ¥Õ¬ (.eml)';
+$labels['editasnew'] = 'Ô½Õ´Õ¢Õ¡Õ£Ö€Õ¥Õ¬ Õ¸Ö€ÕºÕ¥Õ½ Õ¶Õ¸Ö€';
$labels['savemessage'] = 'Õ€Õ«Õ·Õ¥Õ¬ Õ¸Ö€ÕºÕ¥Õ½ Õ½Ö‡Õ¡Õ£Õ«Ö€';
$labels['sendmessage'] = 'ÕˆÖ‚Õ²Õ¡Ö€Õ¯Õ¥Õ¬';
$labels['addattachment'] = 'Ô¿ÖÕ¥Õ¬ Ö†Õ¡ÕµÕ¬';
$labels['charset'] = 'ÕÕ¡Õ¼Õ¡Õ·Õ¡Ö€';
$labels['editortype'] = 'Ô½Õ´Õ¢Õ¡Õ£Ö€Õ« Õ¿Õ«ÕºÕ¨';
$labels['returnreceipt'] = 'ÕÕ¿Õ¡ÖÕ´Õ¡Õ¶ Õ°Õ¡Õ¾Õ¡Õ½Õ¿Õ¡Õ£Õ«Ö€';
+$labels['dsn'] = 'Ô±Õ¼Õ¡Ö„Õ´Õ¡Õ¶ Õ¯Õ¡Ö€Õ£Õ¡Õ¾Õ«Õ³Õ¡Õ¯Õ« Õ®Õ¡Õ¶Õ¸Ö‚ÖÕ¸Ö‚Õ´';
+$labels['mailreplyintro'] = '$date-Õ«Õ¶, $sender-Õ¨ Õ£Ö€Õ¥Ö.';
+$labels['originalmessage'] = 'Ô±Õ¼Õ¡Õ»Õ«Õ¶ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨';
+$labels['editidents'] = 'Ô½Õ´Õ¢Õ¡Õ£Ö€Õ¥Õ¬ Õ«Õ¶Ö„Õ¶Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¨';
+$labels['spellcheck'] = 'ÕÕ¡Õ¼Õ¡Õ½Õ­Õ¡Õ¬Õ¶Õ¥Ö€';
$labels['checkspelling'] = 'ÕÕ¿Õ¸Ö‚Õ£Õ¥Õ¬ Õ¸Ö‚Õ²Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨';
$labels['resumeediting'] = 'Õ‡Õ¡Ö€Õ¸Ö‚Õ¶Õ¡Õ¯Õ¥Õ¬ Õ­Õ´Õ¢Õ¡Õ£Ö€Õ¸Ö‚Õ´Õ¨';
$labels['revertto'] = 'ÕŽÕ¥Ö€Õ¡Õ¯Õ¡Õ¶Õ£Õ¶Õ¥Õ¬';
+$labels['attach'] = 'Ô¿ÖÕ¥Õ¬';
$labels['attachments'] = 'Ô¿ÖÕ¸Ö‚Õ´Õ¶Õ¥Ö€';
$labels['upload'] = 'Ô²Õ¥Õ¼Õ¶Õ¥Õ¬';
+$labels['uploadprogress'] = '$percent ($current $total-Õ«Ö)';
$labels['close'] = 'Õ“Õ¡Õ¯Õ¥Õ¬';
+$labels['messageoptions'] = 'Հաղորդագրության ընտրանքներ…';
$labels['low'] = 'Õ‘Õ¡Õ®Ö€';
$labels['lowest'] = 'Õ†Õ¾Õ¡Õ¦Õ¡Õ£Õ¸Ö‚ÕµÕ¶';
$labels['normal'] = 'Õ†Õ¸Ö€Õ´Õ¡Õ¬';
@@ -147,6 +200,7 @@ $labels['highest'] = 'Ô¿Õ¡Ö€Ö‡Õ¸Ö€Õ¡Õ£Õ¸Ö‚ÕµÕ¶';
$labels['nosubject'] = '(Õ¡Õ¼Õ¡Õ¶Ö Õ¾Õ¥Ö€Õ¶Õ¡Õ£Ö€Õ«)';
$labels['showimages'] = 'Õ‘Õ¸Ö‚ÖÕ¡Õ¤Ö€Õ¥Õ¬ Õ¶Õ¯Õ¡Ö€Õ¶Õ¥Ö€Õ¨';
$labels['alwaysshow'] = 'Õ„Õ«Õ·Õ¿ ÖÕ¸Ö‚ÖÕ¡Õ¤Ö€Õ¥Õ¬ ÕºÕ¡Õ¿Õ¯Õ¥Ö€Õ¶Õ¥Ö€Õ¨ $sender–իÖ';
+$labels['isdraft'] = 'ÕÕ¡ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¡Õ¶ Õ½Ö‡Õ¡Õ£Õ«Ö€ Õ§';
$labels['htmltoggle'] = 'HTML';
$labels['plaintoggle'] = 'ÕŠÕ¡Ö€Õ¦ Õ¿Õ¥Ö„Õ½Õ¿';
$labels['savesentmessagein'] = 'Ô³Ö€Õ¡Õ¶ÖÕ¥Õ¬ Õ¸Ö‚Õ²Õ¡Ö€Õ¯Õ¾Õ¡Õ® Õ¶Õ¡Õ´Õ¡Õ¯Õ¨';
@@ -155,6 +209,7 @@ $labels['maxuploadsize'] = 'Ô±Õ¼Õ¡Õ¾Õ¥Õ¬Õ¡Õ£Õ¸Ö‚ÕµÕ¶ Õ©Õ¸Ö‚ÕµÕ¬Õ¡Õ¿Ö€Õ¥Õ¬Õ« Ö†Õ¡
$labels['addcc'] = 'Ô±Õ¾Õ¥Õ¬Õ¡ÖÕ¶Õ¥Õ¬ Cc';
$labels['addbcc'] = 'Ô±Õ¾Õ¥Õ¬Õ¡ÖÕ¶Õ¥Õ¬ Bcc';
$labels['addreplyto'] = 'Ô±Õ¾Õ¥Õ¬Õ¡ÖÕ¶Õ¥Õ¬ Reply-To';
+$labels['addfollowupto'] = 'Ô±Õ¾Õ¥Õ¬Õ¡ÖÕ¶Õ¥Õ¬ Õ°Õ¡Õ¾Õ¥Õ¬Õ¸Ö‚Õ´';
$labels['mdnrequest'] = 'Õ†Õ¡Õ´Õ¡Õ¯Õ« Õ°Õ¥Õ²Õ«Õ¶Õ¡Õ¯Õ¨ Õ­Õ¶Õ¤Ö€Õ¥Õ¬ Õ§ Õ¶Õ¡Õ´Õ¡Õ¯Õ¨ Õ¯Õ¡Ö€Õ¤Õ¡Õ¬Õ¸Ö‚Õ¶ ÕºÕ¥Õ½ Õ¿Õ¥Õ²Õ¥Õ¯Õ¡ÖÕ¶Õ¥Õ¬ Õ«Ö€Õ¥Õ¶Ö‰ Õ‘Õ¡Õ¶Õ¯Õ¡Õ¶Õ¸Ö‚Õ´ Õ§Ö„ ÕÕ¥Õ²Õ¥Õ¯Õ¡ÖÕ¶Õ¥ÕžÕ¬Ö‰';
$labels['receiptread'] = 'Õ†Õ¡Õ´Õ¡Õ¯Õ« Õ¨Õ¶Õ©Õ¥Ö€ÖÕ´Õ¡Õ¶ Õ®Õ¡Õ¶Õ¸Ö‚ÖÕ¡Õ£Õ«Ö€';
$labels['yourmessage'] = 'ÕÕ¡ ÕÕ¥Ö€ Õ¶Õ¡Õ´Õ¡Õ¯Õ« Õ¨Õ¶Õ©Õ¥Ö€ÖÕ´Õ¡Õ¶ Õ®Õ¡Õ¶Õ¸Ö‚ÖÕ¡Õ£Õ«Ö€Õ¶ Õ§';
@@ -162,13 +217,65 @@ $labels['receiptnote'] = 'Õ†Õ·Õ¸Ö‚Õ´Õ Ô±ÕµÕ½ Õ®Õ¡Õ¶Õ¸Ö‚ÖÕ¡Õ£Õ«Ö€Õ¨ Õ¨Õ¶Õ¤Õ¡Õ´Õ
$labels['name'] = 'Õ„Õ¡Õ¯Õ¡Õ¶Õ¸Ö‚Õ¶';
$labels['firstname'] = 'Ô±Õ¶Õ¸Ö‚Õ¶';
$labels['surname'] = 'Ô±Õ¦Õ£Õ¡Õ¶Õ¸Ö‚Õ¶';
+$labels['middlename'] = 'Õ„Õ«Õ»Õ«Õ¶ Õ¡Õ¶Õ¸Ö‚Õ¶';
+$labels['nameprefix'] = 'Õ†Õ¡Õ­Õ¡Õ®Õ¡Õ¶Ö';
+$labels['namesuffix'] = 'ÕŽÕ¥Ö€Õ»Õ¡Õ®Õ¡Õ¶Ö';
+$labels['nickname'] = 'Õ„Õ¡Õ¯Õ¡Õ¶Õ¸Ö‚Õ¶';
+$labels['jobtitle'] = 'ÕŠÕ¡Õ·Õ¿Õ¸Õ¶';
+$labels['department'] = 'Ô²Õ¡ÕªÕ¡Õ¶Õ´Õ¸Ö‚Õ¶Ö„';
+$labels['gender'] = 'ÕÕ¥Õ¼';
+$labels['maidenname'] = 'Õ„Õ«Õ¶Õ¹Õ¡Õ´Õ¸Ö‚Õ½Õ¶Õ¡Õ¯Õ¡Õ¶ Õ¡Õ¦Õ£Õ¡Õ¶Õ¸Ö‚Õ¶';
$labels['email'] = 'Էկ–փոստ';
+$labels['phone'] = 'Õ€Õ¥Õ¼Õ¡Õ­Õ¸Õ½';
+$labels['address'] = 'Õ€Õ¡Õ½ÖÕ¥';
+$labels['street'] = 'Õ“Õ¸Õ²Õ¸Ö';
+$labels['locality'] = 'Õ”Õ¡Õ²Õ¡Ö„';
+$labels['zipcode'] = 'Õ“Õ¸Õ½Õ¿Õ¡ÕµÕ«Õ¶ Õ¯Õ¸Õ¤';
+$labels['region'] = 'Õ„Õ¡Ö€Õ¦';
+$labels['country'] = 'ÔµÖ€Õ¯Õ«Ö€';
+$labels['birthday'] = 'Ô¾Õ¶Õ¶Õ¤ÕµÕ¡Õ¶ Ö…Ö€';
+$labels['anniversary'] = 'ÕÕ¡Ö€Õ¥Õ¤Õ¡Ö€Õ±';
+$labels['website'] = 'Ô¿Õ¡ÕµÖ„';
+$labels['instantmessenger'] = 'IM';
+$labels['notes'] = 'Õ†Õ·Õ¸Ö‚Õ´Õ¶Õ¥Ö€';
+$labels['male'] = 'Õ¡Ö€Õ¡Õ¯Õ¡Õ¶';
+$labels['female'] = 'Õ«Õ£Õ¡Õ¯Õ¡Õ¶';
+$labels['manager'] = 'Õ„Õ¥Õ¶Õ¥Õ»Õ¥Ö€';
+$labels['assistant'] = 'Õ•Õ£Õ¶Õ¡Õ¯Õ¡Õ¶';
+$labels['typeassistant'] = 'Õ•Õ£Õ¶Õ¡Õ¯Õ¡Õ¶';
+$labels['spouse'] = 'Õ¡Õ´Õ¸Ö‚Õ½Õ«Õ¶';
+$labels['allfields'] = 'Ô²Õ¸Õ¬Õ¸Ö€ Õ¤Õ¡Õ·Õ¿Õ¥Ö€Õ¨';
+$labels['search'] = 'ÕˆÖ€Õ¸Õ¶Õ¸Ö‚Õ´';
+$labels['advsearch'] = 'Ô½Õ¸Ö€Õ¡ÖÕ¾Õ¡Õ® Õ¸Ö€Õ¸Õ¶Õ¸Ö‚Õ´';
+$labels['advanced'] = 'Ô½Õ¸Ö€Õ¡ÖÕ¾Õ¡Õ®';
+$labels['other'] = 'Ô±ÕµÕ¬';
+$labels['typeother'] = 'Ô±ÕµÕ¬';
+$labels['typehome'] = 'ÕÕ¸Ö‚Õ¶';
+$labels['typework'] = 'Ô±Õ·Õ­Õ¡Õ¿Õ¡Õ¶Ö„';
+$labels['typemobile'] = 'Ô²Õ»Õ»Õ¡ÕµÕ«Õ¶';
+$labels['typemain'] = 'Ô³Õ¬Õ­Õ¡Õ¾Õ¸Ö€';
+$labels['typehomefax'] = 'ÕÕ¡Õ¶ Ö†Õ¡Ö„Õ½';
+$labels['typeworkfax'] = 'Ô±Õ·Õ¿Õ¡Õ¶Õ¡Õ¶Ö„Õ¡ÕµÕ«Õ¶ Ö†Õ¡Ö„Õ½';
+$labels['typecar'] = 'Õ„Õ¥Ö„Õ¥Õ¶Õ¡';
+$labels['typepager'] = 'Õ“Õ¥ÕµÕ»Õ¥Ö€';
+$labels['typevideo'] = 'ÕÕ¥Õ½Õ¡Õ¶ÕµÕ¸Ö‚Õ©';
+$labels['typehomepage'] = 'ÕÕ¯Õ«Õ¦Õ¢';
+$labels['typeblog'] = 'Ô²Õ¬Õ¸Õ£';
+$labels['typeprofile'] = 'ÕŠÖ€Õ¸Ö†Õ¡ÕµÕ¬';
+$labels['addfield'] = 'Ô±Õ¾Õ¥Õ¬Õ¡ÖÕ¶Õ¥Õ¬ դաշտ…';
$labels['addcontact'] = 'Ô³Ö€Õ¡Õ¶ÖÕ¥Õ¬ Õ¶Õ·Õ¡Õ® Õ°Õ¡Õ½ÖÕ¥Õ¶';
$labels['editcontact'] = 'Ô½Õ´Õ¢Õ¡Õ£Ö€Õ¥Õ¬ Õ°Õ¡Õ½ÖÕ¥Õ¶';
+$labels['contacts'] = 'Ô¿Õ¡ÕºÕ¸Ö€Õ¤Õ¶Õ¥Ö€';
+$labels['contactproperties'] = 'Ô¿Õ¡ÕºÕ¸Ö€Õ¤Õ« Õ°Õ¡Õ¿Õ¯Õ¡Õ¶Õ«Õ·Õ¶Õ¥Ö€';
+$labels['personalinfo'] = 'Ô±Õ¶Õ±Õ¶Õ¡Õ¯Õ¡Õ¶ Õ¿Õ¾ÕµÕ¡Õ¬Õ¶Õ¥Ö€';
$labels['edit'] = 'Ô½Õ´Õ¢Õ¡Õ£Ö€Õ¥Õ¬';
$labels['cancel'] = 'Ô¹Õ¡Ö€Õ£Õ¥Õ¬';
$labels['save'] = 'Õ€Õ«Õ·Õ¥Õ¬';
$labels['delete'] = 'Õ‹Õ¶Õ»Õ¥Õ¬';
+$labels['rename'] = 'ÕŽÕ¥Ö€Õ¡Õ¶Õ¾Õ¡Õ¶Õ¥Õ¬';
+$labels['addphoto'] = 'Ô±Õ¾Õ¥Õ¬Õ¡ÖÕ¶Õ¥Õ¬';
+$labels['replacephoto'] = 'Õ“Õ¸Õ­Õ¡Ö€Õ«Õ¶Õ¥Õ¬';
+$labels['uploadphoto'] = 'ÕŽÕ¥Ö€Õ¢Õ¥Õ¼Õ¶Õ¥Õ¬ Õ¬Õ¸Ö‚Õ½Õ¡Õ¶Õ¯Õ¡Ö€';
$labels['newcontact'] = 'ÕÕ¿Õ¥Õ²Õ®Õ¥Õ¬ Õ¶Õ¸Ö€ Õ°Õ¡Õ½ÖÕ¥Ö„Õ¡Ö€Õ¿';
$labels['deletecontact'] = 'Õ‹Õ¶Õ»Õ¥Õ¬ Õ¶Õ·Õ¡Õ® Õ¶Õ¡Õ´Õ¡Õ¯Õ¶Õ¥Ö€Õ¨';
$labels['composeto'] = 'Ô³Ö€Õ¥Õ¬ Õ¶Õ¡Õ´Õ¡Õ¯';
@@ -176,26 +283,38 @@ $labels['contactsfromto'] = 'Õ€Õ¡Õ½ÖÕ¥Õ¶Õ¥Ö€ $fromâ€“Õ«Ö $to–ը Õ¥Õ²Õ¡Õ® $co
$labels['print'] = 'ÕÕºÕ¥Õ¬';
$labels['export'] = 'Ô±Ö€Õ¿Õ¡Õ°Õ¡Õ¶Õ¥Õ¬';
$labels['exportvcards'] = 'Ô±Ö€Õ¿Õ¡Õ°Õ¡Õ¶Õ¥Õ¬ Õ°Õ¡Õ½ÖÕ¥Õ¶Õ¥Ö€Õ¨ vCard Õ¹Õ¡ÖƒÕ¡Õ±Ö‡Õ¸Õ¾';
+$labels['newcontactgroup'] = 'ÕÕ¿Õ¥Õ²Õ®Õ¥Õ¬ Õ¯Õ¡ÕºÕ¸Ö€Õ¤Õ¶Õ¥Ö€Õ« Õ¶Õ¸Ö€ Õ­Õ¸Ö‚Õ´Õ¢';
+$labels['grouprename'] = 'ÕŽÕ¥Ö€Õ¡Õ¶Õ¾Õ¡Õ¶Õ¥Õ¬ Õ­Õ¸Ö‚Õ´Õ¢Õ¨';
+$labels['groupdelete'] = 'Õ‹Õ¶Õ»Õ¥Õ¬ Õ­Õ¸Ö‚Õ´Õ¢Õ¨';
+$labels['groupremoveselected'] = 'Õ€Õ¥Õ¼Õ¡ÖÕ¶Õ¥Õ¬ Õ¶Õ·Õ¾Õ¡Õ® Õ¡Õ¶Õ±Õ¡Õ¶Ö Õ­Õ´Õ¢Õ«Ö';
$labels['previouspage'] = 'Õ‘Õ¸Ö‚ÖÕ¡Õ¤Ö€Õ¥Õ¬ Õ¶Õ¡Õ­Õ¸Ö€Õ¤ Õ§Õ»Õ¨';
$labels['firstpage'] = 'Õ‘Õ¸Ö‚ÖÕ¡Õ¤Ö€Õ¥Õ¬ Õ¡Õ¼Õ¡Õ»Õ«Õ¶ Õ§Õ»Õ¨';
$labels['nextpage'] = 'Õ‘Õ¸Ö‚ÖÕ¡Õ¤Ö€Õ¥Õ¬ Õ°Õ¡Õ»Õ¸Ö€Õ¤ Õ§Õ»Õ¨';
$labels['lastpage'] = 'Õ‘Õ¸Ö‚ÖÕ¡Õ¤Ö€Õ¥Õ¬ Õ¾Õ¥Ö€Õ»Õ«Õ¶ Õ§Õ»Õ¨';
+$labels['group'] = 'Ô½Õ¸Ö‚Õ´Õ¢';
$labels['groups'] = 'Ô½Õ´Õ¢Õ¥Ö€';
$labels['personaladrbook'] = 'Ô±Õ¶Õ±Õ¶Õ¡Õ¯Õ¡Õ¶ Õ°Õ¡Õ½ÖÕ¥Õ¶Õ¥Ö€';
+$labels['searchsave'] = 'ÕŠÕ¡Õ°ÕºÕ¡Õ¶Õ¥Õ¬ Õ¸Ö€Õ¸Õ¶Õ¸Ö‚Õ´Õ¨';
+$labels['searchdelete'] = 'Õ‹Õ¶Õ»Õ¥Õ¬ Õ¸Ö€Õ¸Õ¶Õ¸Ö‚Õ´Õ¨';
$labels['import'] = 'Õ†Õ¥Ö€Õ¯Ö€Õ¥Õ¬';
$labels['importcontacts'] = 'Õ†Õ¥Ö€Õ¯Ö€Õ¥Õ¬ Õ°Õ¡Õ½ÖÕ¥Õ¶Õ¥Ö€';
$labels['importfromfile'] = 'Õ†Õ¥Ö€Õ¯Ö€Õ¥Õ¬ Ö†Õ¡ÕµÕ¬Õ«Ö';
+$labels['importtarget'] = 'Ô±Õ¾Õ¥Õ¬Õ¡ÖÕ¶Õ¥Õ¬ Õ¶Õ¸Ö€ Õ¯Õ¡ÕºÕ¸Ö€Õ¤Õ¶Õ¥Ö€ Õ°Õ¡Õ½ÖÕ¥Õ¡Õ£Ö€Ö„Õ¸Ö‚Õ´';
$labels['importreplace'] = 'Õ“Õ¸Õ­Õ¥Õ¬ Õ¸Õ²Õ» Õ°Õ¡Õ½ÖÕ¥Õ¡Õ£Õ«Ö€Ö„Õ¨';
$labels['importtext'] = 'Ô´Õ¸Ö‚Ö„ Õ¯Õ¡Ö€Õ¸Õ² Õ¥Ö„ Õ¶Õ¥Ö€Õ¯Ö€Õ¥Õ¬ Õ¶Õ¸Ö€ Õ°Õ¡Õ½ÖÕ¥Õ¶Õ¥Ö€ Õ¡Õ¼Õ¯Õ¡ Õ°Õ¡Õ½ÖÕ¥Õ¡Õ£Ö€Ö„Õ«ÖÖ‰ Õ€Õ¡Õ´Õ¡Õ¯Õ¡Ö€Õ£Õ¨ Õ¨Õ¶Õ¤Õ¸Ö‚Õ¶Õ¸Ö‚Õ´ Õ§ Õ°Õ¡Õ½ÖÕ¥Õ¶Õ¥Ö€Õ« Õ¶Õ¥Ö€Õ¯Ö€Õ¸Ö‚Õ´Õ¨ <a href="http://en.wikipedia.org/wiki/VCard">vCard</a> Õ¹Õ¡ÖƒÕ¡Õ±Ö‡Õ¸Õ¾Ö‰';
$labels['done'] = 'Ô±Õ¾Õ¡Ö€Õ¿Õ¾Õ¡Õ® Õ§';
$labels['settingsfor'] = 'Õ†Õ¡Õ­Õ¡Õ½Õ«Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€';
+$labels['about'] = 'Õ†Õ¯Õ¡Ö€Õ¡Õ£Õ«Ö€';
$labels['identities'] = 'Ô±Õ¶Õ±Õ«Ö„';
$labels['manageidentities'] = 'Ô¿Õ¡Ö€Õ£Õ¡Õ¾Õ¸Ö€Õ¥Õ¬ Õ¡Õ¶Õ±Õ¡Õ¶Ö';
$labels['newidentity'] = 'Õ†Õ¸Ö€ Õ¡Õ¶Õ±';
$labels['newitem'] = 'Õ†Õ¸Ö€ Õ«Ö€';
$labels['edititem'] = 'Ô½Õ´Õ¢Õ¡Õ£Ö€Õ¥Õ¬ Õ«Ö€Õ¨';
$labels['preferhtml'] = 'Ô³Õ¥Ö€Õ¡Õ¤Õ¡Õ½Õ¥Õ¬ HTML';
+$labels['defaultcharset'] = 'Ô¼Õ¼Õ¥Õ¬ÕµÕ¡Õ¬ Õ¿Õ¡Õ¼Õ¡Õ·Õ¡Ö€';
$labels['htmlmessage'] = 'HTML Õ¶Õ¡Õ´Õ¡Õ¯';
+$labels['dateformat'] = 'Ô±Õ´Õ½Õ¡Õ©Õ¾Õ« Õ±Ö‡Õ¡Õ¹Õ¡Öƒ';
+$labels['timeformat'] = 'ÔºÕ¡Õ´Õ¡Õ¶Õ¡Õ¯Õ« Õ±Ö‡Õ¡Õ¹Õ¡Öƒ';
$labels['prettydate'] = 'ÕŠÕ¡Ö€Õ¦ Õ¡Õ´Õ½Õ¡Õ©Õ¾Õ¥Ö€';
$labels['setdefault'] = 'Õ€Õ«Õ´Õ¶Õ¡Õ¯Õ¡Õ¶';
$labels['autodetect'] = 'Ô±Õ¾Õ¿Õ¸';
@@ -205,6 +324,7 @@ $labels['pagesize'] = 'ÕÕ¸Õ²Õ¥Ö€ Õ¡Õ¼ Õ§Õ»';
$labels['signature'] = 'ÕÕ¿Õ¸Ö€Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶';
$labels['dstactive'] = 'Ô±Õ´Õ¡Õ¼Õ¡ÕµÕ«Õ¶ ÕªÕ¡Õ´Õ¡Õ¶Õ¡Õ¯';
$labels['htmleditor'] = 'ÕÕ¿Õ¥Õ²Õ®Õ¥Õ¬ HTML Õ¶Õ¡Õ´Õ¡Õ¯Õ¶Õ¥Ö€';
+$labels['htmlonreply'] = 'Õ´Õ«Õ¡ÕµÕ¶ HTML Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¡Õ¶Õ¨ ÕºÕ¡Õ¿Õ¡Õ½Õ­Õ¡Õ¶Õ¥Õ¬Õ«Õ½';
$labels['htmlsignature'] = 'HTML Õ½Õ¿Õ¸Ö€Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶';
$labels['previewpane'] = 'Õ‘Õ¸Ö‚ÖÕ¡Õ¤Ö€Õ¥Õ¬ ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ¨';
$labels['skin'] = 'ÕÕ¥Õ½Ö„Õ« Õ¿Õ¡Ö€Õ¢Õ¥Ö€Õ¡Õ¯';
@@ -216,10 +336,14 @@ $labels['mailboxview'] = 'Õ“Õ¸Õ½Õ¿Õ¡Ö€Õ¯Õ²Õ« Õ¿Õ¥Õ½Ö„';
$labels['mdnrequests'] = 'ÕÕ¥Õ²Õ¥Õ¯Õ¡ÖÕ¸Ö‚Õ´Õ¶Õ¥Ö€';
$labels['askuser'] = 'Õ€Õ¡Ö€ÖÕ¶Õ¥Õ¬ Ö…Õ£Õ¿Õ¾Õ¸Õ²Õ«Õ¶';
$labels['autosend'] = 'Õ¸Ö‚Õ²Õ¡Ö€Õ¯Õ¥Õ¬ Õ¡Õ¾Õ¿Õ¸Õ´Õ¡Õ¿';
+$labels['autosendknown'] = 'Õ¸Ö‚Õ²Õ¡Ö€Õ¯Õ¥Õ¬ Õ½Õ¿Õ¡ÖÕ¡Õ¯Õ¡Õ¶ Õ«Õ´ Õ¯Õ¡ÕºÕ¸Ö€Õ¤Õ¶Õ¥Ö€Õ«Õ¶, Õ´Õ¶Õ¡ÖÕ¡Õ® Õ¤Õ¥ÕºÖ„Õ¥Ö€Õ¸Ö‚Õ´` Õ°Õ¡Ö€ÖÕ¶Õ¥Õ¬ Õ«Õ¶Õ±';
+$labels['autosendknownignore'] = 'Õ¸Ö‚Õ²Õ¡Ö€Õ¯Õ¥Õ¬ Õ½Õ¿Õ¡ÖÕ¡Õ¯Õ¡Õ¶ Õ«Õ´ Õ¯Õ¡ÕºÕ¸Ö€Õ¤Õ¶Õ¥Ö€Õ«Õ¶, Õ´Õ¶Õ¡ÖÕ¡Õ® Õ¤Õ¥ÕºÖ„Õ¥Ö€Õ¸Ö‚Õ´` Õ¡Õ¶Õ¿Õ¥Õ½Õ¥Õ¬';
$labels['ignore'] = 'Õ¡Õ¶Õ¿Õ¥Õ½Õ¥Õ¬';
$labels['readwhendeleted'] = 'Õ‹Õ¶Õ»Õ¥Õ¬Õ¸Ö‚Ö Õ¶Õ·Õ¥Õ¬ Õ¶Õ¡Õ´Õ¡Õ¯Õ¨ Õ¸Ö€ÕºÕ¥Õ½ Õ¯Õ¡Ö€Õ¤Õ¡ÖÕ¡Õ®';
$labels['flagfordeletion'] = 'Õ‹Õ¶Õ»Õ¥Õ¬Õ¸Ö‚ ÖƒÕ¸Õ­Õ¡Ö€Õ¥Õ¶ Õ¶Õ·Õ¥Õ¬ Õ¸Ö€ÕºÕ¥Õ½ Õ¥Õ¶Õ©Õ¡Õ¯Õ¡ Õ»Õ¶Õ»Õ´Õ¡Õ¶';
$labels['skipdeleted'] = 'Õ‘Õ¸Ö‚ÕµÖ Õ¹Õ›Õ¿Õ¡Õ¬ Õ»Õ¶Õ»Õ¾Õ¡Õ® Õ¶Õ¡Õ´Õ¡Õ¯Õ¶Õ¥Ö€Õ¨';
+$labels['deletealways'] = 'Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¨ Õ¡Õ²Õ¢Õ¡Ö€Õ¯Õ² Õ¿Õ¥Õ²Õ¡ÖƒÕ¸Õ­Õ¥Õ¬Õ«Õ½ Õ±Õ¡Õ­Õ¸Õ²Õ´Õ¡Õ¶ Õ¤Õ¥ÕºÖ„Õ¸Ö‚Õ´ Õ»Õ¶Õ»Õ¥Õ¬ Õ¤Ö€Õ¡Õ¶Ö„Ö‰';
+$labels['deletejunk'] = 'Õ„Õ«Õ¡Õ¶Õ£Õ¡Õ´Õ«Ö Õ»Õ¶Õ»Õ¥Õ¬ Ô¹Õ¡ÖƒÕ¸Õ¶ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¨';
$labels['showremoteimages'] = 'Õ‘Õ¸Ö‚ÕµÖ Õ¿Õ¡Õ¬ Õ°Õ¥Õ¼Õ¡Õ¯Õ¡ ÕºÕ¡Õ¿Õ¯Õ¥Ö€Õ¶Õ¥Ö€Õ¨';
$labels['fromknownsenders'] = 'Õ°Õ¡ÕµÕ¿Õ¶Õ« Õ°Õ¡Õ½ÖÕ¥Õ¡Õ¿Õ¥Ö€Õ¥Ö€Õ«Ö';
$labels['always'] = 'Õ´Õ«Õ·Õ¿';
@@ -228,15 +352,51 @@ $labels['autosavedraft'] = 'ÕÖ‡Õ¡Õ£Ö€Õ« Õ¡Õ¾Õ¿Õ¸Õ´Õ¡Õ¿ Õ£Ö€Õ¡Õ¶ÖÕ¸Ö‚Õ´';
$labels['everynminutes'] = 'Õ¡Õ´Õ¥Õ¶ $n Ö€Õ¸ÕºÕ¥Õ¶';
$labels['keepalive'] = 'ÕÕ¿Õ¸Ö‚Õ£Õ¥Õ¬ Õ¶Õ¸Ö€ Õ¶Õ¡Õ´Õ¡Õ¯Õ¶Õ¥Ö€Õ¨';
$labels['never'] = 'Õ¥Ö€Õ¢Õ¥Ö„';
+$labels['immediately'] = 'Õ¡Õ¶Õ´Õ«Õ»Õ¡ÕºÕ¥Õ½';
$labels['messagesdisplaying'] = 'Õ¶Õ¡Õ´Õ¡Õ¯Õ¶Õ¥Ö€Õ¨ ÖÕ¸Ö‚ÖÕ¡Õ¤Ö€Õ¥Õ¬Õ«Õ½';
$labels['messagescomposition'] = 'Õ¶Õ¡Õ´Õ¡Õ¯ Õ£Ö€Õ¥Õ¬Õ«Õ½';
$labels['mimeparamfolding'] = 'Ô¿ÖÕ¸Ö€Õ¤Õ¶Õ¥Ö€Õ« Õ¡Õ¶Õ¸Ö‚Õ¶Õ¶Õ¥Ö€';
$labels['2231folding'] = 'Ô¿Õ¡Õ¿Õ¡Ö€ÕµÕ¡Õ¬ RFC 2231 (Thunderbird)';
$labels['miscfolding'] = 'RFC 2047/2231 (MS Outlook)';
$labels['2047folding'] = 'Ô¿Õ¡Õ¿Õ¡Ö€ÕµÕ¡Õ¬ RFC 2047 (Õ¡ÕµÕ¬)';
+$labels['force7bit'] = 'Ö…Õ£Õ¿Õ¡Õ£Õ¸Ö€Õ®Õ¥Õ¬ MIME Õ£Ö€Õ¡Õ¶Õ·Õ¸Ö‚Õ´ 8 Õ¢Õ«Õ©Õ¡Õ¶Õ¸Ö Õ¶Õ«Õ·Õ¥Ö€Õ« Õ°Õ¡Õ´Õ¡Ö€';
$labels['advancedoptions'] = 'Õ€Õ¡Õ¾Õ¥Õ¬ÕµÕ¡Õ¬ Õ¯Õ¡Ö€Õ£Õ¡Õ¾Õ¸Ö€Õ¸Ö‚Õ´Õ¶Õ¥Ö€';
$labels['focusonnewmessage'] = 'Ô±Õ¼Õ¡Õ» Õ¢Õ¥Ö€Õ¥Õ¬ ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ¨ Õ¶Õ¸Ö€ Õ¶Õ¡Õ´Õ¡Õ¯ Õ½Õ¿Õ¡Õ¶Õ¡Õ¬Õ«Õ½';
$labels['checkallfolders'] = 'ÕÕ¿Õ¸Ö‚Õ£Õ¥Õ¬ Õ¢Õ¸Õ¬Õ¸Ö€ Õ¤Õ¡Ö€Õ¡Õ¯Õ¶Õ¥Ö€Õ¨ Õ¶Õ¸Ö€ Õ¶Õ¡Õ´Õ¡Õ¯Õ¶Õ¥Ö€Õ« Õ°Õ¡Õ´Õ¡Ö€';
+$labels['displaynext'] = 'Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ Õ»Õ¶Õ»Õ¥Õ¬Õ¸Ö‚Ö Õ¯Õ¡Õ´ Õ¿Õ¥Õ²Õ¡ÖƒÕ¸Õ­Õ¥Õ¬Õ¸Ö‚Ö Õ°Õ¥Õ¿Õ¸ ÖÕ¸Ö‚ÖÕ¡Õ¤Ö€Õ¥Õ¬ Õ°Õ¡Õ»Õ¸Ö€Õ¤Õ¨';
+$labels['defaultfont'] = 'HTML Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¡Õ¶ Õ¬Õ¼Õ¥Õ¬ÕµÕ¡Õ¬ Õ¿Õ¡Õ¼Õ¡Õ¿Õ¥Õ½Õ¡Õ¯';
+$labels['mainoptions'] = 'Ô³Õ¬Õ­Õ¡Õ¾Õ¸Ö€ Õ¨Õ¶Õ¿Ö€Õ¡Õ¶Ö„Õ¶Õ¥Ö€';
+$labels['browseroptions'] = 'Ô¶Õ¶Õ¶Õ¡Ö€Õ¯Õ¹Õ« Õ¨Õ¶Õ¿Ö€Õ¡Õ¶Ö„Õ¶Õ¥Ö€';
+$labels['section'] = 'Ô²Õ¡ÕªÕ«Õ¶';
+$labels['maintenance'] = 'ÕÕºÕ¡Õ½Õ¡Ö€Õ¯Õ¸Ö‚Õ´';
+$labels['newmessage'] = 'Õ†Õ¸Ö€ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶';
+$labels['signatureoptions'] = 'ÕÕ¿Õ¸Ö€Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¡Õ¶ Õ¨Õ¶Õ¿Ö€Õ¡Õ¶Ö„Õ¶Õ¥Ö€';
+$labels['whenreplying'] = 'ÕŠÕ¡Õ¿Õ¡Õ½Õ­Õ¡Õ¶Õ¥Õ¬Õ«Õ½';
+$labels['replytopposting'] = 'Õ½Õ¯Õ½Õ¥Õ¬ Õ¶Õ¸Ö€ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ Õ¾Õ¥Ö€Ö‡Õ«Ö';
+$labels['replybottomposting'] = 'Õ½Õ¯Õ½Õ¥Õ¬ Õ¶Õ¸Ö€ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ Õ¶Õ¥Ö€Ö„Ö‡Õ«Ö';
+$labels['replyremovesignature'] = 'ÕŠÕ¡Õ¿Õ¡Õ½Õ­Õ¡Õ¶Õ¥Õ¬Õ«Õ½ Õ°Õ¥Õ¼Õ¡ÖÕ¶Õ¥Õ¬ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ«Ö Õ¶Õ¡Õ­Õ¸Ö€Õ¤ Õ½Õ¿Õ¸Ö€Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨';
+$labels['autoaddsignature'] = 'Ô±Õ¾Õ¥Õ¬Õ¡ÖÕ¶Õ¥Õ¬ Õ½Õ¿Õ¸Ö€Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶';
+$labels['newmessageonly'] = 'Õ´Õ«Õ¡ÕµÕ¶ Õ¶Õ¸Ö€ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¸Ö‚Õ´';
+$labels['replyandforwardonly'] = 'ÕºÕ¡Õ¿Õ¡Õ½Õ­Õ¡Õ¶Õ¶Õ¥Ö€Õ¸Ö‚Õ´ Ö‡ ÖƒÕ¸Õ­Õ¡Õ¶ÖÕ¸Ö‚Õ´Õ¶Õ¥Ö€Õ¸Ö‚Õ´';
+$labels['replysignaturepos'] = 'Ô±Õ¾Õ¥Õ¬Õ¡ÖÕ¶Õ¥Õ¬ Õ½Õ¿Õ¸Ö€Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ ÕºÕ¡Õ¿Õ¡Õ½Õ­Õ¡Õ¶Õ¥Õ¬Õ«Õ½ Õ¯Õ¡Õ´ ÖƒÕ¸Õ­Õ¡Õ¶ÖÕ¥Õ¬Õ«Õ½';
+$labels['belowquote'] = 'Õ„Õ¥Õ»Õ¢Õ¥Ö€Õ´Õ¡Õ¶ Õ¶Õ¥Ö€Ö„Ö‡Õ¸Ö‚Õ´';
+$labels['abovequote'] = 'Õ„Õ¥Õ»Õ¢Õ¥Ö€Õ´Õ¡Õ¶ Õ¾Õ¥Ö€Ö‡Õ¸Ö‚Õ´';
+$labels['insertsignature'] = 'Õ†Õ¥Ö€Õ¤Õ¶Õ¥Õ¬ Õ½Õ¿Õ¸Ö€Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨';
+$labels['previewpanemarkread'] = 'Õ†Õ·Õ¥Õ¬ Õ¶Õ¡Õ­Õ¡Õ¤Õ«Õ¿Õ¾Õ¡Õ® Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¨ Õ¸Ö€ÕºÕ¥Õ½ Õ¨Õ¶Õ©Õ¥Ö€ÖÕ¾Õ¡Õ®';
+$labels['afternseconds'] = '$n Õ¾Õ¡Ö€Õ¯ÕµÕ¡Õ¶ Õ°Õ¥Õ¿Õ¸';
+$labels['reqmdn'] = 'Õ„Õ«Õ·Õ¿ ÕºÕ¡Õ¿Õ¾Õ«Ö€Õ¥Õ¬ Õ½Õ¿Õ¡ÖÕ¡Õ¯Õ¡Õ¶';
+$labels['reqdsn'] = 'Õ„Õ«Õ·Õ¿ ÕºÕ¡Õ¿Õ¾Õ«Ö€Õ¥Õ¬ Õ¡Õ¼Õ¡Ö„Õ´Õ¡Õ¶ Õ¯Õ¡Ö€Õ£Õ¡Õ¾Õ«Õ³Õ¡Õ¯Õ« Õ®Õ¡Õ¶Õ¸Ö‚ÖÕ¸Ö‚Õ´';
+$labels['replysamefolder'] = 'Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¡Õ¶ ÕºÕ¡Õ¿Õ¡Õ½Õ­Õ¡Õ¶Õ¶Õ¥Ö€Õ¨ ÕºÕ¡Õ°Õ¥Õ¬ Õ¶Õ¸Ö‚ÕµÕ¶ ÕºÕ¡Õ¶Õ¡Õ¯Õ¸Ö‚Õ´';
+$labels['defaultaddressbook'] = 'Ô±Õ¾Õ¥Õ¬Õ¡ÖÕ¶Õ¥Õ¬ Õ¶Õ¸Ö€ Õ¯Õ¡ÕºÕ¸Ö€Õ¤Õ¶Õ¥Ö€ Õ¶Õ·Õ¾Õ¡Õ® Õ°Õ¡Õ½ÖÕ¥Õ¡Õ£Ö€Ö„Õ«Õ¶';
+$labels['autocompletesingle'] = 'Ô±Õ¾Õ¿Õ¸Õ¬Ö€Õ¡ÖÕ´Õ¡Õ¶ ÕªÕ¡Õ´Õ¡Õ¶Õ¡Õ¯ Õ¢Õ¡ÖÕ¡Õ¼Õ¥Õ¬ Õ¡ÕµÕ¬Õ¨Õ¶Õ¿Ö€Õ¡Õ¶Ö„Õ¡ÕµÕ«Õ¶ Õ§Õ¬ÖƒÕ¸Õ½Õ¿Õ« Õ°Õ¡Õ½ÖÕ¥Õ¶Õ¥Ö€Õ¨';
+$labels['listnamedisplay'] = 'Õ‘Õ¸Ö‚ÖÕ¡Õ¤Ö€Õ¥Õ¬ Õ¯Õ¡ÕºÕ¸Ö€Õ¤Õ¶Õ¥Ö€Õ¨ Õ¸Ö€ÕºÕ¥Õ½';
+$labels['spellcheckbeforesend'] = 'ÕÕ¿Õ¸Ö‚Õ£Õ¥Õ¬ Õ¿Õ¡Õ¼Õ¡Õ½Õ­Õ¡Õ¬Õ¶Õ¥Ö€Õ¨ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ Õ¸Ö‚Õ²Õ¡Ö€Õ¯Õ¥Õ¬Õ¸Ö‚Ö Õ¡Õ¼Õ¡Õ»';
+$labels['spellcheckoptions'] = 'ÕÖ€Õ¢Õ¡Õ£Ö€Õ´Õ¡Õ¶ Õ¨Õ¶Õ¿Ö€Õ¡Õ¶Ö„Õ¶Õ¥Ö€';
+$labels['spellcheckignoresyms'] = 'Ô±Õ¶Õ¿Õ¥Õ½Õ¥Õ¬ Õ¶Õ·Õ¡Õ¶Õ¶Õ¥Ö€Õ¸Õ¾ Õ¢Õ¡Õ¼Õ¥Ö€Õ¨';
+$labels['spellcheckignorenums'] = 'Ô±Õ¶Õ¿Õ¥Õ½Õ¥Õ¬ Õ©Õ¾Õ¥Ö€Õ¸Õ¾ Õ¢Õ¡Õ¼Õ¥Ö€Õ¨';
+$labels['spellcheckignorecaps'] = 'Ô±Õ¶Õ¿Õ¥Õ½Õ¥Õ¬ Õ¬Ö€Õ«Õ¾ Õ´Õ¥Õ®Õ¡Õ¿Õ¡Õ¼ Õ¢Õ¡Õ¼Õ¥Ö€Õ¨';
+$labels['addtodict'] = 'Ô±Õ¾Õ¥Õ¬Õ¡ÖÕ¶Õ¥Õ¬ Õ¢Õ¡Õ¼Õ¡Ö€Õ¡Õ¶Õ¸Ö‚Õ´';
+$labels['mailtoprotohandler'] = 'mailto: Õ°Õ²Õ¸Ö‚Õ´Õ¶Õ¥Ö€Õ« Õ½ÕºÕ¡Õ½Õ¡Ö€Õ¯Õ¸Õ²';
$labels['folder'] = 'Ô´Õ¡Ö€Õ¡Õ¯';
$labels['foldername'] = 'Ô´Õ¡Ö€Õ¡Õ¯Õ« Õ¡Õ¶Õ¸Ö‚Õ¶';
$labels['subscribed'] = 'Ô²Õ¡ÕªÕ¡Õ¶Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¾Õ¡Õ®';
@@ -245,11 +405,46 @@ $labels['create'] = 'ÕÕ¿Õ¥Õ²Õ®Õ¥Õ¬';
$labels['createfolder'] = 'Ô²Õ¡ÖÕ¥Õ¬ Õ¶Õ¸Ö€ Õ¤Õ¡Ö€Õ¡Õ¯';
$labels['managefolders'] = 'Ô¿Õ¡Ö€Õ£Õ¡Õ¾Õ¸Ö€Õ¥Õ¬ Õ¤Õ¡Ö€Õ¡Õ¯Õ¶Õ¥Ö€Õ¨';
$labels['specialfolders'] = 'Õ€Õ¡Õ¿Õ¸Ö‚Õ¯ Õ¤Õ¡Ö€Õ¡Õ¯Õ¶Õ¥Ö€';
+$labels['properties'] = 'Õ€Õ¡Õ¿Õ¯Õ¡Õ¶Õ«Õ·Õ¶Õ¥Ö€';
+$labels['folderproperties'] = 'ÕŠÕ¡Õ¶Õ¡Õ¯Õ« Õ°Õ¡Õ¿Õ¯Õ¡Õ¶Õ«Õ·Õ¶Õ¥Ö€';
+$labels['parentfolder'] = 'Ô¾Õ¶Õ¸Õ² ÕºÕ¡Õ¶Õ¡Õ¯';
+$labels['location'] = 'ÕŽÕ¡ÕµÖ€';
+$labels['info'] = 'ÕÕ¥Õ²Õ¥Õ¯Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶';
+$labels['getfoldersize'] = 'Õ€ÕºÕ¥Õ¬ ÕºÕ¡Õ¶Õ¡Õ¯Õ« Õ¹Õ¡ÖƒÕ¨ Õ«Õ´Õ¡Õ¶Õ¡Õ¬Õ¸Ö‚ Õ°Õ¡Õ´Õ¡Ö€';
+$labels['changesubscription'] = 'Õ€ÕºÕ¥Õ¬ Õ¢Õ¡ÕªÕ¡Õ¶Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ ÖƒÕ¸Õ­Õ¥Õ¬Õ¸Ö‚ Õ°Õ¡Õ´Õ¡Ö€';
+$labels['foldertype'] = 'ÕŠÕ¡Õ¶Õ¡Õ¯Õ« Õ¿Õ¥Õ½Õ¡Õ¯';
+$labels['personalfolder'] = 'Ô±Õ¶Õ±Õ¶Õ¡Õ¯Õ¡Õ¶ ÕºÕ¡Õ¶Õ¡Õ¯';
+$labels['otherfolder'] = 'Ô±ÕµÕ¬ Ö…Õ£Õ¿Õ¾Õ¸Õ²Õ« ÕºÕ¡Õ¶Õ¡Õ¯';
+$labels['sharedfolder'] = 'Õ€Õ¡Õ¶Ö€Õ¡ÕµÕ«Õ¶ ÕºÕ¡Õ¶Õ¡Õ¯';
$labels['sortby'] = 'Ô´Õ¡Õ½Õ¡Õ¾Õ¸Ö€Õ¥Õ¬';
$labels['sortasc'] = 'Õ¨Õ½Õ¿ Õ¡Õ³Õ´Õ¡Õ¶';
$labels['sortdesc'] = 'Õ¨Õ½Õ¿ Õ¶Õ¾Õ¡Õ¦Õ´Õ¡Õ¶';
+$labels['undo'] = 'ÔµÕ¿Õ¡Ö€Õ¯Õ¥Õ¬';
+$labels['plugin'] = 'Ô½Ö€Õ«Õ¹';
+$labels['version'] = 'ÕÕ¡Ö€Õ¢Õ¥Ö€Õ¡Õ¯';
+$labels['source'] = 'Ô±Õ²Õ¢ÕµÕ¸Ö‚Ö€';
+$labels['license'] = 'Ô±Ö€Õ¿Õ¸Õ¶Õ¡Õ£Õ«Ö€';
+$labels['support'] = 'ÕÕ¿Õ¡Õ¶Õ¡Õ¬ Ö…Õ£Õ¶Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶';
$labels['B'] = 'Ô²';
$labels['KB'] = 'Ô¿Ô²';
$labels['MB'] = 'Õ„Ô²';
$labels['GB'] = 'Ô³Ô²';
+$labels['unicode'] = 'Õ…Õ¸Ö‚Õ¶Õ«Õ¯Õ¸Õ¤';
+$labels['english'] = 'Ô±Õ¶Õ£Õ¬Õ¥Ö€Õ¥Õ¶';
+$labels['westerneuropean'] = 'Ô±Ö€Ö‡Õ´Õ¿Õ¡-ÔµÕ¾Ö€Õ¸ÕºÕ¡Õ¯Õ¡Õ¶';
+$labels['easterneuropean'] = 'Ô±Ö€Ö‡Õ¥Õ¬Õ¡-ÔµÕ¾Ö€Õ¸ÕºÕ¡Õ¯Õ¡Õ¶';
+$labels['southeasterneuropean'] = 'Õ€Õ¡Ö€Õ¡Õ¾-Õ¡Ö€Ö‡Õ¥Õ¬Õ¡Õ¥Õ¾Ö€Õ¸ÕºÕ¡Õ¯Õ¡Õ¶';
+$labels['baltic'] = 'Ô²Õ¡Õ¬Õ©Õ«Õ¯';
+$labels['cyrillic'] = 'Ô¿Õ«Ö€Õ«Õ¬Õ¬Õ«Õ¯';
+$labels['arabic'] = 'Ô±Ö€Õ¡Õ¢Õ¡Õ¯Õ¡Õ¶';
+$labels['greek'] = 'Õ€Õ¸Ö‚Õ¶Õ¡Õ¯Õ¡Õ¶';
+$labels['hebrew'] = 'Õ€Ö€Õ¥Õ¡Õ¯Õ¡Õ¶';
+$labels['turkish'] = 'Ô¹Õ¸Ö‚Ö€Ö„Õ¡Õ¯Õ¡Õ¶';
+$labels['nordic'] = 'Õ†Õ¸Ö€Õ¤Õ«Õ¯';
+$labels['thai'] = 'Ô¹Õ¡ÕµÕ¬Õ¡Õ¶Õ¤Õ¡Õ¯Õ¡Õ¶';
+$labels['celtic'] = 'Ô¿Õ¥Õ¬Õ¿Õ¡Õ¯Õ¡Õ¶';
+$labels['vietnamese'] = 'ÕŽÕ«Õ¥Õ¿Õ¶Õ¡Õ´Õ¡Õ¯Õ¡Õ¶';
+$labels['japanese'] = 'ÕƒÕ¡ÕºÕ¸Õ¶Õ¡Õ¯Õ¡Õ¶';
+$labels['korean'] = 'Ô¿Õ¸Ö€Õ¥Õ¡Õ¯Õ¡Õ¶';
+$labels['chinese'] = 'Õ‰Õ«Õ¶Õ¡Õ¯Õ¡Õ¶';
diff --git a/program/localization/hy_AM/messages.inc b/program/localization/hy_AM/messages.inc
index 3bd909666..dfb886c15 100644
--- a/program/localization/hy_AM/messages.inc
+++ b/program/localization/hy_AM/messages.inc
@@ -9,20 +9,29 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: Vahan Yerkanian <vahan@yerkanian.com> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
$messages['loading'] = 'Ô²Õ¥Õ¼Õ¶Õ¸Ö‚Õ´...';
+$messages['errortitle'] = 'ÕÕ­Õ¡Õ›Õ¬';
$messages['loginfailed'] = 'Õ„Õ¸Ö‚Õ¿Ö„Õ¨ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥Ö';
$messages['cookiesdisabled'] = 'Сookies–ների Õ¡ÕºÕ¡Õ°Õ¸Õ¾Õ¾Õ¸Ö‚Õ´Õ¨ Õ¢Õ¡ÖÕ¡Õ¯Õ¡ÕµÕ¸Ö‚Õ´ Õ§';
$messages['sessionerror'] = 'Ô±Õ¶Õ¾Õ¡Õ¾Õ¥Ö€ Õ¯Õ¡Õ´ ÕªÕ¡Õ´Õ¯Õ¥Õ¿Õ¡Õ¶Ö Õ½Õ¥Õ½Õ«Õ¡';
$messages['storageerror'] = 'IMAP Õ½Õ¥Ö€Õ¾Õ¥Ö€Õ« Õ°Õ¥Õ¿ Õ¯Õ¡ÕºÕ¨ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥Ö';
+$messages['servererror'] = 'ÕÕ¥Ö€Õ¾Õ¥Ö€Õ« Õ½Õ­Õ¡Õ›Õ¬';
+$messages['servererrormsg'] = 'ÕÕ¥Ö€Õ¾Õ¥Ö€Õ« Õ½Õ­Õ¡Õ¬` $msg';
+$messages['dberror'] = 'ÕÕ¾ÕµÕ¡Õ¬Õ¶Õ¥Ö€Õ« Õ·Õ¿Õ¥Õ´Õ¡Ö€Õ¡Õ¶Õ« Õ½Õ­Õ¡Õ›Õ¬';
+$messages['requesttimedout'] = 'Õ€Õ¡Ö€ÖÕ´Õ¡Õ¶ Õ©Õ¸Ö‚ÕµÕ¬Õ¡Õ¿Ö€Õ¥Õ¬Õ« ÕªÕ¡Õ´Õ¡Õ¶Õ¡Õ¯Õ¨ Õ½ÕºÕ¡Õ¼Õ¾Õ¥Ö';
+$messages['errorreadonly'] = 'Ô³Õ¸Ö€Õ®Õ¸Õ²Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ Õ¡Õ¶Õ°Õ¶Õ¡Ö€ Õ§Ö‰ ÕŠÕ¡Õ¶Õ¡Õ¯Õ¨ Õ´Õ«Õ¡ÕµÕ¶ Õ¨Õ¶Õ©Õ¥Ö€ÖÕ´Õ¡Õ¶ Õ°Õ¡Õ´Õ¡Ö€ Õ§Ö‰';
+$messages['errornoperm'] = 'Ô³Õ¸Ö€Õ®Õ¸Õ²Õ¸Ö‚Õ©ÕµÕ¡Õ¶ Õ¯Õ¡Õ¿Õ¡Ö€Õ´Õ¡Õ¶ Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„Õ¨ Õ´Õ¥Ö€ÕªÕ¾Õ¡Õ® Õ§Ö‰';
+$messages['invalidrequest'] = 'ÕÕ­Õ¡Õ¬ Õ°Õ¡Ö€ÖÕ¸Ö‚Õ´, Õ¡ÕºÕ¡Ö€Õ¤ÕµÕ¸Ö‚Õ¶Ö‰';
$messages['nomessagesfound'] = 'Ô±ÕµÕ½ ÖƒÕ¸Õ½Õ¿Õ¡Ö€Õ¯Õ²Õ¸Ö‚Õ´ Õ¶Õ¡Õ´Õ¡Õ¯Õ¶Õ¥Ö€ Õ¹Õ¯Õ¡Õ¶';
$messages['loggedout'] = 'Ô´Õ¸Ö‚Ö„ Õ¢Õ¡Ö€Õ¥Õ°Õ¡Õ»Õ¸Õ² Õ¡Õ¾Õ¡Ö€Õ¿Õ¥ÖÕ«Ö„ Õ¡Õ·Õ­Õ¡Õ¿Õ¡Õ¶Ö„Õ¨Ö‰ Ցտեսություն…';
$messages['mailboxempty'] = 'Õ“Õ¸Õ½Õ¿Õ¡Ö€Õ¯Õ²Õ¨ Õ¤Õ¡Õ¿Õ¡Ö€Õ¯ Õ§';
+$messages['uploading'] = 'Ֆայլի վերբեռնում…';
+$messages['uploadingmany'] = 'Վերբեռնվում են ֆայլերը…';
$messages['loadingdata'] = 'ÕÕ¾ÕµÕ¡Õ¬Õ¶Õ¥Ö€Õ« բեռնավորում…';
$messages['checkingmail'] = 'Նոր նամակների ստուգում…';
$messages['sendingmessage'] = 'Նամակի ուղարկում…';
@@ -32,22 +41,31 @@ $messages['messagesaved'] = 'Õ†Õ¡Õ´Õ¡Õ¯Õ¨ Õ£Ö€Õ¡Õ¶ÖÕ¾Õ¥Ö Õ¸Ö€ÕºÕ¥Õ½ Õ½Ö‡Õ¡Õ£Õ«
$messages['successfullysaved'] = 'Ô³Ö€Õ¡Õ¶ÖÕ¾Õ¡Õ® Õ§';
$messages['addedsuccessfully'] = 'Õ€Õ¡Õ½ÖÕ¥Õ¶ Õ¡Õ¾Õ¥Õ¬Õ¡ÖÕ¾Õ¡Õ® Õ§';
$messages['contactexists'] = 'Ô±ÕµÕ½ Õ°Õ¡Õ½ÖÕ¥Õ¸Õ¾ Õ¡Õ¶Õ±Õ¨ Õ¡Ö€Õ¤Õ¥Õ¶ Õ£Ö€Õ¡Õ¶ÖÕ¾Õ¡Õ® Õ§';
+$messages['contactnameexists'] = 'Õ†Õ¸Ö‚ÕµÕ¶ Õ¡Õ¶Õ¸Ö‚Õ¶Õ¸Õ¾ Õ¡Ö€Õ¤Õ¥Õ¶ Õ¡Õ¶Õ± Õ£Õ¸ÕµÕ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶ Õ¸Ö‚Õ¶Õ«Ö‰';
$messages['blockedimages'] = 'ÕÕ¥Ö€ Õ¡Õ¶Õ¾Õ¿Õ¡Õ¶Õ£Õ¸Ö‚Õ©ÕµÕ¡Õ¶ Õ°Õ¡Õ´Õ¡Ö€, Õ¡ÕµÕ½ Õ¶Õ¡Õ´Õ¡Õ¯Õ« Õ¡Ö€Õ¿Õ¡Ö„Õ«Õ¶ Õ¶Õ¯Õ¡Ö€Õ¶Õ¥Ö€Õ¶ Õ¢Õ¥Õ¼Õ¶Õ¾Õ¡Õ® Õ¹Õ¥Õ¶';
$messages['encryptedmessage'] = 'Õ†Õ¥Ö€Õ¸Õ²Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶, Õ¡ÕµÕ½ Õ¶Õ¡Õ´Õ¡Õ¯Õ¨ Õ¯Õ¸Õ¤Õ¡Õ¾Õ¸Ö€Õ¾Õ¡Õ® Õ§';
$messages['nocontactsfound'] = 'Õ€Õ¡Õ½ÖÕ¥Õ¶Õ¥Ö€ Õ¹Õ¯Õ¡Õ¶';
$messages['contactnotfound'] = 'ÕˆÖ€Õ¸Õ¶Õ¾Õ¸Õ² Õ°Õ¡Õ½ÖÕ¥Õ¶ Õ¹Õ£Õ¿Õ¶Õ¾Õ¥Ö';
+$messages['contactsearchonly'] = 'Õ†Õ¥Ö€Õ´Õ¸Ö‚Õ®Õ¥Ö„ Õ¿Õ¾ÕµÕ¡Õ¬Õ¶Õ¥Ö€ Õ¡Õ¶Õ±Õ¡Õ¶Ö Õ¸Ö€Õ¸Õ¶Õ´Õ¡Õ¶ Õ°Õ¡Õ´Õ¡Ö€';
$messages['sendingfailed'] = 'Õ†Õ¡Õ´Õ¡Õ¯Õ« Õ¸Ö‚Õ²Õ¡Ö€Õ¯Õ¸Ö‚Õ´Õ¨ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥Ö';
$messages['senttooquickly'] = 'Ô½Õ¶Õ¤Ö€Õ¸Ö‚Õ´ Õ¥Õ¶Ö„ Õ½ÕºÕ¡Õ½Õ¥Õ¬ $sec Õ¾Õ¡Ö€Õ¯ÕµÕ¡Õ¶ Õ´Õ«Õ¶Õ¹ Õ¡ÕµÕ½ Õ¶Õ¡Õ´Õ¡Õ¯Õ¶ Õ¸Ö‚Õ²Õ¡Ö€Õ¯Õ¥Õ¬Õ¨';
$messages['errorsavingsent'] = 'ÕˆÖ‚Õ²Õ¡Ö€Õ¯Õ¾Õ¡Õ® Õ¶Õ¡Õ´Õ¡Õ¯Õ« Õ¡Ö€Õ­Õ«Õ¾Õ¡ÖÕ¸Ö‚Õ´Õ¨ Õ­Õ¡ÖƒÕ¡Õ¶Õ¾Õ¥Ö';
$messages['errorsaving'] = 'Ô³Ö€Õ¡Õ¶ÖÕ´Õ¡Õ¶ Õ½Õ­Õ¡Õ¬';
$messages['errormoving'] = 'Õ†Õ¡Õ´Õ¡Õ¯Õ« Õ¿Õ¥Õ²Õ¡ÖƒÕ¸Õ­Õ´Õ¡Õ¶ Õ±Õ¡Õ­Õ¸Õ²Õ¸Ö‚Õ´';
+$messages['errorcopying'] = 'Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¡Õ¶ ÕºÕ¡Õ¿Õ³Õ¥Õ¶Õ¸Ö‚Õ´Õ¨ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥ÖÖ‰';
$messages['errordeleting'] = 'Õ†Õ¡Õ´Õ¡Õ¯Õ« Õ»Õ¶Õ»Õ´Õ¡Õ¶ Õ±Õ¡Õ­Õ¸Õ²Õ¸Ö‚Õ´';
+$messages['errormarking'] = 'Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¡Õ¶ Õ¶Õ·Õ¸Ö‚Õ´Õ¨ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥ÖÖ‰';
$messages['deletecontactconfirm'] = 'ÕˆÖ‚Õ¦Õ¸Ö‚ÕžÕ´ Õ§Ö„ Õ»Õ¶Õ»Õ¥Õ¬ Õ¶Õ·Õ¾Õ¡Õ® Õ¡Õ¶Õ±Õ¥Ö€Õ«Õ¶';
+$messages['deletegroupconfirm'] = 'Ô´Õ¸Ö‚Ö„ Õ«Õ½Õ¯Õ¡ÕºÕ¥ÕžÕ½ Õ¸Ö‚Õ¦Õ¸Ö‚Õ´ Õ¥Ö„ Õ»Õ¶Õ»Õ¥Õ¬ Õ¶Õ·Õ¾Õ¡Õ® Õ­Õ¸Ö‚Õ´Õ¢Õ¨Ö‰';
$messages['deletemessagesconfirm'] = 'ÕˆÖ‚Õ¦Õ¸Ö‚ÕžÕ´ Õ§Ö„ Õ»Õ¶Õ»Õ¥Õ¬ Õ¶Õ·Õ¾Õ¡Õ® Õ¶Õ¡Õ´Õ¡Õ¯Õ¶Õ¥Ö€Õ¨';
$messages['deletefolderconfirm'] = 'ÕˆÖ‚Õ¦Õ¸Ö‚ÕžÕ´ Õ§Ö„ Õ»Õ¶Õ»Õ¥Õ¬ Õ¡ÕµÕ½ Õ¤Õ¡Ö€Õ¡Õ¯Õ¨';
$messages['purgefolderconfirm'] = 'ÕˆÖ‚Õ¦Õ¸Ö‚ÕžÕ´ Õ§Ö„ Õ»Õ¶Õ»Õ¥Õ¬ Õ¡ÕµÕ½ Õ¤Õ¡Ö€Õ¡Õ¯Õ« Õ¢Õ¸Õ¬Õ¸Ö€ Õ¶Õ¡Õ´Õ¡Õ¯Õ¶Õ¥Ö€Õ¨';
+$messages['contactdeleting'] = 'Անձի ջնջում…';
+$messages['groupdeleting'] = 'Խմբի ջնջում…';
$messages['folderdeleting'] = 'Դարակը ջնջվում է…';
$messages['foldermoving'] = 'Դարակը տեղափոխվում է…';
+$messages['foldersubscribing'] = 'Պանակի բաժանորդագրում…';
+$messages['folderunsubscribing'] = 'Պանակի ապաբաժանորդագրում…';
$messages['formincomplete'] = 'ÕÖ‡Õ¨ Õ©Õ¥Ö€Õ« Õ§ Õ¬Ö€Õ¡ÖÕ¾Õ¡Õ®';
$messages['noemailwarning'] = 'Õ„Õ¸Ö‚Õ¿Ö„Õ¡Õ£Ö€Õ¥Ö„ Õ³Õ«Õ·Õ¿ Õ§Õ¬. Õ°Õ¡Õ½ÖÕ¥';
$messages['nonamewarning'] = 'Õ„Õ¸Ö‚Õ¿Ö„Õ¡Õ£Ö€Õ¥Ö„ Õ¡Õ¶Õ¸Ö‚Õ¶';
@@ -59,12 +77,18 @@ $messages['nobodywarning'] = 'ÕˆÖ‚Õ²Õ¡Ö€Õ¯Õ¥ÕžÕ¬ Õ¡ÕµÕ½ Õ¶Õ¡Õ´Õ¡Õ¯Õ¨ Õ¤Õ¡Õ¿Õ¡Ö€Õ
$messages['notsentwarning'] = 'Õ†Õ¡Õ´Õ¡Õ¯Õ¶ Õ¸Ö‚Õ²Õ¡Ö€Õ¯Õ¾Õ¡Õ® Õ¹Õ§Ö‰ Õ‹Õ¶Õ»Õ¥ÕžÕ¬ ÕÕ¥Ö€ Õ¶Õ¡Õ´Õ¡Õ¯Õ¨';
$messages['noldapserver'] = 'Ô¸Õ¶Õ¿Ö€Õ¥Ö„ ldap Õ½Õ¥Ö€Õ¾Õ¥Ö€ Õ¸Ö€Õ¸Õ¶Õ´Õ¡Õ¶ Õ°Õ¡Õ´Õ¡Ö€';
$messages['nosearchname'] = 'Õ„Õ¸Ö‚Õ¿Ö„Õ¡Õ£Ö€Õ¥Ö„ Õ°Õ¡Õ½ÖÕ¥Õ¡Õ¿Õ¥Ö€ Õ¯Õ¡Õ´ Õ§Õ¬. Õ°Õ¡Õ½ÖÕ¥';
+$messages['notuploadedwarning'] = 'ÕˆÕ¹ Õ¢Õ¸Õ¬Õ¸Ö€ Õ¯ÖÕ¾Õ¡Õ® Õ¶ÕµÕ¸Ö‚Õ©Õ¥Ö€Õ¶ Õ¥Õ¶ Õ¾Õ¥Ö€Õ¢Õ¥Õ¼Õ¶Õ¾Õ¥Õ¬Ö‰ ÕÕºÕ¡Õ½Õ¥Ö„ Õ¯Õ¡Õ´ Õ¨Õ¶Õ¤Õ°Õ¡Õ¿Õ¥Ö„ Õ¾Õ¥Ö€Õ¢Õ¥Õ¼Õ¶Õ¸Ö‚Õ´Õ¨Ö‰';
$messages['searchsuccessful'] = 'Ô³Õ¿Õ¶Õ¾Õ¥Ö $nr Õ¶Õ¡Õ´Õ¡Õ¯';
+$messages['contactsearchsuccessful'] = 'Ô³Õ¿Õ¶Õ¾Õ¥Õ¬ Õ§ $nr Õ¡Õ¶Õ±Ö‰';
$messages['searchnomatch'] = 'Õ€Õ¡Õ´Õ¡ÕºÕ¡Õ¿Õ¡Õ½Õ­Õ¡Õ¶ Õ¶Õ¡Õ´Õ¡Õ¯Õ¶Õ¥Ö€ Õ¹Õ£Õ¿Õ¶Õ¾Õ¥ÖÕ«Õ¶';
$messages['searching'] = 'ÕˆÖ€Õ¸Õ¶Õ¸Ö‚Õ´...';
$messages['checking'] = 'Õտուգում…';
$messages['nospellerrors'] = 'ÕˆÖ‚Õ²Õ¡Õ£Ö€Õ¡Õ¯Õ¡Õ¶ Õ½Õ­Õ¡Õ¬Õ¶Õ¥Ö€ Õ¹Õ¯Õ¡Õ¶';
$messages['folderdeleted'] = 'Ô´Õ¡Ö€Õ¡Õ¯Õ¨ Õ»Õ¶Õ»Õ¾Õ¥Ö';
+$messages['foldersubscribed'] = 'ÕŠÕ¡Õ¶Õ¡Õ¯Õ«Õ¶ Õ¢Õ¡ÕªÕ¡Õ¶Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ´Õ¨ Õ°Õ¡Õ»Õ¸Õ²Õ¾Õ¥ÖÖ‰';
+$messages['folderunsubscribed'] = 'ÕŠÕ¡Õ¶Õ¡Õ¯Õ«Ö Õ¡ÕºÕ¡Õ¢Õ¡ÕªÕ¡Õ¶Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ´Õ¨ Õ°Õ¡Õ»Õ¸Õ²Õ¾Õ¥ÖÖ‰';
+$messages['folderpurged'] = 'ÕŠÕ¡Õ¶Õ¡Õ¯Õ¨ Õ¢Õ¡Ö€Õ¥Õ°Õ¡Õ»Õ¸Õ² Õ¤Õ¡Õ¿Õ¡Ö€Õ¯Õ¾Õ¥ÖÖ‰';
+$messages['folderexpunged'] = 'ÕŠÕ¡Õ¶Õ¡Õ¯Õ¨ Õ¢Õ¡Ö€Õ¥Õ°Õ¡Õ»Õ¸Õ² Õ½Õ¥Õ²Õ´Õ¾Õ¥ÖÖ‰';
$messages['deletedsuccessfully'] = 'Õ‹Õ¶Õ»Õ¾Õ¡Õ® Õ§';
$messages['converting'] = 'Õ†Õ¡Õ´Õ¡Õ¯Õ« Õ±Ö‡Õ¡Õ¾Õ¸Ö€Õ´Õ¡Õ¶ Õ°Õ¥Õ¼Õ¡Öում…';
$messages['messageopenerror'] = 'Õ†Õ¡Õ´Õ¡Õ¯Õ« Õ¢Õ¥Õ¼Õ¶Õ¾Õ¸Ö‚Õ´Õ¨ Õ½Õ¥Ö€Õ¾Õ¥Ö€Õ«Ö Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥Ö';
@@ -75,16 +99,62 @@ $messages['copyerror'] = 'Õ€Õ¡Õ½ÖÕ¥Õ¶Õ¥Ö€Õ« Õ¯Ö€Õ¯Õ¶Ö…Ö€Õ«Õ¶Õ¡Õ¯Õ¸Ö‚Õ´Õ¨ Õ±Õ¡Õ­
$messages['sourceisreadonly'] = 'Ô±ÕµÕ½ Õ°Õ¡Õ½ÖÕ¥Õ¶ ÕºÕ¡Õ·Õ¿ÕºÕ¡Õ¶Õ¾Õ¡Õ® Õ§';
$messages['errorsavingcontact'] = 'Õ€Õ¡Õ½ÖÕ¥Õ« Õ£Ö€Õ¡Õ¶ÖÕ¸Ö‚Õ´Õ¶ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥Ö';
$messages['movingmessage'] = 'Նամակը տեղափոխվում է…';
+$messages['copyingmessage'] = 'Հաղորդագրությունների պատճենում…';
+$messages['copyingcontact'] = 'Ô±Õ¶Õ±Õ¡Õ¶Ö ÕºÕ¡Õ¿Õ³Õ¥Õ¶Õ¸Ö‚Õ´â€¦';
+$messages['deletingmessage'] = 'Հաղորդագրությունների ջնջում…';
+$messages['markingmessage'] = 'Հաղորդագրությունների նշում…';
+$messages['addingmember'] = 'Ô±Õ¶Õ±Õ¡Õ¶Ö Õ¡Õ¾Õ¥Õ¬Õ¡ÖÕ¸Ö‚Õ´ խմբին…';
+$messages['removingmember'] = 'Ô±Õ¶Õ±Õ¡Õ¶Ö Õ°Õ¥Õ¼Õ¡ÖÕ¸Ö‚Õ´ Õ­Õ´Õ¢Õ«Ö…';
$messages['receiptsent'] = 'Õ†Õ¡Õ´Õ¡Õ¯Õ« Õ¨Õ¶Õ©Õ¥Ö€ÖÕ´Õ¡Õ¶ Õ®Õ¡Õ¶Õ¸Ö‚ÖÕ¡Õ£Õ«Ö€Õ¶ Õ¸Ö‚Õ²Õ¡Ö€Õ¯Õ¾Õ¡Õ® Õ§';
$messages['errorsendingreceipt'] = 'Ô¾Õ¡Õ¶Õ¸Ö‚ÖÕ¡Õ£Ö€Õ« Õ¸Ö‚Õ²Õ¡Ö€Õ¯Õ¸Ö‚Õ´Õ¨ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥Ö';
+$messages['deleteidentityconfirm'] = 'Ô´Õ¸Ö‚Ö„ Õ«Õ½Õ¯Õ¡ÕºÕ¥ÕžÕ½ Õ¸Ö‚Õ¦Õ¸Ö‚Õ´ Õ¥Ö„ Õ»Õ¶Õ»Õ¥Õ¬ Õ¡ÕµÕ½ Õ«Õ¶Ö„Õ¶Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨Ö‰';
$messages['nodeletelastidentity'] = 'Ô±Õ¶Õ°Õ¶Õ¡Ö€ Õ§ Õ»Õ¶Õ»Õ¥Õ¬ Õ¾Õ¥Ö€Õ»Õ«Õ¶ Õ¿Õ¡Ö€Õ¢Õ¥Ö€Õ¡Õ¯Õ¨';
$messages['forbiddencharacter'] = 'Ô´Õ¡Ö€Õ¡Õ¯Õ« Õ¡Õ¶Õ¸Ö‚Õ¶Õ¨ ÕºÕ¡Ö€Õ¸Ö‚Õ¶Õ¡Õ¯Õ¸Ö‚Õ´ Õ§ Õ¡Õ¶Õ©Õ¸Ö‚ÕµÕ¬Õ¡Õ¿Ö€Õ¥Õ¬Õ« Õ¶Õ·Õ¡Õ¶';
$messages['selectimportfile'] = 'Ô¸Õ¶Õ¿Ö€Õ¥Ö„ Õ¸Ö‚Õ²Õ¡Ö€Õ¯Õ¾Õ¸Õ² Ö†Õ¡ÕµÕ¬Õ¨';
$messages['addresswriterror'] = 'Ô¸Õ¶Õ¿Ö€Õ¾Õ¡Õ® Õ°Õ¡Õ½ÖÕ¥Õ¡Õ£Õ«Ö€Ö„Õ¨ Õ¥Õ¶Õ©Õ¡Õ¯Õ¡ Õ¹Õ§ ÖƒÕ¸ÖƒÕ¸Õ­Õ´Õ¡Õ¶';
+$messages['contactaddedtogroup'] = 'Ô±Õ¶Õ±Õ«Õ¶Ö„ Õ¢Õ¡Ö€Õ¥Õ°Õ¡Õ»Õ¸Õ² Õ¡Õ¾Õ¥Õ¬Õ¡ÖÕ¾Õ¥ÖÕ«Õ¶ Õ­Õ´Õ¢Õ«Õ¶Ö‰';
+$messages['contactremovedfromgroup'] = 'Ô±Õ¶Õ±Õ«Õ¶Ö„ Õ¢Õ¡Ö€Õ¥Õ°Õ¡Õ»Õ¸Õ² Õ°Õ¡Õ¶Õ¾Õ¥ÖÕ«Õ¶ Õ­Õ´Õ¢Õ«ÖÖ‰';
$messages['importwait'] = 'Õ†Õ¥Ö€Õ¯Ö€Õ¸Ö‚Õ´Õ¶ Õ¨Õ¶Õ©Õ¡ÖÖ„Õ« Õ´Õ¥Õ» Õ§...';
$messages['importerror'] = 'Õ†Õ¥Ö€Õ¯Ö€Õ¸Ö‚Õ´Õ¨ Õ­Õ¡ÖƒÕ¡Õ¶Õ¾Õ¥ÖÖ‰ Õ†Õ¥Ö€Õ¯Ö€Õ¾Õ¡Õ® Ö†Õ¡ÕµÕ¬Õ¨ vCard Õ¹Õ¡ÖƒÕ¡Õ±Ö‡Õ« Õ¹Õ§Ö‰';
$messages['importconfirm'] = '$inserted Õ¶Õ¸Ö€ Õ¶Õ¥Ö€Õ¯Ö€Õ¾Õ¡Õ® Õ°Õ¡Õ½ÖÕ¥Õ¶Õ¥Ö€, $skipped Õ¡Ö€Õ¤Õ¥Õ¶ Õ¡Õ¼Õ¯Õ¡ Õ°Õ¡Õ½ÖÕ¥Õ¶Õ¥Ö€Õ <p><em>$names</em></p>';
+$messages['importconfirmskipped'] = '<b>Ô²Õ¡Ö Õ©Õ¸Õ²Õ¶Õ¾Õ¥Ö $skipped Õ¡Õ¼Õ¯Õ¡ Õ£Ö€Õ¡Õ¼Õ¸Ö‚Õ´</b>';
$messages['opnotpermitted'] = 'Ô³Õ¸Ö€Õ®Õ¸Õ²Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ Õ¡Õ¶Õ©Õ¸Ö‚ÕµÕ¬Õ¡Õ¿Ö€Õ¥Õ¬Õ« Õ§Ö‰';
$messages['nofromaddress'] = 'Õ†Õ·Õ¾Õ¡Õ® Õ¡Õ¶Õ±Õ¨ Õ°Õ¡Õ½ÖÕ¥ Õ¹Õ¸Ö‚Õ¶Õ«Ö‰';
$messages['editorwarning'] = 'Ô´Õ¥ÕºÕ« ÕºÕ¡Ö€Õ¦ Õ¿Õ¥Ö„Õ½Õ¿Õ« Õ­Õ´Õ¢Õ¡Õ£Ö€Õ«Õ¹ Õ¡Õ¶ÖÕ´Õ¡Õ¶ Õ¤Õ¥ÕºÖ„Õ¸Ö‚Õ´ Õ¯Õ¯Õ¸Ö€Õ« Õ¿Õ¥Ö„Õ½Õ¿Õ« Õ±Ö‡Õ¡Õ¾Õ¸Ö€Õ¸Ö‚Õ´Õ¨Ö‰ Õ‡Õ¡Ö€Õ¸Ö‚Õ¶Õ¡Õ¯Õ¥ÕžÕ¬Ö‰';
+$messages['httpreceivedencrypterror'] = 'Õ€Õ¡Õ´Õ¡Õ¯Õ¡Ö€Õ£Õ« Õ¬Õ¡Ö€Ö„Õ« Õ½Õ­Õ¡Õ¬Ö‰ Ô´Õ«Õ´Õ¥Ö„ Õ°Õ¡Õ´Õ¡Õ¯Õ¡Ö€Õ£Õ¨ Õ½ÕºÕ¡Õ½Õ¡Ö€Õ¯Õ¸Õ² Õ¡Õ¶Õ±Õ¶Õ¡Õ¯Õ¡Õ¦Õ´Õ«Õ¶Ö‰ <b>ÕÕ¥Ö€ Õ¶Õ¡Õ´Õ¡Õ¯Õ¨ Õ¸Ö‚Õ²Õ¡Ö€Õ¯Õ¾Õ¡Õ® Õ¹Õ§Ö‰</b>';
+$messages['smtpconnerror'] = 'SMTP Õ½Õ­Õ¡Õ¬ ($code)` ÕÕ¥Ö€Õ¾Õ¥Ö€Õ« Õ°Õ¥Õ¿ Õ¯Õ¡ÕºÕ¨ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥ÖÖ‰';
+$messages['smtpautherror'] = 'SMTP Õ½Õ­Õ¡Õ¬ ($code)` Õ†Õ¸Ö‚ÕµÕ¶Õ¡Õ¯Õ¡Õ¶Õ¡ÖÕ¸Ö‚Õ´Õ¨ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥ÖÖ‰';
+$messages['smtpfromerror'] = 'SMTP Õ½Õ­Õ¡Õ¬ ($code)` ÕˆÖ€ÕºÕ¥Õ½ "$from" ($msg) Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ Õ¸Ö‚Õ²Õ¡Ö€Õ¯Õ¥Õ¬Õ¨ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥ÖÖ‰';
+$messages['smtptoerror'] = 'SMTP Õ½Õ­Õ¡Õ¬ ($code)` Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¡Õ¶ Õ½Õ¿Õ¡ÖÕ¸Õ² "$to"-Õ«Õ¶ ($msg) Õ¡Õ¾Õ¥Õ¬Õ¡ÖÕ¶Õ¥Õ¬Õ¨ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥ÖÖ‰';
+$messages['smtprecipientserror'] = 'SMTP Õ½Õ­Õ¡Õ¬` Õ½Õ¿Õ¡ÖÕ¸Õ²Õ¶Õ¥Ö€Õ« ÖÕ¸Ö‚ÖÕ¡Õ¯Õ« Õ¨Õ¶Õ©Õ¥Ö€ÖÕ´Õ¡Õ¶ Õ±Õ¡Õ­Õ¸Õ²Õ¸Ö‚Õ´Ö‰';
+$messages['smtperror'] = 'SMTP Õ½Õ­Õ¡Õ¬` $msg';
+$messages['emailformaterror'] = 'ÕÕ­Õ¡Õ¬ Õ§Õ¬ÖƒÕ¸Õ½Õ¿Õ« Õ°Õ¡Õ½ÖÕ¥` $email';
+$messages['toomanyrecipients'] = 'ÕÕ¿Õ¡ÖÕ¸Õ²Õ¶Õ¥Ö€Õ« Ö„Õ¡Õ¶Õ¡Õ¯Õ¨ Õ¹Õ¡ÖƒÕ¡Õ¦Õ¡Õ¶Ö Õ´Õ¥Õ® Õ§Ö‰ Õ†Õ¾Õ¡Õ¦Õ¥ÖÖ€Õ¥Ö„ Õ´Õ«Õ¶Õ¹Ö‡ $max-Õ¨Ö‰';
+$messages['maxgroupmembersreached'] = 'Ô½Õ´Õ¢Õ« Õ¡Õ¶Õ¤Õ¡Õ´Õ¶Õ¥Ö€Õ« Ö„Õ¡Õ¶Õ¡Ö„Õ¨ Õ£Õ¥Ö€Õ¡Õ¦Õ¡Õ¶ÖÕ¸Ö‚Õ´ Õ§ Õ©Õ¸Ö‚ÕµÕ¬Õ¡Õ¿Ö€Õ¥Õ¬Õ« $max-Õ¨Ö‰';
+$messages['internalerror'] = 'Õ†Õ¥Ö€Ö„Õ«Õ¶ Õ½Õ­Õ¡Õ¬, Õ¯Ö€Õ¯Õ«Õ¶ ÖƒÕ¸Ö€Õ±Õ¥Ö„Ö‰';
+$messages['contactdelerror'] = 'Ô±Õ¶Õ±Õ¡Õ¶Ö Õ»Õ¶Õ»Õ¸Ö‚Õ´Õ¨ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥ÖÖ‰';
+$messages['contactdeleted'] = 'Ô±Õ¶Õ±Õ¡Õ¶Ö Õ»Õ¶Õ»Õ¸Ö‚Õ´Õ¨ Õ°Õ¡Õ»Õ¸Õ²Õ¾Õ¥ÖÖ‰';
+$messages['contactrestoreerror'] = 'Õ‹Õ¶Õ»Õ¾Õ¡Õ® Õ¡Õ¶Õ±Õ¡Õ¶Ö Õ¾Õ¥Ö€Õ¡Õ¯Õ¡Õ¶Õ£Õ¶Õ¸Ö‚Õ´Õ¨ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥ÖÖ‰';
+$messages['contactrestored'] = 'Õ‹Õ¶Õ»Õ¾Õ¡Õ® Õ¡Õ¶Õ±Õ¡Õ¶Ö Õ¾Õ¥Ö€Õ¡Õ¯Õ¡Õ¶Õ£Õ¶Õ¸Ö‚Õ´Õ¨ Õ°Õ¡Õ»Õ¸Õ²Õ¾Õ¥ÖÖ‰';
+$messages['groupdeleted'] = 'Ô½Õ¸Ö‚Õ´Õ¢Õ¨ Õ»Õ¶Õ»Õ¾Õ¥ÖÖ‰';
+$messages['grouprenamed'] = 'Ô½Õ¸Ö‚Õ´Õ¢Õ¨ Õ¾Õ¥Ö€Õ¡Õ¶Õ¾Õ¡Õ¶Õ¾Õ¥ÖÖ‰';
+$messages['groupcreated'] = 'Ô½Õ¸Ö‚Õ´Õ¢Õ¨ Õ½Õ¿Õ¥Õ²Õ®Õ¾Õ¥ÖÖ‰';
+$messages['savedsearchdeleted'] = 'ÕŠÕ¡Õ°ÕºÕ¡Õ¶Õ¾Õ¡Õ® Õ¸Ö€Õ¸Õ¶Õ¸Ö‚Õ´Õ¨ Õ»Õ¶Õ»Õ¾Õ¥ÖÖ‰';
+$messages['savedsearchdeleteerror'] = 'ÕŠÕ¡Õ°ÕºÕ¡Õ¶Õ¾Õ¡Õ® Õ¸Ö€Õ¸Õ¶Õ´Õ¡Õ¶ Õ»Õ¶Õ»Õ¸Ö‚Õ´Õ¨ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥ÖÖ‰';
+$messages['savedsearchcreated'] = 'ÕˆÖ€Õ¸Õ¶Õ¸Ö‚Õ´Õ¨ ÕºÕ¡Õ°ÕºÕ¡Õ¶Õ¾Õ¥ÖÖ‰';
+$messages['savedsearchcreateerror'] = 'ÕŠÕ¡Õ°ÕºÕ¡Õ¶Õ¾Õ¡Õ® Õ¸Ö€Õ¸Õ¶Õ´Õ¡Õ¶ Õ½Õ¿Õ¥Õ²Õ®Õ¸Ö‚Õ´Õ¨ Õ±Õ¡Õ­Õ¸Õ²Õ¾Õ¥ÖÖ‰';
+$messages['messagedeleted'] = 'Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¨ Õ»Õ¶Õ»Õ¾Õ¥ÖÕ«Õ¶Ö‰';
+$messages['messagemoved'] = 'Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¨ Õ¿Õ¥Õ²Õ¡ÖƒÕ¸Õ­Õ¾Õ¥ÖÕ«Õ¶Ö‰';
+$messages['messagecopied'] = 'Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¨ ÕºÕ¡Õ¿Õ³Õ¥Õ¶Õ¾Õ¥ÖÕ«Õ¶Ö‰';
+$messages['messagemarked'] = 'Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¨ Õ¶Õ·Õ¾Õ¥ÖÕ«Õ¶Ö‰';
+$messages['autocompletechars'] = 'Ô±Õ¾Õ¿Õ¸Õ¬Ö€Õ¡ÖÕ´Õ¡Õ¶ Õ°Õ¡Õ´Õ¡Ö€ Õ¶Õ¥Ö€Õ´Õ¸Ö‚Õ®Õ¥Ö„ Õ¡Õ¼Õ¶Õ¾Õ¡Õ¦Õ¶ $min Õ¶Õ«Õ·Ö‰';
+$messages['autocompletemore'] = 'Ô³Õ¿Õ¶Õ¾Õ¡Õ® Õ¥Õ¶ Õ°Õ¡Õ´Õ¡ÕºÕ¡Õ¿Õ¡Õ½Õ­Õ¡Õ¶Õ¸Õ² Õ£Ö€Õ¡Õ¼Õ¸Ö‚Õ´Õ¶Õ¥Ö€, Õ¶Õ¥Ö€Õ´Õ¸Ö‚Õ®Õ¥Ö„ Õ°Õ¡Õ¾Õ¥Õ¬ÕµÕ¡Õ¬ Õ¶Õ«Õ·Õ¥Ö€Ö‰';
+$messages['namecannotbeempty'] = 'Ô±Õ¶Õ¸Ö‚Õ¶Õ¨ Õ¤Õ¡Õ¿Õ¡Ö€Õ¯ Õ¹Õ« Õ¯Õ¡Ö€Õ¸Õ² Õ¬Õ«Õ¶Õ¥Õ¬Ö‰';
+$messages['nametoolong'] = 'Ô±Õ¶Õ¸Ö‚Õ¶Õ¨ Õ¹Õ¡ÖƒÕ¡Õ¦Õ¡Õ¶Ö Õ¥Ö€Õ¯Õ¡Ö€ Õ§Ö‰';
+$messages['folderupdated'] = 'ÕŠÕ¡Õ¶Õ¡Õ¯Õ¨ Õ©Õ¡Ö€Õ´Õ¡ÖÕ¾Õ¥ÖÖ‰';
+$messages['foldercreated'] = 'ÕŠÕ¡Õ¶Õ¡Õ¯Õ¨ Õ½Õ¿Õ¥Õ²Õ®Õ¾Õ¥ÖÖ‰';
+$messages['invalidimageformat'] = 'ÕŠÕ¡Õ¿Õ¯Õ¥Ö€Õ« Õ½Õ­Õ¡Õ¬ Õ±Ö‡Õ¡Õ¹Õ¡ÖƒÖ‰';
+$messages['mispellingsfound'] = 'Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¡Õ¶ Õ´Õ¥Õ» Õ¯Õ¡Õ¶ Õ¿Õ¡Õ¼Õ¡Õ½Õ­Õ¡Õ¬Õ¶Õ¥Ö€Ö‰';
+$messages['parentnotwritable'] = 'Õ†Õ·Õ¾Õ¡Õ® ÕºÕ¡Õ¶Õ¡Õ¯Õ« Õ´Õ¥Õ» ÕºÕ¡Õ¶Õ¡Õ¯Õ« Õ½Õ¿Õ¥Õ²Õ®Õ¸Ö‚Õ´Õ¨ Õ¯Õ¡Õ´ Õ¿Õ¥Õ²Õ¡ÖƒÕ¸Õ­Õ¸Ö‚Õ´Õ¨ Õ¡Õ¶Õ°Õ¶Õ¡Ö€ Õ§ Õ¡Õ¶Õ¢Õ¡Õ¾Õ¡Ö€Õ¡Ö€ Õ«Ö€Õ¡Õ¾Õ¸Ö‚Õ¶Ö„Õ¶Õ¥Ö€Õ« ÕºÕ¡Õ¿Õ³Õ¡Õ¼Õ¸Õ¾Ö‰';
+$messages['messagetoobig'] = 'Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¡Õ¶ Õ´Õ¡Õ½Õ¨ Õ¹Õ¡ÖƒÕ¡Õ¦Õ¡Õ¶Ö Õ´Õ¥Õ® Õ§ Õ½ÕºÕ¡Õ½Õ¡Ö€Õ¯Õ´Õ¡Õ¶ Õ°Õ¡Õ´Õ¡Ö€Ö‰';
diff --git a/program/localization/it_IT/messages.inc b/program/localization/it_IT/messages.inc
index 76d44a810..924003d8b 100644
--- a/program/localization/it_IT/messages.inc
+++ b/program/localization/it_IT/messages.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: emilio brambilla <Unknown> |
+ | Author: Thomas |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
diff --git a/program/localization/ja_JP/labels.inc b/program/localization/ja_JP/labels.inc
index ce2398d20..66a585e7f 100644
--- a/program/localization/ja_JP/labels.inc
+++ b/program/localization/ja_JP/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Takahiro Kambe <Unknown> |
+ | Author: Takahiro Kambe |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -96,7 +95,7 @@ $labels['longdec'] = '12月';
$labels['today'] = '今日';
$labels['refresh'] = 'å†èª­è¾¼ã¿';
$labels['checkmail'] = 'æ–°ã—ã届ã„ãŸãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’確èª';
-$labels['compose'] = 'メッセージを作æˆ';
+$labels['compose'] = 'メッセージã®ä½œæˆ';
$labels['writenewmessage'] = 'æ–°ã—ã„メッセージを作æˆ';
$labels['reply'] = '返信';
$labels['replytomessage'] = 'é€ä¿¡è€…ã«è¿”ä¿¡';
@@ -166,7 +165,7 @@ $labels['unlimited'] = '無制é™';
$labels['quicksearch'] = '高速検索';
$labels['resetsearch'] = '検索を解除';
$labels['searchmod'] = '検索ã®æ¡ä»¶';
-$labels['msgtext'] = 'メッセージã®å…¨ä½“';
+$labels['msgtext'] = 'メッセージ全体';
$labels['openinextwin'] = 'æ–°ã—ã„ウィンドウã§é–‹ã';
$labels['emlsave'] = 'ダウンロード(.emlå½¢å¼)';
$labels['editasnew'] = 'æ–°ã—ã„メッセージã¨ã—ã¦ç·¨é›†';
@@ -302,7 +301,7 @@ $labels['importreplace'] = 'アドレス帳全体ã¨ç½®ãæ›ãˆ';
$labels['importtext'] = '既存ã®ã‚¢ãƒ‰ãƒ¬ã‚¹å¸³ã‹ã‚‰é€£çµ¡å…ˆã‚’アップロードã§ãã¾ã™ã€‚ç¾åœ¨ã€<a href="http://ja.wikipedia.org/wiki/VCard">vCard</a> å½¢å¼ã‹ã‚‰ã®ã‚¤ãƒ³ãƒãƒ¼ãƒˆã«å¯¾å¿œã—ã¦ã„ã¾ã™ã€‚';
$labels['done'] = '完了';
$labels['settingsfor'] = '次ã®è¨­å®š:';
-$labels['about'] = 'Roundcube Webmailã«ã¤ã„ã¦';
+$labels['about'] = 'ã“ã®ãƒ—ログラムã«ã¤ã„ã¦';
$labels['preferences'] = '設定';
$labels['userpreferences'] = 'ユーザー設定';
$labels['editpreferences'] = 'ユーザー設定を変更';
@@ -354,8 +353,8 @@ $labels['everynminutes'] = '$n分毎';
$labels['keepalive'] = 'æ–°ç€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’確èªã™ã‚‹é–“éš”';
$labels['never'] = 'ã—ãªã„';
$labels['immediately'] = 'å³æ™‚';
-$labels['messagesdisplaying'] = 'メッセージを表示';
-$labels['messagescomposition'] = 'メッセージを作æˆ';
+$labels['messagesdisplaying'] = 'メッセージã®è¡¨ç¤º';
+$labels['messagescomposition'] = 'メッセージã®ä½œæˆ';
$labels['mimeparamfolding'] = '添付ファイルã®åå‰';
$labels['2231folding'] = 'RFC 2231ã«å®Œå…¨æº–æ‹ (Thunderbird)';
$labels['miscfolding'] = 'RFC 2047/2231(MS Outlook)';
diff --git a/program/localization/ja_JP/messages.inc b/program/localization/ja_JP/messages.inc
index f6dc49b4d..81e6d4765 100644
--- a/program/localization/ja_JP/messages.inc
+++ b/program/localization/ja_JP/messages.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Takahiro Kambe <Unknown> |
+ | Author: Takahiro Kambe |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
@@ -23,6 +22,7 @@ $messages['storageerror'] = 'IMAP サーãƒãƒ¼ã¸ã®æŽ¥ç¶šã«å¤±æ•—ã—ã¾ã—ãŸã
$messages['servererror'] = 'サーãƒãƒ¼ã§ã‚¨ãƒ©ãƒ¼ã§ã™!';
$messages['servererrormsg'] = 'サーãƒãƒ¼ã‚¨ãƒ©ãƒ¼: $msg';
$messages['dberror'] = 'データベースã®ã‚¨ãƒ©ãƒ¼ã§ã™!';
+$messages['requesttimedout'] = 'リクエストã®ã‚¿ã‚¤ãƒ ã‚¢ã‚¦ãƒˆ';
$messages['errorreadonly'] = 'æ“作を実行ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚フォルダーã¯èª­ã¿è¾¼ã¿å°‚用ã§ã™ã€‚';
$messages['errornoperm'] = 'æ“作を実行ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚権é™ãŒã‚ã‚Šã¾ã›ã‚“。';
$messages['invalidrequest'] = 'ä¸æ­£ãªãƒªã‚¯ã‚¨ã‚¹ãƒˆã§ã™! データã¯ä¿å­˜ã—ã¦ã„ã¾ã›ã‚“。';
diff --git a/program/localization/ko_KR/labels.inc b/program/localization/ko_KR/labels.inc
index 6a40dcf38..db0c7e5e3 100644
--- a/program/localization/ko_KR/labels.inc
+++ b/program/localization/ko_KR/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: seunghwan lee <hellix98@gmail.com> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -42,8 +41,10 @@ $labels['organization'] = '기관';
$labels['mailboxlist'] = 'í´ë”';
$labels['folders'] = 'í´ë”';
$labels['messagesfromto'] = '$count ê°œ 중 $from ì—ì„œ $to 번 메시지';
+$labels['threadsfromto'] = '$from ì—ì„œ $to 까지 $count ê°œì˜ ì“°ë ˆë“œ';
$labels['messagenrof'] = '$count 개 중 $nr 번 메시지';
$labels['copy'] = '참조';
+$labels['move'] = 'ì´ë™';
$labels['moveto'] = 'ì´ë™...';
$labels['download'] = '다운로드';
$labels['filename'] = 'íŒŒì¼ ì´ë¦„';
@@ -88,11 +89,18 @@ $labels['longoct'] = '10ì›”';
$labels['longnov'] = '11ì›”';
$labels['longdec'] = '12ì›”';
$labels['today'] = '오늘';
+$labels['refresh'] = '새로 고침';
$labels['checkmail'] = '새 ë©”ì¼ í™•ì¸';
$labels['compose'] = 'ë©”ì¼ ì“°ê¸°';
$labels['writenewmessage'] = '새 ë©”ì¼ ìž‘ì„±';
+$labels['reply'] = '회신';
$labels['replytomessage'] = '회신 작성';
$labels['replytoallmessage'] = '보낸ì´ì™€ 모든 수신ìžì—게 회신';
+$labels['replyall'] = '전체 회신';
+$labels['replylist'] = '회신 목ë¡';
+$labels['forward'] = '전달';
+$labels['forwardinline'] = '전달';
+$labels['forwardattachment'] = 'ë©”ì¼ì„ 첨부파ì¼ë¡œ 전달';
$labels['forwardmessage'] = 'ë©”ì¼ ì „ë‹¬';
$labels['deletemessage'] = 'ë©”ì¼ ì‚­ì œ';
$labels['movemessagetotrash'] = 'ë©”ì¼ íœ´ì§€í†µìœ¼ë¡œ ì´ë™';
@@ -103,19 +111,42 @@ $labels['nextmessage'] = 'ë‹¤ìŒ ë©”ì¼ ë³´ê¸°';
$labels['lastmessage'] = '마지막 ë©”ì¼ ë³´ê¸°';
$labels['backtolist'] = 'ë©”ì¼ ëª©ë¡ìœ¼ë¡œ';
$labels['viewsource'] = '소스 보기';
+$labels['mark'] = '표시';
$labels['markmessages'] = '메시지 표시';
$labels['markread'] = 'ì½ì€ 것으로 표시';
$labels['markunread'] = 'ì½ì§€ ì•Šì€ ê²ƒìœ¼ë¡œ 표시';
$labels['markflagged'] = '깃발 달기';
$labels['markunflagged'] = '깃발 내리기';
+$labels['moreactions'] = 'ì´ì™¸ì˜ ë™ìž‘...';
+$labels['more'] = 'ë”보기';
+$labels['back'] = '뒤로';
+$labels['options'] = 'ì„ íƒ ì‚¬í•­';
$labels['select'] = 'ì„ íƒ';
$labels['all'] = '모ë‘';
$labels['none'] = 'ì—†ìŒ';
$labels['nonesort'] = 'ì—†ìŒ';
+$labels['currpage'] = '현재 페ì´ì§€';
$labels['unread'] = 'ì½ì§€ ì•ŠìŒ';
$labels['flagged'] = '깃발';
$labels['unanswered'] = '답장하지 ì•ŠìŒ';
+$labels['deleted'] = 'ì‚­ì œë¨';
+$labels['invert'] = '반전';
$labels['filter'] = 'í•„í„°';
+$labels['list'] = '리스트';
+$labels['threads'] = '쓰레드';
+$labels['expand-all'] = 'ëª¨ë‘ í™•ìž¥';
+$labels['collapse-all'] = 'ëª¨ë‘ ì ‘ê¸°';
+$labels['threaded'] = '그룹화ë¨';
+$labels['autoexpand_threads'] = '모든 메시지 확장';
+$labels['flag'] = '표시';
+$labels['attachment'] = '첨부';
+$labels['sentdate'] = '보낸 날짜';
+$labels['arrival'] = '수신 날짜';
+$labels['asc'] = '오름차순';
+$labels['desc'] = '내림차순';
+$labels['listsorting'] = 'ì •ë ¬';
+$labels['listorder'] = '정렬 순서';
+$labels['folderactions'] = 'í´ë” 명령';
$labels['compact'] = '간단하게';
$labels['empty'] = '비우기';
$labels['quota'] = 'ë””ìŠ¤í¬ ì‚¬ìš©';
@@ -123,19 +154,28 @@ $labels['unknown'] = '알수 ì—†ìŒ';
$labels['unlimited'] = '제한 ì—†ìŒ';
$labels['quicksearch'] = '빨리 찾기';
$labels['resetsearch'] = '찾기 리셋';
+$labels['msgtext'] = '전체 메시지';
$labels['openinextwin'] = '새 ì°½ì—ì„œ 열기';
+$labels['emlsave'] = '다운로드 (.eml)';
$labels['savemessage'] = '드래프트 저장';
$labels['sendmessage'] = 'ë©”ì¼ ì§€ê¸ˆ 보냄';
$labels['addattachment'] = 'íŒŒì¼ ì²¨ë¶€';
$labels['charset'] = '문ìžì…‹';
$labels['editortype'] = '편집기 형태';
-$labels['returnreceipt'] = '수신 확ì¸';
+$labels['returnreceipt'] = '수신 í™•ì¸ ìš”ì²­í•˜ê¸°';
+$labels['dsn'] = '전송ìƒíƒœ ë©”ì¼ ë°›ê¸°';
+$labels['mailreplyintro'] = '$dataì—, $senderê°€ 작성:';
+$labels['originalmessage'] = 'ì›ë³¸ 메세지';
+$labels['spellcheck'] = '맞춤법';
$labels['checkspelling'] = 'ìŠ¤íŽ ë§ ì²´í¬';
$labels['resumeediting'] = '편집 계ì†';
$labels['revertto'] = 'ëŒì•„ê°';
+$labels['attach'] = '첨부';
$labels['attachments'] = '첨부 파ì¼';
$labels['upload'] = '업로드';
+$labels['uploadprogress'] = '$percent ($total ì—ì„œ $current)';
$labels['close'] = '닫기';
+$labels['messageoptions'] = '메시지 옵션(들)...';
$labels['low'] = 'ë‚®ìŒ';
$labels['lowest'] = '가장 ë‚®ìŒ';
$labels['normal'] = '보통';
@@ -144,6 +184,7 @@ $labels['highest'] = '가장 높ìŒ';
$labels['nosubject'] = '(제목 ì—†ìŒ)';
$labels['showimages'] = 'ì´ë¯¸ì§€ 표시';
$labels['alwaysshow'] = '$sender ì—ì„œ 온 ì´ë¯¸ì§€ í•­ìƒ ë³´ê¸°';
+$labels['isdraft'] = 'ì´ ë©”ì‹œì§€ëŠ” ìž„ì‹œ ë³´ê´€ 메시지 입니다.';
$labels['htmltoggle'] = 'HTML';
$labels['plaintoggle'] = 'ì¼ë°˜ í…스트';
$labels['savesentmessagein'] = '보낸 메시지를 다ìŒì— 저장';
@@ -159,13 +200,64 @@ $labels['receiptnote'] = '주ì˜: ì´ í™•ì¸ì€ ì´ ë©”ì‹œì§€ê°€ 수신ìžì˜ ì»
$labels['name'] = '표시 ì´ë¦„';
$labels['firstname'] = 'ì´ë¦„';
$labels['surname'] = '성';
+$labels['middlename'] = 'ê°€ìš´ë° ì´ë¦„';
+$labels['nameprefix'] = 'ì ‘ë‘사';
+$labels['namesuffix'] = '접미사';
+$labels['nickname'] = '별명';
+$labels['jobtitle'] = 'ì§ìœ„';
+$labels['department'] = '부서';
+$labels['gender'] = '성별';
+$labels['maidenname'] = '결혼 ì „ ì´ë¦„';
$labels['email'] = 'ì´ë©”ì¼';
+$labels['phone'] = 'ì „í™”';
+$labels['address'] = '주소';
+$labels['street'] = '세부주소';
+$labels['locality'] = '시/구/군';
+$labels['zipcode'] = '우편번호';
+$labels['region'] = 'ë„';
+$labels['country'] = 'êµ­ê°€';
+$labels['birthday'] = 'ìƒë…„ì›”ì¼';
+$labels['anniversary'] = '기ë…ì¼';
+$labels['website'] = '웹사ì´íŠ¸';
+$labels['instantmessenger'] = '메신져';
+$labels['notes'] = '노트';
+$labels['male'] = '남성';
+$labels['female'] = '여성';
+$labels['manager'] = '관리ìž';
+$labels['assistant'] = 'ë„우미';
+$labels['typeassistant'] = 'ë„우미';
+$labels['spouse'] = 'ë°°ìš°ìž';
+$labels['allfields'] = '친구 전체';
+$labels['search'] = '검색';
+$labels['advsearch'] = 'ìƒì„¸ 검색';
+$labels['advanced'] = '고급 설정';
+$labels['other'] = '그 외';
+$labels['typeother'] = '그 외';
+$labels['typehome'] = '홈';
+$labels['typework'] = 'ì§ìž¥';
+$labels['typemobile'] = '휴대í°';
+$labels['typemain'] = '주';
+$labels['typehomefax'] = '팩스(집)';
+$labels['typeworkfax'] = '팩스(ì§ìž¥)';
+$labels['typecar'] = 'ìžë™ì°¨';
+$labels['typepager'] = '호출기';
+$labels['typevideo'] = 'ë™ì˜ìƒ';
+$labels['typehomepage'] = '홈 페ì´ì§€';
+$labels['typeblog'] = '블로그';
+$labels['typeprofile'] = 'ìžê¸°ì†Œê°œ';
+$labels['addfield'] = '항목 추가..';
$labels['addcontact'] = '새 ì—°ë½ì²˜ 추가';
$labels['editcontact'] = 'ì—°ë½ì²˜ 편집';
+$labels['contacts'] = 'ì—°ë½ì²˜';
+$labels['personalinfo'] = 'ê°œì¸ ì •ë³´';
$labels['edit'] = '편집';
$labels['cancel'] = '취소';
$labels['save'] = '저장';
$labels['delete'] = '삭제';
+$labels['rename'] = 'ì´ë¦„ 변경';
+$labels['addphoto'] = '추가';
+$labels['replacephoto'] = '바꾸기';
+$labels['uploadphoto'] = '사진 올리기';
$labels['newcontact'] = '새 ì—°ë½ì²˜ ì¹´ë“œ 만들기';
$labels['deletecontact'] = 'ì„ íƒí•œ ì—°ë½ì²˜ ì‚­ì œ';
$labels['composeto'] = '새 ë©”ì¼ ìž‘ì„±';
@@ -173,10 +265,15 @@ $labels['contactsfromto'] = '$from ì—ì„œ $to ë¡œì˜ ì—°ë½ì²˜ $count ê°œ';
$labels['print'] = 'ì¸ì‡„';
$labels['export'] = '내보내기';
$labels['exportvcards'] = 'ì—°ë½ì²˜ë¥¼ vCard í¬ë§·ìœ¼ë¡œ 내보내기';
+$labels['newcontactgroup'] = '새로운 ì—°ë½ì²˜ 그룹 ìƒì„±';
+$labels['grouprename'] = '그룹 ì´ë¦„ 바꾸기';
+$labels['groupdelete'] = '그룹 삭제';
+$labels['groupremoveselected'] = '그룹ì—ì„œ ì„ íƒí•œ ì—°ë½ì²˜ 제거';
$labels['previouspage'] = 'ì´ì „ 세트 보기';
$labels['firstpage'] = 'ì²˜ìŒ ì„¸íŠ¸ 보기';
$labels['nextpage'] = 'ë‹¤ìŒ ì„¸íŠ¸ 보기';
$labels['lastpage'] = '마지막 세트 보기';
+$labels['group'] = '그룹';
$labels['groups'] = '그룹';
$labels['personaladrbook'] = 'ê°œì¸ ì£¼ì†Œ';
$labels['import'] = '가져오기';
@@ -186,6 +283,7 @@ $labels['importreplace'] = 'ì „ì²´ 주소ë¡ì„ 바꿈';
$labels['importtext'] = 'ì—°ë½ì²˜ë“¤ì„ 가지고 있는 주소ë¡ì—ì„œ 가져올 수 있습니다.<br/> 현재는 <a href="http://en.wikipedia.org/wiki/VCard">vCard</a> í¬ë§·ì—ì„œ 가져오기를 지ì›í•©ë‹ˆë‹¤.';
$labels['done'] = '완료';
$labels['settingsfor'] = '설정';
+$labels['about'] = 'ì´ê²ƒì€...';
$labels['preferences'] = '환경 설정';
$labels['userpreferences'] = 'ì‚¬ìš©ìž í™˜ê²½';
$labels['editpreferences'] = 'ì‚¬ìš©ìž í™˜ê²½ 편집';
@@ -195,7 +293,10 @@ $labels['newidentity'] = '새 ì‹ ì›';
$labels['newitem'] = '새 ì•„ì´í…œ';
$labels['edititem'] = 'ì•„ì´í…œ 편집';
$labels['preferhtml'] = 'HTML ë³´ì´ê¸°';
+$labels['defaultcharset'] = '기본 ë¬¸ìž ì„¸íŠ¸';
$labels['htmlmessage'] = 'HTML 메시지';
+$labels['dateformat'] = '날짜 형ì‹';
+$labels['timeformat'] = '시간 형ì‹';
$labels['prettydate'] = '날짜 형ì‹';
$labels['setdefault'] = '기본으로 설정';
$labels['autodetect'] = 'ìžë™';
@@ -205,6 +306,7 @@ $labels['pagesize'] = '페ì´ì§€ë‹¹ 줄 수';
$labels['signature'] = '서명';
$labels['dstactive'] = '서머타임';
$labels['htmleditor'] = 'HTML ë©”ì¼ ì“°ê¸°';
+$labels['htmlonreply'] = 'HTML ë©”ì‹œì§€ì— íšŒì‹ í•  ë•Œì— ë§Œ';
$labels['htmlsignature'] = 'HTML 서명';
$labels['previewpane'] = 'ì´ì „ 구역 보기';
$labels['skin'] = 'ì¸í„°íŽ˜ì´ìŠ¤ 스킨';
@@ -220,6 +322,8 @@ $labels['ignore'] = '무시';
$labels['readwhendeleted'] = '삭제할 ë•Œ 메시지를 ì½ì€ 것으로 표시';
$labels['flagfordeletion'] = '지우는 대신 지울 ë©”ì‹œì§€ì— ê¹ƒë°œ 달기';
$labels['skipdeleted'] = '지운 메시지 ë³´ì´ì§€ 않기';
+$labels['deletealways'] = '휴지통으로 메시지 ì´ë™ì„ 실패하면, ì‚­ì œ';
+$labels['deletejunk'] = 'ì •í¬ ë©”ì¼í•¨ì— 있는 ë©”ì‹œì§€ë“¤ì„ ë°”ë¡œ ì‚­ì œ';
$labels['showremoteimages'] = 'ì›ê²© ì´ë¯¸ì§€ ë³´ì´ê¸°';
$labels['fromknownsenders'] = '아는 발신ì¸ì—게서만';
$labels['always'] = 'í•­ìƒ';
@@ -228,15 +332,39 @@ $labels['autosavedraft'] = '드래프트 ìžë™ 저장';
$labels['everynminutes'] = '$n 분마다';
$labels['keepalive'] = 'ë‹¤ìŒ ê°„ê²©ë§ˆë‹¤ 새 메시지 ìžë™ ì²´í¬';
$labels['never'] = '하지 ì•ŠìŒ';
+$labels['immediately'] = '즉시';
$labels['messagesdisplaying'] = '메시지 표시 중';
$labels['messagescomposition'] = '메시지 작성 중';
$labels['mimeparamfolding'] = '첨부 íŒŒì¼ ì´ë¦„';
$labels['2231folding'] = 'Full RFC 2231 (ì„ ë”버드)';
$labels['miscfolding'] = 'RFC 2047/2231 (MS 아웃룻)';
$labels['2047folding'] = 'Full RFC 2047 (다른 프로그램들)';
+$labels['force7bit'] = '8-bit 문ìžë“¤ì„ 위해서 MIME ì¸ì½”ë”©ì„ ì‚¬ìš©';
$labels['advancedoptions'] = 'ìƒì„¸ 설정';
$labels['focusonnewmessage'] = '새 메시지가 있으면 브ë¼ìš°ì € 윈ë„ìš°ë¡œ í¬ì»¤ìŠ¤ ì´ë™';
$labels['checkallfolders'] = '새 메시지를 위해 모든 í´ë” ì²´í¬';
+$labels['displaynext'] = '메시지 ì‚­ì œ/ì´ë™í•œ 후ì—는 ë‹¤ìŒ ë©”ì‹œì§€ë¥¼ 표시';
+$labels['defaultfont'] = 'HTML ë©”ì‹œì§€ì˜ ê¸°ë³¸ í°íŠ¸';
+$labels['mainoptions'] = '주 옵션';
+$labels['browseroptions'] = '브ë¼ìš°ì € 옵션';
+$labels['section'] = '섹션';
+$labels['maintenance'] = '유지 관리';
+$labels['newmessage'] = '새 메시지';
+$labels['signatureoptions'] = '서명 옵션';
+$labels['autoaddsignature'] = 'ìžë™ìœ¼ë¡œ 서명 추가';
+$labels['newmessageonly'] = '새로운 메시지만';
+$labels['replyandforwardonly'] = '회신ì´ë‚˜ 전달 메시지 만';
+$labels['insertsignature'] = '서명 삽입';
+$labels['previewpanemarkread'] = '미리 ì½íž˜ 메시지를 ì½ìŒìœ¼ë¡œ 표시';
+$labels['afternseconds'] = '$n ì´ˆ ì´í›„';
+$labels['reqmdn'] = 'í•­ìƒ ìˆ˜ì‹ í™•ì¸ ìš”ì²­ 하기';
+$labels['defaultaddressbook'] = 'ì„ íƒí•œ 주소ë¡ì— 새로운 ì—°ë½ì²˜ë¥¼ 추가';
+$labels['spellcheckbeforesend'] = '메시지를 보내기 ì „ì— ë§žì¶¤ë²• 확ì¸';
+$labels['spellcheckoptions'] = '맞춤법 í™•ì¸ ì˜µì…˜';
+$labels['spellcheckignoresyms'] = 'ì‹¬ë³¼ì´ í¬í•¨ëœ 단어 무시하기';
+$labels['spellcheckignorenums'] = '숫ìžê°€ í¬í•¨ëœ 단어 무시하기';
+$labels['spellcheckignorecaps'] = '대문ìžê°€ í¬í•¨ëœ 단어 무시하기';
+$labels['addtodict'] = 'ì‚¬ì „ì— ì¶”ê°€';
$labels['folder'] = 'í´ë”';
$labels['foldername'] = 'í´ë” ì´ë¦„';
$labels['subscribed'] = '가입ë¨';
@@ -245,11 +373,34 @@ $labels['create'] = '만들기';
$labels['createfolder'] = '새 í´ë” 만들기';
$labels['managefolders'] = 'í´ë” 관리';
$labels['specialfolders'] = '특수 í´ë”';
+$labels['properties'] = 'ë“±ë¡ ì •ë³´';
+$labels['folderproperties'] = 'í´ë” ë“±ë¡ ì •ë³´';
+$labels['parentfolder'] = 'ìƒìœ„ í´ë”';
+$labels['info'] = 'ì •ë³´';
+$labels['getfoldersize'] = 'í´ë”ì˜ ì‚¬ì´ì¦ˆë¥¼ 알아보려면 í´ë¦­';
+$labels['changesubscription'] = '구ë…ì„ ë³€ê²½í•˜ë ¤ë©´ í´ë¦­';
+$labels['foldertype'] = 'í´ë” 타입';
+$labels['personalfolder'] = 'ê°œì¸ í´ë”';
+$labels['otherfolder'] = '다른 사용ìžì˜ í´ë”';
+$labels['sharedfolder'] = '공개 í´ë”';
$labels['sortby'] = 'ì •ë ¬';
$labels['sortasc'] = '오름차순으로 정렬';
$labels['sortdesc'] = '내림차순으로 정렬';
+$labels['undo'] = '실행 취소';
+$labels['plugin'] = '플러그ì¸';
+$labels['version'] = '버전';
+$labels['license'] = 'ë¼ì´ì„¼ìŠ¤';
+$labels['support'] = 'ì§€ì› ë°›ê¸°';
$labels['B'] = 'ë°”ì´íŠ¸';
$labels['KB'] = '킬로바ì´íŠ¸';
$labels['MB'] = '메가바ì´íŠ¸';
$labels['GB'] = '기가바ì´íŠ¸';
+$labels['unicode'] = '유니코드(ë‹¨ì¼ ì½”ë“œ,ë‹¤êµ­ì  ì§€ì›ì½”ë“œ)';
+$labels['english'] = 'ì˜ì–´';
+$labels['turkish'] = '터키어';
+$labels['thai'] = '태국어';
+$labels['vietnamese'] = '베트남어';
+$labels['japanese'] = 'ì¼ë³¸ì–´';
+$labels['korean'] = '한국어';
+$labels['chinese'] = '중국어';
diff --git a/program/localization/ko_KR/messages.inc b/program/localization/ko_KR/messages.inc
index 64c2181b5..c1936dbd0 100644
--- a/program/localization/ko_KR/messages.inc
+++ b/program/localization/ko_KR/messages.inc
@@ -9,20 +9,29 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: Kim, Woohyun <woohyun.kim@gmail.com> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
-$messages['loginfailed'] = 'ë¡œê·¸ì¸ ì‹¤íŒ¨';
+$messages['errortitle'] = 'ì—러가 ë°œìƒ!';
+$messages['loginfailed'] = '로그ì¸ì´ 실패하였습니다.';
$messages['cookiesdisabled'] = '브ë¼ìš°ì €ê°€ 쿠키를 지ì›í•˜ì§€ 않습니다';
$messages['sessionerror'] = 'ì„¸ì…˜ì´ ìœ íš¨í•˜ì§€ 않거나 종료ë˜ì—ˆìŠµë‹ˆë‹¤';
$messages['storageerror'] = 'IMAP 서버 연결 실패';
+$messages['servererror'] = '서버 ì—러!';
+$messages['servererrormsg'] = '서버 ì—러: $msg';
+$messages['dberror'] = 'ë°ì´í„°ë² ì´ìŠ¤ ì—러!';
+$messages['requesttimedout'] = '요청 시간 초과';
+$messages['errorreadonly'] = 'ëª…ë ¹ì„ ìˆ˜í–‰í•  수 없습니다. ì½ê¸°ì „ìš© í´ë”.';
+$messages['errornoperm'] = 'ëª…ë ¹ì„ ìˆ˜í–‰í•  수 없습니다. ê¶Œí•œì´ ê±°ë¶€ ë¨.';
+$messages['invalidrequest'] = 'ìž˜ëª»ëœ ìš”ì²­! ë°ì´í„°ëŠ” 저장ë˜ì§€ 않았ìŒ.';
$messages['nomessagesfound'] = 'ì´ ë©”ì¼í•¨ì— ë©”ì¼ì´ 없습니다';
$messages['loggedout'] = 'ì„¸ì…˜ì„ ì„±ê³µì ìœ¼ë¡œ 종료하였습니다. 안녕히 가십시오!';
$messages['mailboxempty'] = 'ë©”ì¼í•¨ì´ 비어있습니다';
$messages['loading'] = '불러오는 중...';
+$messages['uploading'] = 'í•˜ë‚˜ì˜ íŒŒì¼ ì˜¬ë¦¬ê¸°...';
+$messages['uploadingmany'] = '여러 íŒŒì¼ ì˜¬ë¦¬ê¸°...';
$messages['loadingdata'] = 'ë°ì´í„° 불러오는 중...';
$messages['checkingmail'] = '새 ë©”ì¼ í™•ì¸ ì¤‘...';
$messages['sendingmessage'] = 'ë©”ì¼ ë³´ë‚´ëŠ” 중...';
@@ -32,22 +41,31 @@ $messages['messagesaved'] = 'ë©”ì¼ì´ 드래프트 í´ë”ì— ì €ìž¥ë˜ì—ˆìŠµë‹ˆ
$messages['successfullysaved'] = '성공ì ìœ¼ë¡œ 저장';
$messages['addedsuccessfully'] = 'ì—°ë½ì²˜ê°€ 주소ë¡ì— 성공ì ìœ¼ë¡œ 추가ë˜ì—ˆìŠµë‹ˆë‹¤';
$messages['contactexists'] = 'ì´ ë©”ì¼ë¡œ ì§€ì •ëœ ì—°ë½ì²˜ê°€ ì´ë¯¸ 있습니다';
+$messages['contactnameexists'] = 'ì´ë¯¸ 존재하는 것과 ë™ì¼í•œ ì´ë¦„ì˜ ì—°ë½ì²˜.';
$messages['blockedimages'] = '보안 유지를 위해, ì´ ë©”ì¼ì˜ 외부 ì´ë¯¸ì§€ë¥¼ 차단하였습니다';
$messages['encryptedmessage'] = 'ì´ ë©”ì¼ì€ 암호화ë˜ì–´ ë³¼ 수 없습니다. 죄송합니다!';
$messages['nocontactsfound'] = 'ì—°ë½ì²˜ ì—†ìŒ';
$messages['contactnotfound'] = '요청한 ì—°ë½ì²˜ê°€ 없습니다';
+$messages['contactsearchonly'] = 'ì—°ë½ì²˜ë¥¼ 찾기 위해 검색 í•­ëª©ì„ ìž…ë ¥í•˜ì„¸ìš”.';
$messages['sendingfailed'] = 'ë©”ì¼ì„ 보내지 못했습니다';
$messages['senttooquickly'] = 'ì´ ë©”ì‹œì§€ë¥¼ 보내기 ì „ì— $sec ì´ˆ ë™ì•ˆ 기다리십시오.';
$messages['errorsavingsent'] = '보낸 메시지를 저장할 ë•Œ ì—러가 ë°œìƒí–ˆìŠµë‹ˆë‹¤.';
$messages['errorsaving'] = '저장 중 ì—러가 ë°œìƒí–ˆìŠµë‹ˆë‹¤';
$messages['errormoving'] = 'ë©”ì¼ì„ 옮길 수 없습니다';
+$messages['errorcopying'] = '메시지(들)를 복사할 수 없습니다.';
$messages['errordeleting'] = 'ë©”ì¼ì„ 지울 수 없습니다';
+$messages['errormarking'] = '메시지(들)ì— í‘œì‹œí•  수 없습니다.';
$messages['deletecontactconfirm'] = 'ì •ë§ ì„ íƒí•œ ì—°ë½ì²˜ë“¤ì„ 삭제하시겠습니까?';
+$messages['deletegroupconfirm'] = 'ì •ë§ë¡œ ì„ íƒí•œ ê·¸ë£¹ì„ ì‚­ì œí•˜ëŠ” ê²ƒì„ ì›í•˜ì‹­ë‹ˆê¹Œ?';
$messages['deletemessagesconfirm'] = 'ì •ë§ ì„ íƒí•œ ë©”ì¼ë“¤ì„ 삭제하시겠습니까?';
$messages['deletefolderconfirm'] = 'ì •ë§ ì´ í´ë”를 삭제하시겠습니까?';
$messages['purgefolderconfirm'] = 'ì •ë§ ì´ í´ë”ì˜ ëª¨ë“  ë©”ì¼ì„ 삭제하시겠습니까?';
+$messages['contactdeleting'] = 'ì—°ë½ì²˜(들) ì‚­ì œ 중...';
+$messages['groupdeleting'] = '그룹 삭제 중...';
$messages['folderdeleting'] = 'í´ë” 지우는 중...';
$messages['foldermoving'] = 'í´ë” 옮기는 중...';
+$messages['foldersubscribing'] = 'í´ë”ì˜ êµ¬ë…ì„ í™œì„±í™” 하는 중...';
+$messages['folderunsubscribing'] = 'í´ë”ì˜ êµ¬ë…ì„ ì·¨ì†Œí•˜ëŠ” 중...';
$messages['formincomplete'] = 'ì–‘ì‹ì„ 완전히 채우지 않았습니다';
$messages['noemailwarning'] = '유효한 ì´ë©”ì¼ ì£¼ì†Œë¥¼ 넣어주십시오';
$messages['nonamewarning'] = 'ì´ë¦„ì„ ë„£ì–´ì£¼ì‹­ì‹œì˜¤';
@@ -59,12 +77,18 @@ $messages['nobodywarning'] = 'í…스트 ì—†ì´ ë©”ì¼ì„ 보낼까요?';
$messages['notsentwarning'] = 'ë©”ì¼ì„ 보내지 않았습니다. ë©”ì¼ì„ 버리시겠습니까?';
$messages['noldapserver'] = '검색할 LDAP 서버를 ì„ íƒí•˜ì„¸ìš”';
$messages['nosearchname'] = 'ì—°ë½ì²˜ ì´ë¦„ì´ë‚˜ ë©”ì¼ ì£¼ì†Œë¥¼ 넣으세요';
+$messages['notuploadedwarning'] = 'ì•„ì§ ëª¨ë“  첨부가 업로드ë˜ì§€ 않았습니다. 기다리거나 업로드를 취소하기 ë°”ëžë‹ˆë‹¤.';
$messages['searchsuccessful'] = '$nrê°œì˜ ë©”ì¼ ë°œê²¬';
+$messages['contactsearchsuccessful'] = '$nr ì—°ë½ì²˜ 발견ë¨.';
$messages['searchnomatch'] = '검색 결과가 없습니다';
$messages['searching'] = '검색 중...';
$messages['checking'] = 'ì²´í¬ ì¤‘...';
$messages['nospellerrors'] = 'ìŠ¤íŽ ë§ ì—러가 없습니다';
$messages['folderdeleted'] = 'í´ë”를 성공ì ìœ¼ë¡œ 삭제하였습니다';
+$messages['foldersubscribed'] = 'í´ë”ê°€ 성공ì ìœ¼ë¡œ êµ¬ë… ë¨.';
+$messages['folderunsubscribed'] = 'í´ë”ê°€ 성공ì ìœ¼ë¡œ êµ¬ë… ì·¨ì†Œ ë¨.';
+$messages['folderpurged'] = 'í´ë”ê°€ 성공ì ìœ¼ë¡œ 비워졌습니다.';
+$messages['folderexpunged'] = 'í´ë”ê°€ 성공ì ìœ¼ë¡œ 압축 ë˜ì—ˆìŠµë‹ˆë‹¤.';
$messages['deletedsuccessfully'] = '성공ì ìœ¼ë¡œ 삭제하였습니다';
$messages['converting'] = 'ë©”ì¼ì˜ í¬ë§·ì„ 지우는 중...';
$messages['messageopenerror'] = '서버ì—ì„œ ë©”ì¼ì„ 가져올 수 없습니다';
@@ -75,16 +99,54 @@ $messages['copyerror'] = '주소를 복사할 수 없습니다';
$messages['sourceisreadonly'] = 'ì´ ì£¼ì†Œ 소스는 ì½ê¸° 전용입니다';
$messages['errorsavingcontact'] = 'ì—°ë½ì²˜ 주소를 저장할 수 없습니다';
$messages['movingmessage'] = '메시지 ì´ë™ 중...';
+$messages['copyingmessage'] = '메시지(들) 복사 중...';
+$messages['copyingcontact'] = 'ì—°ë½ì²˜(들) 복사 중...';
+$messages['deletingmessage'] = '메시지(들) 삭제 중...';
+$messages['markingmessage'] = '메시지(들)ì— í‘œì‹œ 중...';
+$messages['addingmember'] = 'ê·¸ë£¹ì— ì—°ë½ì²˜(들)ì„ ì¶”ê°€ 중...';
+$messages['removingmember'] = '그룹으로 부터 ì—°ë½ì²˜ë¥¼ ì‚­ì œ 중...';
$messages['receiptsent'] = 'ë©”ì¼ ì½ìŒ 확ì¸ì„ 보냈습니다';
$messages['errorsendingreceipt'] = 'ì½ìŒ 확ì¸ì„ 보낼 수 없습니다';
$messages['nodeletelastidentity'] = 'ì´ ì •ë³´ëŠ” 마지막 ë‚¨ì€ ê²ƒì´ë¯€ë¡œ 지울 수 없습니다';
$messages['forbiddencharacter'] = 'í´ë” ì´ë¦„ì— ì“¸ 수 없는 문ìžê°€ í¬í•¨ë˜ì–´ 있습니다';
$messages['selectimportfile'] = '업로드할 파ì¼ì„ ì„ íƒí•˜ì„¸ìš”';
$messages['addresswriterror'] = 'ì„ íƒí•œ 주소ë¡ì€ 쓸 수 없습니다';
+$messages['contactaddedtogroup'] = 'ì´ ê·¸ë£¹ì— ì—°ë½ì²˜ë¥¼ 성공ì ìœ¼ë¡œ 추가 함.';
+$messages['contactremovedfromgroup'] = 'ì´ ê·¸ë£¹ìœ¼ë¡œ 부터 ì—°ë½ì²˜ë¥¼ 성공ì ìœ¼ë¡œ 제거 함.';
$messages['importwait'] = '가져오는 중, 기다리세요...';
$messages['importerror'] = '가져오기 실패! 업로드한 파ì¼ì´ 유효한 vCard 파ì¼ì´ 아닙니다.';
$messages['importconfirm'] = '<b>$inserted ì—°ë½ì²˜ë¥¼ 성공ì ìœ¼ë¡œ 가져왔고, $skipped 존재하는 í•­ëª©ì€ ê±´ë„ˆë›°ì—ˆìŠµë‹ˆë‹¤.</b>:<p><em>$names</em></p>';
$messages['opnotpermitted'] = 'ìž‘ì—…ì´ í—ˆê°€ë˜ì§€ 않았습니다!';
$messages['nofromaddress'] = 'ì„ íƒí•œ ì‹ ì›ì— ì´ë©”ì¼ ì£¼ì†Œê°€ ì—†ìŒ';
$messages['editorwarning'] = 'ì¼ë°˜ í…스트 편집기로 바꾸면 모든 ì„œì‹ì´ 사ë¼ì§‘니다. 계ì†í• ê¹Œìš”?';
+$messages['httpreceivedencrypterror'] = '치명ì ì¸ 설정 오류가 ë°œìƒ ë˜ì—ˆìŒ. 관리ìžì—게 바로 ì—°ë½ì„ 취하세요.<b>메시지를 전송할 수 없습니다.</b>';
+$messages['smtpconnerror'] = 'SMTP ì—러 ($code): ì„œë²„ë¡œì˜ ì—°ê²°ì´ ì‹¤íŒ¨ ë¨.';
+$messages['smtpautherror'] = 'SMTP ì—러 ($code): ì¸ì¦ì´ 실패 ë¨.';
+$messages['smtpfromerror'] = 'SMTP ì—러 ($code): 보낸 ì‚¬ëžŒì„ "$from"ë¡œ 설정하는 ê²ƒì´ ì‹¤íŒ¨ ë¨ ($msg).';
+$messages['smtptoerror'] = 'SMTP ì—러 ($code): ìˆ˜ì‹ ìž "$to"를 추가하는 ë° ì‹¤íŒ¨ 함 ($msg).';
+$messages['smtprecipientserror'] = 'SMTP ì—러: ìˆ˜ì‹ ìž ëª©ë¡ì„ 분ì„(parse)í•  수 ì—†ìŒ.';
+$messages['smtperror'] = 'SMTP ì—러: $msg';
+$messages['emailformaterror'] = 'ìž˜ëª»ëœ e-mail 주소: $email';
+$messages['toomanyrecipients'] = '수신ìžê°€ 너무 많습니다. 수신ìžì˜ 수를 $maxë¡œ 줄ì´ì„¸ìš”.';
+$messages['maxgroupmembersreached'] = '그룹 구성ì›ì˜ 수가 최대 ì¸ì› $max를 초과하였습니다.';
+$messages['internalerror'] = '내부 오류가 ë°œìƒí•˜ì˜€ìŠµë‹ˆë‹¤. 다시 ì‹œë„하기 ë°”ëžë‹ˆë‹¤.';
+$messages['contactdelerror'] = 'ì—°ë½ì²˜(들)ì„ ì§€ìš¸ 수 없습니다.';
+$messages['contactdeleted'] = 'ì—°ë½ì²˜(들)ì´ ì„±ê³µì ìœ¼ë¡œ 제거 ë¨.';
+$messages['contactrestoreerror'] = 'ì‚­ì œëœ ì—°ë½ì²˜(들)ì„ ë³µêµ¬í•  수 ì—†ìŒ.';
+$messages['contactrestored'] = 'ì—°ë½ì²˜(들)ì´ ì„±ê³µì ìœ¼ë¡œ 복구 ë¨.';
+$messages['groupdeleted'] = 'ê·¸ë£¹ì´ ì„±ê³µì ìœ¼ë¡œ ì‚­ì œ ë¨.';
+$messages['grouprenamed'] = 'ê·¸ë£¹ëª…ì´ ì„±ê³µì ìœ¼ë¡œ 변경 ë¨.';
+$messages['groupcreated'] = 'ê·¸ë£¹ì´ ì„±ê³µì ìœ¼ë¡œ ìƒì„± ë¨.';
+$messages['messagedeleted'] = '메시지(들)ì´ ì„±ê³µì ìœ¼ë¡œ ì‚­ì œ ë¨.';
+$messages['messagemoved'] = '메시지(들)ì„ ì„±ê³µì ìœ¼ë¡œ ì´ë™ 함.';
+$messages['messagecopied'] = '메시지(들)ì„ ì„±ê³µì ìœ¼ë¡œ 복사 함.';
+$messages['messagemarked'] = '메시지(들)ì— ì„±ê³µì ìœ¼ë¡œ 표시 함.';
+$messages['autocompletechars'] = 'ìžë™ ì™„ì„±ì„ ìœ„í•´ì„œ ì ì–´ë„ $min 글ìžë¥¼ 입력하세요.';
+$messages['namecannotbeempty'] = 'ì´ë¦„ì´ ë¹„ì›Œì ¸ì„œëŠ” 안ë©ë‹ˆë‹¤.';
+$messages['nametoolong'] = 'ì´ë¦„ì´ ë„ˆë¬´ ê¹ë‹ˆë‹¤.';
+$messages['folderupdated'] = 'í´ë”를 성공ì ìœ¼ë¡œ 갱신 함.';
+$messages['foldercreated'] = 'í´ë”를 성공ì ìœ¼ë¡œ ìƒì„± 함.';
+$messages['invalidimageformat'] = '올바른 ì´ë¯¸ì§€ í¬ë©§ì´ 아님.';
+$messages['mispellingsfound'] = '메시지ì—ì„œ 맞춤법 오류를 ê°ì§€ 하였ìŒ.';
+$messages['parentnotwritable'] = 'ì„ íƒí•œ 부모 í´ë”ì— í´ë”를 ìƒì„±í•˜ê±°ë‚˜ ì´ë™í•  수 ì—†ìŒ. ì ‘ê·¼ ê¶Œí•œì´ ì—†ìŒ.';
diff --git a/program/localization/lt_LT/messages.inc b/program/localization/lt_LT/messages.inc
index 6e8311a58..b83ffcfe4 100644
--- a/program/localization/lt_LT/messages.inc
+++ b/program/localization/lt_LT/messages.inc
@@ -11,7 +11,6 @@
+-----------------------------------------------------------------------+
| Author: Rimas Kudelis <rq@akl.lt> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
@@ -23,6 +22,7 @@ $messages['storageerror'] = 'Nepavyko prisijungti prie IMAP serverio.';
$messages['servererror'] = 'Serverio klaida!';
$messages['servererrormsg'] = 'Serverio klaida: $msg';
$messages['dberror'] = 'Duomenų bazės klaida!';
+$messages['requesttimedout'] = 'Baigėsi užklausai skirtas laikas';
$messages['errorreadonly'] = 'Nepavyko atlikti veiksmo – aplankas prieinamas tik skaitymui.';
$messages['errornoperm'] = 'Nepavyko atlikti veiksmo – nepakanka teisių.';
$messages['invalidrequest'] = 'Netinkama užklausa! Duomenys neišsaugoti.';
diff --git a/program/localization/ml_IN/labels.inc b/program/localization/ml_IN/labels.inc
index 3fd2c413e..a16885d6c 100644
--- a/program/localization/ml_IN/labels.inc
+++ b/program/localization/ml_IN/labels.inc
@@ -2,7 +2,7 @@
/*
+-----------------------------------------------------------------------+
- | localization/ml_IN/labels.inc |
+ | localization/ml_ML/labels.inc |
| |
| Language file of the Roundcube Webmail client |
| Copyright (C) 2012, The Roundcube Dev Team |
@@ -11,7 +11,6 @@
+-----------------------------------------------------------------------+
| Author: midhun <orisis47@gmail.com> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
diff --git a/program/localization/ml_IN/messages.inc b/program/localization/ml_IN/messages.inc
index 4fb27a36e..3e4b4d5da 100644
--- a/program/localization/ml_IN/messages.inc
+++ b/program/localization/ml_IN/messages.inc
@@ -2,7 +2,7 @@
/*
+-----------------------------------------------------------------------+
- | localization/ml_IN/messages.inc |
+ | localization/ml_ML/messages.inc |
| |
| Language file of the Roundcube Webmail client |
| Copyright (C) 2012, The Roundcube Dev Team |
@@ -11,7 +11,6 @@
+-----------------------------------------------------------------------+
| Author: Anish A <aneesh.nl@gmail.com> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
diff --git a/program/localization/nl_NL/labels.inc b/program/localization/nl_NL/labels.inc
index 79a688440..39a85245a 100644
--- a/program/localization/nl_NL/labels.inc
+++ b/program/localization/nl_NL/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Geert Wirken <Unknown> |
+ | Author: Geert Wirken |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -154,7 +153,7 @@ $labels['arrival'] = 'Aankomst datum';
$labels['asc'] = 'oplopend';
$labels['desc'] = 'aflopend';
$labels['listcolumns'] = 'Kolommen';
-$labels['listsorting'] = 'Sorteerkolom';
+$labels['listsorting'] = 'Sorteer op kolom';
$labels['listorder'] = 'Sorteervolgorde';
$labels['listmode'] = 'Weergavemodus';
$labels['folderactions'] = 'Acties voor map...';
@@ -173,7 +172,7 @@ $labels['editasnew'] = 'Als nieuw bewerken';
$labels['savemessage'] = 'Bewaar als concept';
$labels['sendmessage'] = 'Verstuur het bericht nu';
$labels['addattachment'] = 'Voeg een bijlage toe';
-$labels['charset'] = 'Karakterset';
+$labels['charset'] = 'Tekenset';
$labels['editortype'] = 'Opmaak';
$labels['returnreceipt'] = 'Ontvangstbevestiging';
$labels['dsn'] = 'Afleveringsbericht (DSN)';
@@ -267,7 +266,7 @@ $labels['contacts'] = 'Contactpersonen';
$labels['contactproperties'] = 'Contact eigenschappen';
$labels['personalinfo'] = 'Persoonlijke informatie';
$labels['edit'] = 'Wijzig';
-$labels['cancel'] = 'Annuleer';
+$labels['cancel'] = 'Annuleren';
$labels['save'] = 'Opslaan';
$labels['delete'] = 'Verwijder';
$labels['rename'] = 'Hernoem';
@@ -312,11 +311,11 @@ $labels['newidentity'] = 'Identiteit toevoegen';
$labels['newitem'] = 'Nieuw item';
$labels['edititem'] = 'Wijzig item';
$labels['preferhtml'] = 'Toon HTML';
-$labels['defaultcharset'] = 'Standaard karakterset';
+$labels['defaultcharset'] = 'Standaard tekenset';
$labels['htmlmessage'] = 'HTML-bericht';
$labels['dateformat'] = 'Datumnotatie';
$labels['timeformat'] = 'Tijdweergave';
-$labels['prettydate'] = 'Gebruiksvriendelijke data';
+$labels['prettydate'] = 'Leesbare datums';
$labels['setdefault'] = 'Stel in als standaard';
$labels['autodetect'] = 'Automatisch';
$labels['language'] = 'Taal';
@@ -335,23 +334,23 @@ $labels['uisettings'] = 'Gebruikersinterface';
$labels['serversettings'] = 'Serverinstellingen';
$labels['mailboxview'] = 'Mailboxweergave';
$labels['mdnrequests'] = 'Ontvangstmeldingen';
-$labels['askuser'] = 'vraag de gebruiker';
+$labels['askuser'] = 'altijd aan mij vragen';
$labels['autosend'] = 'stuur automatisch';
$labels['autosendknown'] = 'stuur ontvangstbevestiging alleen naar mijn contactpersonen, voor anderen aan mij vragen';
$labels['autosendknownignore'] = 'stuur ontvangstbevestiging alleen naar mijn contactpersonen, voor anderen negeren';
-$labels['ignore'] = 'negeer';
+$labels['ignore'] = 'negeren';
$labels['readwhendeleted'] = 'Bericht na verwijderen als gelezen markeren';
$labels['flagfordeletion'] = 'Bericht niet verwijderen maar als verwijderd markeren';
$labels['skipdeleted'] = 'Verwijderde berichten niet tonen';
$labels['deletealways'] = 'Verwijder bericht wanneer verplaatsen naar Prullenbak mislukt';
$labels['deletejunk'] = 'Verwijder direct berichten in Spam';
-$labels['showremoteimages'] = 'Geef externe toegevoegde berichten weer';
-$labels['fromknownsenders'] = 'Van bekende afzenders';
+$labels['showremoteimages'] = 'Afbeeldingen op afstand weergeven';
+$labels['fromknownsenders'] = 'van bekende afzenders';
$labels['always'] = 'altijd';
-$labels['showinlineimages'] = 'Toon bijgevoegde afbeeldingen onder het bericht';
+$labels['showinlineimages'] = 'Bijgevoegde afbeeldingen onder het bericht weergeven';
$labels['autosavedraft'] = 'Concept automatisch opslaan';
$labels['everynminutes'] = 'iedere $n minuten';
-$labels['keepalive'] = 'Controleer op nieuwe berichten';
+$labels['keepalive'] = 'Op nieuwe berichten controleren';
$labels['never'] = 'nooit';
$labels['immediately'] = 'onmiddellijk';
$labels['messagesdisplaying'] = 'Berichtenweergave';
@@ -363,8 +362,8 @@ $labels['2047folding'] = 'Volledig RFC 2047 (andere)';
$labels['force7bit'] = 'Gebruik MIME-codering voor 8-bit karakters';
$labels['advancedoptions'] = 'Geavanceerde opties';
$labels['focusonnewmessage'] = 'Focus browserscherm bij nieuw bericht';
-$labels['checkallfolders'] = 'Controleer alle mappen op nieuwe berichten';
-$labels['displaynext'] = 'Na verplaatsen/verwijderen het volgende bericht tonen';
+$labels['checkallfolders'] = 'In alle mappen op nieuwe berichten controleren';
+$labels['displaynext'] = 'Ga naar volgend bericht na verwijderen of verplaatsen';
$labels['defaultfont'] = 'Standaardlettertype voor HTML-berichten';
$labels['mainoptions'] = 'Hoofdopties';
$labels['browseroptions'] = 'Browserinstellingen';
@@ -388,8 +387,8 @@ $labels['afternseconds'] = 'Na $n seconden';
$labels['reqmdn'] = 'Vraag altijd een ontvangstbevestiging';
$labels['reqdsn'] = 'Vraag altijd om een afleveringsbericht';
$labels['replysamefolder'] = 'Bewaar reacties in de map van het beantwoorde bericht';
-$labels['defaultaddressbook'] = 'Voeg nieuw contactpersoon toe aan geselecteerd adresboek';
-$labels['autocompletesingle'] = 'Sla alternatieve e-mailadressen over bij automatisch aanvullen';
+$labels['defaultaddressbook'] = 'Nieuwe contactpersonen toevoegen aan gekozen adresboek';
+$labels['autocompletesingle'] = 'Alternatieve e-mailadressen niet gebruiken bij automatisch aanvullen';
$labels['listnamedisplay'] = 'Contactpersonen weergeven als';
$labels['spellcheckbeforesend'] = 'Controleer spelling voor het versturen van een bericht';
$labels['spellcheckoptions'] = 'Instellingen spellingscontrole';
diff --git a/program/localization/nl_NL/messages.inc b/program/localization/nl_NL/messages.inc
index 5b422626f..367b9197d 100644
--- a/program/localization/nl_NL/messages.inc
+++ b/program/localization/nl_NL/messages.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Geert Wirken <Unknown> |
+ | Author: Geert Wirken |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
@@ -23,6 +22,7 @@ $messages['storageerror'] = 'Verbinding met IMAP-server mislukt.';
$messages['servererror'] = 'Serverfout!';
$messages['servererrormsg'] = 'Serverfout: $msg';
$messages['dberror'] = 'Databasefout!';
+$messages['requesttimedout'] = 'Opdracht duurde te lang';
$messages['errorreadonly'] = 'Niet in staat om de bewerking uit te voeren. Map is alleen-lezen.';
$messages['errornoperm'] = 'Niet in staat om de bewerking uit te voeren. Toestemming geweigerd.';
$messages['invalidrequest'] = 'Ongeldige aanvraag! Er zijn geen gegevens opgeslagen.';
@@ -85,8 +85,8 @@ $messages['searching'] = 'Zoeken...';
$messages['checking'] = 'Controleren...';
$messages['nospellerrors'] = 'Geen spelfouten gevonden.';
$messages['folderdeleted'] = 'Map successvol verwijderd.';
-$messages['foldersubscribed'] = 'Folder succesvol geabonneerd.';
-$messages['folderunsubscribed'] = 'Folder succesvol uitgeschreven.';
+$messages['foldersubscribed'] = 'Succesvol geabonneerd op map.';
+$messages['folderunsubscribed'] = 'Abonnement op map succesvol opgezegd.';
$messages['folderpurged'] = 'Folder met succes geleegd.';
$messages['folderexpunged'] = 'Folder succesvol geleegd.';
$messages['deletedsuccessfully'] = 'Met succes verwijderd.';
diff --git a/program/localization/pl_PL/labels.inc b/program/localization/pl_PL/labels.inc
index 952d65566..92da1f6ef 100644
--- a/program/localization/pl_PL/labels.inc
+++ b/program/localization/pl_PL/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: pp/bs <Unknown> |
+ | Author: Aleksander Machniak <alec@alec.pl> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -96,7 +95,7 @@ $labels['longdec'] = 'grudzień';
$labels['today'] = 'Dzisiaj';
$labels['refresh'] = 'Odśwież';
$labels['checkmail'] = 'Sprawdź skrzynkę';
-$labels['compose'] = 'Utwórz wiadomość';
+$labels['compose'] = 'Utwórz';
$labels['writenewmessage'] = 'Utwórz nową wiadomość';
$labels['reply'] = 'Odpowiedz';
$labels['replytomessage'] = 'Odpowiedz nadawcy';
@@ -116,7 +115,7 @@ $labels['nextmessage'] = 'Następna wiadomość';
$labels['lastmessage'] = 'Ostatnia wiadomość';
$labels['backtolist'] = 'Pokaż listę wiadomości';
$labels['viewsource'] = 'Pokaż źródło';
-$labels['mark'] = 'Zaznacz';
+$labels['mark'] = 'Oznacz';
$labels['markmessages'] = 'Oznacz wiadomości';
$labels['markread'] = 'Jako przeczytane';
$labels['markunread'] = 'Jako nieprzeczytane';
diff --git a/program/localization/pl_PL/messages.inc b/program/localization/pl_PL/messages.inc
index e82c5b9e9..9593ba478 100644
--- a/program/localization/pl_PL/messages.inc
+++ b/program/localization/pl_PL/messages.inc
@@ -11,7 +11,6 @@
+-----------------------------------------------------------------------+
| Author: Aleksander Machniak <alec@alec.pl> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
@@ -23,6 +22,7 @@ $messages['storageerror'] = 'Błąd połączenia z serwerem!';
$messages['servererror'] = 'BÅ‚Ä…d serwera!';
$messages['servererrormsg'] = 'BÅ‚Ä…d serwera: $msg';
$messages['dberror'] = 'BÅ‚Ä…d bazy danych!';
+$messages['requesttimedout'] = 'Upłynął limit czasu żądania';
$messages['errorreadonly'] = 'Nie można wykonać operacji. Folder tylko do odczytu.';
$messages['errornoperm'] = 'Nie można wykonać operacji. Brak uprawnień.';
$messages['invalidrequest'] = 'Błędne żądanie! Nie zapisano danych.';
diff --git a/program/localization/pt_BR/labels.inc b/program/localization/pt_BR/labels.inc
index 2c8a3595c..5abdf205d 100644
--- a/program/localization/pt_BR/labels.inc
+++ b/program/localization/pt_BR/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Claudio F Filho <filhocf@gmail.com> |
+ | Author: Victor Benincasa <vbenincasa@gmail.com> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -22,7 +21,7 @@ $labels['server'] = 'Servidor';
$labels['login'] = 'Entrar';
$labels['logout'] = 'Sair';
$labels['mail'] = 'E-mail';
-$labels['settings'] = 'Configurações pessoais';
+$labels['settings'] = 'Configurações';
$labels['addressbook'] = 'Catálogo de endereços';
$labels['inbox'] = 'Caixa de entrada';
$labels['drafts'] = 'Rascunhos';
@@ -33,7 +32,7 @@ $labels['subject'] = 'Assunto';
$labels['from'] = 'De';
$labels['to'] = 'Para';
$labels['cc'] = 'Cópia';
-$labels['bcc'] = 'Cópia Oculta (Bcc)';
+$labels['bcc'] = 'Cópia Oculta (Cco)';
$labels['replyto'] = 'Responder para';
$labels['followupto'] = 'Encaminhar para';
$labels['date'] = 'Data';
@@ -55,7 +54,7 @@ $labels['download'] = 'Baixar';
$labels['filename'] = 'Nome do arquivo';
$labels['filesize'] = 'Tamanho';
$labels['addtoaddressbook'] = 'Incluir no catálogo de endereços';
-$labels['sun'] = 'Dom';
+$labels['sun'] = 'Dom.';
$labels['mon'] = 'Seg.';
$labels['tue'] = 'Ter.';
$labels['wed'] = 'Qua.';
@@ -96,7 +95,7 @@ $labels['longdec'] = 'Dezembro';
$labels['today'] = 'Hoje';
$labels['refresh'] = 'Atualizar';
$labels['checkmail'] = 'Verificar se há novas mensagens';
-$labels['compose'] = 'Escrever mensagem';
+$labels['compose'] = 'Criar email';
$labels['writenewmessage'] = 'Criar nova mensagem';
$labels['reply'] = 'Responder';
$labels['replytomessage'] = 'Responder para o remetente';
@@ -120,8 +119,8 @@ $labels['mark'] = 'Marcar';
$labels['markmessages'] = 'Marcar mensagens';
$labels['markread'] = 'como lidas';
$labels['markunread'] = 'como não lidas';
-$labels['markflagged'] = 'Como marcadas';
-$labels['markunflagged'] = 'Como não marcadas';
+$labels['markflagged'] = 'Como sinalizadas';
+$labels['markunflagged'] = 'Como não sinalizadas';
$labels['moreactions'] = 'Mais ações...';
$labels['more'] = 'Mais';
$labels['back'] = 'Voltar';
@@ -147,7 +146,7 @@ $labels['autoexpand_threads'] = 'Expandir mensagens agrupadas';
$labels['do_expand'] = 'todos os tópicos';
$labels['expand_only_unread'] = 'somente com mensagem(s) não lidas';
$labels['fromto'] = 'De/Para';
-$labels['flag'] = 'Marcador';
+$labels['flag'] = 'Sinalizador';
$labels['attachment'] = 'Anexo';
$labels['sentdate'] = 'Data de envio';
$labels['arrival'] = 'Data de recebimento';
@@ -168,9 +167,9 @@ $labels['resetsearch'] = 'Limpar';
$labels['searchmod'] = 'Opções da pesquisa';
$labels['msgtext'] = 'Mensagem inteira';
$labels['openinextwin'] = 'Abrir em nova janela';
-$labels['emlsave'] = 'Baixar (em .eml)';
+$labels['emlsave'] = 'Baixar (formato .eml)';
$labels['editasnew'] = 'Editar como novo';
-$labels['savemessage'] = 'Salvar Rascunho';
+$labels['savemessage'] = 'Salvar como Rascunho';
$labels['sendmessage'] = 'Enviar agora';
$labels['addattachment'] = 'Anexar um arquivo';
$labels['charset'] = 'Codificação';
@@ -180,13 +179,13 @@ $labels['dsn'] = 'Recibo de entrega';
$labels['mailreplyintro'] = 'Em $date, $sender escreveu:';
$labels['originalmessage'] = 'Mensagem original';
$labels['editidents'] = 'Editar identidades';
-$labels['spellcheck'] = 'Soletrar';
+$labels['spellcheck'] = 'Revisar';
$labels['checkspelling'] = 'Verificar ortografia';
$labels['resumeediting'] = 'Continuar a edição';
$labels['revertto'] = 'Reverter para';
$labels['attach'] = 'Anexar';
$labels['attachments'] = 'Anexos';
-$labels['upload'] = 'Enviar';
+$labels['upload'] = 'Enviar arquivo';
$labels['uploadprogress'] = '$percent ($current de $total)';
$labels['close'] = 'Fechar';
$labels['messageoptions'] = 'Opções da mensagem...';
@@ -198,7 +197,7 @@ $labels['highest'] = 'Mais alta';
$labels['nosubject'] = '(sem assunto)';
$labels['showimages'] = 'Exibir imagens';
$labels['alwaysshow'] = 'Sempre exibir imagens de $sender';
-$labels['isdraft'] = 'Esta mensagem é um rascunho';
+$labels['isdraft'] = 'Esta é uma mensagem de rascunho.';
$labels['htmltoggle'] = 'HTML';
$labels['plaintoggle'] = 'Texto simples';
$labels['savesentmessagein'] = 'Salvar mensagens enviadas em';
@@ -233,7 +232,7 @@ $labels['region'] = 'Estado';
$labels['country'] = 'País';
$labels['birthday'] = 'Data de nascimento';
$labels['anniversary'] = 'Aniversário';
-$labels['website'] = 'Página da Web';
+$labels['website'] = 'Site';
$labels['instantmessenger'] = 'Mensagem instantânea (IM)';
$labels['notes'] = 'Anotações';
$labels['male'] = 'masculino';
@@ -256,7 +255,7 @@ $labels['typehomefax'] = 'Fax Residencial';
$labels['typeworkfax'] = 'Fax do Trabalho';
$labels['typecar'] = 'Carro';
$labels['typepager'] = 'Pager';
-$labels['typevideo'] = 'Video';
+$labels['typevideo'] = 'Vídeo';
$labels['typehomepage'] = 'Página pessoal';
$labels['typeblog'] = 'Blog';
$labels['typeprofile'] = 'Perfil';
@@ -297,7 +296,7 @@ $labels['searchdelete'] = 'Excluir pesquisa';
$labels['import'] = 'Importar';
$labels['importcontacts'] = 'Importar contatos';
$labels['importfromfile'] = 'Importar do arquivo:';
-$labels['importtarget'] = 'Adicionar novos contatos para o catálogo de endereços:';
+$labels['importtarget'] = 'Adicionar novos contatos ao catálogo de endereços:';
$labels['importreplace'] = 'Substituir o catálogo de endereços atual';
$labels['importtext'] = 'Você pode enviar contatos de um catálogo de endereços existente.<br/>Os contatos devem ser enviados no formato <a href="http://en.wikipedia.org/wiki/VCard">vCard</a>.';
$labels['done'] = 'Concluído';
@@ -344,7 +343,7 @@ $labels['readwhendeleted'] = 'Marcar a mensagem como lida ao excluir';
$labels['flagfordeletion'] = 'Marcar a mensagem para exclusão ao invés de excluir';
$labels['skipdeleted'] = 'Não exibir mensagens excluídas';
$labels['deletealways'] = 'Excluir as mensagens se movê-las para a lixeira falhar';
-$labels['deletejunk'] = 'Excluir diretamente as mensagens no Spam';
+$labels['deletejunk'] = 'Apagar as mensagens da pasta de SPAM sem movê-las para a lixeira';
$labels['showremoteimages'] = 'Exibir imagens externas';
$labels['fromknownsenders'] = 'de remetentes conhecidos';
$labels['always'] = 'sempre';
@@ -377,13 +376,13 @@ $labels['replytopposting'] = 'iniciar nova mensagem acima da original';
$labels['replybottomposting'] = 'iniciar nova mensagem abaixo da original';
$labels['replyremovesignature'] = 'Remover assinatura original da mensagem ao respondê-la';
$labels['autoaddsignature'] = 'Adicionar assinatura automaticamente';
-$labels['newmessageonly'] = 'somente para novas mensagens';
-$labels['replyandforwardonly'] = 'somente respostas e encaminhamentos';
+$labels['newmessageonly'] = 'somente em novas mensagens';
+$labels['replyandforwardonly'] = 'somente em respostas e encaminhamentos';
$labels['replysignaturepos'] = 'Inserir assinatura ao responder ou encaminhar';
$labels['belowquote'] = 'abaixo da citação';
$labels['abovequote'] = 'acima da citação';
$labels['insertsignature'] = 'Inserir assinatura';
-$labels['previewpanemarkread'] = 'Marcar mensagem pré-visualizada como lida';
+$labels['previewpanemarkread'] = 'Marcar mensagens pré-visualizadas como lidas';
$labels['afternseconds'] = 'depois de $n segundos';
$labels['reqmdn'] = 'Sempre pedir confirmação de leitura';
$labels['reqdsn'] = 'Sempre pedir confirmação de entrega';
@@ -395,9 +394,9 @@ $labels['spellcheckbeforesend'] = 'Verificar ortografia antes de enviar uma mens
$labels['spellcheckoptions'] = 'Opções do Verificador Ortográfico';
$labels['spellcheckignoresyms'] = 'Ignorar palavras com símbolos';
$labels['spellcheckignorenums'] = 'Ignorar palavras com números';
-$labels['spellcheckignorecaps'] = 'Ignorar palavras toda em maiúsculo';
+$labels['spellcheckignorecaps'] = 'Ignorar palavras com todas letras maiúsculas';
$labels['addtodict'] = 'Adicionar ao dicionário';
-$labels['mailtoprotohandler'] = 'Registrar o tratador de protocolo para mailto: links';
+$labels['mailtoprotohandler'] = 'Associar links de e-mail (mailto:) para envio de mensagem através do webmail';
$labels['folder'] = 'Pasta';
$labels['foldername'] = 'Nome da pasta';
$labels['subscribed'] = 'Inscrito';
@@ -408,10 +407,10 @@ $labels['managefolders'] = 'Gerenciar pastas';
$labels['specialfolders'] = 'Pastas especiais';
$labels['properties'] = 'Propriedades';
$labels['folderproperties'] = 'Propriedades da pasta';
-$labels['parentfolder'] = 'Pasta Pai';
+$labels['parentfolder'] = 'Pasta pai';
$labels['location'] = 'Localização';
$labels['info'] = 'Informação';
-$labels['getfoldersize'] = 'Clique para obter tamanho da pasta';
+$labels['getfoldersize'] = 'Exibir o tamanho da pasta';
$labels['changesubscription'] = 'Clique para ativar/desativar';
$labels['foldertype'] = 'Tipo de Pasta';
$labels['personalfolder'] = 'Pasta Particular';
@@ -425,7 +424,7 @@ $labels['plugin'] = 'Plugin';
$labels['version'] = 'Versão';
$labels['source'] = 'Fonte';
$labels['license'] = 'Licença';
-$labels['support'] = 'Buscar suporte';
+$labels['support'] = 'Obter suporte';
$labels['B'] = 'B';
$labels['KB'] = 'KB';
$labels['MB'] = 'MB';
diff --git a/program/localization/pt_BR/messages.inc b/program/localization/pt_BR/messages.inc
index 609cb1f91..1022be797 100644
--- a/program/localization/pt_BR/messages.inc
+++ b/program/localization/pt_BR/messages.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Claudio F Filho <filhocf@gmail.com> |
+ | Author: Victor Benincasa <vbenincasa@gmail.com> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
@@ -19,19 +18,20 @@ $messages['errortitle'] = 'Ocorreu um erro!';
$messages['loginfailed'] = 'Falha no login';
$messages['cookiesdisabled'] = 'Seu navegador não aceita cookies';
$messages['sessionerror'] = 'A sessão do seu navegador é inválida ou expirou';
-$messages['storageerror'] = 'Falha na conexão com o servidor IMAP';
+$messages['storageerror'] = 'Falha na conexão com o servidor. Verifique se informou os dados corretamente.';
$messages['servererror'] = 'Erro no Servidor!';
$messages['servererrormsg'] = 'Erro no Servidor: $msg';
$messages['dberror'] = 'Erro no banco de dados!';
+$messages['requesttimedout'] = 'Tempo da requisição esgotado';
$messages['errorreadonly'] = 'Não foi possível realizar a operação. Pasta somente leitura';
$messages['errornoperm'] = 'Não foi possível realizar a operação. Acesso negado';
$messages['invalidrequest'] = 'Requisição inválida! Nenhum dado foi salvo.';
$messages['nomessagesfound'] = 'Nenhuma mensagem encontrada nessa caixa de mensagens';
-$messages['loggedout'] = 'Sua sessão foi finalizada com sucesso. Até breve!';
+$messages['loggedout'] = 'Sua sessão foi finalizada com sucesso. Até logo!';
$messages['mailboxempty'] = 'A caixa de mensagens está vazia';
$messages['loading'] = 'Carregando...';
-$messages['uploading'] = 'Carregando arquivo...';
-$messages['uploadingmany'] = 'Carregando arquivos...';
+$messages['uploading'] = 'Enviando arquivo...';
+$messages['uploadingmany'] = 'Enviando arquivos...';
$messages['loadingdata'] = 'Carregando dados...';
$messages['checkingmail'] = 'Verificando se há novas mensagens...';
$messages['sendingmessage'] = 'Enviando mensagem...';
@@ -76,7 +76,7 @@ $messages['nosubjectwarning'] = 'O campo "Assunto" está vazio. Deseja incluí-l
$messages['nobodywarning'] = 'Enviar a mensagem sem texto?';
$messages['notsentwarning'] = 'A mensagem não foi enviada. Deseja descartar sua mensagem?';
$messages['noldapserver'] = 'Por favor, selecione um servidor LDAP para a pesquisa';
-$messages['nosearchname'] = 'Por favor, informe o nome do contado ou seu endereço de e-mail';
+$messages['nosearchname'] = 'Por favor, informe o nome do contato ou seu endereço de e-mail.';
$messages['notuploadedwarning'] = 'Há anexos ainda não enviados. Aguarde ou cancele o envio.';
$messages['searchsuccessful'] = '$nr mensagens encontradas.';
$messages['contactsearchsuccessful'] = '$nr contatos encontrados.';
@@ -110,16 +110,16 @@ $messages['errorsendingreceipt'] = 'Não foi possível enviar a confirmação de
$messages['deleteidentityconfirm'] = 'Você realmente deseja excluir esta identidade?';
$messages['nodeletelastidentity'] = 'Você não pode excluir sua única identidade';
$messages['forbiddencharacter'] = 'O nome da pasta contém um caractere não permitido';
-$messages['selectimportfile'] = 'Selecione o arquivo para envio';
+$messages['selectimportfile'] = 'Selecione o arquivo a ser enviado.';
$messages['addresswriterror'] = 'O catálogo de endereços selecionado não tem permissão de modificação';
-$messages['contactaddedtogroup'] = 'Adicionado os contatos a este grupo com sucesso';
-$messages['contactremovedfromgroup'] = 'Removido contatos deste grupo com sucesso';
+$messages['contactaddedtogroup'] = 'Contatos adicionados a este grupo com sucesso.';
+$messages['contactremovedfromgroup'] = 'Contatos removidos deste grupo com sucesso.';
$messages['importwait'] = 'Importando, aguarde por favor...';
$messages['importerror'] = 'Falha na importação! O arquivo enviado não é um arquivo vCard válido.';
$messages['importconfirm'] = '<b>Foram importados com sucesso $inserted contatos</b>';
$messages['importconfirmskipped'] = '<b>Ignorado(s) $skipped registro(s) já existente(s)</b>';
$messages['opnotpermitted'] = 'Operação não permitida!';
-$messages['nofromaddress'] = 'Falta o endereço de email na identidade selecionada';
+$messages['nofromaddress'] = 'Falta o e-mail na identidade selecionada.';
$messages['editorwarning'] = 'Mudar para o editor de texto simples elimina toda a formatação de texto. Deseja continuar?';
$messages['httpreceivedencrypterror'] = 'Ocorreu um erro de configuração. Informe ao administrador do sistema imediatamente. <b>Sua mensagem não pode ser enviada.</b>';
$messages['smtpconnerror'] = 'Erro SMTP ($code): Conexão ao servidor falhou.';
@@ -129,7 +129,7 @@ $messages['smtptoerror'] = 'Erro SMTP ($code): Falha ao adicionar o destinatári
$messages['smtprecipientserror'] = 'Erro SMTP: Não é possível processar a lista destinatários.';
$messages['smtperror'] = 'Erro SMTP: $msg';
$messages['emailformaterror'] = 'Endereço de e-mail inválido: $email';
-$messages['toomanyrecipients'] = 'Muitos destinatários. Reduza o número de destinatários para $max.';
+$messages['toomanyrecipients'] = 'Há muitos destinatários. Reduza o número de destinatários para $max.';
$messages['maxgroupmembersreached'] = 'O número de membros do grupo excede o máximo de $max';
$messages['internalerror'] = 'Ocorreu um erro interno. Por favor tente novamente.';
$messages['contactdelerror'] = 'Não foi possível excluir o(s) contato(s).';
@@ -148,13 +148,13 @@ $messages['messagemoved'] = 'Mensagem(s) movida(s) com sucesso';
$messages['messagecopied'] = 'Mensagem(s) copiada(s) com sucesso';
$messages['messagemarked'] = 'Mensagem(s) marcada(s) com sucesso';
$messages['autocompletechars'] = 'Digite pelo menos $min caractere(s) para auto-completar';
-$messages['autocompletemore'] = 'Muitos registros encontrados. Por favor, digite mais caracteres.';
+$messages['autocompletemore'] = 'Mais registros foram encontrados. Por favor, digite mais caracteres.';
$messages['namecannotbeempty'] = 'Nome não pode ser vazio';
$messages['nametoolong'] = 'Nome é muito longo';
$messages['folderupdated'] = 'Pasta atualizada com sucesso';
$messages['foldercreated'] = 'Pasta criada com sucesso';
$messages['invalidimageformat'] = 'Formato de imagem inválido.';
-$messages['mispellingsfound'] = 'Foram detectados erros de ortografia.';
+$messages['mispellingsfound'] = 'Foram detectados erros de ortografia na mensagem.';
$messages['parentnotwritable'] = 'Sem permissão para criar/mover a pasta dentro da pasta selecionada.';
-$messages['messagetoobig'] = 'A parte da mensagem é muito grande para ser processada';
+$messages['messagetoobig'] = 'A mensagem é muito grande para ser processada.';
diff --git a/program/localization/pt_PT/messages.inc b/program/localization/pt_PT/messages.inc
index fca3dfab2..f4c18207d 100644
--- a/program/localization/pt_PT/messages.inc
+++ b/program/localization/pt_PT/messages.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: David <Unknown> |
+ | Author: David |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
@@ -23,6 +22,7 @@ $messages['storageerror'] = 'A ligação ao servidor IMAP falhou';
$messages['servererror'] = 'Erro do Servidor!';
$messages['servererrormsg'] = 'Erro do Servidor: $msg';
$messages['dberror'] = 'Erro na base de dados!';
+$messages['requesttimedout'] = 'A solicitação expirou';
$messages['errorreadonly'] = 'Não foi possível efectuar a operação. A pasta é só de leitura.';
$messages['errornoperm'] = 'Não tem permissões para efectuar esta operação.';
$messages['invalidrequest'] = 'Pedido inválido! Não foi guardada nenhuma informação.';
diff --git a/program/localization/ru_RU/labels.inc b/program/localization/ru_RU/labels.inc
index 3abac46e3..8b69d22dd 100644
--- a/program/localization/ru_RU/labels.inc
+++ b/program/localization/ru_RU/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Vyacheslav Sharmanov <Unknown> |
+ | Author: Lanigiro Nainiarku <r00f@itx.com.ua> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -103,7 +102,7 @@ $labels['replytomessage'] = 'Ответить';
$labels['replytoallmessage'] = 'Ответить по ÑпиÑку или отправителю и вÑем получателÑм';
$labels['replyall'] = 'Ответить вÑем';
$labels['replylist'] = 'Ответить в ÑпиÑок раÑÑылки';
-$labels['forward'] = 'Вперёд';
+$labels['forward'] = 'ПереÑлать';
$labels['forwardinline'] = 'ПереÑлать в теле пиÑьма';
$labels['forwardattachment'] = 'ПереÑлать как вложение';
$labels['forwardmessage'] = 'ПереÑлать';
@@ -284,6 +283,7 @@ $labels['exportvcards'] = 'ЭкÑпортировать контакты в фо
$labels['newcontactgroup'] = 'Создать группу контактов';
$labels['grouprename'] = 'Переименовать группу';
$labels['groupdelete'] = 'Удалить группу';
+$labels['groupremoveselected'] = 'Удалить выбранные контакты из группы';
$labels['previouspage'] = 'Показать предыдущий';
$labels['firstpage'] = 'Показать первый';
$labels['nextpage'] = 'Показать Ñледующий';
@@ -343,6 +343,7 @@ $labels['readwhendeleted'] = 'Помечать как прочитанное пÑ
$labels['flagfordeletion'] = 'Помечать Ð´Ð»Ñ ÑƒÐ´Ð°Ð»ÐµÐ½Ð¸Ñ Ð²Ð¼ÐµÑто удалениÑ';
$labels['skipdeleted'] = 'Ðе показывать удаленные ÑообщениÑ';
$labels['deletealways'] = 'УдалÑÑ‚ÑŒ ÑообщениÑ, еÑли не получаетÑÑ Ð¿Ð¾Ð¼ÐµÑтить их в корзину';
+$labels['deletejunk'] = 'УдалÑÑ‚ÑŒ ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¸Ð· папки СПÐÐœ Ð¼Ð¸Ð½ÑƒÑ ÐšÐ¾Ñ€Ð·Ð¸Ð½Ñƒ';
$labels['showremoteimages'] = 'Показывать удаленные изображениÑ';
$labels['fromknownsenders'] = 'от извеÑтных отправителей';
$labels['always'] = 'вÑегда';
diff --git a/program/localization/ru_RU/messages.inc b/program/localization/ru_RU/messages.inc
index 9dc0c7360..eeb298279 100644
--- a/program/localization/ru_RU/messages.inc
+++ b/program/localization/ru_RU/messages.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Vyacheslav Sharmanov <Unknown> |
+ | Author: Sergey Dukachev <admin@mfitness.ru> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
@@ -23,6 +22,7 @@ $messages['storageerror'] = 'Ðеудачное Ñоединение Ñ IMAP ÑÐ
$messages['servererror'] = 'Ошибка Ñервера!';
$messages['servererrormsg'] = 'Ошибка Ñервера: $msg';
$messages['dberror'] = 'Ошибка базы данных!';
+$messages['requesttimedout'] = 'Превышено Ð²Ñ€ÐµÐ¼Ñ Ð¾Ð¶Ð¸Ð´Ð°Ð½Ð¸Ñ Ð·Ð°Ð¿Ñ€Ð¾Ñа';
$messages['errorreadonly'] = 'Ðевозможно выполнить операцию. Папка доÑтупна только Ð´Ð»Ñ Ñ‡Ñ‚ÐµÐ½Ð¸Ñ';
$messages['errornoperm'] = 'Ðевозможно выполнить операцию. ДоÑтуп запрещён';
$messages['invalidrequest'] = 'Ðеверный запроÑ! Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð½Ðµ Ñохранена.';
diff --git a/program/localization/si_LK/labels.inc b/program/localization/si_LK/labels.inc
index 019d92293..d7e7115ac 100644
--- a/program/localization/si_LK/labels.inc
+++ b/program/localization/si_LK/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Mohamed Rizmi <Unknown> |
+ | Author: පසිඳු කà·à·€à·’න්ද <info@pk-soft.tk> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -36,7 +35,7 @@ $labels['cc'] = 'Cc';
$labels['bcc'] = 'Bcc';
$labels['replyto'] = 'පිළිතුරු සඳහà·';
$labels['date'] = 'දිනය';
-$labels['size'] = 'විà·à·à¶½à¶­à·Šà·€à¶º';
+$labels['size'] = 'ප්â€à¶»à¶¸à·à¶«à¶º';
$labels['priority'] = 'ප්â€à¶»à¶¸à·”ඛත්වය';
$labels['organization'] = 'සංවිධà·à¶±à¶º';
$labels['mailboxlist'] = 'බහà·à¶½à·”ම්';
@@ -47,8 +46,8 @@ $labels['copy'] = 'පිටපත් කරන්න';
$labels['move'] = 'ගෙනයන්න';
$labels['moveto'] = 'ගෙන යන්න...';
$labels['download'] = 'බà·à¶œà¶­ කරන්න';
-$labels['filename'] = 'ගොනු නම';
-$labels['filesize'] = 'ගොනුවේ ප්රමà·à¶«à¶º';
+$labels['filename'] = 'ගොනුවේ නම';
+$labels['filesize'] = 'ගොනුවේ ප්â€à¶»à¶¸à·à¶«à¶º';
$labels['addtoaddressbook'] = 'ලිපින පොතට එක් කරන්න';
$labels['sun'] = 'ඉ';
$labels['mon'] = 'à·ƒ';
@@ -207,7 +206,7 @@ $labels['typeblog'] = 'බ්ලොග්';
$labels['typeprofile'] = 'පà·à¶­à·’කඩ';
$labels['addcontact'] = 'නව සබඳතà·à·€à¶º එක් කරන්න';
$labels['editcontact'] = 'ලිපිනය වෙනස් කිරීම';
-$labels['contacts'] = 'සම්බන්ධතà·';
+$labels['contacts'] = 'සබඳතà·';
$labels['personalinfo'] = 'පුද්ගලික තොරතුරු';
$labels['edit'] = 'සංස්කරණය';
$labels['cancel'] = 'අවලංගු කරන්න';
@@ -276,9 +275,12 @@ $labels['folder'] = 'බහà·à¶½à·”ම';
$labels['foldername'] = 'බහà·à¶½à·”මේ නම';
$labels['subscribed'] = 'à·ƒà·à¶¸à·à¶¢à·’ක';
$labels['messagecount'] = 'පණිවිඩ';
-$labels['create'] = 'සෑදීම';
-$labels['createfolder'] = 'නව බහà·à¶½à·”මක් à·ƒà·à¶¯à¶±à·Šà¶±';
-$labels['managefolders'] = 'බහà·à¶½à·”ම් කලමණà·à¶šà¶»à¶±à¶º';
+$labels['create'] = 'තනන්න';
+$labels['createfolder'] = 'නව බහà·à¶½à·”මක් තනන්න';
+$labels['managefolders'] = 'බහà·à¶½à·”ම් කළමනà·à¶šà¶»à¶«à¶º කරන්න';
+$labels['specialfolders'] = 'විà·à·šà·‚ බහà·à¶½à·”ම්';
+$labels['properties'] = 'වත්කම්';
+$labels['folderproperties'] = 'බහà·à¶½à·”මේ වත්කම්';
$labels['location'] = 'ස්ථà·à¶±à¶º';
$labels['info'] = 'තොරතුරු';
$labels['foldertype'] = 'බහà·à¶½à·”ම් වර්ගය';
diff --git a/program/localization/sk_SK/labels.inc b/program/localization/sk_SK/labels.inc
index 4342df57f..310360144 100644
--- a/program/localization/sk_SK/labels.inc
+++ b/program/localization/sk_SK/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: panda <Unknown> |
+ | Author: panda |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -397,6 +396,7 @@ $labels['spellcheckignoresyms'] = 'Ignorovať slová so symbolmi';
$labels['spellcheckignorenums'] = 'IgnorovaÅ¥ slová s Äíslami';
$labels['spellcheckignorecaps'] = 'Ignorovať slová písané veľkými písmenami';
$labels['addtodict'] = 'Pridať do slovníka';
+$labels['mailtoprotohandler'] = 'Zaregistrovať handler pre odkazy „mailto:“';
$labels['folder'] = 'PrieÄinok';
$labels['foldername'] = 'Názov prieÄinku';
$labels['subscribed'] = 'Prihlásený k odberu';
diff --git a/program/localization/sk_SK/messages.inc b/program/localization/sk_SK/messages.inc
index 2defb2b37..417e5c951 100644
--- a/program/localization/sk_SK/messages.inc
+++ b/program/localization/sk_SK/messages.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: panda <Unknown> |
+ | Author: panda |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
@@ -23,6 +22,7 @@ $messages['storageerror'] = 'Nepodarilo sa spojiť s IMAP serverom';
$messages['servererror'] = 'Chyba servera!';
$messages['servererrormsg'] = 'Chyba servera: $msg';
$messages['dberror'] = 'Databázová chyba!';
+$messages['requesttimedout'] = 'Čas požiadavky vypršal';
$messages['errorreadonly'] = 'Nemožno vykonaÅ¥ operáciu. Adresár je len na Äítanie';
$messages['errornoperm'] = 'Nemožno vykonať operáciu. Prístup odmietnutý';
$messages['invalidrequest'] = 'Chybný požiadavek. Žiadne údaje neboli uložené.';
diff --git a/program/localization/sl_SI/labels.inc b/program/localization/sl_SI/labels.inc
index 32a115a68..c1ab9712d 100644
--- a/program/localization/sl_SI/labels.inc
+++ b/program/localization/sl_SI/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: Teja Cetinski <teja.cetinski@gmail.com> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -284,6 +283,7 @@ $labels['exportvcards'] = 'Izvozi stike v formatu vCard';
$labels['newcontactgroup'] = 'Ustvari novo skupino stikov';
$labels['grouprename'] = 'Preimenuj skupino';
$labels['groupdelete'] = 'Izbriši skupino';
+$labels['groupremoveselected'] = 'Odstrani izbrane stike iz skupine';
$labels['previouspage'] = 'Prejšnja stran';
$labels['firstpage'] = 'Prva stran';
$labels['nextpage'] = 'Naslednja stran';
@@ -343,6 +343,7 @@ $labels['readwhendeleted'] = 'OznaÄi izbrisano sporoÄilo kot prebrano';
$labels['flagfordeletion'] = 'Ne izbriÅ¡i sporoÄila, le oznaÄi kot izbrisano';
$labels['skipdeleted'] = 'Ne prikaži izbrisanih sporoÄil';
$labels['deletealways'] = 'ÄŒe premikanje sporoÄil v Smeti spodleti, naj bodo izbrisana.';
+$labels['deletejunk'] = 'Neposredno izbriÅ¡i sporoÄila v mapi Nezaželena sporoÄila';
$labels['showremoteimages'] = 'Prikaži medvrstiÄne slike';
$labels['fromknownsenders'] = 'od znanih pošiljateljev';
$labels['always'] = 'vedno';
diff --git a/program/localization/sl_SI/messages.inc b/program/localization/sl_SI/messages.inc
index 881aa74bb..a360e952f 100644
--- a/program/localization/sl_SI/messages.inc
+++ b/program/localization/sl_SI/messages.inc
@@ -1,17 +1,16 @@
<?php
/*
-+-----------------------------------------------------------------------+
-| localization/sl_SI/messages.inc |
-| |
-| Language file of the Roundcube Webmail client |
-| Copyright (C) 2012, The Roundcube Dev Team |
-| Licensed under the GNU General Public License |
-| |
-+-----------------------------------------------------------------------+
-| Author: Jure Kranjc <Unknown> |
-+-----------------------------------------------------------------------+
-@version $Id$
+ +-----------------------------------------------------------------------+
+ | localization/sl_SI/messages.inc |
+ | |
+ | Language file of the Roundcube Webmail client |
+ | Copyright (C) 2012, The Roundcube Dev Team |
+ | Licensed under the GNU General Public License |
+ | |
+ +-----------------------------------------------------------------------+
+ | Author: Teja Cetinski <teja.cetinski@gmail.com> |
+ +-----------------------------------------------------------------------+
*/
$messages = array();
@@ -23,6 +22,7 @@ $messages['storageerror'] = 'Povezava z IMAP strežnikom je spodletela.';
$messages['servererror'] = 'Napaka strežnika!';
$messages['servererrormsg'] = 'Napaka strežnika $msg';
$messages['dberror'] = 'Napaka v bazi';
+$messages['requesttimedout'] = 'Zahteva je potekla';
$messages['errorreadonly'] = 'Operacije ni bilo mogoÄe izvrÅ¡iti. Mapa je na voljo samo za branje.';
$messages['errornoperm'] = 'Operacije ni bilo mogoÄe izvrÅ¡iti. Dostop zavrnjen.';
$messages['invalidrequest'] = 'Neveljavna zahteva. Podatki niso bili shranjeni.';
@@ -158,4 +158,3 @@ $messages['mispellingsfound'] = 'V sporoÄilu so bile najdene napake v Ärkovanj
$messages['parentnotwritable'] = 'Podmape v tej mapi ni bilo mogoÄe ustvariti/premakniti. Nimate pravic.';
$messages['messagetoobig'] = 'SporoÄilo je preveliko za obdelavo.';
-?>
diff --git a/program/localization/sr_CS/labels.inc b/program/localization/sr_CS/labels.inc
index 989eea342..ceb456c14 100644
--- a/program/localization/sr_CS/labels.inc
+++ b/program/localization/sr_CS/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Maroje Delibasic <Unknown> |
+ | Author: Saša Zejnilović <zejnils@gmail.com> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -136,8 +135,10 @@ $labels['deleted'] = 'ОбриÑано';
$labels['invert'] = 'Уведи';
$labels['filter'] = 'Филтер';
$labels['list'] = 'ЛиÑта';
+$labels['threads'] = 'Ðити';
$labels['expand-all'] = 'Прошири Ñве';
$labels['collapse-all'] = 'Сажми Ñве';
+$labels['expand_only_unread'] = 'Ñамо Ñа непрочитаним порукама';
$labels['fromto'] = 'Од/За';
$labels['flag'] = 'ЗаÑтава';
$labels['attachment'] = 'Прилог';
@@ -145,6 +146,9 @@ $labels['sentdate'] = 'Датум поÑлато';
$labels['arrival'] = 'Датум Ñтигло';
$labels['asc'] = 'раÑтући';
$labels['desc'] = 'опадајући';
+$labels['listcolumns'] = 'ЛиÑÑ‚ колона';
+$labels['listsorting'] = 'Сортирање колонe';
+$labels['listmode'] = 'ЛиÑÑ‚ режим приказивања';
$labels['folderactions'] = 'ПоÑтавке фаÑцикле';
$labels['compact'] = 'Компакција';
$labels['empty'] = 'ИÑпразни';
@@ -155,6 +159,7 @@ $labels['quicksearch'] = 'Брза претрага';
$labels['resetsearch'] = 'Прикажи Ñве поруке';
$labels['msgtext'] = 'Цела порука';
$labels['openinextwin'] = 'Отвори у новом прозору';
+$labels['emlsave'] = 'Довнлоад (.eml)';
$labels['editasnew'] = 'Модификуј као ново';
$labels['savemessage'] = 'Сачувај у Снимљене';
$labels['sendmessage'] = 'Пошаљи поруку';
@@ -163,6 +168,7 @@ $labels['charset'] = 'Скуп карактера';
$labels['editortype'] = 'Ð’Ñ€Ñта едитора';
$labels['returnreceipt'] = 'Потврда о приÑпећу';
$labels['dsn'] = 'Обавештење о ÑтатуÑу Ñлања поруке';
+$labels['mailreplyintro'] = 'Дана $датум, $поÑиљатељ је напиÑао:';
$labels['originalmessage'] = 'Оригинална порука';
$labels['editidents'] = 'Модификуј пÑеудониме';
$labels['spellcheck'] = 'Провера правопиÑа';
@@ -212,6 +218,7 @@ $labels['address'] = 'ÐдреÑа';
$labels['street'] = 'Улица';
$labels['locality'] = 'Град';
$labels['zipcode'] = 'ПоштанÑки број';
+$labels['region'] = 'република/провинција';
$labels['country'] = 'Држава';
$labels['birthday'] = 'Датум рођења';
$labels['anniversary'] = 'Годишњица';
@@ -255,6 +262,7 @@ $labels['delete'] = 'Обриши';
$labels['rename'] = 'Преименуј';
$labels['addphoto'] = 'Додај';
$labels['replacephoto'] = 'Измени';
+$labels['uploadphoto'] = 'ПоÑтави фотографију';
$labels['newcontact'] = 'Додај нови контакт';
$labels['deletecontact'] = 'Обриши одабране контакте';
$labels['composeto'] = 'Ðапиши поруку...';
@@ -283,6 +291,7 @@ $labels['importreplace'] = 'Измени цели адреÑар';
$labels['importtext'] = 'Можете да Ñачувате контакте већ поÑтојећег адреÑара.<br/>We currently support importing addresses from the <a href="http://en.wikipedia.org/wiki/VCard">vCard</a> data format.';
$labels['done'] = 'Готово';
$labels['settingsfor'] = 'Подешавања за';
+$labels['about'] = 'Инфо';
$labels['preferences'] = 'Подешавања';
$labels['userpreferences'] = 'Општа подешавања';
$labels['editpreferences'] = 'Измена општих подешавања';
@@ -314,15 +323,30 @@ $labels['uisettings'] = 'КориÑнички интерфејÑ';
$labels['serversettings'] = 'ПоÑтавке Ñервера';
$labels['mailboxview'] = 'Преглед Ñандучета';
$labels['askuser'] = 'питај ме';
+$labels['ignore'] = 'игнориÑати';
+$labels['skipdeleted'] = 'Ðе приказуј избриÑане поруке';
+$labels['deletealways'] = 'Ðко Ñлање поруке у отпад не уÑпе, обришите их';
$labels['always'] = 'увек';
+$labels['showinlineimages'] = 'Покажи приложене Ñлике иÑпод поруке';
$labels['autosavedraft'] = 'ÐутоматÑки чувај у Снимљене';
+$labels['keepalive'] = 'Проверити нове поруке на';
$labels['never'] = 'никад';
$labels['immediately'] = 'одмах';
$labels['messagesdisplaying'] = 'прикажи поруке';
$labels['messagescomposition'] = 'ÑаÑтави поруке';
$labels['mimeparamfolding'] = 'имена прилога';
+$labels['2231folding'] = 'Full RFC 2231 (тхундербирд )';
+$labels['miscfolding'] = 'RFC 2047/2231 (MS Outlook)';
+$labels['2047folding'] = 'Full RFC 2047 (други)';
+$labels['advancedoptions'] = 'Ðапредне опције';
+$labels['focusonnewmessage'] = 'ФокуÑирати прозор претраживача на новој поруци';
+$labels['checkallfolders'] = 'Проверите Ñве фаÑцикле за нове поруке';
+$labels['displaynext'] = 'Ðакон ИзбриÑања/Премјештења поруке приказати Ñледећу поруку';
+$labels['defaultfont'] = 'Подразумевани фонт за ХТМЛ поруке';
$labels['mainoptions'] = 'Главне поÑтавке';
+$labels['browseroptions'] = 'Опције претраживача';
$labels['section'] = 'Секција';
+$labels['maintenance'] = 'Поправке';
$labels['newmessage'] = 'Ðова порука';
$labels['signatureoptions'] = 'Опције потпиÑа';
$labels['whenreplying'] = 'При одговору';
@@ -341,6 +365,13 @@ $labels['afternseconds'] = 'након $n Ñекунди';
$labels['reqmdn'] = 'Увек затражи повратну Ñкрипту';
$labels['reqdsn'] = 'Увек затражи обавештење о ÑтатуÑу Ñлања поруке';
$labels['replysamefolder'] = 'Сачувај одговоре у фаÑциклу поруке на коју Ñе одговара';
+$labels['defaultaddressbook'] = 'Додајте нове контакте у изабрани ÐдреÑар';
+$labels['listnamedisplay'] = 'ЛиÑти контакате као';
+$labels['spellcheckbeforesend'] = 'Проверите Ð¿Ñ€Ð°Ð²Ð¾Ð¿Ð¸Ñ Ð¿Ñ€Ðµ Ñлања поруке';
+$labels['spellcheckoptions'] = 'Опције Провере правопиÑа';
+$labels['spellcheckignoresyms'] = 'игнориши речи Ñа Ñимболима';
+$labels['spellcheckignorenums'] = 'игнориши речи Ñа бројевима';
+$labels['addtodict'] = 'Додај у речник';
$labels['folder'] = 'ФаÑцикла';
$labels['foldername'] = 'Име фаÑцикле';
$labels['subscribed'] = 'ПотпиÑана';
@@ -356,9 +387,19 @@ $labels['location'] = 'Локација';
$labels['info'] = 'Информација';
$labels['getfoldersize'] = 'Кликните за приказ величине фаÑцикле';
$labels['changesubscription'] = 'Кликните да биÑте променили опиÑ';
+$labels['foldertype'] = 'типа фаÑцикле';
+$labels['personalfolder'] = 'Приватна фаÑцикла';
+$labels['otherfolder'] = 'ФаÑцикла Других КориÑникa';
+$labels['sharedfolder'] = 'Јавна фаÑцикла';
$labels['sortby'] = 'Сортирај по';
$labels['sortasc'] = 'Сортирај раÑтуће';
$labels['sortdesc'] = 'Сортирај опадајуће';
+$labels['undo'] = 'Унатраг';
+$labels['plugin'] = 'Додаци';
+$labels['version'] = 'Верзија';
+$labels['source'] = 'Извор';
+$labels['license'] = 'Лиценца';
+$labels['support'] = 'подршка';
$labels['B'] = 'Б';
$labels['KB'] = 'КБ';
$labels['MB'] = 'МБ';
@@ -368,6 +409,7 @@ $labels['english'] = 'ЕнглеÑки';
$labels['westerneuropean'] = 'Западна Европа';
$labels['easterneuropean'] = 'ИÑточна Европа';
$labels['southeasterneuropean'] = 'Јужно-иÑточна Европа';
+$labels['baltic'] = 'Балтички';
$labels['cyrillic'] = 'Ћирилица';
$labels['arabic'] = 'ÐрапÑки';
$labels['greek'] = 'Грчки';
@@ -375,6 +417,7 @@ $labels['hebrew'] = 'ХебрејÑки';
$labels['turkish'] = 'ТурÑки';
$labels['nordic'] = 'Ðордички';
$labels['thai'] = 'ТајландÑки';
+$labels['celtic'] = 'келтÑки';
$labels['vietnamese'] = 'ВијетнамÑки';
$labels['japanese'] = 'ЈапанÑки';
$labels['korean'] = 'КореанÑки';
diff --git a/program/localization/sv_SE/labels.inc b/program/localization/sv_SE/labels.inc
index 8046ba0e2..863df361a 100644
--- a/program/localization/sv_SE/labels.inc
+++ b/program/localization/sv_SE/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Jonas Nasholm <Unknown> |
+ | Author: Jonas Nasholm |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -39,15 +38,12 @@ $labels['followupto'] = 'Uppföljning till';
$labels['date'] = 'Datum';
$labels['size'] = 'Storlek';
$labels['priority'] = 'Prioritet';
-$labels['organization'] = 'Organisation';
$labels['readstatus'] = 'Lässtatus';
-$labels['listoptions'] = 'Listalternativ...';
$labels['mailboxlist'] = 'Kataloger';
$labels['folders'] = 'Kataloger';
$labels['messagesfromto'] = 'Meddelande $from till $to av $count';
$labels['threadsfromto'] = 'Tråd $from till $to av $count';
$labels['messagenrof'] = 'Meddelande $nr av $count';
-$labels['fromtoshort'] = '$from – $to av $count';
$labels['copy'] = 'Kopiera';
$labels['move'] = 'Flytta';
$labels['moveto'] = 'Flytta till:';
@@ -94,16 +90,12 @@ $labels['longoct'] = 'Oktober';
$labels['longnov'] = 'November';
$labels['longdec'] = 'December';
$labels['today'] = 'Idag';
-$labels['refresh'] = 'Uppdatera';
$labels['checkmail'] = 'Hämta nya meddelanden';
-$labels['compose'] = 'Nytt meddelande';
$labels['writenewmessage'] = 'Nytt meddelande';
-$labels['reply'] = 'Svara';
$labels['replytomessage'] = 'Svara avsändaren';
$labels['replytoallmessage'] = 'Svara avsändaren och alla mottagare';
$labels['replyall'] = 'Svara alla';
$labels['replylist'] = 'Svara lista';
-$labels['forward'] = 'Vidarebefordra';
$labels['forwardinline'] = 'Vidarebefordra infogat';
$labels['forwardattachment'] = 'Vidarebefordra som bilaga';
$labels['forwardmessage'] = 'Vidarebefordra meddelande';
@@ -116,16 +108,12 @@ $labels['nextmessage'] = 'Visa nästa meddelande';
$labels['lastmessage'] = 'Visa sista meddelandet';
$labels['backtolist'] = 'Tillbaka till meddelandelistan';
$labels['viewsource'] = 'Visa källkod';
-$labels['mark'] = 'Märk';
$labels['markmessages'] = 'Märk meddelande';
$labels['markread'] = 'Läst';
$labels['markunread'] = 'Oläst';
$labels['markflagged'] = 'Flaggat';
$labels['markunflagged'] = 'Oflaggat';
$labels['moreactions'] = 'Ytterligare hantering...';
-$labels['more'] = 'Fler';
-$labels['back'] = 'Tillbaka';
-$labels['options'] = 'Alternativ';
$labels['select'] = 'Välj';
$labels['all'] = 'Alla';
$labels['none'] = 'Ingen';
@@ -170,8 +158,6 @@ $labels['msgtext'] = 'Hela meddelandet';
$labels['openinextwin'] = 'Öppna i nytt fönster';
$labels['emlsave'] = 'Spara (.eml)';
$labels['editasnew'] = 'Redigera som nytt';
-$labels['savemessage'] = 'Spara utkast';
-$labels['sendmessage'] = 'Skicka meddelande';
$labels['addattachment'] = 'Bifoga fil';
$labels['charset'] = 'Teckenkodning';
$labels['editortype'] = 'Textredigerare';
@@ -180,11 +166,9 @@ $labels['dsn'] = 'Leveransstatusmeddelande';
$labels['mailreplyintro'] = '$date skrev $sender:';
$labels['originalmessage'] = 'Ursprungligt meddelande';
$labels['editidents'] = 'Ändra identiteter';
-$labels['spellcheck'] = 'Rättstava';
$labels['checkspelling'] = 'Kontrollera stavning';
$labels['resumeediting'] = 'Ã…teruppta redigering';
$labels['revertto'] = 'Återgå till';
-$labels['attach'] = 'Bifoga';
$labels['attachments'] = 'Bilagor';
$labels['upload'] = 'Bifoga';
$labels['uploadprogress'] = '$percent ($current av $total)';
@@ -208,10 +192,8 @@ $labels['addcc'] = 'Kopia';
$labels['addbcc'] = 'Dold kopia';
$labels['addreplyto'] = 'Svar till';
$labels['addfollowupto'] = 'Uppföljning till';
-$labels['mdnrequest'] = 'Avsändaren har begärt mottagarkvitto för det här meddelandet. Vill du skicka ett mottagarkvitto?';
$labels['receiptread'] = 'Mottagarkvitto (läst)';
$labels['yourmessage'] = 'Det här är ett mottagarkvitto för ditt meddelande';
-$labels['receiptnote'] = 'Notera: Mottagarkvittot innebär bara att meddelandet visats på mottagarens dator. Därmed finns ingen garanti att mottagaren har läst och förstått meddelandet.';
$labels['name'] = 'Namn';
$labels['firstname'] = 'Förnamn';
$labels['surname'] = 'Efternamn';
@@ -244,8 +226,7 @@ $labels['typeassistant'] = 'Assistent';
$labels['spouse'] = 'Make/Maka';
$labels['allfields'] = 'Alla fält';
$labels['search'] = 'Sök';
-$labels['advsearch'] = 'Avancerad sökning';
-$labels['advanced'] = 'Avancerad';
+$labels['advsearch'] = 'Sök avancerat';
$labels['other'] = 'Annat';
$labels['typeother'] = 'Annat';
$labels['typehome'] = 'Hem';
@@ -273,7 +254,6 @@ $labels['delete'] = 'Ta bort';
$labels['rename'] = 'Ändra namn';
$labels['addphoto'] = 'Lägg till';
$labels['replacephoto'] = 'Ersätt';
-$labels['uploadphoto'] = 'Ladda upp foto';
$labels['newcontact'] = 'Ny kontakt';
$labels['deletecontact'] = 'Ta bort vald kontakt';
$labels['composeto'] = 'Nytt meddelande till vald kontakt';
@@ -284,7 +264,6 @@ $labels['exportvcards'] = 'Exportera kontakter';
$labels['newcontactgroup'] = 'Ny kontaktgrupp';
$labels['grouprename'] = 'Ändra gruppnamn';
$labels['groupdelete'] = 'Ta bort grupp';
-$labels['groupremoveselected'] = 'Ta bort markerade kontakter från gruppen';
$labels['previouspage'] = 'Visa föregående sida';
$labels['firstpage'] = 'Visa första sidan';
$labels['nextpage'] = 'Visa nästa sida';
@@ -299,7 +278,6 @@ $labels['importcontacts'] = 'Importera kontakter';
$labels['importfromfile'] = 'Importera från fil:';
$labels['importtarget'] = 'Lägg till nya kontakter till adressbok:';
$labels['importreplace'] = 'Ersätt samtliga kontakter i adressboken';
-$labels['importtext'] = 'Kontakter kan importeras från en befintlig adressbok.<br/>För närvarande stöds import av adresser i <a href="http://en.wikipedia.org/wiki/VCard">vCard</a>-format.';
$labels['done'] = 'Klart';
$labels['settingsfor'] = 'Inställningar för';
$labels['about'] = 'Om';
@@ -344,7 +322,6 @@ $labels['readwhendeleted'] = 'Märk meddelande som läst vid borttagning';
$labels['flagfordeletion'] = 'Flagga meddelande för borttagning istället för att ta bort direkt';
$labels['skipdeleted'] = 'Visa inte borttagna meddelanden';
$labels['deletealways'] = 'Ta bort meddelande om flyttning till Papperskorg misslyckas';
-$labels['deletejunk'] = 'Radera automatiskt meddelanden i skräpmappen';
$labels['showremoteimages'] = 'Visa externt länkade bilder i meddelande';
$labels['fromknownsenders'] = 'Från kända avsändare';
$labels['always'] = 'Alltid';
@@ -367,12 +344,11 @@ $labels['checkallfolders'] = 'Genomsök samtliga kataloger efter nya meddelanden
$labels['displaynext'] = 'Visa nästa meddelande efter borttagning/flyttning av meddelande';
$labels['defaultfont'] = 'Standardtypsnitt i HTML-meddelande';
$labels['mainoptions'] = 'Huvudalternativ';
-$labels['browseroptions'] = 'Webbläsaralternativ';
$labels['section'] = 'Avdelning';
$labels['maintenance'] = 'Underhåll';
$labels['newmessage'] = 'Nytt meddelande';
$labels['signatureoptions'] = 'Signaturalternativ';
-$labels['whenreplying'] = 'Vid svar fortsätt skriv';
+$labels['whenreplying'] = 'Vid svar';
$labels['replytopposting'] = 'Ovanför befintligt meddelande';
$labels['replybottomposting'] = 'Nedanför befintligt meddelande';
$labels['replyremovesignature'] = 'Ta bort befintlig signatur från meddelandet vid svar';
@@ -390,14 +366,12 @@ $labels['reqdsn'] = 'Begär alltid leveransstatusmeddelande';
$labels['replysamefolder'] = 'Placera svar i samma katalog som besvarat meddelande';
$labels['defaultaddressbook'] = 'Lägg till nya kontakter i vald adressbok';
$labels['autocompletesingle'] = 'Hoppa över alternativa adresser vid automatisk komplettering';
-$labels['listnamedisplay'] = 'Lista kontakter som';
$labels['spellcheckbeforesend'] = 'Kontrollera stavning innan meddelanden skickas';
$labels['spellcheckoptions'] = 'Rättstavningsalternativ';
$labels['spellcheckignoresyms'] = 'Ignorera ord med symboler';
$labels['spellcheckignorenums'] = 'Ignorera ord med siffror';
$labels['spellcheckignorecaps'] = 'Ignorera ord med enbart stora bokstäver';
$labels['addtodict'] = 'Lägg till i ordlista';
-$labels['mailtoprotohandler'] = 'Ange program för hantering av mailto-länkar';
$labels['folder'] = 'Katalog';
$labels['foldername'] = 'Katalognamn';
$labels['subscribed'] = 'Prenumererad';
@@ -411,7 +385,7 @@ $labels['folderproperties'] = 'Katalogegenskaper';
$labels['parentfolder'] = 'Överliggande katalog';
$labels['location'] = 'Plats';
$labels['info'] = 'Information';
-$labels['getfoldersize'] = 'Beräkna katalogstorlek';
+$labels['getfoldersize'] = 'Klicka för katalogstorlek';
$labels['changesubscription'] = 'Klicka för att ändra prenumeration';
$labels['foldertype'] = 'Katalogtyp';
$labels['personalfolder'] = 'Privat katalog';
@@ -425,7 +399,7 @@ $labels['plugin'] = 'Plugin';
$labels['version'] = 'Version';
$labels['source'] = 'Källkod';
$labels['license'] = 'Licens';
-$labels['support'] = 'Hjälp';
+$labels['support'] = 'Få hjälp';
$labels['B'] = 'B';
$labels['KB'] = 'KB';
$labels['MB'] = 'MB';
diff --git a/program/localization/sv_SE/messages.inc b/program/localization/sv_SE/messages.inc
index 0a5adfad4..db1acfdc1 100644
--- a/program/localization/sv_SE/messages.inc
+++ b/program/localization/sv_SE/messages.inc
@@ -9,17 +9,14 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Jonas Nasholm <Unknown> |
+ | Author: Jonas Nasholm |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
-$messages['errortitle'] = 'Ett fel uppstod!';
$messages['loginfailed'] = 'Inloggningen misslyckades';
$messages['cookiesdisabled'] = 'Din webbläsare accepterar inte cookies';
$messages['sessionerror'] = 'Din inloggning är felaktig eller har gått ut';
-$messages['storageerror'] = 'Anslutning till IMAP-servern misslyckades';
$messages['servererror'] = 'Serverfel!';
$messages['servererrormsg'] = 'Serverfel: $msg';
$messages['dberror'] = 'Databasfel!';
@@ -77,7 +74,6 @@ $messages['nobodywarning'] = 'Skicka det här meddelandet utan text?';
$messages['notsentwarning'] = 'Meddelandet har inte skickats. Vill du avbryta meddelandet?';
$messages['noldapserver'] = 'Ange en LDAP-server för att söka';
$messages['nosearchname'] = 'Ange ett kontaktnamn eller en adress';
-$messages['notuploadedwarning'] = 'Alla bilagor har inte överförts ännu. Vänligen vänta eller avbryt överföringen.';
$messages['searchsuccessful'] = '$nr meddelanden hittades';
$messages['contactsearchsuccessful'] = '$nr kontakter hittades';
$messages['searchnomatch'] = 'Sökningen gav inget resultat';
@@ -107,7 +103,6 @@ $messages['addingmember'] = 'Lägger till kontakter i gruppen...';
$messages['removingmember'] = 'Tar bort kontakter från gruppen...';
$messages['receiptsent'] = 'Mottagarkvitto har skickats';
$messages['errorsendingreceipt'] = 'Mottagarkvitto kunde inte skickas';
-$messages['deleteidentityconfirm'] = 'Vill du verkligen ta bort denna identitet?';
$messages['nodeletelastidentity'] = 'Du kan inte ta bort identiteten, den är din sista.';
$messages['forbiddencharacter'] = 'Katalognamnet innehåller otillåtna tecken';
$messages['selectimportfile'] = 'Välj en fil att ladda upp';
@@ -116,12 +111,10 @@ $messages['contactaddedtogroup'] = 'Kontakterna har lagts till i gruppen';
$messages['contactremovedfromgroup'] = 'Kontakterna har tagits bort från gruppen';
$messages['importwait'] = 'Importerar, var god vänta...';
$messages['importerror'] = 'Importen misslyckades! Filen är inte i vCard-format.';
-$messages['importconfirm'] = '<b>Lyckad import av $inserted kontakter, $skipped dubbletter har ignorerats:</b><p><em>$names</em></p>';
+$messages['importconfirm'] = '<b>Lyckad import av $inserted kontakter, $skipped dubbletter harignorerats:</b><p><em>$names</em></p>';
$messages['importconfirmskipped'] = '<b>Hoppade över $skipped befintliga poster</b>';
$messages['opnotpermitted'] = 'Otillåten operation!';
$messages['nofromaddress'] = 'Adress saknas i den valda identiteten';
-$messages['editorwarning'] = 'Genom att växla till text-läge går formateringen förlorad. Vill du fortsätta?';
-$messages['httpreceivedencrypterror'] = 'Ett irreparabelt fel har uppstått. Kontakta administratören omgående. <b>Meddelandet kan inte skickas.</b>';
$messages['smtpconnerror'] = 'SMTP-fel ($code): Anslutning till servern misslyckades';
$messages['smtpautherror'] = 'SMTP-fel ($code): Inloggningen misslyckades';
$messages['smtpfromerror'] = 'SMTP-fel ($code): Kan inte sätta avsändaradress till "$from';
diff --git a/program/localization/tr_TR/labels.inc b/program/localization/tr_TR/labels.inc
index 00bcca8f0..61369fb75 100644
--- a/program/localization/tr_TR/labels.inc
+++ b/program/localization/tr_TR/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: bedo <bedreddinsahbaz@gmail.com> |
+ | Author: ismail yenigul |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -40,17 +39,17 @@ $labels['date'] = 'Tarih';
$labels['size'] = 'Boyut';
$labels['priority'] = 'Öncelik';
$labels['organization'] = 'KuruluÅŸ';
-$labels['readstatus'] = 'Okundu durumu';
+$labels['readstatus'] = 'Okunma durumu';
$labels['listoptions'] = 'Seçenekleri listele...';
$labels['mailboxlist'] = 'Klasörler';
$labels['folders'] = 'Klasörler';
$labels['messagesfromto'] = 'Postalar: $from - $to , Toplam: $count';
-$labels['threadsfromto'] = 'Dizilmler: $from - $to, Toplam $count';
+$labels['threadsfromto'] = 'Postalar: $from - $to, Toplam $count';
$labels['messagenrof'] = 'Posta: $nr / $count';
$labels['fromtoshort'] = '$from - $to , Toplam: $count';
$labels['copy'] = 'Kopyala';
$labels['move'] = 'Taşı';
-$labels['moveto'] = 'Buraya taşı...';
+$labels['moveto'] = 'Şuraya taşı...';
$labels['download'] = 'Ä°ndir';
$labels['filename'] = 'Dosya Adı';
$labels['filesize'] = 'Dosya Boyutu';
@@ -58,11 +57,11 @@ $labels['addtoaddressbook'] = 'Adres Defterine Ekle';
$labels['sun'] = 'Paz';
$labels['mon'] = 'Pzt';
$labels['tue'] = 'Sal';
-$labels['wed'] = 'Çar';
+$labels['wed'] = 'Çrş';
$labels['thu'] = 'Per';
$labels['fri'] = 'Cum';
-$labels['sat'] = 'Cmt';
-$labels['sunday'] = 'Pazar';
+$labels['sat'] = 'Cts';
+$labels['sunday'] = 'Paz';
$labels['monday'] = 'Pazartesi';
$labels['tuesday'] = 'Salı';
$labels['wednesday'] = 'Çarşamba';
@@ -95,34 +94,34 @@ $labels['longnov'] = 'Kasım';
$labels['longdec'] = 'Aralık';
$labels['today'] = 'Bugün';
$labels['refresh'] = 'Yenile';
-$labels['checkmail'] = 'Yeni postaları kontrol et';
-$labels['compose'] = 'Yeni posta oluÅŸtur';
+$labels['checkmail'] = 'Yeni Postaları Kontrol Et';
+$labels['compose'] = 'E-Posta Yaz';
$labels['writenewmessage'] = 'Yeni posta oluÅŸtur';
$labels['reply'] = 'Yanıtla';
-$labels['replytomessage'] = 'Gönderene yanıtla';
-$labels['replytoallmessage'] = 'Gönderene ve tüm alıcılara yanıtla';
-$labels['replyall'] = 'Tümüne yanıtla';
-$labels['replylist'] = 'Listeye yanıtla';
+$labels['replytomessage'] = 'Gönderene Yanıt Ver';
+$labels['replytoallmessage'] = 'Gönderene ve Tüm Alıcılara Yanıt Ver';
+$labels['replyall'] = 'Tümüne Yanıt Ver';
+$labels['replylist'] = 'Listeye Yanıt Ver';
$labels['forward'] = 'Ä°let';
$labels['forwardinline'] = 'Postanın içinde ilet';
-$labels['forwardattachment'] = 'Eklenti olarak ilet';
-$labels['forwardmessage'] = 'Postayı ilet';
-$labels['deletemessage'] = 'Postayı sil';
-$labels['movemessagetotrash'] = 'Postayı çöpe taşı';
-$labels['printmessage'] = 'Bu postayı yazdır';
-$labels['previousmessage'] = 'Önceki postayı göster';
-$labels['firstmessage'] = 'İlk postayı göster';
-$labels['nextmessage'] = 'Sonraki postayı göster';
-$labels['lastmessage'] = 'Son postayı göster';
-$labels['backtolist'] = 'Posta listesine dön';
-$labels['viewsource'] = 'Kaynağı göster';
+$labels['forwardattachment'] = 'Eklenti Olarak Ä°let';
+$labels['forwardmessage'] = 'Postayı İlet';
+$labels['deletemessage'] = 'Postayı Sil';
+$labels['movemessagetotrash'] = 'Postayı Çöpe Taşı';
+$labels['printmessage'] = 'Bu Postayı Yazdır';
+$labels['previousmessage'] = 'Önceki Postayı Göster';
+$labels['firstmessage'] = 'İlk Postayı Göster';
+$labels['nextmessage'] = 'Sonraki Postayı Göster';
+$labels['lastmessage'] = 'Son Postayı Göster';
+$labels['backtolist'] = 'Posta Listesine Dön';
+$labels['viewsource'] = 'Kaynağı Göster';
$labels['mark'] = 'Ä°ÅŸaretle';
-$labels['markmessages'] = 'Postaları işaretle';
-$labels['markread'] = 'okunmuÅŸ olarak';
-$labels['markunread'] = 'okunmamış olarak';
-$labels['markflagged'] = 'iÅŸaretli olarak';
-$labels['markunflagged'] = 'iÅŸaretsiz olarak';
-$labels['moreactions'] = 'Daha fazla eylem...';
+$labels['markmessages'] = 'Postaları İşaretle';
+$labels['markread'] = 'OkunmuÅŸ Olarak';
+$labels['markunread'] = 'Okunmamış Olarak';
+$labels['markflagged'] = 'Ä°ÅŸaretli Olarak';
+$labels['markunflagged'] = 'Ä°ÅŸaretsiz Olarak';
+$labels['moreactions'] = 'DiÄŸer Ä°ÅŸlemler';
$labels['more'] = 'Daha Fazla';
$labels['back'] = 'Geri';
$labels['options'] = 'Seçenekler';
@@ -284,6 +283,7 @@ $labels['exportvcards'] = 'vCard olarak dışa aktar';
$labels['newcontactgroup'] = 'Yeni kiÅŸi grubu oluÅŸtur';
$labels['grouprename'] = 'Grubu yeniden adlandır';
$labels['groupdelete'] = 'Grubu sil';
+$labels['groupremoveselected'] = 'Seçili kontaktları gruptan sil';
$labels['previouspage'] = 'Öncekileri göster';
$labels['firstpage'] = 'İlkini göster';
$labels['nextpage'] = 'Sonrakileri göster';
@@ -343,6 +343,7 @@ $labels['readwhendeleted'] = 'Silinen postaları okunmuş olarak işaretle';
$labels['flagfordeletion'] = 'Postaları silmek yerine silinecek olarak işaretle';
$labels['skipdeleted'] = 'Silinmiş postaları gösterme';
$labels['deletealways'] = 'Postaların çöpe taşınmasında sorun çıkarsa, postaları sil';
+$labels['deletejunk'] = 'İstenmeyenler klasöründeki mesajları doğrudan sil';
$labels['showremoteimages'] = 'Uzaktan yüklenen resimleri göster';
$labels['fromknownsenders'] = 'bilinen göndericilerden';
$labels['always'] = 'her zaman';
@@ -390,23 +391,23 @@ $labels['defaultaddressbook'] = 'Yeni kişileri seçili adres defterine ekle';
$labels['autocompletesingle'] = 'Otomatik tamamlamalarda alternatif e-posta adreslerini atla';
$labels['listnamedisplay'] = 'Kişiyi görüntüle';
$labels['spellcheckbeforesend'] = 'Posta göndermeden önce yazım denetimi yap';
-$labels['spellcheckoptions'] = 'Yazım denetimi seçenekleri';
-$labels['spellcheckignoresyms'] = 'İçinde sembol geçen kelimleri göz ardı et';
+$labels['spellcheckoptions'] = 'Yazım Denetimi Seçenekleri';
+$labels['spellcheckignoresyms'] = 'İçinde semboller geçen kelimeleri gözardı et';
$labels['spellcheckignorenums'] = 'İçinde rakam geçen kelimleri göz ardı et';
$labels['spellcheckignorecaps'] = 'Tümü büyük harf olan kelimleri göz ardı et';
-$labels['addtodict'] = 'Sözlüğe ekle';
+$labels['addtodict'] = 'Sözlüğe Ekle';
$labels['mailtoprotohandler'] = 'mailto: bağlantıları için protokol işleyici kayıt et';
$labels['folder'] = 'Klasör';
-$labels['foldername'] = 'Klasör ismi';
+$labels['foldername'] = 'Klasör Adı';
$labels['subscribed'] = 'Abonelik';
$labels['messagecount'] = 'Postalar';
$labels['create'] = 'OluÅŸtur';
-$labels['createfolder'] = 'Yeni klasör oluştur';
-$labels['managefolders'] = 'Klasörleri düzenle';
-$labels['specialfolders'] = 'Özel klasörler';
+$labels['createfolder'] = 'Yeni Klasör Oluştur';
+$labels['managefolders'] = 'Klasörleri Düzenle';
+$labels['specialfolders'] = 'Özel Klasörler';
$labels['properties'] = 'Özellikler';
-$labels['folderproperties'] = 'Klasör özellikleri';
-$labels['parentfolder'] = 'Üst klasör';
+$labels['folderproperties'] = 'Klasör Özellikleri';
+$labels['parentfolder'] = 'Ana Dizin';
$labels['location'] = 'Konum';
$labels['info'] = 'Bilgi';
$labels['getfoldersize'] = 'Klasör büyüklüğünü öğrenmek için tıklayın';
@@ -423,7 +424,7 @@ $labels['plugin'] = 'Eklenti';
$labels['version'] = 'Sürüm';
$labels['source'] = 'Kaynak';
$labels['license'] = 'Lisans';
-$labels['support'] = 'Destek al';
+$labels['support'] = 'Destek Al';
$labels['B'] = 'B';
$labels['KB'] = 'KB';
$labels['MB'] = 'MB';
diff --git a/program/localization/tr_TR/messages.inc b/program/localization/tr_TR/messages.inc
index cb37a5dcb..23ba0480f 100644
--- a/program/localization/tr_TR/messages.inc
+++ b/program/localization/tr_TR/messages.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: ismail yenigul <Unknown> |
+ | Author: ismail yenigul |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
@@ -23,6 +22,7 @@ $messages['storageerror'] = 'IMAP sunucusuna bağlanılamadı';
$messages['servererror'] = 'Sunucu Hatası!';
$messages['servererrormsg'] = 'Sunucu hatası: $msg';
$messages['dberror'] = 'Veritabanı Hatası!';
+$messages['requesttimedout'] = 'İstek zaman aşımına uğradı';
$messages['errorreadonly'] = 'İşlem gerçekleştirilemedi. Dizin salt okunabilir';
$messages['errornoperm'] = 'İşlem gerçekleştirilemedi. İzin verilmedi.';
$messages['invalidrequest'] = 'Geçersiz İstek! Veri kaydedilmedi';
diff --git a/program/localization/vi_VN/labels.inc b/program/localization/vi_VN/labels.inc
index 726cd5adc..a8da7b041 100644
--- a/program/localization/vi_VN/labels.inc
+++ b/program/localization/vi_VN/labels.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Hung Pham <phamhung77@gmail.com> |
+ | Author: Nguyen Tuan Anh <mrtuananh@gmail.com> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$labels = array();
@@ -45,7 +44,9 @@ $labels['listoptions'] = 'Lá»±a chá»n danh sách';
$labels['mailboxlist'] = 'Thư mục';
$labels['folders'] = 'Thư mục';
$labels['messagesfromto'] = 'ThÆ° $from - $to / $count';
+$labels['threadsfromto'] = 'Email từ $from đến $to của tổng $count';
$labels['messagenrof'] = 'ThÆ° $nr / $count';
+$labels['fromtoshort'] = '$from - $to của $count';
$labels['copy'] = 'Sao chép';
$labels['move'] = 'Chuyển';
$labels['moveto'] = 'Chuyển tới';
@@ -102,6 +103,8 @@ $labels['replytoallmessage'] = 'Trả lá»i theo danh sách hoặc tá»›i ngÆ°á»
$labels['replyall'] = 'Trả lá»i tất cả';
$labels['replylist'] = 'Danh sách trả lá»i';
$labels['forward'] = 'Chuyển tiếp';
+$labels['forwardinline'] = 'Chuyển tiếp thư';
+$labels['forwardattachment'] = 'Chuyển tiếp như đính kèm';
$labels['forwardmessage'] = 'Chuyển tiếp thư';
$labels['deletemessage'] = 'Xóa thư';
$labels['movemessagetotrash'] = 'Chuyển thư vào thùng rác';
@@ -131,14 +134,20 @@ $labels['unread'] = 'ChÆ°a Ä‘á»c';
$labels['flagged'] = 'Äã đánh dấu';
$labels['unanswered'] = 'ChÆ°a được trả lá»i';
$labels['deleted'] = 'Äã được xóa';
+$labels['invert'] = 'Äảo ngược';
$labels['filter'] = 'Lá»c';
$labels['list'] = 'Danh sách';
$labels['threads'] = 'Mối nguy hiểm';
$labels['expand-all'] = 'Mở rộng tất cả';
$labels['expand-unread'] = 'Mở rá»™ng thÆ° chÆ°a Ä‘á»c';
+$labels['collapse-all'] = 'Äóng hết';
+$labels['threaded'] = 'Äã được phân loại';
+$labels['autoexpand_threads'] = 'Mở rộng các thư';
+$labels['do_expand'] = 'Tất cả các thư';
$labels['expand_only_unread'] = 'Chỉ vá»›i những thÆ° chÆ°a Ä‘á»c';
$labels['fromto'] = 'Từ/Äến';
$labels['flag'] = 'Äánh dấu';
+$labels['attachment'] = 'Äính kèm';
$labels['sentdate'] = 'Ngày gửi';
$labels['arrival'] = 'Ngày đến';
$labels['asc'] = 'Tăng dần';
@@ -155,22 +164,29 @@ $labels['unknown'] = 'Không rõ';
$labels['unlimited'] = 'Không hạn chế';
$labels['quicksearch'] = 'Tìm nhanh';
$labels['resetsearch'] = 'Thiết lập lại tìm kiếm';
+$labels['searchmod'] = 'TÃŒm ngÆ°á»i sá»­a';
$labels['msgtext'] = 'Toàn bộ thư';
$labels['openinextwin'] = 'Mở bằng cửa sổ mới';
+$labels['emlsave'] = 'Tải vá»';
$labels['editasnew'] = 'Sửa thành mới';
$labels['savemessage'] = 'Lưu dạng nháp';
$labels['sendmessage'] = 'Gá»­i thÆ°';
$labels['addattachment'] = 'Äính kèm tập tin';
$labels['charset'] = 'Bộ ký tự';
+$labels['editortype'] = 'Loại soạn thảo';
$labels['returnreceipt'] = 'Báo nhận';
$labels['dsn'] = 'Thông báo tình trạng phân phát thư';
+$labels['mailreplyintro'] = 'Vào ngày $date, $sender viết:';
+$labels['originalmessage'] = 'Thư gốc';
$labels['editidents'] = 'Chỉnh sửa nhận dạng';
$labels['spellcheck'] = 'Äánh vần';
$labels['checkspelling'] = 'Kiểm tra chính tả';
$labels['resumeediting'] = 'Soạn thảo';
$labels['revertto'] = 'Chuyển vá»';
+$labels['attach'] = 'Äính kèm';
$labels['attachments'] = 'Gửi kèm';
$labels['upload'] = 'Tải lên';
+$labels['uploadprogress'] = '$percent ($current từ $total)';
$labels['close'] = 'Äóng';
$labels['messageoptions'] = 'Tùy chá»n cho thÆ°...';
$labels['low'] = 'Thấp';
@@ -190,7 +206,10 @@ $labels['maxuploadsize'] = 'Dung lượng file tối đa cho phép là';
$labels['addcc'] = 'Thêm Cc';
$labels['addbcc'] = 'Thêm Bcc';
$labels['addreplyto'] = 'Thêm trả lá»i tá»›i';
+$labels['addfollowupto'] = 'Thêm Followup-To';
$labels['mdnrequest'] = 'NgÆ°á»i gá»­i thÆ° này yêu cầu được thông báo khi bạn đã Ä‘á»c thÆ° này. Bạn có muốn thông báo cho ngÆ°á»i gá»­i không?';
+$labels['receiptread'] = 'Trả lại xác nhận (đã Ä‘á»c)';
+$labels['yourmessage'] = 'Äây là sá»± trả lại xác nhận cho thÆ° của bạn';
$labels['receiptnote'] = 'LÆ°u ý: Việc nhận này chỉ báo rằng thÆ° đã được hiển thị trên máy tính của ngÆ°á»i nhận. Không có đảm bảo nào rằng ngÆ°á»i nhận đó đã Ä‘á»c hoặc hiểu ná»™i dung thÆ°.';
$labels['name'] = 'Hiện tên';
$labels['firstname'] = 'Tên';
@@ -202,6 +221,7 @@ $labels['nickname'] = 'Biệt danh';
$labels['jobtitle'] = 'Chức danh Công việc';
$labels['department'] = 'Phòng/Ban';
$labels['gender'] = 'Giới tính';
+$labels['maidenname'] = 'Tên thá»i con gái';
$labels['email'] = 'Thư điện tử';
$labels['phone'] = 'Äiện thoại';
$labels['address'] = 'Äịa chỉ';
@@ -213,26 +233,37 @@ $labels['country'] = 'Quốc gia';
$labels['birthday'] = 'Ngày sinh';
$labels['anniversary'] = 'Kỷ niệm';
$labels['website'] = 'Trang Web';
+$labels['instantmessenger'] = 'Tin nhắn';
$labels['notes'] = 'Các ghi chú';
$labels['male'] = 'Nam';
$labels['female'] = 'Nữ';
$labels['manager'] = 'NgÆ°á»i quản lý';
$labels['assistant'] = 'Trợ lý';
$labels['typeassistant'] = 'Trợ lý';
+$labels['spouse'] = 'Vợ/Chồng';
+$labels['allfields'] = 'Tất cả các lĩnh vực';
$labels['search'] = 'Tìm kiếm';
$labels['advsearch'] = 'Tìm kiếm nâng cao';
+$labels['advanced'] = 'Nâng cao';
$labels['other'] = 'Loại khác';
$labels['typeother'] = 'Loại khác';
+$labels['typehome'] = 'Thư mục chính';
$labels['typework'] = 'Công việc';
$labels['typemobile'] = 'Số di động';
+$labels['typemain'] = 'Chính';
$labels['typehomefax'] = 'Fax nhà riêng';
$labels['typeworkfax'] = 'Fax cơ quan';
$labels['typecar'] = 'Xe ô tô';
+$labels['typepager'] = 'Máy nhắn tin';
+$labels['typevideo'] = 'Video';
$labels['typehomepage'] = 'Trang chủ';
+$labels['typeblog'] = 'Nhật ký Mạng';
$labels['typeprofile'] = 'Hồ sơ';
+$labels['addfield'] = 'Thêm lĩnh vực...';
$labels['addcontact'] = 'Thêm một liên hệ mới';
$labels['editcontact'] = 'Sửa liên lạc';
$labels['contacts'] = 'Danh bạ';
+$labels['contactproperties'] = 'Tính chất của liên hệ';
$labels['personalinfo'] = 'Thông tin cá nhân';
$labels['edit'] = 'Sửa đổi';
$labels['cancel'] = 'Huá»· bá»';
@@ -248,6 +279,7 @@ $labels['composeto'] = 'Soạn thư cho';
$labels['contactsfromto'] = 'Äịa chỉ từ $from - $to / $count';
$labels['print'] = 'In thÆ°';
$labels['export'] = 'Xuất ra';
+$labels['exportvcards'] = 'Xuất các liên lạc theo định dạng vCard';
$labels['newcontactgroup'] = 'Tạo nhóm liên lạc mới';
$labels['grouprename'] = 'Äổi tên nhóm';
$labels['groupdelete'] = 'Xóa nhóm';
@@ -263,12 +295,14 @@ $labels['searchsave'] = 'Lưu tìm kiếm';
$labels['searchdelete'] = 'Xóa tìm kiếm';
$labels['import'] = 'Nhập';
$labels['importcontacts'] = 'Nhập liên lạc';
+$labels['importfromfile'] = 'Nhập từ tệp:';
$labels['importtarget'] = 'Thêm liên lạc mới vào sổ địa chỉ';
$labels['importreplace'] = 'Thay thế toàn bộ sổ địa chỉ';
$labels['importtext'] = 'Bạn có thể tải liên lạc lên từ sổ địa chỉ sẵn có.<br/> Chúng tôi hỗ trợ nhập địa chỉ từ <a href="http://en.wikipedia.org/wiki/VCard">vCard</a> data format.';
$labels['done'] = 'Äã xong';
$labels['settingsfor'] = 'Thiết lập cho';
$labels['about'] = 'Giới thiệu';
+$labels['preferences'] = 'Sở thích';
$labels['userpreferences'] = 'Tham số ngÆ°á»i dùng';
$labels['editpreferences'] = 'Sửa đổi';
$labels['identities'] = 'NgÆ°á»i dùng';
@@ -277,6 +311,7 @@ $labels['newidentity'] = 'NgÆ°á»i dùng má»›i';
$labels['newitem'] = 'Mục mới';
$labels['edititem'] = 'Sửa đổi mục';
$labels['preferhtml'] = 'Hiển thị HTML';
+$labels['defaultcharset'] = 'Bộ ký tự mặc định';
$labels['htmlmessage'] = 'Thư kiểu HTML';
$labels['dateformat'] = 'Äịnh dạng ngày';
$labels['timeformat'] = 'Äịnh dạng thá»i gian';
@@ -289,15 +324,79 @@ $labels['pagesize'] = 'Số dòng trên trang';
$labels['signature'] = 'Chữ ký';
$labels['dstactive'] = 'GiỠmùa hè';
$labels['htmleditor'] = 'Soạn thư dạng HTML';
+$labels['htmlonreply'] = 'Chỉ trả lá»i lại bằng thÆ° HTML';
+$labels['htmlsignature'] = 'Chữ ký HTML';
+$labels['previewpane'] = 'Hiện ô Xem thử';
+$labels['skin'] = 'BỠmặt giao diện';
+$labels['logoutclear'] = 'Xóa thùng rác khi đăng xuất';
+$labels['logoutcompact'] = 'Nén hộp thư lại khi đăng xuất';
$labels['uisettings'] = 'Giao diện ngÆ°á»i dùng';
$labels['serversettings'] = 'Thiết lập máy chủ';
+$labels['mailboxview'] = 'Xem há»™p thÆ°';
+$labels['mdnrequests'] = 'Yêu cầu gửi lại xác nhận';
+$labels['askuser'] = 'Há»i tôi';
+$labels['autosend'] = 'Gửi xác nhận';
+$labels['autosendknown'] = 'Gá»­i xác nhận tá»›i liên lạc của tôi, nếu không thì há»i tôi';
+$labels['autosendknownignore'] = 'Gửi xác nhận tới liên lạc của tôi, nếu không thì bỠqua';
$labels['ignore'] = 'Bá» qua';
+$labels['readwhendeleted'] = 'Äánh dấu thÆ° là đã Ä‘á»c khi xóa';
+$labels['flagfordeletion'] = 'Äánh dấu thÆ° để xóa';
+$labels['skipdeleted'] = 'Không hiện thư đã xóa';
+$labels['deletealways'] = 'Nếu việc chuyển thư vào thùng rác bị lỗi thì xóa chúng.';
+$labels['deletejunk'] = 'Xóa thư trực tiếp trong thùng rác';
+$labels['showremoteimages'] = 'Hiển thị ảnh từ máy chủ khác, Ä‘Æ°á»ng liên kết khác';
+$labels['fromknownsenders'] = 'Từ ngÆ°á»i gá»­i đã biết';
+$labels['always'] = 'luôn luôn';
+$labels['showinlineimages'] = 'Hiển thị ảnh đính kèm phía dưới thư';
+$labels['autosavedraft'] = 'Tự động lưu bản nháp';
+$labels['everynminutes'] = 'cứ $n phút';
+$labels['keepalive'] = 'Kiểm tra thư đến';
+$labels['never'] = 'không bao giá»';
+$labels['immediately'] = 'ngay lập tức';
+$labels['messagesdisplaying'] = 'Äang hiển thị thÆ°';
+$labels['messagescomposition'] = 'Soạn thư';
+$labels['mimeparamfolding'] = 'Tên u';
+$labels['2231folding'] = 'RFC 2231 đầy đủ (Thunderbird)';
+$labels['miscfolding'] = 'RFC 2047/2231 (MS Outlook)';
+$labels['2047folding'] = 'RFC 2047 đầy đủ (khác)';
+$labels['force7bit'] = 'Sử dụng MIME mã hóa cho 8-bit characters';
+$labels['advancedoptions'] = 'Tùy chá»n nâng cao';
+$labels['focusonnewmessage'] = 'Hiển thị cửa sổ thư mới';
+$labels['checkallfolders'] = 'Kiểm tra thư mới trong tất cả thư mục';
+$labels['displaynext'] = 'Sau khi xóa thưu/chuyển màn hình sang nội dung thư kế tiếp';
+$labels['defaultfont'] = 'Phông chữ mặc định của thư có mã HTML';
+$labels['mainoptions'] = 'Tùy chá»n chính';
+$labels['browseroptions'] = 'Tùy chá»n Trình duyệt';
+$labels['section'] = 'Mục';
+$labels['maintenance'] = 'Bảo trì';
+$labels['newmessage'] = 'ThÆ° má»›i';
+$labels['signatureoptions'] = 'Cấu hình chữ ký cuối thư';
+$labels['whenreplying'] = 'Khi trả lá»i';
+$labels['replytopposting'] = 'bắt đầu viết thư mới trên nội dung của thư cũ';
+$labels['replybottomposting'] = 'bắt đầu thư mới dưới nội dung thư cũ';
+$labels['replyremovesignature'] = 'Khi trả lá»i bá» chữ ký cÅ© khá»i ná»™i dung thÆ°';
+$labels['autoaddsignature'] = 'Tự động thêm chữ ký';
+$labels['newmessageonly'] = 'chỉ thư mới';
+$labels['replyandforwardonly'] = 'chỉ trả lá»i và chuyển tiếp thÆ°';
+$labels['replysignaturepos'] = 'Khi Ä‘ang trả lá»i hoặc chuyển tiếp thÆ° thêm chữ ký vào';
+$labels['belowquote'] = 'dưới phần quote';
+$labels['abovequote'] = 'trên phẩn quote';
+$labels['insertsignature'] = 'Chèn chữ ký';
+$labels['previewpanemarkread'] = 'Äánh dẫu thÆ° xem thá»­ là đã Ä‘á»c';
+$labels['afternseconds'] = 'sau $n giây';
+$labels['reqmdn'] = 'Luôn yêu cầu địa chỉ nhận thÆ° khi bạn muốn ngÆ°á»i gá»­i trả lá»i lại vào thÆ° này.';
+$labels['reqdsn'] = 'Luôn yêu cẩu thông báo trạng thái thư đã gửi';
+$labels['replysamefolder'] = 'ÄÆ°a các thÆ° trả lá»i nhận được vào cùng thÆ° mục của thÆ° bạn nhận được';
+$labels['defaultaddressbook'] = 'Tạo liên lạc mới';
+$labels['autocompletesingle'] = 'Bá» qua địa chỉ email thay thế trong chế Ä‘á»™ tá»± Ä‘iá»n thông tin';
+$labels['listnamedisplay'] = 'Hiện thị danh sách liên lạc như';
$labels['spellcheckbeforesend'] = 'Kiểm tra chính tả trước khi gửi tin nhắn';
$labels['spellcheckoptions'] = 'Tùy chá»n kiểm tra chính tả';
$labels['spellcheckignoresyms'] = 'BỠqua từ kèm biểu tượng';
$labels['spellcheckignorenums'] = 'BỠqua các từ kèm số';
$labels['spellcheckignorecaps'] = 'BỠqua các từ được viết hoa';
$labels['addtodict'] = 'Thêm vào từ điển';
+$labels['mailtoprotohandler'] = 'Äăng ký giao thức cho mailto: liên kết';
$labels['folder'] = 'Thư mục';
$labels['foldername'] = 'Tên thư mục';
$labels['subscribed'] = 'Cho sử dụng';
@@ -310,14 +409,29 @@ $labels['properties'] = 'Các thuộc tính';
$labels['folderproperties'] = 'Thuộc tính thư mục';
$labels['parentfolder'] = 'Thư mục bố mẹ';
$labels['location'] = 'Äịa Ä‘iểm';
+$labels['info'] = 'Thông tin';
+$labels['getfoldersize'] = 'Nhấp chuột để xem kích thước thư mục';
+$labels['changesubscription'] = 'Nhấp chuột để đổi subscription';
+$labels['foldertype'] = 'Kiểu thư mục';
+$labels['personalfolder'] = 'Thư mục riêng';
+$labels['otherfolder'] = 'Các thÆ° mục khác của ngÆ°á»i dùng';
+$labels['sharedfolder'] = 'Thư mục Public';
$labels['sortby'] = 'Sắp xếp';
$labels['sortasc'] = 'Xếp tăng dần';
$labels['sortdesc'] = 'Xếp giảm dần';
+$labels['undo'] = 'Hủy thao tác';
+$labels['plugin'] = 'Mô đun';
$labels['version'] = 'Phiên bản';
$labels['source'] = 'Nguồn';
$labels['license'] = 'Bản quyá»n';
$labels['support'] = 'Nhận hỗ trợ';
+$labels['B'] = 'B';
+$labels['KB'] = 'KB';
+$labels['MB'] = 'MB';
+$labels['GB'] = 'GB';
+$labels['unicode'] = 'Unicode';
$labels['english'] = 'Tiếng Anh/ ngÆ°á»i Anh';
+$labels['easterneuropean'] = 'Äông Âu';
$labels['turkish'] = 'Tiếng Thổ Nhĩ Kỳ';
$labels['nordic'] = 'Thuá»™c Bắc Âu (tính từ)/ NgÆ°á»i Bắc Âu (danh từ)';
$labels['thai'] = 'NgÆ°á»i Thái Lan, tiếng Thái Lan';
diff --git a/program/localization/vi_VN/messages.inc b/program/localization/vi_VN/messages.inc
index f27ebb62f..c5db78cde 100644
--- a/program/localization/vi_VN/messages.inc
+++ b/program/localization/vi_VN/messages.inc
@@ -9,20 +9,29 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Thomas <Unknown> |
+ | Author: Hung Pham <phamhung77@gmail.com> |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
+$messages['errortitle'] = 'Xuất hiện 1 lỗi';
$messages['loginfailed'] = 'Không đăng nhập được';
$messages['cookiesdisabled'] = 'Trình duyệt không hỗ trợ cookies';
$messages['sessionerror'] = 'Phiên làm việc không hợp lệ hoặc đã hết hạn';
$messages['storageerror'] = 'Không kết nối được với máy chủ IMAP';
+$messages['servererror'] = 'Lỗi máy chủ';
+$messages['servererrormsg'] = 'Lỗi máy chủ';
+$messages['dberror'] = 'Lỗi cơ sở dữ liệu';
+$messages['requesttimedout'] = 'Yêu cầu hết hạn';
+$messages['errorreadonly'] = 'Không thể thá»±c hiện hoat Ä‘á»™ng. Folder chỉ cho phép Ä‘á»c.';
+$messages['errornoperm'] = 'Không thể thực hiện hoạt độngôiSự cho phép bị từ chối';
+$messages['invalidrequest'] = 'Yêu cầu vô giá trị! Không có dữ liệu nào được lưu.';
$messages['nomessagesfound'] = 'Không có thư trong hòm thư này';
$messages['loggedout'] = 'Phiên làm việc đã kết thúc. Hẹn gặp lại!';
$messages['mailboxempty'] = 'Há»™p thÆ° rá»—ng';
$messages['loading'] = 'Vui lòng chỠtrong giây lát...';
+$messages['uploading'] = 'Äang tải lên tập tin...';
+$messages['uploadingmany'] = 'Äang tải lên các tập tin';
$messages['loadingdata'] = 'Äang nạp dữ liệu...';
$messages['checkingmail'] = 'Kiểm tra thư mới...';
$messages['sendingmessage'] = 'Äang gá»­i thÆ°...';
@@ -32,30 +41,113 @@ $messages['messagesaved'] = 'Thư đã được gửi vào ngăn Drafts';
$messages['successfullysaved'] = 'Äã lÆ°u thành công';
$messages['addedsuccessfully'] = 'Äịa chỉ liên hệ đã được lÆ°u';
$messages['contactexists'] = 'Äịa chỉ liên hệ vá»›i e-mail này đã được lÆ°u trÆ°á»›c đây';
+$messages['contactnameexists'] = 'Äã tồn tại má»™t liên lạc có cùng tên';
$messages['blockedimages'] = 'Äể bảo vệ tính riêng tÆ°, chức năng hiện ảnh từ xa bị cấm trong thÆ° này.';
$messages['encryptedmessage'] = 'Thư này được mã hóa, không thể xem. Rất tiếc!';
$messages['nocontactsfound'] = 'Không tìm thấy địa chỉ liên hệ';
+$messages['contactnotfound'] = 'Không tìm thấy liên lạc được yêu cầu';
+$messages['contactsearchonly'] = 'Gõ một vài từ từ kiếm để tìm liên lạc';
$messages['sendingfailed'] = 'Không gửi được thư';
+$messages['senttooquickly'] = 'Xin đợi vài giây trước khi gửi thư này';
+$messages['errorsavingsent'] = 'Xuất hiện một lỗi trong khi lưu thư đã gửi';
$messages['errorsaving'] = 'Lá»—i khi lÆ°u';
$messages['errormoving'] = 'Không thể chuyển được thư';
+$messages['errorcopying'] = 'Không thể sao chép thư';
$messages['errordeleting'] = 'Không thể xóa được thư';
+$messages['errormarking'] = 'Không thể đánh dấu (các) thư';
$messages['deletecontactconfirm'] = 'Xóa bá» các địa chỉ được chá»n?';
+$messages['deletegroupconfirm'] = 'Bạn thá»±c sá»± có muốn xóa nhóm đã chá»n?';
+$messages['deletemessagesconfirm'] = 'Bạn thá»±c sá»± có muốn xóa (các) thÆ° đã chá»n?';
$messages['deletefolderconfirm'] = 'Xóa bỠthư mục này?';
$messages['purgefolderconfirm'] = 'Xóa toàn bộ thư trong thư mục nào?';
+$messages['contactdeleting'] = 'Äang xóa (các) liên lạc...';
+$messages['groupdeleting'] = 'Äang xóa nhóm...';
+$messages['folderdeleting'] = 'Äang xóa folder...';
+$messages['foldermoving'] = 'Äang chuyển folder...';
+$messages['foldersubscribing'] = 'Nhập vào folder...';
+$messages['folderunsubscribing'] = 'Không nhập folder...';
$messages['formincomplete'] = 'Mẫu chÆ°a được Ä‘iá»n xong';
$messages['noemailwarning'] = 'Nhập địa chỉ email';
$messages['nonamewarning'] = 'Nhập tên';
$messages['nopagesizewarning'] = 'Nhập kích cỡ của trang';
+$messages['nosenderwarning'] = 'Hãy nhập địa chỉ email ngÆ°á»i gá»­i';
$messages['norecipientwarning'] = 'ThÆ° cần có it nhất 1 ngÆ°á»i nhận';
$messages['nosubjectwarning'] = 'Mục "Tiêu Ä‘á»" chÆ°a có. Äiá»n tiêu Ä‘á» ?';
$messages['nobodywarning'] = 'Thư không nội dung, vẫn tiếp tục gửi?';
$messages['notsentwarning'] = 'Thư chưa được gửi. BỠqua thư đang soạn?';
$messages['noldapserver'] = 'Chá»n máy chủ ldap server để tìm';
$messages['nosearchname'] = 'Nhập địa chỉ hoặc email';
+$messages['notuploadedwarning'] = 'Tất cả các đính kèm vẫn chưa được tải lên hết. Xin đợi hoặc hủy việc tải lên.';
$messages['searchsuccessful'] = '$nr messages found';
$messages['searchnomatch'] = 'Không tìm thấy';
$messages['searching'] = 'Tìm kiếm...';
$messages['checking'] = 'Kiểm tra...';
$messages['nospellerrors'] = 'Không có lỗi chính tả';
$messages['folderdeleted'] = 'Thư mục đã được xóa';
+$messages['foldersubscribed'] = 'Folder được nhập vào thành công';
+$messages['folderunsubscribed'] = 'Folder không nhập vào thành công';
+$messages['folderpurged'] = 'Folder được làm trống rỗng thành công';
+$messages['folderexpunged'] = 'Folder đã được nén lại thành công';
+$messages['deletedsuccessfully'] = 'Äã xóa thành công';
+$messages['converting'] = 'Loại bỠđịnh dạng...';
+$messages['messageopenerror'] = 'Không thể tải thư từ máy chủ';
+$messages['fileuploaderror'] = 'Tải tập tin lên thất bại';
+$messages['filesizeerror'] = 'Tập tin được tải lên vượt quá dung lượng tối đa....';
+$messages['copysuccess'] = 'Sao chép thành công ... địa chỉ';
+$messages['copyerror'] = 'Không thể sao chép đỉa chỉ nào.';
+$messages['sourceisreadonly'] = 'Nguồn địa chỉ này chỉ cho Ä‘á»c';
+$messages['errorsavingcontact'] = 'Không thể lưu địa chỉ liên lạc';
+$messages['movingmessage'] = 'Äang chuyển thÆ°';
+$messages['copyingmessage'] = 'Äang sao chép thÆ°';
+$messages['copyingcontact'] = 'Äang sao chép liên lạc...';
+$messages['deletingmessage'] = 'Äang xóa thÆ°...';
+$messages['markingmessage'] = 'Äánh dấu thÆ°...';
+$messages['addingmember'] = 'Äang thêm liên lạc vào nhóm...';
+$messages['removingmember'] = 'Äang xóa liên lạc từ nhóm...';
+$messages['receiptsent'] = 'Gá»­i thành công ghi nhận đã Ä‘á»c';
+$messages['errorsendingreceipt'] = 'Không thể gửi ghi nhận';
+$messages['deleteidentityconfirm'] = 'Bạn có thực sự muốn xóa nhận dạng này?';
+$messages['nodeletelastidentity'] = 'Bạn không thể xóa nhận dạng này, đó là cái cuối cùng của bạn.';
+$messages['forbiddencharacter'] = 'Tên folder chứa một ký tự bị cấm';
+$messages['selectimportfile'] = 'Hãy chá»n tệp để tải lên';
+$messages['addresswriterror'] = 'Sổ địa chỉ đã chá»n không thể viết lại được';
+$messages['contactaddedtogroup'] = 'Thêm liên lạc vào nhóm này thành công';
+$messages['contactremovedfromgroup'] = 'Xóa liên lạc khá»i nhóm này thành công';
+$messages['importwait'] = 'Dang nhập, xin chá»...';
+$messages['importerror'] = 'Nhập thất bại! Tệp tải lên không phải là tệp vCard hợp lệ';
+$messages['opnotpermitted'] = 'Hoạt động không được cho phép!';
+$messages['nofromaddress'] = 'Äịa chỉ email mất ở trong nhận dạng đã chá»n';
+$messages['editorwarning'] = 'Việc chuyển soạn thảo text gốc sẽ gây ra toàn bộ định dạng text đã có bị mất. Bạn có muốn tiếp tục không?';
+$messages['httpreceivedencrypterror'] = 'Xuất hiện một lỗi cấu hình tai hại. Hãy liên hệ với ngừoi quản trị ngày. <b> Thư của bạn không thể được gửi</b>';
+$messages['smtpconnerror'] = 'Lỗi SMTP: Kết nỗi tới máy chủ bị lỗi';
+$messages['smtpautherror'] = 'Lỗi SMTP: Xác thực thất bại';
+$messages['smtprecipientserror'] = 'Lá»—i SMTP: không thể phân loại danh sách ngÆ°á»i nhận';
+$messages['emailformaterror'] = 'Äịa chỉ email không hợp lệ';
+$messages['toomanyrecipients'] = 'Quá nhiá»u ngÆ°á»i nhận. Hãy giảm số lượng ngÆ°á»i nhận xuống';
+$messages['maxgroupmembersreached'] = 'Số lượng thành viên trong nhóm vượt quá mức tối đa là';
+$messages['internalerror'] = 'Xuất hiện một lỗi nội bộ. Xin hãy thử lại';
+$messages['contactdelerror'] = 'Không thể xóa liên lạc';
+$messages['contactdeleted'] = 'Liên lạc được xóa thành công';
+$messages['contactrestoreerror'] = 'Không thể khôi phục liên lạc đã xóa';
+$messages['contactrestored'] = 'Liên lạc được khôi phục thành công';
+$messages['groupdeleted'] = 'Nhóm được xóa thành công';
+$messages['grouprenamed'] = 'Nhóm được đặt tên lại thành công';
+$messages['groupcreated'] = 'Nhóm được tạo thành công';
+$messages['savedsearchdeleted'] = 'Tìm kiếm đã lưu được xóa thành công';
+$messages['savedsearchdeleteerror'] = 'Không thể xóa tìm kiếm đã lưu';
+$messages['savedsearchcreated'] = 'Tìm kiếm đã lưu được tạo thành công';
+$messages['savedsearchcreateerror'] = 'Không thể tạo tìm kiếm đã lưu';
+$messages['messagedeleted'] = 'Thư được xóa thành công';
+$messages['messagemoved'] = 'Thư được chuyển đi thành công';
+$messages['messagecopied'] = 'Thư được sao chép thành công';
+$messages['messagemarked'] = 'Thư được đánh dấu thành công';
+$messages['autocompletemore'] = 'Nhiá»u dữ liệu phù hợp hÆ¡n được tìm thấy. Hãy gõ thêm ký tá»±.';
+$messages['namecannotbeempty'] = 'Tên không được để trống';
+$messages['nametoolong'] = 'Tên quá dài';
+$messages['folderupdated'] = 'Folder được cập nhật thành công';
+$messages['foldercreated'] = 'Folder được tạo thành công';
+$messages['invalidimageformat'] = 'Không phải là định dạng ảnh hợp lệ.';
+$messages['mispellingsfound'] = 'Lỗi chính tả được phát hiện trong thư';
+$messages['parentnotwritable'] = 'Không thể tạo/chuyển folder vào folder gốc đã chá»n. Không có quyá»n truy cập.';
+$messages['messagetoobig'] = 'Một phần thư quá lớn để xử lý nó.';
diff --git a/program/localization/zh_TW/messages.inc b/program/localization/zh_TW/messages.inc
index 4f5492082..820978682 100644
--- a/program/localization/zh_TW/messages.inc
+++ b/program/localization/zh_TW/messages.inc
@@ -9,9 +9,8 @@
| Licensed under the GNU General Public License |
| |
+-----------------------------------------------------------------------+
- | Author: Denny Lin <dennylin93@hs.ntnu.edu.tw> |
+ | Author: Nansen |
+-----------------------------------------------------------------------+
- @version $Id$
*/
$messages = array();
@@ -23,6 +22,7 @@ $messages['storageerror'] = '連線到 IMAP 伺æœå™¨å¤±æ•—';
$messages['servererror'] = '伺æœå™¨éŒ¯èª¤ï¼';
$messages['servererrormsg'] = '伺æœå™¨éŒ¯èª¤ï¼š$msg';
$messages['dberror'] = '資料庫錯誤!';
+$messages['requesttimedout'] = 'è¦æ±‚逾時';
$messages['errorreadonly'] = '動作無法完æˆã€‚資料夾唯讀';
$messages['errornoperm'] = '動作無法完æˆã€‚權é™ä¸ç¬¦';
$messages['invalidrequest'] = 'è¦æ±‚無效ï¼æœªå„²å­˜ä»»ä½•è³‡æ–™ã€‚';
diff --git a/skins/default/images/blank.gif b/program/resources/blank.gif
index 7dd464ea3..7dd464ea3 100644
--- a/skins/default/images/blank.gif
+++ b/program/resources/blank.gif
Binary files differ
diff --git a/program/blank.tif b/program/resources/blank.tif
index 2b3f4ec5d..2b3f4ec5d 100644
--- a/program/blank.tif
+++ b/program/resources/blank.tif
Binary files differ
diff --git a/program/blocked.gif b/program/resources/blocked.gif
index 7a4aa9f34..7a4aa9f34 100644
--- a/program/blocked.gif
+++ b/program/resources/blocked.gif
Binary files differ
diff --git a/program/steps/addressbook/delete.inc b/program/steps/addressbook/delete.inc
index a2f12495c..81b8a0970 100644
--- a/program/steps/addressbook/delete.inc
+++ b/program/steps/addressbook/delete.inc
@@ -70,6 +70,7 @@ $page = isset($_SESSION['page']) ? $_SESSION['page'] : 1;
// update saved search after data changed
if (($search_request = $_REQUEST['_search']) && isset($_SESSION['search'][$search_request])) {
$sort_col = $RCMAIL->config->get('addressbook_sort_col', 'name');
+ $afields = $RCMAIL->config->get('contactlist_fields');
$search = (array)$_SESSION['search'][$search_request];
$records = array();
@@ -83,7 +84,7 @@ if (($search_request = $_REQUEST['_search']) && isset($_SESSION['search'][$searc
$source->set_search_set($set);
// get records
- $result = $source->list_records(array('name', 'firstname', 'surname', 'email'));
+ $result = $source->list_records($afields);
if (!$result->count) {
unset($search[$s]);
diff --git a/program/steps/addressbook/edit.inc b/program/steps/addressbook/edit.inc
index f96ad6747..0f1fd6697 100644
--- a/program/steps/addressbook/edit.inc
+++ b/program/steps/addressbook/edit.inc
@@ -262,12 +262,27 @@ function rcmail_source_selector($attrib)
}
+/**
+ * Register container as active area to drop photos onto
+ */
+function rcmail_photo_drop_area($attrib)
+{
+ global $OUTPUT;
+
+ if ($attrib['id']) {
+ $OUTPUT->add_gui_object('filedrop', $attrib['id']);
+ $OUTPUT->set_env('filedrop', array('action' => 'upload-photo', 'fieldname' => '_photo', 'single' => 1, 'filter' => '^image/.+'));
+ }
+}
+
+
$OUTPUT->add_handlers(array(
'contactedithead' => 'rcmail_contact_edithead',
'contacteditform' => 'rcmail_contact_editform',
'contactphoto' => 'rcmail_contact_photo',
'photouploadform' => 'rcmail_upload_photo_form',
'sourceselector' => 'rcmail_source_selector',
+ 'filedroparea' => 'rcmail_photo_drop_area',
));
if ($RCMAIL->action == 'add' && $OUTPUT->template_exists('contactadd'))
diff --git a/program/steps/addressbook/func.inc b/program/steps/addressbook/func.inc
index 80d89b001..5f5fcc673 100644
--- a/program/steps/addressbook/func.inc
+++ b/program/steps/addressbook/func.inc
@@ -368,7 +368,7 @@ function rcmail_contact_frame($attrib)
$attrib['name'] = $attrib['id'];
$OUTPUT->set_env('contentframe', $attrib['name']);
- $OUTPUT->set_env('blankpage', $attrib['src'] ? $OUTPUT->abs_url($attrib['src']) : 'program/blank.gif');
+ $OUTPUT->set_env('blankpage', $attrib['src'] ? $OUTPUT->abs_url($attrib['src']) : 'program/resources/blank.gif');
return html::iframe($attrib);
}
@@ -580,8 +580,13 @@ function rcmail_contact_form($form, $record, $attrib = null)
if (empty($values) && $colprop['visible'])
$values[] = '';
+ if (!is_array($values)) {
+ // $values can be an object, don't use (array)$values syntax
+ $values = !empty($values) ? array($values) : array();
+ }
+
$rows = '';
- foreach ((array)$values as $i => $val) {
+ foreach ($values as $i => $val) {
if ($subtypes[$i])
$subtype = $subtypes[$i];
@@ -705,11 +710,15 @@ function rcmail_contact_photo($attrib)
if ($result = $CONTACTS->get_result())
$record = $result->first();
- $photo_img = $attrib['placeholder'] ? $CONFIG['skin_path'] . $attrib['placeholder'] : 'program/blank.gif';
+ $photo_img = $attrib['placeholder'] ? $CONFIG['skin_path'] . $attrib['placeholder'] : 'program/resources/blank.gif';
$RCMAIL->output->set_env('photo_placeholder', $photo_img);
unset($attrib['placeholder']);
- if (preg_match('!^https?://!i', $record['photo']))
+ $plugin = $RCMAIL->plugins->exec_hook('contact_photo', array('record' => $record, 'data' => $record['photo']));
+
+ if ($plugin['url'])
+ $photo_img = $plugin['url'];
+ else if (preg_match('!^https?://!i', $record['photo']))
$photo_img = $record['photo'];
else if ($record['photo'])
$photo_img = $RCMAIL->url(array('_action' => 'photo', '_cid' => $record['ID'], '_source' => $SOURCE_ID));
diff --git a/program/steps/addressbook/list.inc b/program/steps/addressbook/list.inc
index a24fb9520..06a1e10a3 100644
--- a/program/steps/addressbook/list.inc
+++ b/program/steps/addressbook/list.inc
@@ -19,6 +19,8 @@
+-----------------------------------------------------------------------+
*/
+$afields = $RCMAIL->config->get('contactlist_fields');
+
// Use search result
if (!empty($_REQUEST['_search']) && isset($_SESSION['search'][$_REQUEST['_search']]))
{
@@ -43,7 +45,7 @@ if (!empty($_REQUEST['_search']) && isset($_SESSION['search'][$_REQUEST['_search
$source->set_search_set($set);
// get records
- $result = $source->list_records(array('name', 'firstname', 'surname', 'email'));
+ $result = $source->list_records($afields);
while ($row = $result->next()) {
$row['sourceid'] = $s;
@@ -73,7 +75,7 @@ else {
$CONTACTS = rcmail_contact_source(null, true);
// get contacts for this user
- $result = $CONTACTS->list_records(array('name', 'firstname', 'surname', 'email'));
+ $result = $CONTACTS->list_records($afields);
if (!$result->count && $result->searchonly) {
$OUTPUT->show_message('contactsearchonly', 'notice');
diff --git a/program/steps/addressbook/search.inc b/program/steps/addressbook/search.inc
index f83eb9fd6..d31e54b1a 100644
--- a/program/steps/addressbook/search.inc
+++ b/program/steps/addressbook/search.inc
@@ -145,6 +145,7 @@ function rcmail_contact_search()
$search_set = array();
$records = array();
$sort_col = $RCMAIL->config->get('addressbook_sort_col', 'name');
+ $afields = $RCMAIL->config->get('contactlist_fields');
foreach ($sources as $s) {
$source = $RCMAIL->get_address_book($s['id']);
@@ -179,7 +180,7 @@ function rcmail_contact_search()
}
// get records
- $result = $source->list_records(array('name', 'firstname', 'surname', 'email'));
+ $result = $source->list_records($afields);
while ($row = $result->next()) {
$row['sourceid'] = $s['id'];
diff --git a/program/steps/addressbook/show.inc b/program/steps/addressbook/show.inc
index e5ff0d73e..48e37256d 100644
--- a/program/steps/addressbook/show.inc
+++ b/program/steps/addressbook/show.inc
@@ -22,7 +22,7 @@
// Get contact ID and source ID from request
$cids = rcmail_get_cids();
$source = key($cids);
-$cid = array_shift($cids[$source]);
+$cid = $cids ? array_shift($cids[$source]) : null;
// Initialize addressbook source
$CONTACTS = rcmail_contact_source($source, true);
@@ -39,6 +39,19 @@ rcmail_set_sourcename($CONTACTS);
// return raw photo of the given contact
if ($RCMAIL->action == 'photo') {
+ // search for contact first
+ if (!$record && ($email = get_input_value('_email', RCUBE_INPUT_GPC))) {
+ foreach ($RCMAIL->get_address_sources() as $s) {
+ $abook = $RCMAIL->get_address_book($s['id']);
+ $result = $abook->search(array('email'), $email, 1, true, true, 'photo');
+ while ($result && ($record = $result->iterate())) {
+ if ($record['photo'])
+ break 2;
+ }
+ }
+ }
+
+ // read the referenced file
if (($file_id = get_input_value('_photo', RCUBE_INPUT_GPC)) && ($tempfile = $_SESSION['contacts']['files'][$file_id])) {
$tempfile = $RCMAIL->plugins->exec_hook('attachment_display', $tempfile);
if ($tempfile['status']) {
@@ -54,8 +67,25 @@ if ($RCMAIL->action == 'photo') {
$data = base64_decode($data, true);
}
+ // let plugins do fancy things with contact photos
+ $plugin = $RCMAIL->plugins->exec_hook('contact_photo', array('record' => $record, 'email' => $email, 'data' => $data));
+
+ // redirect to url provided by a plugin
+ if ($plugin['url'])
+ $RCMAIL->output->redirect($plugin['url']);
+ else
+ $data = $plugin['data'];
+
+ // deliver alt image
+ if (!$data && ($alt_img = get_input_value('_alt', RCUBE_INPUT_GPC)) && is_file($alt_img))
+ $data = file_get_contents($alt_img);
+
+ // cache for one day if requested by email
+ if (!$cid && $email)
+ $RCMAIL->output->future_expire_header(86400);
+
header('Content-Type: ' . rc_image_content_type($data));
- echo $data ? $data : file_get_contents('program/blank.gif');
+ echo $data ? $data : file_get_contents('program/resources/blank.gif');
exit;
}
diff --git a/program/steps/mail/addcontact.inc b/program/steps/mail/addcontact.inc
index 2dc406f84..380557766 100644
--- a/program/steps/mail/addcontact.inc
+++ b/program/steps/mail/addcontact.inc
@@ -23,17 +23,8 @@
if (!$OUTPUT->ajax_call)
return;
-$abook = $RCMAIL->config->get('default_addressbook');
-
-// Get configured addressbook
-$CONTACTS = $RCMAIL->get_address_book($abook, true);
-
-// Get first writeable addressbook if the configured doesn't exist
-// This can happen when user deleted the addressbook (e.g. Kolab folder)
-if ($abook == null || !is_object($CONTACTS)) {
- $source = reset($RCMAIL->get_address_sources(true));
- $CONTACTS = $RCMAIL->get_address_book($source['id'], true);
-}
+// Get default addressbook
+$CONTACTS = $RCMAIL->get_address_book(-1, true);
if (!empty($_POST['_address']) && is_object($CONTACTS))
{
diff --git a/program/steps/mail/autocomplete.inc b/program/steps/mail/autocomplete.inc
index ba34fa5aa..55579814c 100644
--- a/program/steps/mail/autocomplete.inc
+++ b/program/steps/mail/autocomplete.inc
@@ -26,7 +26,7 @@ if ($RCMAIL->action == 'group-expand') {
$members = array();
$abook->set_group($gid);
$abook->set_pagesize(1000); // TODO: limit number of group members by config
- $result = $abook->list_records(array('name', 'firstname', 'surname', 'email'));
+ $result = $abook->list_records($RCMAIL->config->get('contactlist_fields'));
while ($result && ($sql_arr = $result->iterate())) {
foreach ((array)$sql_arr['email'] as $email) {
$members[] = format_email_recipient($email, rcube_addressbook::compose_list_name($sql_arr));
@@ -64,7 +64,7 @@ if (!empty($book_types) && strlen($search)) {
$abook = $RCMAIL->get_address_book($id);
$abook->set_pagesize($MAXNUM);
- if ($result = $abook->search(array('name', 'firstname', 'surname', 'email'), $search, $mode, true, true, 'email')) {
+ if ($result = $abook->search($RCMAIL->config->get('contactlist_fields'), $search, $mode, true, true, 'email')) {
while ($sql_arr = $result->iterate()) {
// Contact can have more than one e-mail address
$email_arr = (array)$abook->get_col_values('email', $sql_arr, true);
diff --git a/program/steps/mail/compose.inc b/program/steps/mail/compose.inc
index 70f657d8d..57869d1f7 100644
--- a/program/steps/mail/compose.inc
+++ b/program/steps/mail/compose.inc
@@ -629,7 +629,8 @@ function rcmail_prepare_message_body()
if (!empty($MESSAGE->parts)) {
foreach ($MESSAGE->parts as $part) {
- if ($part->type != 'content' || !$part->size) {
+ // skip no-content and attachment parts (#1488557)
+ if ($part->type != 'content' || !$part->size || $MESSAGE->is_attachment($part)) {
continue;
}
@@ -662,10 +663,10 @@ function rcmail_prepare_message_body()
unset($plugin);
// add blocked.gif attachment (#1486516)
- if ($isHtml && preg_match('#<img src="\./program/blocked\.gif"#', $body)) {
- if ($attachment = rcmail_save_image('program/blocked.gif', 'image/gif')) {
+ if ($isHtml && preg_match('#<img src="\./program/resources/blocked\.gif"#', $body)) {
+ if ($attachment = rcmail_save_image('program/resources/blocked.gif', 'image/gif')) {
$COMPOSE['attachments'][$attachment['id']] = $attachment;
- $body = preg_replace('#\./program/blocked\.gif#',
+ $body = preg_replace('#\./program/resources/blocked\.gif#',
$RCMAIL->comm_path.'&_action=display-attachment&_file=rcmfile'.$attachment['id'].'&_id='.$COMPOSE['id'],
$body);
}
@@ -842,7 +843,7 @@ function rcmail_compose_body($attrib)
"googie.decorateTextarea('%s');\n".
"%s.set_env('spellcheck', googie);",
$RCMAIL->output->get_skin_path(),
- $RCMAIL->url(array('_task' => 'utils', '_action' => 'spell')),
+ $RCMAIL->url(array('_task' => 'utils', '_action' => 'spell', '_remote' => 1)),
!empty($dictionary) ? 'true' : 'false',
JQ(Q(rcube_label('checkspelling'))),
JQ(Q(rcube_label('resumeediting'))),
@@ -859,7 +860,7 @@ function rcmail_compose_body($attrib)
$OUTPUT->set_env('spellcheck_langs', join(',', $editor_lang_set));
}
- $out .= "\n".'<iframe name="savetarget" src="program/blank.gif" style="width:0;height:0;border:none;visibility:hidden;"></iframe>';
+ $out .= "\n".'<iframe name="savetarget" src="program/resources/blank.gif" style="width:0;height:0;border:none;visibility:hidden;"></iframe>';
return $out;
}
@@ -958,18 +959,18 @@ function rcmail_create_forward_body($body, $bodyIsHtml)
"<tr><th align=\"right\" nowrap=\"nowrap\" valign=\"baseline\">%s: </th><td>%s</td></tr>",
rcube_label('subject'), Q($MESSAGE->subject),
rcube_label('date'), Q($date),
- rcube_label('from'), htmlspecialchars(Q($MESSAGE->get_header('from'), 'replace'), ENT_COMPAT, $charset),
- rcube_label('to'), htmlspecialchars(Q($MESSAGE->get_header('to'), 'replace'), ENT_COMPAT, $charset));
+ rcube_label('from'), Q($MESSAGE->get_header('from'), 'replace'),
+ rcube_label('to'), Q($MESSAGE->get_header('to'), 'replace'));
if ($MESSAGE->headers->cc)
$prefix .= sprintf("<tr><th align=\"right\" nowrap=\"nowrap\" valign=\"baseline\">%s: </th><td>%s</td></tr>",
rcube_label('cc'),
- htmlspecialchars(Q($MESSAGE->get_header('cc'), 'replace'), ENT_COMPAT, $charset));
+ Q($MESSAGE->get_header('cc'), 'replace'));
if ($MESSAGE->headers->replyto && $MESSAGE->headers->replyto != $MESSAGE->headers->from)
$prefix .= sprintf("<tr><th align=\"right\" nowrap=\"nowrap\" valign=\"baseline\">%s: </th><td>%s</td></tr>",
rcube_label('replyto'),
- htmlspecialchars(Q($MESSAGE->get_header('replyto'), 'replace'), ENT_COMPAT, $charset));
+ Q($MESSAGE->get_header('replyto'), 'replace'));
$prefix .= "</tbody></table><br>";
}
@@ -1522,6 +1523,7 @@ function get_form_tags($attrib)
$hiddenfields = new html_hiddenfield(array('name' => '_task', 'value' => $RCMAIL->task));
$hiddenfields->add(array('name' => '_action', 'value' => 'send'));
$hiddenfields->add(array('name' => '_id', 'value' => $COMPOSE['id']));
+ $hiddenfields->add(array('name' => '_attachments'));
$form_start = empty($attrib['form']) ? $RCMAIL->output->form_tag(array('name' => "form", 'method' => "post")) : '';
$form_start .= $hiddenfields->show();
diff --git a/program/steps/mail/func.inc b/program/steps/mail/func.inc
index 5a18ded6b..ddd34315a 100644
--- a/program/steps/mail/func.inc
+++ b/program/steps/mail/func.inc
@@ -398,7 +398,7 @@ function rcmail_messagecontent_frame($attrib)
if ($RCMAIL->config->get('preview_pane'))
$OUTPUT->set_env('contentframe', $attrib['id']);
- $OUTPUT->set_env('blankpage', $attrib['src'] ? $OUTPUT->abs_url($attrib['src']) : 'program/blank.gif');
+ $OUTPUT->set_env('blankpage', $attrib['src'] ? $OUTPUT->abs_url($attrib['src']) : 'program/resources/blank.gif');
return html::iframe($attrib);
}
@@ -518,21 +518,26 @@ function rcmail_check_safe(&$message)
{
global $RCMAIL;
- $show_images = $RCMAIL->config->get('show_images');
if (!$message->is_safe
- && !empty($show_images)
- && $message->has_html_part())
- {
- switch($show_images) {
- case '1': // known senders only
- $CONTACTS = new rcube_contacts($RCMAIL->db, $_SESSION['user_id']);
- if ($CONTACTS->search('email', $message->sender['mailto'], true, false)->count) {
- $message->set_safe(true);
+ && ($show_images = $RCMAIL->config->get('show_images'))
+ && $message->has_html_part()
+ ) {
+ switch ($show_images) {
+ case 1: // known senders only
+ // get default addressbook, like in addcontact.inc
+ $CONTACTS = $RCMAIL->get_address_book(-1, true);
+
+ if ($CONTACTS) {
+ $result = $CONTACTS->search('email', $message->sender['mailto'], 1, false);
+ if ($result->count) {
+ $message->set_safe(true);
+ }
}
- break;
- case '2': // always
+ break;
+
+ case 2: // always
$message->set_safe(true);
- break;
+ break;
}
}
}
@@ -605,7 +610,7 @@ function rcmail_wash_html($html, $p, $cid_replaces)
$wash_opts = array(
'show_washed' => false,
'allow_remote' => $p['safe'],
- 'blocked_src' => "./program/blocked.gif",
+ 'blocked_src' => "./program/resources/blocked.gif",
'charset' => RCMAIL_CHARSET,
'cid_map' => $cid_replaces,
'html_elements' => array('body'),
diff --git a/program/steps/mail/list_contacts.inc b/program/steps/mail/list_contacts.inc
index 1a6480339..7c99a1309 100644
--- a/program/steps/mail/list_contacts.inc
+++ b/program/steps/mail/list_contacts.inc
@@ -57,7 +57,8 @@ if ($CONTACTS && $CONTACTS->ready) {
// get contacts for this user
$CONTACTS->set_group(0);
- $result = $CONTACTS->list_records(array('name', 'firstname', 'surname', 'email'));
+ $afields = $RCMAIL->config->get('contactlist_fields');
+ $result = $CONTACTS->list_records($afields);
if (!$result->count && $result->searchonly) {
$OUTPUT->show_message('contactsearchonly', 'notice');
diff --git a/program/steps/mail/sendmail.inc b/program/steps/mail/sendmail.inc
index 4790d35e2..70f1af714 100644
--- a/program/steps/mail/sendmail.inc
+++ b/program/steps/mail/sendmail.inc
@@ -458,6 +458,19 @@ if ($isHtml) {
$message_body .= "\r\n</body></html>\r\n";
}
+// sort attachments to make sure the order is the same as in the UI (#1488423)
+$files = get_input_value('_attachments', RCUBE_INPUT_POST);
+if ($files) {
+ $files = explode(',', $files);
+ $files = array_flip($files);
+ foreach ($files as $idx => $val) {
+ $files[$idx] = $COMPOSE['attachments'][$idx];
+ unset($COMPOSE['attachments'][$idx]);
+ }
+
+ $COMPOSE['attachments'] = array_merge(array_filter($files), $COMPOSE['attachments']);
+}
+
// set line length for body wrapping
$LINE_LENGTH = $RCMAIL->config->get('line_length', 72);
diff --git a/program/steps/mail/show.inc b/program/steps/mail/show.inc
index 5fa72d77f..82c826108 100644
--- a/program/steps/mail/show.inc
+++ b/program/steps/mail/show.inc
@@ -257,7 +257,7 @@ function rcmail_contact_exists($email)
if ($email) {
// @TODO: search in all address books?
- $CONTACTS = $RCMAIL->get_address_book(null, true);
+ $CONTACTS = $RCMAIL->get_address_book(-1, true);
$existing = $CONTACTS->search('email', $email, true, false);
if ($existing->count)
return true;
@@ -266,11 +266,25 @@ function rcmail_contact_exists($email)
return false;
}
+function rcmail_message_contactphoto($attrib)
+{
+ global $RCMAIL, $MESSAGE;
+
+ $placeholder = $attrib['placeholder'] ? $RCMAIL->config->get('skin_path') . $attrib['placeholder'] : null;
+ if ($MESSAGE->sender)
+ $photo_img = $RCMAIL->url(array('_task' => 'addressbook', '_action' => 'photo', '_email' => $MESSAGE->sender['mailto'], '_alt' => $placeholder));
+ else
+ $photo_img = $placeholder ? $placeholder : 'program/resources/blank.gif';
+
+ return html::img(array('src' => $photo_img) + $attrib);
+}
+
$OUTPUT->add_handlers(array(
'messageattachments' => 'rcmail_message_attachments',
'mailboxname' => 'rcmail_mailbox_name_display',
'messageobjects' => 'rcmail_message_objects',
+ 'contactphoto' => 'rcmail_message_contactphoto',
));
diff --git a/program/steps/settings/folders.inc b/program/steps/settings/folders.inc
index e4e9f3155..2691a6e26 100644
--- a/program/steps/settings/folders.inc
+++ b/program/steps/settings/folders.inc
@@ -363,7 +363,7 @@ function rcmail_folder_frame($attrib)
$attrib['name'] = $attrib['id'];
$OUTPUT->set_env('contentframe', $attrib['name']);
- $OUTPUT->set_env('blankpage', $attrib['src'] ? $OUTPUT->abs_url($attrib['src']) : 'program/blank.gif');
+ $OUTPUT->set_env('blankpage', $attrib['src'] ? $OUTPUT->abs_url($attrib['src']) : 'program/resources/blank.gif');
return html::iframe($attrib);
}
diff --git a/program/steps/settings/func.inc b/program/steps/settings/func.inc
index 7b5534e5d..3f5ef5390 100644
--- a/program/steps/settings/func.inc
+++ b/program/steps/settings/func.inc
@@ -34,7 +34,7 @@ function rcmail_preferences_frame($attrib)
$attrib['name'] = $attrib['id'];
$OUTPUT->set_env('contentframe', $attrib['name']);
- $OUTPUT->set_env('blankpage', $attrib['src'] ? $OUTPUT->abs_url($attrib['src']) : 'program/blank.gif');
+ $OUTPUT->set_env('blankpage', $attrib['src'] ? $OUTPUT->abs_url($attrib['src']) : 'program/resources/blank.gif');
return html::iframe($attrib);
}
@@ -181,7 +181,7 @@ function rcmail_user_prefs($current=null)
$select_timezone = new html_select(array('name' => '_timezone', 'id' => $field_id));
$select_timezone->add(rcube_label('autodetect'), 'auto');
- $now = new DateTime();
+ $zones = array();
foreach (DateTimeZone::listIdentifiers() as $i => $tzs) {
try {
$tz = new DateTimeZone($tzs);
diff --git a/program/steps/utils/error.inc b/program/steps/utils/error.inc
index 126cf2ef7..e6e409a21 100644
--- a/program/steps/utils/error.inc
+++ b/program/steps/utils/error.inc
@@ -23,7 +23,7 @@ $rcmail = rcmail::get_instance();
// browser is not compatible with this application
if ($ERROR_CODE==409) {
- $user_agent = $GLOBALS['HTTP_SERVER_VARS']['HTTP_USER_AGENT'];
+ $user_agent = $_SERVER['HTTP_USER_AGENT'];
$__error_title = 'Your browser does not suit the requirements for this application';
$__error_text = <<<EOF
<i>Supported browsers:</i><br />
diff --git a/program/steps/utils/modcss.inc b/program/steps/utils/modcss.inc
index 77be150fe..1a28c6598 100644
--- a/program/steps/utils/modcss.inc
+++ b/program/steps/utils/modcss.inc
@@ -5,7 +5,7 @@
| program/steps/utils/modcss.inc |
| |
| This file is part of the Roundcube Webmail client |
- | Copyright (C) 2007-2011, The Roundcube Dev Team |
+ | Copyright (C) 2007-2012, The Roundcube Dev Team |
| |
| Licensed under the GNU General Public License version 3 or |
| any later version with exceptions for skins & plugins. |
@@ -16,83 +16,48 @@
| |
+-----------------------------------------------------------------------+
| Author: Thomas Bruederli <roundcube@gmail.com> |
+ | Author: Aleksander Machniak <alec@alec.pl> |
+-----------------------------------------------------------------------+
*/
-$source = '';
-
$url = preg_replace('![^a-z0-9.-]!i', '', $_GET['_u']);
+
if ($url === null || !($realurl = $_SESSION['modcssurls'][$url])) {
header('HTTP/1.1 403 Forbidden');
- echo "Unauthorized request";
- exit;
+ exit("Unauthorized request");
}
-$a_uri = parse_url($realurl);
-$port = $a_uri['port'] ? $a_uri['port'] : 80;
-$host = $a_uri['host'];
-$path = $a_uri['path'] . ($a_uri['query'] ? '?'.$a_uri['query'] : '');
-
// don't allow any other connections than http(s)
-if (strtolower(substr($a_uri['scheme'], 0, 4)) != 'http') {
+if (!preg_match('~^(https?)://~i', $realurl, $matches)) {
header('HTTP/1.1 403 Forbidden');
- echo "Invalid URL";
- exit;
+ exit("Invalid URL");
}
-// try to open socket connection
-if (!($fp = fsockopen($host, $port, $errno, $error, 15))) {
- header('HTTP/1.1 500 Internal Server Error');
- echo $error;
- exit;
+if (!ini_get('allow_url_fopen')) {
+ header('HTTP/1.1 403 Forbidden');
+ exit("HTTP connections disabled");
}
-// set timeout for socket
-stream_set_timeout($fp, 30);
-
-// send request
-$out = "GET $path HTTP/1.0\r\n";
-$out .= "Host: $host\r\n";
-$out .= "Connection: Close\r\n\r\n";
-fwrite($fp, $out);
+$scheme = strtolower($matches[1]);
+$options = array(
+ $scheme => array(
+ 'method' => 'GET',
+ 'timeout' => 15,
+ )
+);
-// read response
-$header = true;
-$headers = array();
-while (!feof($fp)) {
- $line = trim(fgets($fp, 4048));
+$context = stream_context_create($options);
+$source = @file_get_contents($realurl, false, $context);
- if ($header) {
- if (preg_match('/^HTTP\/1\..\s+(\d+)/', $line, $regs)
- && intval($regs[1]) != 200) {
- break;
- }
- else if (empty($line)) {
- $header = false;
- }
- else {
- list($key, $value) = explode(': ', $line);
- $headers[strtolower($key)] = $value;
- }
- }
- else {
- $source .= "$line\n";
- }
-}
-fclose($fp);
+// php.net/manual/en/reserved.variables.httpresponseheader.php
+$headers = implode("\n", (array)$http_response_header);
+$ctype = '~Content-Type:\s+text/(css|plain)~i';
-// check content-type header and mod styles
-$mimetype = strtolower($headers['content-type']);
-if (!empty($source) && in_array($mimetype, array('text/css','text/plain'))) {
+if ($source !== false && preg_match($ctype, $headers)) {
header('Content-Type: text/css');
echo rcmail_mod_css_styles($source, preg_replace('/[^a-z0-9]/i', '', $_GET['_c']));
exit;
}
-else
- $error = "Invalid response returned by server";
header('HTTP/1.0 404 Not Found');
-echo $error;
-exit;
-
-
+exit("Invalid response returned by server");
diff --git a/skins/default/README b/skins/classic/README
index ba690d733..ba690d733 100644
--- a/skins/default/README
+++ b/skins/classic/README
diff --git a/skins/default/addressbook.css b/skins/classic/addressbook.css
index ad7aeffd8..a398325b4 100644
--- a/skins/default/addressbook.css
+++ b/skins/classic/addressbook.css
@@ -310,6 +310,13 @@ body.iframe,
width: 60px;
}
+#contactpic.droptarget.hover {
+ background-color: #f0f0ee;
+ box-shadow: 0 0 5px 0 #999;
+ -moz-box-shadow: 0 0 5px 0 #999;
+ -o-box-shadow: 0 0 5px 0 #999;
+}
+
#contactphoto .formlinks
{
margin-top: 0.5em;
diff --git a/skins/default/common.css b/skins/classic/common.css
index 7f13a858e..735a73614 100644
--- a/skins/default/common.css
+++ b/skins/classic/common.css
@@ -370,6 +370,10 @@ body.iframe .boxtitle
background-position: 0 -26px;
}
+.boxfooter a.delgroup {
+ background-position: 0 -49px;
+}
+
.boxfooter a.buttonPas
{
opacity: 0.35;
@@ -770,7 +774,7 @@ a.rcmContactAddress:hover
margin: 5em auto;
font-size: 85%;
text-align: center;
- color: #333;
+ color: #666;
}
#console
diff --git a/skins/default/editor_content.css b/skins/classic/editor_content.css
index aabed07b5..aabed07b5 100644
--- a/skins/default/editor_content.css
+++ b/skins/classic/editor_content.css
diff --git a/skins/default/functions.js b/skins/classic/functions.js
index 48f9acd75..48f9acd75 100644
--- a/skins/default/functions.js
+++ b/skins/classic/functions.js
diff --git a/skins/default/googiespell.css b/skins/classic/googiespell.css
index 8adadc256..8adadc256 100644
--- a/skins/default/googiespell.css
+++ b/skins/classic/googiespell.css
diff --git a/skins/default/ie6hacks.css b/skins/classic/ie6hacks.css
index 53a2e5e1d..53a2e5e1d 100644
--- a/skins/default/ie6hacks.css
+++ b/skins/classic/ie6hacks.css
diff --git a/skins/default/iehacks.css b/skins/classic/iehacks.css
index d09be3d80..2bd3ce865 100644
--- a/skins/default/iehacks.css
+++ b/skins/classic/iehacks.css
@@ -150,6 +150,16 @@ body.iframe div.messageheaderbox
height: expression((parseInt(this.parentNode.offsetHeight)-1-parseInt(document.getElementById('compose-headers').offsetHeight))+'px');
}
+#compose-attachments ul li
+{
+ width: 1000px; /* for IE7 */
+}
+
+#compose-attachments li a
+{
+ float: left; /* for IE7 */
+}
+
#messagelist
{
width: inherit;
diff --git a/skins/default/images/abook_toolbar.gif b/skins/classic/images/abook_toolbar.gif
index 2e8f4e259..2e8f4e259 100644
--- a/skins/default/images/abook_toolbar.gif
+++ b/skins/classic/images/abook_toolbar.gif
Binary files differ
diff --git a/skins/default/images/abook_toolbar.png b/skins/classic/images/abook_toolbar.png
index feb95c026..feb95c026 100644
--- a/skins/default/images/abook_toolbar.png
+++ b/skins/classic/images/abook_toolbar.png
Binary files differ
diff --git a/skins/default/images/buttons/add_act.png b/skins/classic/images/buttons/add_act.png
index e94fcd6a0..e94fcd6a0 100644
--- a/skins/default/images/buttons/add_act.png
+++ b/skins/classic/images/buttons/add_act.png
Binary files differ
diff --git a/skins/default/images/buttons/add_pas.png b/skins/classic/images/buttons/add_pas.png
index 9f67c5202..9f67c5202 100644
--- a/skins/default/images/buttons/add_pas.png
+++ b/skins/classic/images/buttons/add_pas.png
Binary files differ
diff --git a/skins/default/images/buttons/add_sel.png b/skins/classic/images/buttons/add_sel.png
index 2a3719fba..2a3719fba 100644
--- a/skins/default/images/buttons/add_sel.png
+++ b/skins/classic/images/buttons/add_sel.png
Binary files differ
diff --git a/skins/default/images/buttons/bg.gif b/skins/classic/images/buttons/bg.gif
index be39f4a35..be39f4a35 100644
--- a/skins/default/images/buttons/bg.gif
+++ b/skins/classic/images/buttons/bg.gif
Binary files differ
diff --git a/skins/default/images/cleardot.png b/skins/classic/images/cleardot.png
index 98c3bfcca..98c3bfcca 100644
--- a/skins/default/images/cleardot.png
+++ b/skins/classic/images/cleardot.png
Binary files differ
diff --git a/skins/default/images/contactpic.png b/skins/classic/images/contactpic.png
index bdb6cdcc0..bdb6cdcc0 100644
--- a/skins/default/images/contactpic.png
+++ b/skins/classic/images/contactpic.png
Binary files differ
diff --git a/skins/default/images/dbutton.png b/skins/classic/images/dbutton.png
index 7a85e3c5d..7a85e3c5d 100644
--- a/skins/default/images/dbutton.png
+++ b/skins/classic/images/dbutton.png
Binary files differ
diff --git a/skins/default/images/dimple.png b/skins/classic/images/dimple.png
index 4de496c87..4de496c87 100644
--- a/skins/default/images/dimple.png
+++ b/skins/classic/images/dimple.png
Binary files differ
diff --git a/skins/default/images/display/icons.gif b/skins/classic/images/display/icons.gif
index e6dfb1bc6..e6dfb1bc6 100644
--- a/skins/default/images/display/icons.gif
+++ b/skins/classic/images/display/icons.gif
Binary files differ
diff --git a/skins/default/images/display/icons.png b/skins/classic/images/display/icons.png
index 7bf4278bf..7bf4278bf 100644
--- a/skins/default/images/display/icons.png
+++ b/skins/classic/images/display/icons.png
Binary files differ
diff --git a/skins/default/images/display/loading.gif b/skins/classic/images/display/loading.gif
index 747c65661..747c65661 100644
--- a/skins/default/images/display/loading.gif
+++ b/skins/classic/images/display/loading.gif
Binary files differ
diff --git a/skins/default/images/display/loading_blue.gif b/skins/classic/images/display/loading_blue.gif
index 2ea6b19ae..2ea6b19ae 100644
--- a/skins/default/images/display/loading_blue.gif
+++ b/skins/classic/images/display/loading_blue.gif
Binary files differ
diff --git a/skins/default/images/favicon.ico b/skins/classic/images/favicon.ico
index b3bd18c12..b3bd18c12 100644
--- a/skins/default/images/favicon.ico
+++ b/skins/classic/images/favicon.ico
Binary files differ
diff --git a/skins/default/images/googiespell/change_lang.gif b/skins/classic/images/googiespell/change_lang.gif
index 81451832c..81451832c 100644
--- a/skins/default/images/googiespell/change_lang.gif
+++ b/skins/classic/images/googiespell/change_lang.gif
Binary files differ
diff --git a/skins/default/images/googiespell/indicator.gif b/skins/classic/images/googiespell/indicator.gif
index b556bb00f..b556bb00f 100644
--- a/skins/default/images/googiespell/indicator.gif
+++ b/skins/classic/images/googiespell/indicator.gif
Binary files differ
diff --git a/skins/default/images/googiespell/ok.gif b/skins/classic/images/googiespell/ok.gif
index 04727e28d..04727e28d 100644
--- a/skins/default/images/googiespell/ok.gif
+++ b/skins/classic/images/googiespell/ok.gif
Binary files differ
diff --git a/skins/default/images/googiespell/spellc.gif b/skins/classic/images/googiespell/spellc.gif
index 6ed936090..6ed936090 100644
--- a/skins/default/images/googiespell/spellc.gif
+++ b/skins/classic/images/googiespell/spellc.gif
Binary files differ
diff --git a/skins/default/images/icons/attachment.png b/skins/classic/images/icons/attachment.png
index 0fcf46499..0fcf46499 100644
--- a/skins/default/images/icons/attachment.png
+++ b/skins/classic/images/icons/attachment.png
Binary files differ
diff --git a/skins/default/images/icons/blank.gif b/skins/classic/images/icons/blank.gif
index 7dd464ea3..7dd464ea3 100644
--- a/skins/default/images/icons/blank.gif
+++ b/skins/classic/images/icons/blank.gif
Binary files differ
diff --git a/skins/default/images/icons/collapsed.png b/skins/classic/images/icons/collapsed.png
index 07cc1ec7d..07cc1ec7d 100644
--- a/skins/default/images/icons/collapsed.png
+++ b/skins/classic/images/icons/collapsed.png
Binary files differ
diff --git a/skins/default/images/icons/columnpicker.gif b/skins/classic/images/icons/columnpicker.gif
index e776519b3..e776519b3 100644
--- a/skins/default/images/icons/columnpicker.gif
+++ b/skins/classic/images/icons/columnpicker.gif
Binary files differ
diff --git a/skins/default/images/icons/delete.png b/skins/classic/images/icons/delete.png
index f1cf0aee7..f1cf0aee7 100644
--- a/skins/default/images/icons/delete.png
+++ b/skins/classic/images/icons/delete.png
Binary files differ
diff --git a/skins/default/images/icons/deleted.png b/skins/classic/images/icons/deleted.png
index cffb7f507..cffb7f507 100644
--- a/skins/default/images/icons/deleted.png
+++ b/skins/classic/images/icons/deleted.png
Binary files differ
diff --git a/skins/default/images/icons/dot.png b/skins/classic/images/icons/dot.png
index 99f736516..99f736516 100644
--- a/skins/default/images/icons/dot.png
+++ b/skins/classic/images/icons/dot.png
Binary files differ
diff --git a/skins/default/images/icons/down_small.gif b/skins/classic/images/icons/down_small.gif
index f865893f4..f865893f4 100644
--- a/skins/default/images/icons/down_small.gif
+++ b/skins/classic/images/icons/down_small.gif
Binary files differ
diff --git a/skins/default/images/icons/expanded.png b/skins/classic/images/icons/expanded.png
index 87e77a477..87e77a477 100644
--- a/skins/default/images/icons/expanded.png
+++ b/skins/classic/images/icons/expanded.png
Binary files differ
diff --git a/skins/default/images/icons/extwin.png b/skins/classic/images/icons/extwin.png
index 1ab4d7703..1ab4d7703 100644
--- a/skins/default/images/icons/extwin.png
+++ b/skins/classic/images/icons/extwin.png
Binary files differ
diff --git a/skins/default/images/icons/flagged.png b/skins/classic/images/icons/flagged.png
index 98215f68c..98215f68c 100644
--- a/skins/default/images/icons/flagged.png
+++ b/skins/classic/images/icons/flagged.png
Binary files differ
diff --git a/skins/default/images/icons/folders.gif b/skins/classic/images/icons/folders.gif
index eb06bd8c1..eb06bd8c1 100644
--- a/skins/default/images/icons/folders.gif
+++ b/skins/classic/images/icons/folders.gif
Binary files differ
diff --git a/skins/default/images/icons/folders.png b/skins/classic/images/icons/folders.png
index 2580fd1be..2580fd1be 100644
--- a/skins/default/images/icons/folders.png
+++ b/skins/classic/images/icons/folders.png
Binary files differ
diff --git a/skins/default/images/icons/forwarded.png b/skins/classic/images/icons/forwarded.png
index 1ea246f8e..1ea246f8e 100644
--- a/skins/default/images/icons/forwarded.png
+++ b/skins/classic/images/icons/forwarded.png
Binary files differ
diff --git a/skins/default/images/icons/forwarded_replied.png b/skins/classic/images/icons/forwarded_replied.png
index 4830ecf40..4830ecf40 100644
--- a/skins/default/images/icons/forwarded_replied.png
+++ b/skins/classic/images/icons/forwarded_replied.png
Binary files differ
diff --git a/skins/default/images/icons/glass.gif b/skins/classic/images/icons/glass.gif
index 9a705b410..9a705b410 100644
--- a/skins/default/images/icons/glass.gif
+++ b/skins/classic/images/icons/glass.gif
Binary files differ
diff --git a/skins/default/images/icons/glass.png b/skins/classic/images/icons/glass.png
index eb1b1dc74..eb1b1dc74 100644
--- a/skins/default/images/icons/glass.png
+++ b/skins/classic/images/icons/glass.png
Binary files differ
diff --git a/skins/default/images/icons/glass_roll.png b/skins/classic/images/icons/glass_roll.png
index b11b59854..b11b59854 100644
--- a/skins/default/images/icons/glass_roll.png
+++ b/skins/classic/images/icons/glass_roll.png
Binary files differ
diff --git a/skins/classic/images/icons/groupactions.gif b/skins/classic/images/icons/groupactions.gif
new file mode 100644
index 000000000..913c83588
--- /dev/null
+++ b/skins/classic/images/icons/groupactions.gif
Binary files differ
diff --git a/skins/classic/images/icons/groupactions.png b/skins/classic/images/icons/groupactions.png
new file mode 100644
index 000000000..91f84bee9
--- /dev/null
+++ b/skins/classic/images/icons/groupactions.png
Binary files differ
diff --git a/skins/default/images/icons/minus.gif b/skins/classic/images/icons/minus.gif
index 4ec02c87a..4ec02c87a 100644
--- a/skins/default/images/icons/minus.gif
+++ b/skins/classic/images/icons/minus.gif
Binary files differ
diff --git a/skins/default/images/icons/plus.gif b/skins/classic/images/icons/plus.gif
index 854b5eb34..854b5eb34 100644
--- a/skins/default/images/icons/plus.gif
+++ b/skins/classic/images/icons/plus.gif
Binary files differ
diff --git a/skins/default/images/icons/rename.png b/skins/classic/images/icons/rename.png
index 7844b0081..7844b0081 100644
--- a/skins/default/images/icons/rename.png
+++ b/skins/classic/images/icons/rename.png
Binary files differ
diff --git a/skins/default/images/icons/replied.png b/skins/classic/images/icons/replied.png
index 4a5213262..4a5213262 100644
--- a/skins/default/images/icons/replied.png
+++ b/skins/classic/images/icons/replied.png
Binary files differ
diff --git a/skins/default/images/icons/reset.gif b/skins/classic/images/icons/reset.gif
index a9a53d569..a9a53d569 100644
--- a/skins/default/images/icons/reset.gif
+++ b/skins/classic/images/icons/reset.gif
Binary files differ
diff --git a/skins/default/images/icons/silhouette.png b/skins/classic/images/icons/silhouette.png
index ac0773514..ac0773514 100644
--- a/skins/default/images/icons/silhouette.png
+++ b/skins/classic/images/icons/silhouette.png
Binary files differ
diff --git a/skins/default/images/icons/sort.gif b/skins/classic/images/icons/sort.gif
index f8f275690..f8f275690 100644
--- a/skins/default/images/icons/sort.gif
+++ b/skins/classic/images/icons/sort.gif
Binary files differ
diff --git a/skins/default/images/icons/unflagged.png b/skins/classic/images/icons/unflagged.png
index 12023f057..12023f057 100644
--- a/skins/default/images/icons/unflagged.png
+++ b/skins/classic/images/icons/unflagged.png
Binary files differ
diff --git a/skins/default/images/icons/unread.png b/skins/classic/images/icons/unread.png
index 31f640632..31f640632 100644
--- a/skins/default/images/icons/unread.png
+++ b/skins/classic/images/icons/unread.png
Binary files differ
diff --git a/skins/default/images/icons/unread_children.png b/skins/classic/images/icons/unread_children.png
index 45e671dcc..45e671dcc 100644
--- a/skins/default/images/icons/unread_children.png
+++ b/skins/classic/images/icons/unread_children.png
Binary files differ
diff --git a/skins/default/images/icons/up_small.gif b/skins/classic/images/icons/up_small.gif
index 40deb891f..40deb891f 100644
--- a/skins/default/images/icons/up_small.gif
+++ b/skins/classic/images/icons/up_small.gif
Binary files differ
diff --git a/skins/default/images/listheader.gif b/skins/classic/images/listheader.gif
index bf77a11c1..bf77a11c1 100644
--- a/skins/default/images/listheader.gif
+++ b/skins/classic/images/listheader.gif
Binary files differ
diff --git a/skins/default/images/mail_footer.gif b/skins/classic/images/mail_footer.gif
index 302b55870..302b55870 100644
--- a/skins/default/images/mail_footer.gif
+++ b/skins/classic/images/mail_footer.gif
Binary files differ
diff --git a/skins/default/images/mail_footer.png b/skins/classic/images/mail_footer.png
index e2f24b28c..e2f24b28c 100644
--- a/skins/default/images/mail_footer.png
+++ b/skins/classic/images/mail_footer.png
Binary files differ
diff --git a/skins/default/images/mail_toolbar.gif b/skins/classic/images/mail_toolbar.gif
index 9856b4265..9856b4265 100644
--- a/skins/default/images/mail_toolbar.gif
+++ b/skins/classic/images/mail_toolbar.gif
Binary files differ
diff --git a/skins/default/images/mail_toolbar.png b/skins/classic/images/mail_toolbar.png
index 6ccc9bd9e..6ccc9bd9e 100644
--- a/skins/default/images/mail_toolbar.png
+++ b/skins/classic/images/mail_toolbar.png
Binary files differ
diff --git a/skins/default/images/messageactions.gif b/skins/classic/images/messageactions.gif
index b73fbb354..b73fbb354 100644
--- a/skins/default/images/messageactions.gif
+++ b/skins/classic/images/messageactions.gif
Binary files differ
diff --git a/skins/default/images/messageactions.png b/skins/classic/images/messageactions.png
index c09f60fe6..c09f60fe6 100644
--- a/skins/default/images/messageactions.png
+++ b/skins/classic/images/messageactions.png
Binary files differ
diff --git a/skins/default/images/messageicons.gif b/skins/classic/images/messageicons.gif
index a914a955a..a914a955a 100644
--- a/skins/default/images/messageicons.gif
+++ b/skins/classic/images/messageicons.gif
Binary files differ
diff --git a/skins/default/images/messageicons.png b/skins/classic/images/messageicons.png
index ca7b23075..ca7b23075 100644
--- a/skins/default/images/messageicons.png
+++ b/skins/classic/images/messageicons.png
Binary files differ
diff --git a/skins/default/images/pagenav.gif b/skins/classic/images/pagenav.gif
index a4644a4e4..a4644a4e4 100644
--- a/skins/default/images/pagenav.gif
+++ b/skins/classic/images/pagenav.gif
Binary files differ
diff --git a/skins/default/images/quota-colors.png b/skins/classic/images/quota-colors.png
index 4c1f17edd..4c1f17edd 100644
--- a/skins/default/images/quota-colors.png
+++ b/skins/classic/images/quota-colors.png
Binary files differ
diff --git a/skins/default/images/quota.gif b/skins/classic/images/quota.gif
index 9896d4cae..9896d4cae 100644
--- a/skins/default/images/quota.gif
+++ b/skins/classic/images/quota.gif
Binary files differ
diff --git a/skins/default/images/quota.png b/skins/classic/images/quota.png
index e729d3248..e729d3248 100644
--- a/skins/default/images/quota.png
+++ b/skins/classic/images/quota.png
Binary files differ
diff --git a/skins/default/images/roundcube_logo.png b/skins/classic/images/roundcube_logo.png
index 4323c6b5f..4323c6b5f 100644
--- a/skins/default/images/roundcube_logo.png
+++ b/skins/classic/images/roundcube_logo.png
Binary files differ
diff --git a/skins/default/images/searchfield.gif b/skins/classic/images/searchfield.gif
index 969f277b3..969f277b3 100644
--- a/skins/default/images/searchfield.gif
+++ b/skins/classic/images/searchfield.gif
Binary files differ
diff --git a/skins/default/images/tabs-left.gif b/skins/classic/images/tabs-left.gif
index c1bf45aa8..c1bf45aa8 100644
--- a/skins/default/images/tabs-left.gif
+++ b/skins/classic/images/tabs-left.gif
Binary files differ
diff --git a/skins/default/images/tabs-right.gif b/skins/classic/images/tabs-right.gif
index 9eba9a342..9eba9a342 100644
--- a/skins/default/images/tabs-right.gif
+++ b/skins/classic/images/tabs-right.gif
Binary files differ
diff --git a/skins/default/images/taskbar.gif b/skins/classic/images/taskbar.gif
index b6fc91ce4..b6fc91ce4 100644
--- a/skins/default/images/taskbar.gif
+++ b/skins/classic/images/taskbar.gif
Binary files differ
diff --git a/skins/default/images/taskbar.png b/skins/classic/images/taskbar.png
index 5fa366023..5fa366023 100644
--- a/skins/default/images/taskbar.png
+++ b/skins/classic/images/taskbar.png
Binary files differ
diff --git a/skins/default/images/taskicons.gif b/skins/classic/images/taskicons.gif
index feaa9a14e..feaa9a14e 100644
--- a/skins/default/images/taskicons.gif
+++ b/skins/classic/images/taskicons.gif
Binary files differ
diff --git a/skins/default/images/taskicons.png b/skins/classic/images/taskicons.png
index feaa9a14e..feaa9a14e 100644
--- a/skins/default/images/taskicons.png
+++ b/skins/classic/images/taskicons.png
Binary files differ
diff --git a/skins/default/images/tree.gif b/skins/classic/images/tree.gif
index c78f15ef5..c78f15ef5 100644
--- a/skins/default/images/tree.gif
+++ b/skins/classic/images/tree.gif
Binary files differ
diff --git a/skins/default/images/watermark.gif b/skins/classic/images/watermark.gif
index d235d0306..d235d0306 100644
--- a/skins/default/images/watermark.gif
+++ b/skins/classic/images/watermark.gif
Binary files differ
diff --git a/skins/default/includes/header.html b/skins/classic/includes/header.html
index 08d777af0..08d777af0 100644
--- a/skins/default/includes/header.html
+++ b/skins/classic/includes/header.html
diff --git a/skins/default/includes/links.html b/skins/classic/includes/links.html
index 82673220a..82673220a 100644
--- a/skins/default/includes/links.html
+++ b/skins/classic/includes/links.html
diff --git a/skins/default/includes/messagetoolbar.html b/skins/classic/includes/messagetoolbar.html
index 3f4995b83..3f4995b83 100644
--- a/skins/default/includes/messagetoolbar.html
+++ b/skins/classic/includes/messagetoolbar.html
diff --git a/skins/default/includes/settingstabs.html b/skins/classic/includes/settingstabs.html
index 0aea80b67..0aea80b67 100644
--- a/skins/default/includes/settingstabs.html
+++ b/skins/classic/includes/settingstabs.html
diff --git a/skins/default/includes/taskbar.html b/skins/classic/includes/taskbar.html
index dfb547b88..dfb547b88 100644
--- a/skins/default/includes/taskbar.html
+++ b/skins/classic/includes/taskbar.html
diff --git a/skins/default/mail.css b/skins/classic/mail.css
index 0e928f0e8..c38d7448c 100644
--- a/skins/default/mail.css
+++ b/skins/classic/mail.css
@@ -1173,6 +1173,7 @@ div.message-part div.pre
margin: 0px;
padding: 0px;
font-family: monospace;
+ font-size: 12px;
white-space: -moz-pre-wrap !important;
white-space: pre-wrap !important;
white-space: pre;
@@ -1481,11 +1482,10 @@ input.from_address
#compose-attachments li a
{
- text-indent: -1000px;
+ text-indent: -5000px;
width: 17px;
height: 16px;
- display: block;
- float: left;
+ display: inline-block;
text-decoration: none;
}
diff --git a/skins/default/pngbehavior.htc b/skins/classic/pngbehavior.htc
index fb5f1c8d4..6f892df64 100644
--- a/skins/default/pngbehavior.htc
+++ b/skins/classic/pngbehavior.htc
@@ -24,7 +24,7 @@
var supported = /MSIE ((5\.5)|6)/.test(navigator.userAgent) && navigator.platform == "Win32",
realSrc,
- blankSrc = "skins/default/images/blank.gif",
+ blankSrc = "program/resources/blank.gif",
isPrinting = false;
if (supported) fixImage();
diff --git a/skins/default/print.css b/skins/classic/print.css
index 129770d25..129770d25 100644
--- a/skins/default/print.css
+++ b/skins/classic/print.css
diff --git a/skins/default/safari.css b/skins/classic/safari.css
index a1be85ab4..a1be85ab4 100644
--- a/skins/default/safari.css
+++ b/skins/classic/safari.css
diff --git a/skins/default/settings.css b/skins/classic/settings.css
index c6d4628f9..24c4382b5 100644
--- a/skins/default/settings.css
+++ b/skins/classic/settings.css
@@ -134,14 +134,14 @@ body.iframe,
#formfooter .footerleft
{
- padding-left: 15px;
+ padding: 0 2px 10px;
white-space: nowrap;
float: left;
}
#formfooter .footerright
{
- padding-right: 15px;
+ padding: 0 2px 10px;
white-space: nowrap;
text-align: right;
float: right;
diff --git a/skins/default/splitter.js b/skins/classic/splitter.js
index 59ebb5151..59ebb5151 100644
--- a/skins/default/splitter.js
+++ b/skins/classic/splitter.js
diff --git a/skins/default/templates/about.html b/skins/classic/templates/about.html
index f51180699..f51180699 100644
--- a/skins/default/templates/about.html
+++ b/skins/classic/templates/about.html
diff --git a/skins/default/templates/addressbook.html b/skins/classic/templates/addressbook.html
index d77bb38d9..d77bb38d9 100644
--- a/skins/default/templates/addressbook.html
+++ b/skins/classic/templates/addressbook.html
diff --git a/skins/default/templates/compose.html b/skins/classic/templates/compose.html
index caebf31a0..caebf31a0 100644
--- a/skins/default/templates/compose.html
+++ b/skins/classic/templates/compose.html
diff --git a/skins/default/templates/contact.html b/skins/classic/templates/contact.html
index d74a78b27..d74a78b27 100644
--- a/skins/default/templates/contact.html
+++ b/skins/classic/templates/contact.html
diff --git a/skins/default/templates/contactadd.html b/skins/classic/templates/contactadd.html
index 67b7bcd6e..05cc8aa82 100644
--- a/skins/default/templates/contactadd.html
+++ b/skins/classic/templates/contactadd.html
@@ -33,6 +33,7 @@
</div>
<roundcube:object name="photoUploadForm" id="upload-form" size="30" class="popupmenu" />
+<roundcube:object name="fileDropArea" id="contactpic" />
<script type="text/javascript">rcube_init_tabs('contacttabs')</script>
diff --git a/skins/default/templates/contactedit.html b/skins/classic/templates/contactedit.html
index 77e466141..db8599ac6 100644
--- a/skins/default/templates/contactedit.html
+++ b/skins/classic/templates/contactedit.html
@@ -22,7 +22,6 @@
</div>
<roundcube:object name="contactedithead" id="contacthead" size="16" form="editform" />
<div style="clear:both"></div>
-
<div id="contacttabs">
<roundcube:object name="contacteditform" size="40" textareacols="60" deleteIcon="/images/icons/delete.png" form="editform" />
</div>
@@ -34,6 +33,7 @@
</div>
<roundcube:object name="photoUploadForm" id="upload-form" size="30" class="popupmenu" />
+<roundcube:object name="fileDropArea" id="contactpic" />
<script type="text/javascript">rcube_init_tabs('contacttabs')</script>
diff --git a/skins/default/templates/contactsearch.html b/skins/classic/templates/contactsearch.html
index 23cbec4cb..23cbec4cb 100644
--- a/skins/default/templates/contactsearch.html
+++ b/skins/classic/templates/contactsearch.html
diff --git a/skins/default/templates/error.html b/skins/classic/templates/error.html
index fdd7c887b..fdd7c887b 100644
--- a/skins/default/templates/error.html
+++ b/skins/classic/templates/error.html
diff --git a/skins/default/templates/folderedit.html b/skins/classic/templates/folderedit.html
index c5fa2490f..28b9a5507 100644
--- a/skins/default/templates/folderedit.html
+++ b/skins/classic/templates/folderedit.html
@@ -11,12 +11,14 @@
<div id="folder-details" class="boxcontent">
<roundcube:object name="folderdetails" />
- <p>
- <roundcube:if condition="!strlen(request:_mbox)" />
- <input type="button" value="<roundcube:label name="cancel" />" class="button" onclick="history.back()" />&nbsp;
- <roundcube:endif />
- <roundcube:button command="save" type="input" class="button mainaction" label="save" />
- </p>
+ <div id="formfooter">
+ <div class="footerleft">
+ <roundcube:if condition="!strlen(request:_mbox)" />
+ <input type="button" value="<roundcube:label name="cancel" />" class="button" onclick="history.back()" />&nbsp;
+ <roundcube:endif />
+ <roundcube:button command="save" type="input" class="button mainaction" label="save" />
+ </div>
+ </div>
</div>
<script type="text/javascript">rcube_init_tabs('folder-details > form')</script>
diff --git a/skins/default/templates/folders.html b/skins/classic/templates/folders.html
index 1ae8809ec..1ae8809ec 100644
--- a/skins/default/templates/folders.html
+++ b/skins/classic/templates/folders.html
diff --git a/skins/default/templates/identities.html b/skins/classic/templates/identities.html
index 70484ebe9..464afd545 100644
--- a/skins/default/templates/identities.html
+++ b/skins/classic/templates/identities.html
@@ -27,7 +27,7 @@
<roundcube:object name="identitiesList" id="identities-table" class="records-table" cellspacing="0" summary="Identities list" noheader="true" editIcon="" />
</div>
<div class="boxfooter">
-<roundcube:button command="add" type="link" title="newidentity" class="buttonPas addgroup" classAct="button addgroup" content=" " condition="config:identities_level:0<2" />
+<roundcube:button command="add" type="link" title="newidentity" class="buttonPas addgroup" classAct="button addgroup" content=" " condition="config:identities_level:0<2" /><roundcube:button command="delete" type="link" title="delete" class="buttonPas delgroup" classAct="button delgroup" content=" " condition="config:identities_level:0<2" />
</div>
</div>
diff --git a/skins/default/templates/identityedit.html b/skins/classic/templates/identityedit.html
index 3aaa7bc1d..3b33752ca 100644
--- a/skins/default/templates/identityedit.html
+++ b/skins/classic/templates/identityedit.html
@@ -18,14 +18,15 @@
<div id="identity-title" class="boxtitle"><roundcube:object name="steptitle" /></div>
<div id="identity-details" class="boxcontent">
-<roundcube:object name="identityform" id="identity-form" size="40" textareacols="70" textarearows="6" />
-<script type="text/javascript">rcube_init_tabs('identity-form')</script>
+ <roundcube:object name="identityform" id="identity-form" size="40" textareacols="70" textarearows="6" />
-<div id="formfooter">
-<div class="footerleft">
- <roundcube:button command="save" type="input" class="button mainaction" label="save" />
-</div>
-</div>
+ <script type="text/javascript">rcube_init_tabs('identity-form')</script>
+
+ <div id="formfooter">
+ <div class="footerleft">
+ <roundcube:button command="save" type="input" class="button mainaction" label="save" />
+ </div>
+ </div>
</div>
</body>
diff --git a/skins/default/templates/importcontacts.html b/skins/classic/templates/importcontacts.html
index 05c7eb7b7..05c7eb7b7 100644
--- a/skins/default/templates/importcontacts.html
+++ b/skins/classic/templates/importcontacts.html
diff --git a/skins/default/templates/login.html b/skins/classic/templates/login.html
index db5771fb1..63e09bb10 100644
--- a/skins/default/templates/login.html
+++ b/skins/classic/templates/login.html
@@ -25,7 +25,7 @@
</div>
<div id="login-bottomline">
- Roundcube Webmail <roundcube:object name="version" />
+ <roundcube:var name="config:product_name"> <roundcube:object name="version" condition="config:display_version" />
<roundcube:if condition="config:support_url" />
&nbsp;&#9679;&nbsp; <a href="<roundcube:var name='config:support_url' />" target="_blank" class="support-link"><roundcube:label name="support" /></a>
<roundcube:endif />
diff --git a/skins/default/templates/mail.html b/skins/classic/templates/mail.html
index 74e984719..74e984719 100644
--- a/skins/default/templates/mail.html
+++ b/skins/classic/templates/mail.html
diff --git a/skins/default/templates/message.html b/skins/classic/templates/message.html
index 714540b78..714540b78 100644
--- a/skins/default/templates/message.html
+++ b/skins/classic/templates/message.html
diff --git a/skins/default/templates/messageerror.html b/skins/classic/templates/messageerror.html
index 9af45f432..9af45f432 100644
--- a/skins/default/templates/messageerror.html
+++ b/skins/classic/templates/messageerror.html
diff --git a/skins/default/templates/messagepart.html b/skins/classic/templates/messagepart.html
index ce7dbe2e1..ce7dbe2e1 100644
--- a/skins/default/templates/messagepart.html
+++ b/skins/classic/templates/messagepart.html
diff --git a/skins/default/templates/messagepreview.html b/skins/classic/templates/messagepreview.html
index a606311e1..a606311e1 100644
--- a/skins/default/templates/messagepreview.html
+++ b/skins/classic/templates/messagepreview.html
diff --git a/skins/default/templates/messageprint.html b/skins/classic/templates/messageprint.html
index fa7822ad5..fa7822ad5 100644
--- a/skins/default/templates/messageprint.html
+++ b/skins/classic/templates/messageprint.html
diff --git a/skins/default/templates/plugin.html b/skins/classic/templates/plugin.html
index cec701301..cec701301 100644
--- a/skins/default/templates/plugin.html
+++ b/skins/classic/templates/plugin.html
diff --git a/skins/default/templates/settings.html b/skins/classic/templates/settings.html
index 0cd623f75..0cd623f75 100644
--- a/skins/default/templates/settings.html
+++ b/skins/classic/templates/settings.html
diff --git a/skins/default/templates/settingsedit.html b/skins/classic/templates/settingsedit.html
index ec980a8f0..642eb094e 100644
--- a/skins/default/templates/settingsedit.html
+++ b/skins/classic/templates/settingsedit.html
@@ -10,13 +10,12 @@
<div id="prefs-title" class="boxtitle"><roundcube:object name="sectionname" /></div>
<div id="prefs-details" class="boxcontent">
-<roundcube:object name="userprefs" form="form" />
-</div>
-
-<div id="formfooter">
-<div class="footerleft">
-<roundcube:button command="save" type="input" class="button mainaction" label="save" />
-</div>
+ <roundcube:object name="userprefs" form="form" />
+ <div id="formfooter">
+ <div class="footerleft">
+ <roundcube:button command="save" type="input" class="button mainaction" label="save" />
+ </div>
+ </div>
</div>
</body>
diff --git a/skins/default/watermark.html b/skins/classic/watermark.html
index c16a50357..c16a50357 100644
--- a/skins/default/watermark.html
+++ b/skins/classic/watermark.html
diff --git a/skins/default/images/icons/groupactions.gif b/skins/default/images/icons/groupactions.gif
deleted file mode 100644
index 15649045e..000000000
--- a/skins/default/images/icons/groupactions.gif
+++ /dev/null
Binary files differ
diff --git a/skins/default/images/icons/groupactions.png b/skins/default/images/icons/groupactions.png
deleted file mode 100644
index 9e39bca2e..000000000
--- a/skins/default/images/icons/groupactions.png
+++ /dev/null
Binary files differ
diff --git a/skins/larry/addressbook.css b/skins/larry/addressbook.css
index 46b4949da..fe087aece 100644
--- a/skins/larry/addressbook.css
+++ b/skins/larry/addressbook.css
@@ -18,6 +18,7 @@
left: 0;
width: 220px;
bottom: 0;
+ z-index: 2;
}
#addressview-right {
@@ -26,15 +27,17 @@
left: 232px;
right: 0;
bottom: 0;
+ z-index: 3;
}
#addressbooktoolbar {
position: absolute;
top: -6px;
left: 0;
- right: 0;
+ right: 260px;
height: 40px;
white-space: nowrap;
+ z-index: 10;
}
#directorylistbox {
@@ -67,7 +70,9 @@
#directorylist li a,
#contacts-table .contact td.name {
- background: url(images/listicons.png) -100px 0 no-repeat;
+ background-image: url(images/listicons.png);
+ background-position: -100px 0;
+ background-repeat: no-repeat;
overflow: hidden;
padding-left: 36px;
text-overflow: ellipsis;
@@ -158,6 +163,29 @@
#contactpic img {
width: 112px;
+ visibility: inherit;
+}
+
+#contactpic.droptarget {
+ background-image: url(images/filedrop.png);
+ background-position: center;
+ background-repeat: no-repeat;
+}
+
+#contactpic.droptarget.hover {
+ background-color: #d9ecf4;
+ box-shadow: 0 0 5px 2px rgba(71,135,177, 0.9);
+ -moz-box-shadow: 0 0 5px 2px rgba(71,135,177, 0.9);
+ -webkit-box-shadow: 0 0 5px 2px rgba(71,135,177, 0.9);
+ -o-box-shadow: 0 0 5px 2px rgba(71,135,177, 0.9);
+}
+
+#contactpic.droptarget.active img {
+ opacity: 0.15;
+}
+
+#contactpic.droptarget.hover img {
+ opacity: 0.05;
}
#contacthead {
@@ -289,6 +317,6 @@ a.deletebutton {
width: 24px;
height: 18px;
text-decoration: none;
- text-indent: -1000px;
+ text-indent: -5000px;
background: url(images/buttons.png) -7px -377px no-repeat;
}
diff --git a/skins/larry/ie7hacks.css b/skins/larry/ie7hacks.css
index f86cbe8aa..6161d03dd 100644
--- a/skins/larry/ie7hacks.css
+++ b/skins/larry/ie7hacks.css
@@ -44,6 +44,10 @@ a.deletebutton,
display: inline;
}
+.pagenavbuttons {
+ top: 4px;
+}
+
.dropbutton .dropbuttontip {
right: -2px;
}
@@ -113,7 +117,7 @@ ul.toolbarmenu li label {
#quicksearchbar input {
padding-top: 4px;
- padding-bottom: 4px;
+ padding-bottom: 2px;
}
#messagelistfooter #listcontrols,
diff --git a/skins/larry/iehacks.css b/skins/larry/iehacks.css
index 38d68acdd..288202111 100644
--- a/skins/larry/iehacks.css
+++ b/skins/larry/iehacks.css
@@ -131,6 +131,10 @@ ul.toolbarmenu li a.active:hover,
/*** mail.css ***/
+#messagelistfooter {
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ebebeb', endColorstr='#c6c6c6', GradientType=0);
+}
+
#mailboxlist li.mailbox .unreadcount {
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#82acb5', endColorstr='#6a939f', GradientType=0);
}
@@ -143,6 +147,10 @@ ul.toolbarmenu li a.active:hover,
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e9e9e9', GradientType=0);
}
+#previewheaderstoggle {
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fbfbfb', endColorstr='#e9e9e9', GradientType=1);
+}
+
#composeoptionsbox {
border-top: 1px solid #999;
}
diff --git a/skins/larry/images/contactpic_32px.png b/skins/larry/images/contactpic_32px.png
new file mode 100644
index 000000000..276f1974f
--- /dev/null
+++ b/skins/larry/images/contactpic_32px.png
Binary files differ
diff --git a/skins/larry/images/listicons.png b/skins/larry/images/listicons.png
index e1378878b..9554658b6 100644
--- a/skins/larry/images/listicons.png
+++ b/skins/larry/images/listicons.png
Binary files differ
diff --git a/skins/larry/images/overflowshadow.png b/skins/larry/images/overflowshadow.png
new file mode 100644
index 000000000..54dfdafce
--- /dev/null
+++ b/skins/larry/images/overflowshadow.png
Binary files differ
diff --git a/skins/larry/includes/footer.html b/skins/larry/includes/footer.html
index 4a6f8f09c..ee93fcf57 100644
--- a/skins/larry/includes/footer.html
+++ b/skins/larry/includes/footer.html
@@ -3,7 +3,7 @@
// UI startup
var UI = new rcube_mail_ui();
$(document).ready(function(){
- UI.set('errortitle', '<roundcube:label name="errortitle" />');
+ UI.set('errortitle', '<roundcube:label name="errortitle" quoting="javascript" />');
UI.init();
});
diff --git a/skins/larry/includes/mailtoolbar.html b/skins/larry/includes/mailtoolbar.html
index 317ff15dd..f750e061a 100644
--- a/skins/larry/includes/mailtoolbar.html
+++ b/skins/larry/includes/mailtoolbar.html
@@ -1,18 +1,11 @@
-<div id="mailtoolbar" class="toolbar">
-<roundcube:if condition="template:name == 'message'" />
-<roundcube:button command="list" type="link" class="button back disabled" classAct="button back" classSel="button back pressed" label="back" />
-<roundcube:else />
-<roundcube:button command="checkmail" type="link" class="button checkmail disabled" classAct="button checkmail" classSel="button checkmail pressed" label="refresh" title="checkmail" />
-<roundcube:button command="compose" type="link" class="button compose disabled" classAct="button compose" classSel="button compose pressed" label="compose" title="writenewmessage" />
-<roundcube:endif />
<roundcube:button command="reply" type="link" class="button reply disabled" classAct="button reply" classSel="button reply pressed" label="reply" title="replytomessage" />
<span class="dropbutton">
-<roundcube:button command="reply-all" type="link" class="button reply-all disabled" classAct="button reply-all" classSel="button reply-all pressed" label="replyall" title="replytoallmessage" />
-<span class="dropbuttontip" id="replyallmenulink" onclick="UI.show_popup('replyallmenu');return false"></span>
+ <roundcube:button command="reply-all" type="link" class="button reply-all disabled" classAct="button reply-all" classSel="button reply-all pressed" label="replyall" title="replytoallmessage" />
+ <span class="dropbuttontip" id="replyallmenulink" onclick="UI.show_popup('replyallmenu');return false"></span>
</span>
<span class="dropbutton">
-<roundcube:button command="forward" type="link" class="button forward disabled" classAct="button forward" classSel="button forward pressed" label="forward" title="forwardmessage" />
-<span class="dropbuttontip" id="forwardmenulink" onclick="UI.show_popup('forwardmenu');return false"></span>
+ <roundcube:button command="forward" type="link" class="button forward disabled" classAct="button forward" classSel="button forward pressed" label="forward" title="forwardmessage" />
+ <span class="dropbuttontip" id="forwardmenulink" onclick="UI.show_popup('forwardmenu');return false"></span>
</span>
<roundcube:button command="delete" type="link" class="button delete disabled" classAct="button delete" classSel="button delete pressed" label="delete" title="deletemessage" />
<roundcube:if condition="template:name == 'message'" />
@@ -23,7 +16,6 @@
<roundcube:button name="markmenulink" id="markmessagemenulink" type="link" class="button markmessage" label="mark" title="markmessages" onclick="UI.show_popup('markmessagemenu');return false" />
<roundcube:endif />
<roundcube:button name="messagemenulink" id="messagemenulink" type="link" class="button more" label="more" title="moreactions" onclick="UI.show_popup('messagemenu');return false" />
-</div>
<div id="forwardmenu" class="popupmenu">
<ul class="toolbarmenu">
diff --git a/skins/larry/mail.css b/skins/larry/mail.css
index ab87cd865..695697f6b 100644
--- a/skins/larry/mail.css
+++ b/skins/larry/mail.css
@@ -18,6 +18,7 @@
left: 0;
width: 220px;
bottom: 0;
+ z-index: 2;
}
#mailview-right {
@@ -26,6 +27,7 @@
left: 232px;
right: 0;
bottom: 0;
+ z-index: 3;
}
#mailview-top {
@@ -36,6 +38,10 @@
bottom: 28px;
}
+#mailview-top.fullheight {
+ border-radius: 4px 4px 0 0;
+}
+
#mailview-bottom {
position: absolute;
left: 0;
@@ -44,12 +50,6 @@
height: 26px;
}
-#mailviewsplitter {
- right: 30px;
- width: 30px;
- left: auto !important;
-}
-
#folderlist-header {
width: 100%;
height: 12px;
@@ -67,7 +67,7 @@
#messagelistcontainer {
top: 0;
- bottom: 32px;
+ bottom: 30px;
overflow: auto;
}
@@ -76,8 +76,20 @@
bottom: 0;
left: 0;
right: 0;
- height: 26px;
- padding: 2px;
+ height: 22px;
+ padding: 4px 6px;
+ border-top: 1px solid #ddd;
+ background: #ebebeb;
+ background: -moz-linear-gradient(top, #ebebeb 0%, #c6c6c6 100%);
+ background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ebebeb), color-stop(100%,#c6c6c6));
+ background: -o-linear-gradient(top, #ebebeb 0%, #c6c6c6 100%);
+ background: -ms-linear-gradient(top, #ebebeb 0%, #c6c6c6 100%);
+ background: linear-gradient(top, #ebebeb 0%, #c6c6c6 100%);
+ border-radius: 0 0 4px 4px;
+}
+
+#mailview-top.fullheight #messagelistfooter {
+ border-radius: 0;
}
#messagelistfooter.rightalign {
@@ -92,6 +104,11 @@
#messagelistfooter #listselectors {
display: inline-block;
margin-right: 2em;
+ vertical-align: middle;
+}
+
+#messagelistfooter #listselectors .menuselector {
+ margin-top: -2px;
}
a.iconbutton.listmode {
@@ -301,7 +318,14 @@ a.iconbutton.threadmode.selected {
}
#searchfilter {
- width: 16em;
+ position: absolute;
+ right: 256px;
+ width: auto;
+ top: 7px;
+}
+
+#searchfilter select {
+ height: 26px;
}
#mailview-left select.mailboxlist {
@@ -313,25 +337,35 @@ a.iconbutton.threadmode.selected {
#messagetoolbar {
position: absolute;
top: -6px;
- right: 0;
- left: 15em;
+ right: 390px;
+ left: 0;
height: 40px;
white-space: nowrap;
+ z-index: 10;
}
#messagetoolbar.fullwidth {
- left: 0;
+ right: 0;
}
-#mailtoolbar {
- text-align: right;
+#messagetoolbar .toolbarselect {
+ position: absolute;
+ bottom: 6px;
+ right: 3px;
+}
+
+#messagesearchtools {
+ position: absolute;
+ right: 0;
+ top: 0;
+ width: 240px;
}
#mailpreviewtoggle {
display: block;
position: absolute;
- top: 4px;
- right: 2px;
+ top: 6px;
+ right: 4px;
width: 20px;
height: 18px;
background: url(images/buttons.png) -3px -458px no-repeat;
@@ -344,6 +378,14 @@ a.iconbutton.threadmode.selected {
/*** message list ***/
+#messagelist thead td:first-child {
+ border-radius: 4px 0 0 0;
+}
+
+#messagelist thead td:last-child {
+ border-radius: 0 4px 0 0;
+}
+
#messagelist tr td.attachment,
#messagelist tr td.threads,
#messagelist tr td.status,
@@ -482,28 +524,29 @@ a.iconbutton.threadmode.selected {
#messagelist tbody tr td.attachment span.attachment {
background-position: 0 -996px;
}
+
#messagelist thead tr td.attachment span.attachment {
background-position: -24px -997px;
}
-#messagelist tr td.priority {
- padding-right: 0;
+#messagelist tbody tr td.attachment span.report {
+ background-position: -24px -1116px;
}
#messagelist tr td.priority span.prio5 {
- background-position: right -1905px;
+ background-position: 0 -1905px;
}
#messagelist tr td.priority span.prio4 {
- background-position: right -1885px;
+ background-position: 0 -1885px;
}
#messagelist tr td.priority span.prio2 {
- background-position: right -1865px;
+ background-position: 0 -1865px;
}
#messagelist tr td.priority span.prio1 {
- background-position: right -1845px;
+ background-position: 0 -1845px;
}
#messagelist tbody tr td.flag span.flagged {
@@ -714,29 +757,47 @@ h3.subject {
display: none;
}
+#preview-allheaders td.header-title,
#preview-shortheaders td.header-title {
- padding-right: 0;
+ padding-left: 0;
}
#preview-shortheaders td.header {
- padding-right: 12px;
+ padding-right: 18px;
}
#previewheaderstoggle {
- width: 16px;
- height: 16px;
- padding: 0;
- margin-top: 5px;
- position: absolute;
- outline: none;
+ display: block;
+ position: absolute;
+ top: 0;
+ left: 0;
+ bottom: 0;
+ width: 18px;
+ padding: 0;
+ outline: none;
+ background: #f2f2f2;
+ background: -moz-linear-gradient(left, #fbfbfb 0, #e9e9e9 100%);
+ background: -webkit-gradient(linear, left top, right top, color-stop(0,#fbfbfb), color-stop(100%,#e9e9e9));
+ background: -o-linear-gradient(left, #fbfbfb 0, #e9e9e9 100%);
+ background: -ms-linear-gradient(left, #fbfbfb 0, #e9e9e9 100%);
+ background: linear-gradient(left, #fbfbfb 0, #e9e9e9 100%);
+ border-right: 1px solid #dfdfdf;
}
-#previewheaderstoggle.iconlink.add {
- background-position: -32px -227px;
+#previewheaderstoggle .iconlink {
+ display: inline-block;
+ position: absolute;
+ top: 8px;
+ left: 0;
+ width: 18px;
+ height: 16px;
+ background: url(images/buttons.png) -27px -242px no-repeat;
}
-#previewheaderstoggle.iconlink.remove {
- background-position: -32px -242px;
+#previewheaderstoggle.remove .iconlink {
+ top: auto;
+ bottom: 5px;
+ background-position: -5px -242px;
}
div.more-headers {
@@ -750,7 +811,7 @@ div.hide-headers {
}
#all-headers {
- position: relative;
+ position: relative;
margin: 0 10px;
padding: 0;
height: 180px;
@@ -773,17 +834,50 @@ div.hide-headers {
}
#messagepreviewheader {
- margin: 0 8px;
- padding-bottom: 8px;
+ position: relative;
+ height: auto;
+ margin: 0 8px 0 0;
+ padding: 0 0 6px 72px;
border-bottom: 2px solid #f0f0f0;
}
-#messagepreviewheader .headers-table {
- margin-left: 8px;
+#messagepreviewheader h3.subject {
+ padding: 8px 8px 2px 0;
}
-#messagepreviewheader h3.subject {
- padding-left: 0;
+#messagepreviewheader #contactphoto {
+ display: block;
+ position: absolute;
+ top: 11px;
+ left: 30px;
+ width: 32px;
+ height: 32px;
+ overflow: hidden;
+ background: url(images/contactpic_32px.png) center center no-repeat #fff;
+ border-radius: 3px;
+}
+
+#messagepreviewheader #contactphoto img {
+ width: 32px;
+ height: auto;
+ border-radius: 3px;
+}
+
+#messageheader #contactphoto {
+ display: block;
+ position: absolute;
+ top: 40px;
+ right: 10px;
+ width: 48px;
+ height: 48px;
+ overflow: hidden;
+ border-radius: 4px;
+}
+
+#messageheader #contactphoto img {
+ width: 48px;
+ height: auto;
+ border-radius: 4px;
}
#messagepreviewheader #countcontrols,
@@ -791,7 +885,7 @@ div.hide-headers {
position: absolute;
top: 8px;
right: 8px;
- width: 18em;
+ width: 20em;
text-align: right;
white-space: nowrap;
}
@@ -865,6 +959,7 @@ div.message-part div.pre {
margin: 0px;
padding: 0px;
font-family: monospace;
+ font-size: 12px;
white-space: -moz-pre-wrap !important;
white-space: pre-wrap !important;
white-space: pre;
@@ -1210,7 +1305,7 @@ div.message-part blockquote blockquote blockquote {
#uploadform a.iconlink {
margin-left: 1em;
- text-indent: -1000px;
+ text-indent: -5000px;
}
#uploadform form div {
diff --git a/skins/larry/settings.css b/skins/larry/settings.css
index f962a8457..e0047f9da 100644
--- a/skins/larry/settings.css
+++ b/skins/larry/settings.css
@@ -54,7 +54,9 @@
#settings-sections span.listitem a,
#settings-sections span.tablink a {
padding-left: 36px;
- background: url(images/listicons.png) -100px 0 no-repeat;
+ background-image: url(images/listicons.png);
+ background-position: -100px 0;
+ background-repeat: no-repeat;
}
/* note: support span.tablink because this is used by plugins */
diff --git a/skins/larry/styles.css b/skins/larry/styles.css
index 7b321ed56..341de9008 100644
--- a/skins/larry/styles.css
+++ b/skins/larry/styles.css
@@ -266,6 +266,7 @@ input.button:active {
padding: 1px 3px;
height: 16px;
vertical-align: middle;
+ margin-bottom: 1px;
}
.pagenav a.button span.inner {
@@ -315,7 +316,7 @@ input.button:active {
.pagenav .countdisplay {
display: inline-block;
- padding:0 1em;
+ padding: 3px 1em 0 1em;
text-shadow: 0px 1px 1px #fff;
min-width: 16em;
}
@@ -330,7 +331,7 @@ a.iconbutton {
width: 24px;
height: 18px;
text-decoration: none;
- text-indent: -1000px;
+ text-indent: -5000px;
background: url(images/buttons.png) -1000px 0 no-repeat;
}
@@ -653,6 +654,15 @@ a.iconlink.upload {
background: #fff;
}
+.minwidth {
+ position: absolute;
+ top: 0;
+ left: 0;
+ bottom: 0;
+ width: 100%;
+ min-width: 1150px;
+}
+
.scroller {
overflow: auto;
}
@@ -769,6 +779,7 @@ a.iconlink.upload {
.listing li.selected > a {
color: #004458;
font-weight: bold;
+ background-color: #c7e3ef;
}
ul.listing {
@@ -784,7 +795,7 @@ ul.listing li {
ul.listing li.droptarget,
table.listing tr.droptarget td {
- background-color: #c7e3ef;
+ background-color: #e8e798;
}
table.listing,
@@ -827,7 +838,7 @@ table.layout td {
display: inline-block;
width: 48px;
height: 35px;
- text-indent: -1000px;
+ text-indent: -5000px;
background: url(images/buttons.png) -1000px 0 no-repeat;
}
@@ -1034,8 +1045,8 @@ body.iframe {
margin: 38px 0 10px 0;
}
-body.iframe.footerbuttons {
- margin-bottom: 42px;
+body.iframe.floatingbuttons {
+ margin-bottom: 40px;
}
body.iframe.fullheight {
@@ -1062,14 +1073,25 @@ body.iframe .boxtitle {
z-index: 100;
}
-body.iframe .footerbuttons {
+body.iframe .footerleft.floating {
position: fixed;
left: 0;
bottom: 0;
width: 100%;
z-index: 110;
background: #fff;
- padding: 8px;
+ padding-top: 8px;
+ padding-bottom: 12px;
+}
+
+body.iframe .footerleft.floating:before {
+ content: " ";
+ position: absolute;
+ top: -6px;
+ left: 0;
+ width: 100%;
+ height: 6px;
+ background: url(images/overflowshadow.png) top center no-repeat;
}
.boxcontent {
@@ -1085,8 +1107,16 @@ body.iframe .footerbuttons {
overflow: auto;
}
+.iframebox {
+ position: absolute;
+ top: 0;
+ left: 0;
+ right: 0;
+ bottom: 28px;
+}
+
.footerleft {
- padding: 0 12px 10px 12px;
+ padding: 0 12px 4px 12px;
}
.propform fieldset {
@@ -1274,34 +1304,46 @@ ul.proplist li {
/*** quicksearch **/
#quicksearchbar {
- width: 100%;
+ position: absolute;
+ right: 1px;
+ top: 0;
+ width: 240px;
}
#quicksearchbar input {
width: 176px;
margin: 0;
- padding: 5px 26px 2px 38px;
+ margin-top: 7px;
+ padding: 3px 30px 3px 34px;
height: 18px;
background: #f1f1f1;
- border-color: #a3a3a3;
+ border-color: #ababab;
font-weight: bold;
+ font-size: 11px;
}
#quicksearchbar #searchmenulink {
position: absolute;
- top: 5px;
- left: 8px;
+ top: 12px;
+ left: 6px;
}
#quicksearchbar #searchreset {
position: absolute;
- top: 4px;
+ top: 11px;
right: 1px;
}
/*** toolbar ***/
+.toolbar .spacer {
+ display: inline-block;
+ width: 24px;
+ height: 40px;
+ padding: 0;
+}
+
.toolbar a.button {
text-align: center;
font-size: 10px;
@@ -1455,12 +1497,14 @@ a.menuselector {
background: linear-gradient(top, #f8f8f8 0%, #dddddd 100%);
text-decoration: none;
color: #333;
+ cursor: pointer;
}
a.menuselector .handle {
display: inline-block;
- padding: 3px 32px 0 8px;
- min-height: 18px;
+ padding: 0 32px 0 6px;
+ height: 20px;
+ line-height: 19px;
text-shadow: 0px 1px 1px #fff;
background: url(images/selector.png) right center no-repeat;
border-radius: 4px;
@@ -1476,18 +1520,6 @@ a.menuselector:active {
text-decoration: none;
}
-a.dropdownselector {
- position: absolute;
- padding: 1px 0;
- z-index: 1;
-}
-
-a.dropdownselector .handle {
- margin: -1px 0;
- padding-top: 5px;
- min-height: 20px;
-}
-
select.decorated {
position: relative;
z-index: 10;
@@ -1501,7 +1533,6 @@ select.decorated {
html.opera select.decorated {
opacity: 1;
- height: auto;
}
select.decorated option {
@@ -1511,7 +1542,7 @@ select.decorated option {
border-top: 1px solid #5a5a5a;
border-bottom: 1px solid #333;
text-shadow: 0px 1px 1px #333;
- padding: 6px 10px;
+ padding: 4px 6px;
outline: none;
}
@@ -1941,7 +1972,7 @@ ul.toolbarmenu li span.conversation {
height: 18px;
padding: 0;
text-decoration: none;
- text-indent: -1000px;
+ text-indent: -5000px;
background: url(images/buttons.png) -7px -337px no-repeat;
}
@@ -1956,6 +1987,7 @@ ul.toolbarmenu li span.conversation {
margin-bottom: 12px;
padding-top: 15px;
height: 27px;
+ white-space: nowrap;
}
.tabsbar .tablink {
diff --git a/skins/larry/svggradient.php b/skins/larry/svggradient.php
index 75705ed30..c54bdec17 100644
--- a/skins/larry/svggradient.php
+++ b/skins/larry/svggradient.php
@@ -18,6 +18,7 @@ header("Pragma: ");
$svg_stops = '';
$color_stops = explode(';', preg_replace('/[^a-f0-9,;%]/i', '', $_GET['c']));
+$gradient_coords = !empty($_GET['h']) ? 'x1="0%" y1="0%" x2="100%" y2="0%"' : 'x1="0%" y1="0%" x2="0%" y2="100%"';
$last = count($color_stops) - 1;
foreach ($color_stops as $i => $stop) {
list($color, $offset) = explode(',', $stop);
@@ -32,7 +33,7 @@ foreach ($color_stops as $i => $stop) {
?>
<svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none" version="1.0" width="100%" height="100%">
<defs>
- <linearGradient id="LG1" x1="0%" y1="0%" x2="0%" y2="100%" spreadMethod="pad">
+ <linearGradient id="LG1" <?php echo $gradient_coords; ?> spreadMethod="pad">
<?php echo $svg_stops; ?>
</linearGradient>
</defs>
diff --git a/skins/larry/svggradients.css b/skins/larry/svggradients.css
index ba596e39f..143fb375f 100644
--- a/skins/larry/svggradients.css
+++ b/skins/larry/svggradients.css
@@ -137,6 +137,13 @@ ul.toolbarmenu li a.active:hover,
background-image: url(svggradient.php?c=ffffff;e9e9e9);
}
+#previewheaderstoggle {
+ background-image: url(svggradient.php?c=fbfbfb;e9e9e9&h=1);
+}
+
+#messagelistfooter {
+ background-image: url(svggradient.php?c=ebebeb;c6c6c6);
+}
/*** jqueryui theme ***/
diff --git a/skins/larry/templates/addressbook.html b/skins/larry/templates/addressbook.html
index cec1dcf20..c39c2fe87 100644
--- a/skins/larry/templates/addressbook.html
+++ b/skins/larry/templates/addressbook.html
@@ -10,15 +10,18 @@
<div id="mainscreen">
-<div id="addressview-left">
-
-<!-- search box -->
-<div id="quicksearchbar">
-<roundcube:object name="searchform" id="quicksearchbox" />
-<roundcube:button name="searchmenulink" id="searchmenulink" class="iconbutton searchoptions" onclick="UI.show_popup('searchmenu');return false" title="searchmod" content=" " />
-<roundcube:button command="reset-search" id="searchreset" class="iconbutton reset" title="resetsearch" content=" " />
+<!-- toolbar -->
+<div id="addressbooktoolbar" class="toolbar">
+ <roundcube:button command="import" type="link" class="button import disabled" classAct="button import" classSel="button import pressed" label="import" title="importcontacts" />
+ <roundcube:button command="export" type="link" class="button export disabled" classAct="button export" classSel="button export pressed" label="export" title="exportvcards" />
+ <span class="spacer"></span>
+ <roundcube:button command="compose" type="link" class="button compose disabled" classAct="button compose" classSel="button compose pressed" label="compose" title="writenewmessage" />
+ <roundcube:button command="advanced-search" type="link" class="button search disabled" classAct="button search" classSel="button search pressed" label="advanced" title="advsearch" />
+ <roundcube:container name="toolbar" id="addressbooktoolbar" />
</div>
+<div id="addressview-left">
+
<!-- sources/groups list -->
<div id="directorylistbox" class="uibox listbox">
<h2 id="directorylist-header" class="boxtitle"><roundcube:label name="groups" /></h2>
@@ -34,13 +37,11 @@
<div id="addressview-right">
-<!-- toolbar -->
-<div id="addressbooktoolbar" class="toolbar">
- <roundcube:button command="advanced-search" type="link" class="button search disabled" classAct="button search" classSel="button search pressed" label="advanced" title="advsearch" />
- <roundcube:button command="compose" type="link" class="button compose disabled" classAct="button compose" classSel="button compose pressed" label="compose" title="writenewmessage" />
- <roundcube:button command="import" type="link" class="button import disabled" classAct="button import" classSel="button import pressed" label="import" title="importcontacts" />
- <roundcube:button command="export" type="link" class="button export disabled" classAct="button export" classSel="button export pressed" label="export" title="exportvcards" />
- <roundcube:container name="toolbar" id="addressbooktoolbar" />
+<!-- search box -->
+<div id="quicksearchbar">
+<roundcube:object name="searchform" id="quicksearchbox" />
+<roundcube:button name="searchmenulink" id="searchmenulink" class="iconbutton searchoptions" onclick="UI.show_popup('searchmenu');return false" title="searchmod" content=" " />
+<roundcube:button command="reset-search" id="searchreset" class="iconbutton reset" title="resetsearch" content=" " />
</div>
<!-- contacts list -->
@@ -63,7 +64,9 @@
<div id="contacts-box" class="uibox">
- <roundcube:object name="addressframe" id="contact-frame" style="width:100%; height:96%" frameborder="0" src="/watermark.html" />
+ <div class="iframebox">
+ <roundcube:object name="addressframe" id="contact-frame" style="width:100%; height:100%" frameborder="0" src="/watermark.html" />
+ </div>
<roundcube:object name="message" id="message" class="statusbar" />
</div>
diff --git a/skins/larry/templates/compose.html b/skins/larry/templates/compose.html
index 93e9703a4..ff0c833c6 100644
--- a/skins/larry/templates/compose.html
+++ b/skins/larry/templates/compose.html
@@ -7,8 +7,9 @@
<link rel="stylesheet" type="text/css" href="/googiespell.css" />
<roundcube:endif />
</head>
-<body class="noscroll">
+<body>
+<div class="minwidth">
<roundcube:include file="/includes/header.html" />
<div id="mainscreen">
@@ -170,6 +171,8 @@
</div><!-- end mainscreen -->
+</div><!-- end minwidth -->
+
<div id="upload-dialog" class="propform popupdialog" title="<roundcube:label name='addattachment' />">
<roundcube:object name="composeAttachmentForm" id="uploadform" attachmentFieldSize="40" buttons="no" />
<div class="formbuttons">
diff --git a/skins/larry/templates/contactedit.html b/skins/larry/templates/contactedit.html
index 39d48440b..f84936635 100644
--- a/skins/larry/templates/contactedit.html
+++ b/skins/larry/templates/contactedit.html
@@ -4,7 +4,7 @@
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
</head>
-<body class="iframe footerbuttons">
+<body class="iframe">
<h1 class="boxtitle">
<roundcube:if condition="env:action=='add'" /><roundcube:label name="addcontact" />
@@ -19,6 +19,7 @@
<div id="contactphoto">
<roundcube:object name="contactphoto" id="contactpic" placeholder="/images/contactpic.png" />
<roundcube:if condition="env:photocol" />
+ <roundcube:object name="fileDropArea" id="contactpic" />
<div class="formlinks">
<roundcube:button command="upload-photo" id="uploadformlink" type="link" label="replacephoto" class="iconlink upload disabled" classAct="iconlink upload active" onclick="UI.show_uploadform();return false" condition="env:photocol" /><br/>
<roundcube:button command="delete-photo" type="link" label="delete" class="iconlink delete disabled" classAct="iconlink delete active" condition="env:photocol" />
@@ -35,7 +36,7 @@
</form>
-<div class="footerbuttons formbuttons">
+<div class="footerleft formbuttons">
<roundcube:button command="save" type="input" class="button mainaction" label="save" />
<roundcube:button command="show" type="input" class="button" label="cancel" condition="env:action=='edit'" />
<roundcube:button name="cancel" type="input" class="button" label="cancel" onclick="history.back()" condition="env:action=='add'" />
diff --git a/skins/larry/templates/folderedit.html b/skins/larry/templates/folderedit.html
index cfc8bc3d4..18d246942 100644
--- a/skins/larry/templates/folderedit.html
+++ b/skins/larry/templates/folderedit.html
@@ -12,14 +12,12 @@
<roundcube:object name="folderdetails" class="propform" />
</div>
-<div id="formfooter">
<div class="footerleft formbuttons">
<roundcube:button command="save" type="input" class="button mainaction" label="save" />
<roundcube:if condition="!strlen(request:_mbox)" />
<input type="button" value="<roundcube:label name="cancel" />" class="button" onclick="history.back()" />&nbsp;
<roundcube:endif />
</div>
-</div>
<roundcube:include file="/includes/footer.html" />
diff --git a/skins/larry/templates/folders.html b/skins/larry/templates/folders.html
index ab4e46ce1..988ff952c 100644
--- a/skins/larry/templates/folders.html
+++ b/skins/larry/templates/folders.html
@@ -28,7 +28,9 @@
</div>
<div id="folder-details" class="uibox contentbox">
- <roundcube:object name="folderframe" id="preferences-frame" style="width:100%; height:96%" frameborder="0" src="/watermark.html" />
+ <div class="iframebox">
+ <roundcube:object name="folderframe" id="preferences-frame" style="width:100%; height:100%" frameborder="0" src="/watermark.html" />
+ </div>
<roundcube:object name="message" id="message" class="statusbar" />
</div>
diff --git a/skins/larry/templates/identities.html b/skins/larry/templates/identities.html
index 061088ea5..d9270b68a 100644
--- a/skins/larry/templates/identities.html
+++ b/skins/larry/templates/identities.html
@@ -25,7 +25,9 @@
</div>
<div id="identity-details" class="uibox contentbox">
- <roundcube:object name="identityframe" id="preferences-frame" style="width:100%; height:96%" frameborder="0" src="/watermark.html" />
+ <div class="iframebox">
+ <roundcube:object name="identityframe" id="preferences-frame" style="width:100%; height:100%" frameborder="0" src="/watermark.html" />
+ </div>
<roundcube:object name="message" id="message" class="statusbar" />
</div>
diff --git a/skins/larry/templates/identityedit.html b/skins/larry/templates/identityedit.html
index 3ef41319a..8d5e62290 100644
--- a/skins/larry/templates/identityedit.html
+++ b/skins/larry/templates/identityedit.html
@@ -12,11 +12,9 @@
<roundcube:object name="identityform" class="propform" size="40" textareacols="40" textarearows="6" />
</div>
-<div id="formfooter">
<div class="footerleft formbuttons">
<roundcube:button command="save" type="input" class="button mainaction" label="save" />
</div>
-</div>
<roundcube:include file="/includes/footer.html" />
diff --git a/skins/larry/templates/login.html b/skins/larry/templates/login.html
index c0ceb5c88..8aac930ed 100644
--- a/skins/larry/templates/login.html
+++ b/skins/larry/templates/login.html
@@ -24,7 +24,7 @@
</div>
<div id="bottomline">
- Roundcube Webmail <roundcube:object name="version" />
+ <roundcube:var name="config:product_name"> <roundcube:object name="version" condition="config:display_version" />
<roundcube:if condition="config:support_url" />
&nbsp;&#9679;&nbsp; <a href="<roundcube:var name='config:support_url' />" target="_blank" class="support-link"><roundcube:label name="support" /></a>
<roundcube:endif />
diff --git a/skins/larry/templates/mail.html b/skins/larry/templates/mail.html
index 183129a98..32c64d929 100644
--- a/skins/larry/templates/mail.html
+++ b/skins/larry/templates/mail.html
@@ -5,27 +5,29 @@
<roundcube:include file="/includes/links.html" />
<style type="text/css">
<roundcube:if condition="config:preview_pane == true" />
- #mailview-top { height: <roundcube:exp expression="!empty(cookie:mailviewsplitter) ? cookie:mailviewsplitter-38 : 300" />px; }
- #mailview-bottom { top: <roundcube:exp expression="!empty(cookie:mailviewsplitter) ? cookie:mailviewsplitter+5 : 320" />px; height: auto; }
+ #mailview-top { height: <roundcube:exp expression="!empty(cookie:mailviewsplitter) ? cookie:mailviewsplitter-48 : 276" />px; }
+ #mailview-bottom { top: <roundcube:exp expression="!empty(cookie:mailviewsplitter) ? cookie:mailviewsplitter+6 : 330" />px; height: auto; }
#mailpreviewframe { display: block; }
<roundcube:endif />
</style>
</head>
-<body class="noscroll">
+<body>
+<div class="minwidth">
<roundcube:include file="/includes/header.html" />
<div id="mainscreen">
-<div id="mailview-left">
-
-<!-- search box -->
-<div id="quicksearchbar">
-<roundcube:object name="searchform" id="quicksearchbox" />
-<roundcube:button name="searchmenulink" id="searchmenulink" class="iconbutton searchoptions" onclick="UI.show_popup('searchmenu');return false" title="searchmod" content=" " />
-<roundcube:button command="reset-search" id="searchreset" class="iconbutton reset" title="resetsearch" content=" " />
+<!-- toolbar -->
+<div id="messagetoolbar" class="toolbar">
+ <roundcube:button command="checkmail" type="link" class="button checkmail disabled" classAct="button checkmail" classSel="button checkmail pressed" label="refresh" title="checkmail" />
+ <roundcube:button command="compose" type="link" class="button compose disabled" classAct="button compose" classSel="button compose pressed" label="compose" title="writenewmessage" />
+ <span class="spacer"></span>
+ <roundcube:include file="/includes/mailtoolbar.html" />
</div>
+<div id="mailview-left">
+
<!-- folders list -->
<div id="folderlist-header"></div>
<div id="mailboxcontainer" class="uibox listbox">
@@ -44,20 +46,30 @@
<div id="mailview-right">
+<div id="messagesearchtools">
+
<!-- search filter -->
<div id="searchfilter">
<roundcube:object name="searchfilter" class="searchfilter decorated" />
</div>
-<!-- toolbar -->
-<div id="messagetoolbar">
-<roundcube:include file="/includes/mailtoolbar.html" />
+<!-- search box -->
+<div id="quicksearchbar">
+<roundcube:object name="searchform" id="quicksearchbox" />
+<roundcube:button name="searchmenulink" id="searchmenulink" class="iconbutton searchoptions" onclick="UI.show_popup('searchmenu');return false" title="searchmod" content=" " />
+<roundcube:button command="reset-search" id="searchreset" class="iconbutton reset" title="resetsearch" content=" " />
</div>
-<div id="mailview-top">
+</div>
+
+<roundcube:if condition="config:preview_pane == true" />
+<div id="mailview-top" class="uibox">
+<roundcube:else />
+<div id="mailview-top" class="uibox fullheight">
+<roundcube:endif />
<!-- messagelist -->
-<div id="messagelistcontainer" class="uibox boxlistcontent">
+<div id="messagelistcontainer" class="boxlistcontent">
<roundcube:object name="messages"
id="messagelist"
class="records-table sortheader"
@@ -114,6 +126,8 @@
</div><!-- end mainscreen -->
+<div><!-- end minwidth -->
+
<div id="searchmenu" class="popupmenu">
<ul class="toolbarmenu">
<li><label><input type="checkbox" name="s_mods[]" value="subject" id="s_mod_subject" onclick="UI.set_searchmod(this)" /> <roundcube:label name="subject" /></label></li>
diff --git a/skins/larry/templates/message.html b/skins/larry/templates/message.html
index 2509662fe..1becd711a 100644
--- a/skins/larry/templates/message.html
+++ b/skins/larry/templates/message.html
@@ -10,8 +10,17 @@
<div id="mainscreen">
+<!-- toolbar -->
+<div id="messagetoolbar" class="toolbar fullwidth">
+ <roundcube:button command="list" type="link" class="button back disabled" classAct="button back" classSel="button back pressed" label="back" />
+ <span class="spacer"></span>
+ <roundcube:include file="/includes/mailtoolbar.html" />
+ <div class="toolbarselect">
+ <roundcube:object name="mailboxlist" type="select" noSelection="moveto" maxlength="25" onchange="rcmail.command('moveto', this.options[this.selectedIndex].value)" class="mailboxlist decorated" folder_filter="mail" />
+ </div>
+</div>
+
<div id="mailview-left">
-<roundcube:object name="mailboxlist" type="select" noSelection="moveto" maxlength="25" onchange="rcmail.command('moveto', this.options[this.selectedIndex].value)" class="mailboxlist" folder_filter="mail" />
<!-- folders list -->
<div id="mailboxcontainer" class="uibox listbox">
@@ -24,11 +33,6 @@
<div id="mailview-right">
-<!-- toolbar -->
-<div id="messagetoolbar" class="fullwidth">
-<roundcube:include file="/includes/mailtoolbar.html" />
-</div>
-
<div id="mailview-top">
<div id="messageheader" class="uibox">
<h2 class="subject"><roundcube:object name="messageHeaders" valueOf="subject" /></h2>
@@ -42,6 +46,7 @@
<roundcube:button command="nextmessage" type="link" class="button nextpage disabled" classAct="button nextpage" classSel="button nextpage pressed" innerClass="inner" title="nextmessage" content="&amp;gt;" />
</div>
+<div id="contactphoto"><roundcube:object name="contactphoto" /></div>
</div>
<div id="messagecontent" class="uibox">
diff --git a/skins/larry/templates/messagepreview.html b/skins/larry/templates/messagepreview.html
index cd9c2349a..b53683ec1 100644
--- a/skins/larry/templates/messagepreview.html
+++ b/skins/larry/templates/messagepreview.html
@@ -9,7 +9,8 @@
<div id="messagepreviewheader">
<h3 class="subject"><roundcube:object name="messageHeaders" valueOf="subject" /></h3>
-<a href="#details" id="previewheaderstoggle" class="iconlink add"></a>
+<a href="#details" id="previewheaderstoggle"><span class="iconlink"></span></a>
+<div id="contactphoto"><roundcube:object name="contactphoto" /></div>
<table class="headers-table" id="preview-shortheaders"><tbody><tr>
<roundcube:if condition="env:mailbox == config:drafts_mbox || env:mailbox == config:sent_mbox">
diff --git a/skins/larry/templates/settings.html b/skins/larry/templates/settings.html
index 88b6b96b2..427e0a4f5 100644
--- a/skins/larry/templates/settings.html
+++ b/skins/larry/templates/settings.html
@@ -21,8 +21,10 @@
</div>
<div id="preferences-box" class="uibox contentbox">
-<roundcube:object name="prefsframe" id="preferences-frame" style="width:100%; height:96%" frameborder="0" src="/watermark.html" />
-<roundcube:object name="message" id="message" class="statusbar" />
+ <div class="iframebox">
+ <roundcube:object name="prefsframe" id="preferences-frame" style="width:100%; height:100%" frameborder="0" src="/watermark.html" />
+ </div>
+ <roundcube:object name="message" id="message" class="statusbar" />
</div>
</div>
diff --git a/skins/larry/templates/settingsedit.html b/skins/larry/templates/settingsedit.html
index ada5b57ee..1a80f58e9 100644
--- a/skins/larry/templates/settingsedit.html
+++ b/skins/larry/templates/settingsedit.html
@@ -12,10 +12,8 @@
<roundcube:object name="userprefs" form="form" class="propform" />
</div>
-<div id="formfooter">
<div class="footerleft formbuttons">
-<roundcube:button command="save" type="input" class="button mainaction" label="save" />
-</div>
+ <roundcube:button command="save" type="input" class="button mainaction" label="save" />
</div>
<roundcube:include file="/includes/footer.html" />
diff --git a/skins/larry/ui.js b/skins/larry/ui.js
index 675f61bc3..780ce7a62 100644
--- a/skins/larry/ui.js
+++ b/skins/larry/ui.js
@@ -108,7 +108,7 @@ function rcube_mail_ui()
$('#mailthreadmode').addClass(rcmail.env.threading ? 'selected' : '').click(function(e){ switch_view_mode('thread'); return false });
mailviewsplit = new rcube_splitter({ id:'mailviewsplitter', p1:'#mailview-top', p2:'#mailview-bottom',
- orientation:'h', relative:true, start:310, min:150, size:0, offset:-22 });
+ orientation:'h', relative:true, start:310, min:150, size:12, offset:4 });
if (previewframe)
mailviewsplit.init();
@@ -170,23 +170,32 @@ function rcube_mail_ui()
return;
}
- var title = $('option', this).first().text();
+ var select = $(this),
+ height = Math.max(select.height(), 26) - 2,
+ width = select.width() - 22,
+ title = $('option', this).first().text();
+
if ($('option:selected', this).val() != '')
title = $('option:selected', this).text();
- var select = $(this)
- .change(function(){
+ var overlay = $('<a class="menuselector"><span class="handle">' + title + '</span></a>')
+ .css('position', 'absolute')
+ .offset(select.position())
+ .insertAfter(select);
+
+ overlay.children().width(width).height(height).css('line-height', (height - 1) + 'px');
+
+ select.change(function() {
var val = $('option:selected', this).text();
$(this).next().children().html(val);
});
- $('<a class="menuselector dropdownselector"><span class="handle">' + title + '</span></a>')
- .css('position', 'absolute')
- .offset(select.position())
- .insertAfter(select)
- .children().width(select.outerWidth() - 40);
+ var parent = select.parent();
+ if (parent.css('position') != 'absolute')
+ parent.css('position', 'relative');
- select.parent().css('position', 'relative');
+ // re-set original select width to fix click action and options width in some browsers
+ select.width(overlay.width());
});
$(document.body)
@@ -209,6 +218,7 @@ function rcube_mail_ui()
// don't use $(window).resize() due to some unwanted side-effects
window.onresize = resize;
+ resize();
}
/**
@@ -246,6 +256,20 @@ function rcube_mail_ui()
if (rcmail.env.task == 'mail' && rcmail.env.action == 'compose') {
layout_composeview();
}
+
+ // make iframe footer buttons float if scrolling is active
+ $('body.iframe .footerleft').each(function(){
+ var footer = $(this),
+ body = $(document.body),
+ floating = footer.hasClass('floating'),
+ overflow = body.outerHeight(true) > $(window).height();
+ if (overflow != floating) {
+ var action = overflow ? 'addClass' : 'removeClass';
+ footer[action]('floating');
+ body[action]('floatingbuttons');
+ }
+ })
+
}
/**
@@ -254,7 +278,7 @@ function rcube_mail_ui()
function message_displayed(p)
{
// show a popup dialog on errors
- if (p.type == 'error') {
+ if (p.type == 'error' && rcmail.env.task != 'login') {
if (!me.messagedialog) {
me.messagedialog = $('<div>').addClass('popupdialog');
}
@@ -305,8 +329,7 @@ function rcube_mail_ui()
function resize_leftcol(splitter)
{
- if (splitter)
- $('#quicksearchbar input').css('width', (splitter.pos - 70) + 'px');
+ // STUB
}
@@ -334,7 +357,13 @@ function rcube_mail_ui()
function update_quota(p)
{
- var y = p.total ? Math.ceil(p.percent / 100 * 20) * 24 : 0;
+ var step = 24, step_count = 20,
+ y = p.total ? Math.ceil(p.percent / 100 * step_count) * step : 0;
+
+ // never show full-circle if quota is close to 100% but below.
+ if (p.total && y == step * step_count && p.percent < 100)
+ y -= step;
+
$('#quotadisplay').css('background-position', '0 -'+y+'px');
}
@@ -435,7 +464,7 @@ function rcube_mail_ui()
button.removeClass().addClass(visible ? 'enabled' : 'closed');
if (visible) {
- $('#mailview-top').css({ bottom:'auto' });
+ $('#mailview-top').removeClass('fullheight').css({ bottom:'auto' });
$('#mailview-bottom').css({ height:'auto' });
rcmail.env.contentframe = 'messagecontframe';
@@ -454,7 +483,7 @@ function rcube_mail_ui()
rcmail.env.contentframe = null;
rcmail.show_contentframe(false);
- $('#mailview-top').css({ height:'auto', bottom:'28px' });
+ $('#mailview-top').addClass('fullheight').css({ height:'auto', bottom:'28px' });
$('#mailview-bottom').css({ top:'auto', height:'26px' });
if (mailviewsplit.handle)
diff --git a/tests/mailfunc.php b/tests/mailfunc.php
index ed637884e..493ce946e 100644
--- a/tests/mailfunc.php
+++ b/tests/mailfunc.php
@@ -48,7 +48,7 @@ class rcube_test_mailfunc extends UnitTestCase
$html = rcmail_html4inline(rcmail_print_body($part, array('safe' => false)), 'foo');
$this->assertPattern('/src="'.$part->replaces['ex1.jpg'].'"/', $html, "Replace reference to inline image");
- $this->assertPattern('#background="./program/blocked.gif"#', $html, "Replace external background image");
+ $this->assertPattern('#background="./program/resources/blocked.gif"#', $html, "Replace external background image");
$this->assertNoPattern('/ex3.jpg/', $html, "No references to external images");
$this->assertNoPattern('/<meta [^>]+>/', $html, "No meta tags allowed");
//$this->assertNoPattern('/<style [^>]+>/', $html, "No style tags allowed");