Cyrill von Wattenwyl
2014-09-02 11a40dd1fef6c5b78b054617caba4325f95ee386
Merge branch 'master' of https://github.com/roundcube/roundcubemail

Conflicts:
plugins/password/config.inc.php.dist
174 files added
475 files modified
17 files renamed
1,215 files deleted
137855 ■■■■ changed files
CHANGELOG 72 ●●●●● patch | view | raw | blame | history
INSTALL 4 ●●●● patch | view | raw | blame | history
README.md 4 ●●●● patch | view | raw | blame | history
bin/update.sh 2 ●●● patch | view | raw | blame | history
bin/updatedb.sh 4 ●●●● patch | view | raw | blame | history
composer.json-dist 39 ●●●●● patch | view | raw | blame | history
config/defaults.inc.php 75 ●●●● patch | view | raw | blame | history
index.php 24 ●●●● patch | view | raw | blame | history
installer/check.php 15 ●●●●● patch | view | raw | blame | history
installer/index.php 9 ●●●● patch | view | raw | blame | history
installer/test.php 7 ●●●● patch | view | raw | blame | history
plugins/acl/acl.js 58 ●●●● patch | view | raw | blame | history
plugins/acl/acl.php 59 ●●●● patch | view | raw | blame | history
plugins/acl/composer.json 2 ●●● patch | view | raw | blame | history
plugins/acl/config.inc.php.dist 9 ●●●● patch | view | raw | blame | history
plugins/acl/localization/ast.inc 80 ●●●●● patch | view | raw | blame | history
plugins/acl/localization/bs_BA.inc 10 ●●●●● patch | view | raw | blame | history
plugins/acl/localization/en_CA.inc 5 ●●●●● patch | view | raw | blame | history
plugins/acl/localization/en_US.inc 5 ●●●●● patch | view | raw | blame | history
plugins/acl/localization/et_EE.inc 20 ●●●●● patch | view | raw | blame | history
plugins/acl/localization/fi_FI.inc 12 ●●●●● patch | view | raw | blame | history
plugins/acl/localization/it_IT.inc 4 ●●●● patch | view | raw | blame | history
plugins/acl/localization/pt_PT.inc 4 ●●●● patch | view | raw | blame | history
plugins/acl/package.xml 4 ●●●● patch | view | raw | blame | history
plugins/acl/skins/larry/acl.css 17 ●●●●● patch | view | raw | blame | history
plugins/acl/skins/larry/templates/table.html 19 ●●●●● patch | view | raw | blame | history
plugins/additional_message_headers/config.inc.php.dist 2 ●●● patch | view | raw | blame | history
plugins/archive/localization/ast.inc 6 ●●●● patch | view | raw | blame | history
plugins/archive/localization/be_BE.inc 8 ●●●● patch | view | raw | blame | history
plugins/archive/localization/br.inc 1 ●●●● patch | view | raw | blame | history
plugins/archive/localization/es_419.inc 8 ●●●●● patch | view | raw | blame | history
plugins/archive/localization/ko_KR.inc 8 ●●●● patch | view | raw | blame | history
plugins/attachment_reminder/localization/ast.inc 20 ●●●●● patch | view | raw | blame | history
plugins/attachment_reminder/localization/br.inc 20 ●●●●● patch | view | raw | blame | history
plugins/attachment_reminder/localization/es_AR.inc 6 ●●●● patch | view | raw | blame | history
plugins/attachment_reminder/localization/id_ID.inc 4 ●●●● patch | view | raw | blame | history
plugins/attachment_reminder/localization/ko_KR.inc 2 ●●● patch | view | raw | blame | history
plugins/attachment_reminder/localization/ml_IN.inc 4 ●●●● patch | view | raw | blame | history
plugins/emoticons/emoticons.php 4 ●●●● patch | view | raw | blame | history
plugins/help/localization/hu_HU.inc 4 ●●●● patch | view | raw | blame | history
plugins/help/localization/ml_IN.inc 21 ●●●●● patch | view | raw | blame | history
plugins/help/skins/classic/help.css 2 ●●● patch | view | raw | blame | history
plugins/help/skins/classic/templates/help.html 4 ●●●● patch | view | raw | blame | history
plugins/hide_blockquote/hide_blockquote.js 2 ●●● patch | view | raw | blame | history
plugins/hide_blockquote/localization/ast.inc 21 ●●●●● patch | view | raw | blame | history
plugins/hide_blockquote/localization/br.inc 20 ●●●●● patch | view | raw | blame | history
plugins/hide_blockquote/localization/ko_KR.inc 4 ●●●● patch | view | raw | blame | history
plugins/hide_blockquote/localization/ml_IN.inc 21 ●●●●● patch | view | raw | blame | history
plugins/jqueryui/composer.json 2 ●●● patch | view | raw | blame | history
plugins/jqueryui/jqueryui.php 15 ●●●● patch | view | raw | blame | history
plugins/jqueryui/js/jquery-ui-1.10.4.custom.min.js 229 ●●●●● patch | view | raw | blame | history
plugins/jqueryui/js/jquery-ui-1.9.2.custom.min.js 37 ●●●●● patch | view | raw | blame | history
plugins/jqueryui/js/jquery-ui-accessible-datepicker.js 214 ●●●●● patch | view | raw | blame | history
plugins/jqueryui/package.xml 176 ●●●●● patch | view | raw | blame | history
plugins/jqueryui/themes/classic/images/animated-overlay.gif patch | view | raw | blame | history
plugins/jqueryui/themes/classic/jquery-ui-1.10.4.custom.css 1223 ●●●●● patch | view | raw | blame | history
plugins/jqueryui/themes/classic/jquery-ui-1.9.2.custom.css 581 ●●●●● patch | view | raw | blame | history
plugins/jqueryui/themes/classic/roundcube-custom.diff 274 ●●●●● patch | view | raw | blame | history
plugins/jqueryui/themes/larry/images/animated-overlay.gif patch | view | raw | blame | history
plugins/jqueryui/themes/larry/images/ui-bg_highlight-hard_55_b0ccd7_1x100.png patch | view | raw | blame | history
plugins/jqueryui/themes/larry/images/ui-bg_highlight-hard_65_ffffff_1x100.png patch | view | raw | blame | history
plugins/jqueryui/themes/larry/images/ui-bg_highlight-hard_75_eaeaea_1x100.png patch | view | raw | blame | history
plugins/jqueryui/themes/larry/images/ui-bg_highlight-hard_75_f8f8f8_1x100.png patch | view | raw | blame | history
plugins/jqueryui/themes/larry/images/ui-bg_highlight-soft_75_fafafa_1x100.png patch | view | raw | blame | history
plugins/jqueryui/themes/larry/images/ui-bg_highlight-soft_90_e4e4e4_1x100.png patch | view | raw | blame | history
plugins/jqueryui/themes/larry/jquery-ui-1.10.4.custom.css 1515 ●●●●● patch | view | raw | blame | history
plugins/jqueryui/themes/larry/jquery-ui-1.9.2.custom.css 740 ●●●●● patch | view | raw | blame | history
plugins/jqueryui/themes/larry/jquery-ui-css.diff 600 ●●●●● patch | view | raw | blame | history
plugins/jqueryui/themes/redmond/images/animated-overlay.gif patch | view | raw | blame | history
plugins/jqueryui/themes/redmond/jquery-ui-1.10.4.custom.css 1178 ●●●●● patch | view | raw | blame | history
plugins/jqueryui/themes/redmond/jquery-ui-1.9.2.custom.css 461 ●●●●● patch | view | raw | blame | history
plugins/legacy_browser/js/iehacks.js 10 ●●●●● patch | view | raw | blame | history
plugins/legacy_browser/legacy_browser.php 44 ●●●●● patch | view | raw | blame | history
plugins/legacy_browser/package.xml 8 ●●●● patch | view | raw | blame | history
plugins/legacy_browser/skins/larry/ie7hacks.css 1 ●●●● patch | view | raw | blame | history
plugins/legacy_browser/skins/larry/iehacks.css 29 ●●●●● patch | view | raw | blame | history
plugins/managesieve/Changelog 11 ●●●●● patch | view | raw | blame | history
plugins/managesieve/config.inc.php.dist 12 ●●●●● patch | view | raw | blame | history
plugins/managesieve/lib/Roundcube/rcube_sieve.php 81 ●●●● patch | view | raw | blame | history
plugins/managesieve/lib/Roundcube/rcube_sieve_engine.php 224 ●●●●● patch | view | raw | blame | history
plugins/managesieve/lib/Roundcube/rcube_sieve_vacation.php 517 ●●●●● patch | view | raw | blame | history
plugins/managesieve/localization/ast.inc 50 ●●●●● patch | view | raw | blame | history
plugins/managesieve/localization/br.inc 30 ●●●●● patch | view | raw | blame | history
plugins/managesieve/localization/bs_BA.inc 45 ●●●● patch | view | raw | blame | history
plugins/managesieve/localization/en_US.inc 18 ●●●● patch | view | raw | blame | history
plugins/managesieve/localization/es_419.inc 100 ●●●● patch | view | raw | blame | history
plugins/managesieve/localization/es_AR.inc 144 ●●●●● patch | view | raw | blame | history
plugins/managesieve/localization/fi_FI.inc 47 ●●●●● patch | view | raw | blame | history
plugins/managesieve/localization/id_ID.inc 75 ●●●●● patch | view | raw | blame | history
plugins/managesieve/localization/ml_IN.inc 10 ●●●●● patch | view | raw | blame | history
plugins/managesieve/localization/nn_NO.inc 4 ●●●● patch | view | raw | blame | history
plugins/managesieve/localization/ru_RU.inc 45 ●●●● patch | view | raw | blame | history
plugins/managesieve/localization/zh_TW.inc 4 ●●●● patch | view | raw | blame | history
plugins/managesieve/managesieve.js 179 ●●●● patch | view | raw | blame | history
plugins/managesieve/managesieve.php 17 ●●●●● patch | view | raw | blame | history
plugins/managesieve/skins/classic/templates/vacation.html 2 ●●● patch | view | raw | blame | history
plugins/managesieve/skins/larry/managesieve.css 15 ●●●●● patch | view | raw | blame | history
plugins/managesieve/skins/larry/templates/managesieve.html 47 ●●●●● patch | view | raw | blame | history
plugins/managesieve/skins/larry/templates/vacation.html 6 ●●●●● patch | view | raw | blame | history
plugins/managesieve/tests/Vacation.php 66 ●●●●● patch | view | raw | blame | history
plugins/markasjunk/localization/ar_SA.inc 21 ●●●●● patch | view | raw | blame | history
plugins/markasjunk/localization/ast.inc 21 ●●●●● patch | view | raw | blame | history
plugins/markasjunk/localization/ko_KR.inc 6 ●●●● patch | view | raw | blame | history
plugins/markasjunk/localization/ml_IN.inc 5 ●●●●● patch | view | raw | blame | history
plugins/new_user_dialog/localization/ast.inc 4 ●●●● patch | view | raw | blame | history
plugins/newmail_notifier/localization/ast.inc 12 ●●●● patch | view | raw | blame | history
plugins/newmail_notifier/localization/es_419.inc 28 ●●●●● patch | view | raw | blame | history
plugins/newmail_notifier/localization/es_AR.inc 1 ●●●● patch | view | raw | blame | history
plugins/newmail_notifier/localization/et_EE.inc 1 ●●●● patch | view | raw | blame | history
plugins/newmail_notifier/localization/hu_HU.inc 16 ●●●● patch | view | raw | blame | history
plugins/newmail_notifier/localization/id_ID.inc 1 ●●●● patch | view | raw | blame | history
plugins/newmail_notifier/localization/ml_IN.inc 1 ●●●● patch | view | raw | blame | history
plugins/newmail_notifier/newmail_notifier.php 4 ●●●● patch | view | raw | blame | history
plugins/password/README 3 ●●●●● patch | view | raw | blame | history
plugins/password/config.inc.php.dist 11 ●●●●● patch | view | raw | blame | history
plugins/password/drivers/gearman.php 55 ●●●●● patch | view | raw | blame | history
plugins/password/drivers/ldap.php 11 ●●●● patch | view | raw | blame | history
plugins/password/drivers/ldap_simple.php 15 ●●●● patch | view | raw | blame | history
plugins/password/drivers/vpopmaild.php 2 ●●●●● patch | view | raw | blame | history
plugins/password/localization/ar.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/ast.inc 4 ●●●● patch | view | raw | blame | history
plugins/password/localization/az_AZ.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/be_BE.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/bg_BG.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/br.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/bs_BA.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/ca_ES.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/cs_CZ.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/cy_GB.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/da_DK.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/de_CH.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/de_DE.inc 3 ●●●● patch | view | raw | blame | history
plugins/password/localization/el_GR.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/en_CA.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/en_GB.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/en_US.inc 3 ●●●● patch | view | raw | blame | history
plugins/password/localization/eo.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/es_419.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/es_AR.inc 3 ●●●● patch | view | raw | blame | history
plugins/password/localization/es_ES.inc 3 ●●●● patch | view | raw | blame | history
plugins/password/localization/et_EE.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/eu_ES.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/fa_AF.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/fi_FI.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/fo_FO.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/gl_ES.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/he_IL.inc 3 ●●●● patch | view | raw | blame | history
plugins/password/localization/hr_HR.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/hu_HU.inc 2 ●●● patch | view | raw | blame | history
plugins/password/localization/hy_AM.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/id_ID.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/it_IT.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/ja_JP.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/km_KH.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/ko_KR.inc 23 ●●●● patch | view | raw | blame | history
plugins/password/localization/ku.inc 19 ●●●●● patch | view | raw | blame | history
plugins/password/localization/lb_LU.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/lt_LT.inc 3 ●●●● patch | view | raw | blame | history
plugins/password/localization/lv_LV.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/ml_IN.inc 33 ●●●●● patch | view | raw | blame | history
plugins/password/localization/nb_NO.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/nl_NL.inc 3 ●●●● patch | view | raw | blame | history
plugins/password/localization/nn_NO.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/pl_PL.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/pt_BR.inc 3 ●●●● patch | view | raw | blame | history
plugins/password/localization/pt_PT.inc 23 ●●●● patch | view | raw | blame | history
plugins/password/localization/ro_RO.inc 3 ●●●● patch | view | raw | blame | history
plugins/password/localization/ru_RU.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/sk_SK.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/sl_SI.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/sr_CS.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/sv_SE.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/ti.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/tr_TR.inc 3 ●●●● patch | view | raw | blame | history
plugins/password/localization/uk_UA.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/vi_VN.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/zh_CN.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/localization/zh_TW.inc 1 ●●●● patch | view | raw | blame | history
plugins/password/package.xml 271 ●●●●● patch | view | raw | blame | history
plugins/password/password.js 29 ●●●●● patch | view | raw | blame | history
plugins/password/password.php 137 ●●●● patch | view | raw | blame | history
plugins/subscriptions_option/localization/ar_SA.inc 19 ●●●●● patch | view | raw | blame | history
plugins/subscriptions_option/localization/ast.inc 19 ●●●●● patch | view | raw | blame | history
plugins/subscriptions_option/localization/ml_IN.inc 19 ●●●●● patch | view | raw | blame | history
plugins/subscriptions_option/subscriptions_option.php 4 ●●● patch | view | raw | blame | history
plugins/userinfo/localization/ast.inc 4 ●●●● patch | view | raw | blame | history
plugins/userinfo/localization/ko_KR.inc 4 ●●●● patch | view | raw | blame | history
plugins/vcard_attachments/localization/ast.inc 20 ●●●●● patch | view | raw | blame | history
plugins/vcard_attachments/localization/ko_KR.inc 4 ●●●● patch | view | raw | blame | history
plugins/vcard_attachments/skins/larry/style.css 5 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/ar.inc 4 ●●● patch | view | raw | blame | history
plugins/zipdownload/localization/ar_SA.inc 4 ●●● patch | view | raw | blame | history
plugins/zipdownload/localization/ast.inc 22 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/az_AZ.inc 4 ●●● patch | view | raw | blame | history
plugins/zipdownload/localization/be_BE.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/bg_BG.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/br.inc 4 ●●● patch | view | raw | blame | history
plugins/zipdownload/localization/bs_BA.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/ca_ES.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/cs_CZ.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/cy_GB.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/da_DK.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/de_CH.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/de_DE.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/en_CA.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/en_GB.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/eo.inc 4 ●●● patch | view | raw | blame | history
plugins/zipdownload/localization/es_419.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/es_AR.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/es_ES.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/et_EE.inc 4 ●●● patch | view | raw | blame | history
plugins/zipdownload/localization/eu_ES.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/fa_AF.inc 4 ●●● patch | view | raw | blame | history
plugins/zipdownload/localization/fa_IR.inc 4 ●●● patch | view | raw | blame | history
plugins/zipdownload/localization/fi_FI.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/gl_ES.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/he_IL.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/hu_HU.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/id_ID.inc 4 ●●● patch | view | raw | blame | history
plugins/zipdownload/localization/it_IT.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/ja_JP.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/ko_KR.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/lb_LU.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/lt_LT.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/lv_LV.inc 4 ●●● patch | view | raw | blame | history
plugins/zipdownload/localization/ml_IN.inc 22 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/nb_NO.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/nl_NL.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/nn_NO.inc 4 ●●● patch | view | raw | blame | history
plugins/zipdownload/localization/pl_PL.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/pt_BR.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/pt_PT.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/ro_RO.inc 4 ●●● patch | view | raw | blame | history
plugins/zipdownload/localization/ru_RU.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/sk_SK.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/sl_SI.inc 4 ●●● patch | view | raw | blame | history
plugins/zipdownload/localization/sr_CS.inc 4 ●●● patch | view | raw | blame | history
plugins/zipdownload/localization/sv_SE.inc 10 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/tr_TR.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/localization/uk_UA.inc 4 ●●● patch | view | raw | blame | history
plugins/zipdownload/localization/zh_CN.inc 4 ●●● patch | view | raw | blame | history
plugins/zipdownload/localization/zh_TW.inc 8 ●●●●● patch | view | raw | blame | history
plugins/zipdownload/zipdownload.js 25 ●●●● patch | view | raw | blame | history
plugins/zipdownload/zipdownload.php 8 ●●●● patch | view | raw | blame | history
program/include/iniset.php 15 ●●●●● patch | view | raw | blame | history
program/include/rcmail.php 277 ●●●● patch | view | raw | blame | history
program/include/rcmail_install.php 4 ●●●● patch | view | raw | blame | history
program/include/rcmail_output_html.php 205 ●●●● patch | view | raw | blame | history
program/js/app.js 2376 ●●●●● patch | view | raw | blame | history
program/js/common.js 28 ●●●●● patch | view | raw | blame | history
program/js/editor.js 820 ●●●● patch | view | raw | blame | history
program/js/list.js 191 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/ar.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/az.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/bg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/bn.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/br.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/bs.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/ca.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/cs.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/cy.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/da.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/de.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/el.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/en.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/eo.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/es.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/et.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/eu.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/fa.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/fi.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/fr.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/gl.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/he.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/hi.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/hr.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/hu.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/hy.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/id.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/is.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/it.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/ja.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/ka.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/ko.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/lt.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/lv.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/mk.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/ms.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/nb.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/nl.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/nn.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/pl.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/ps.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/pt.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/ro.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/ru.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/si.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/sk.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/sl.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/sq.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/sr.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/sv.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/ta.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/th.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/tr.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/uk.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/vi.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/zh-cn.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/langs/zh-tw.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/license.txt 504 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/css/advhr.css 5 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/editor_plugin_src.js 57 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/js/rule.js 43 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/ar_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/az_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/bg_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/bn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/br_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/bs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/ca_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/cs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/cy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/da_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/de_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/el_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/en_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/eo_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/es_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/et_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/eu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/fa_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/fi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/fr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/gl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/he_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/hi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/hr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/hu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/hy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/id_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/is_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/it_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/ja_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/ka_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/ko_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/lt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/lv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/mk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/ms_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/nb_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/nl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/nn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/pl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/ps_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/pt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/ro_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/ru_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/si_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/sk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/sl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/sq_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/sr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/sv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/ta_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/th_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/tr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/uk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/vi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/zh-cn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/langs/zh-tw_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advhr/rule.htm 58 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/css/advimage.css 13 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/editor_plugin_src.js 50 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/image.htm 235 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/img/sample.gif patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/js/image.js 464 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/ar_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/az_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/bg_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/bn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/br_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/bs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/ca_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/cs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/cy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/da_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/de_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/el_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/en_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/eo_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/es_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/et_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/eu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/fa_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/fi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/fr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/gl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/he_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/hi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/hr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/hu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/hy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/id_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/is_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/it_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/ja_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/ka_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/ko_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/lt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/lv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/mk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/ms_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/nb_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/nl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/nn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/pl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/ps_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/pt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/ro_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/ru_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/si_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/sk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/sl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/sq_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/sr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/sv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/ta_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/th_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/tr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/uk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/vi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/zh-cn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advimage/langs/zh-tw_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/css/advlink.css 8 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/editor_plugin_src.js 61 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/js/advlink.js 543 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/ar_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/az_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/bg_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/bn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/br_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/bs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/ca_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/cs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/cy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/da_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/de_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/el_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/en_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/eo_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/es_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/et_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/eu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/fa_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/fi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/fr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/gl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/he_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/hi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/hr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/hu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/hy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/id_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/is_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/it_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/ja_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/ka_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/ko_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/lt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/lv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/mk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/ms_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/nb_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/nl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/nn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/pl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/ps_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/pt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/ro_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/ru_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/si_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/sk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/sl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/sq_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/sr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/sv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/ta_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/th_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/tr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/uk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/vi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/zh-cn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/langs/zh-tw_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlink/link.htm 338 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlist/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/advlist/editor_plugin_src.js 176 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/autolink/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/autolink/editor_plugin_src.js 184 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/autoresize/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/autoresize/editor_plugin_src.js 119 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/autosave/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/autosave/editor_plugin_src.js 433 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/autosave/langs/en.js 4 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/bbcode/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/bbcode/editor_plugin_src.js 120 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/contextmenu/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/contextmenu/editor_plugin_src.js 163 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/directionality/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/directionality/editor_plugin_src.js 85 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/editor_plugin_src.js 43 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/emotions.htm 42 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/js/emotions.js 43 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/ar_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/az_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/bg_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/bn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/br_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/bs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/ca_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/cs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/cy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/da_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/de_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/el_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/en_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/eo_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/es_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/et_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/eu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/fa_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/fi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/fr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/gl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/he_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/hi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/hr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/hu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/hy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/id_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/is_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/it_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/ja_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/ka_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/ko_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/lt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/lv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/mk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/ms_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/nb_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/nl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/nn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/pl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/ps_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/pt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/ro_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/ru_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/si_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/sk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/sl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/sq_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/sr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/sv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/ta_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/th_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/tr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/uk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/vi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/zh-cn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/emotions/langs/zh-tw_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/example/dialog.htm 22 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/example/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/example/editor_plugin_src.js 84 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/example/img/example.gif patch | view | raw | blame | history
program/js/tiny_mce/plugins/example/js/dialog.js 19 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/example/langs/en.js 3 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/example/langs/en_dlg.js 3 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/example_dependency/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/example_dependency/editor_plugin_src.js 50 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/css/fullpage.css 143 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/editor_plugin_src.js 405 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/fullpage.htm 259 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/js/fullpage.js 232 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/ar_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/az_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/bg_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/bn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/br_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/bs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/ca_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/cs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/cy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/da_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/de_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/el_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/en_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/eo_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/es_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/et_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/eu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/fa_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/fi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/fr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/gl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/he_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/hi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/hr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/hu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/hy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/id_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/is_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/it_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/ja_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/ka_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/ko_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/lt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/lv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/mk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/ms_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/nb_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/nl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/nn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/pl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/ps_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/pt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/ro_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/ru_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/si_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/sk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/sl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/sq_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/sr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/sv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/ta_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/th_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/tr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/uk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/vi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/zh-cn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullpage/langs/zh-tw_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullscreen/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullscreen/editor_plugin_src.js 234 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/fullscreen/fullscreen.htm 117 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/iespell/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/iespell/editor_plugin_src.js 54 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/inlinepopups/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/inlinepopups/editor_plugin_src.js 699 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/alert.gif patch | view | raw | blame | history
program/js/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/button.gif patch | view | raw | blame | history
program/js/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif patch | view | raw | blame | history
program/js/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/confirm.gif patch | view | raw | blame | history
program/js/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/corners.gif patch | view | raw | blame | history
program/js/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/horizontal.gif patch | view | raw | blame | history
program/js/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/vertical.gif patch | view | raw | blame | history
program/js/tiny_mce/plugins/inlinepopups/skins/clearlooks2/window.css 90 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/inlinepopups/template.htm 387 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/insertdatetime/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/insertdatetime/editor_plugin_src.js 83 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/layer/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/layer/editor_plugin_src.js 262 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/legacyoutput/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/legacyoutput/editor_plugin_src.js 139 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/lists/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/lists/editor_plugin_src.js 955 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/css/media.css 17 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/editor_plugin_src.js 898 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/js/embed.js 73 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/js/media.js 513 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/ar_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/az_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/bg_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/bn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/br_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/bs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/ca_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/cs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/cy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/da_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/de_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/el_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/en_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/eo_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/es_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/et_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/eu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/fa_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/fi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/fr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/gl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/he_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/hi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/hr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/hu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/hy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/id_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/is_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/it_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/ja_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/ka_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/ko_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/lt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/lv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/mk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/ms_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/nb_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/nl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/nn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/pl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/ps_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/pt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/ro_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/ru_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/si_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/sk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/sl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/sq_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/sr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/sv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/ta_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/th_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/tr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/uk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/vi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/zh-cn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/langs/zh-tw_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/media.htm 922 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/media/moxieplayer.swf patch | view | raw | blame | history
program/js/tiny_mce/plugins/nonbreaking/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/nonbreaking/editor_plugin_src.js 54 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/noneditable/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/noneditable/editor_plugin_src.js 537 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/pagebreak/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/pagebreak/editor_plugin_src.js 74 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/editor_plugin_src.js 887 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/js/pastetext.js 36 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/js/pasteword.js 51 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/ar_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/az_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/bg_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/bn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/br_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/bs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/ca_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/cs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/cy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/da_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/de_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/el_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/en_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/eo_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/es_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/et_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/eu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/fa_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/fi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/fr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/gl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/he_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/hi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/hr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/hu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/hy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/id_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/is_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/it_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/ja_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/ka_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/ko_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/lt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/lv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/mk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/ms_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/nb_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/nl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/nn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/pl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/ps_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/pt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/ro_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/ru_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/si_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/sk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/sl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/sq_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/sr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/sv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/ta_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/th_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/tr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/uk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/vi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/zh-cn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/langs/zh-tw_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/pastetext.htm 27 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/paste/pasteword.htm 21 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/preview/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/preview/editor_plugin_src.js 53 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/preview/example.html 28 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/preview/jscripts/embed.js 73 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/preview/preview.html 17 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/print/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/print/editor_plugin_src.js 34 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/save/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/save/editor_plugin_src.js 101 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/css/searchreplace.css 6 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/editor_plugin_src.js 61 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/js/searchreplace.js 148 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/ar_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/az_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/bg_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/bn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/br_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/bs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/ca_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/cs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/cy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/da_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/de_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/el_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/en_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/eo_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/es_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/et_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/eu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/fa_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/fi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/fr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/gl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/he_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/hi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/hr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/hu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/hy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/id_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/is_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/it_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/ja_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/ka_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/ko_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/lt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/lv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/mk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/ms_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/nb_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/nl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/nn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/pl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/ps_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/pt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/ro_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/ru_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/si_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/sk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/sl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/sq_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/sr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/sv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/ta_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/th_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/tr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/uk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/vi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/zh-cn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/langs/zh-tw_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/searchreplace/searchreplace.htm 100 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/spellchecker/css/content.css 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/spellchecker/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/spellchecker/editor_plugin_src.js 471 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/spellchecker/img/wline.gif patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/css/props.css 14 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/editor_plugin_src.js 71 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/js/props.js 709 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/ar_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/az_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/bg_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/bn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/br_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/bs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/ca_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/cs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/cy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/da_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/de_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/el_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/en_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/eo_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/es_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/et_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/eu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/fa_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/fi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/fr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/gl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/he_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/hi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/hr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/hu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/hy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/id_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/is_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/it_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/ja_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/ka_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/ko_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/lt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/lv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/mk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/ms_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/nb_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/nl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/nn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/pl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/ps_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/pt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/ro_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/ru_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/si_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/sk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/sl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/sq_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/sr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/sv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/ta_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/th_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/tr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/uk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/vi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/zh-cn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/langs/zh-tw_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/props.htm 845 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/style/readme.txt 19 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/tabfocus/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/tabfocus/editor_plugin_src.js 122 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/cell.htm 180 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/css/cell.css 17 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/css/row.css 25 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/css/table.css 13 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/editor_plugin_src.js 1456 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/js/cell.js 319 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/js/merge_cells.js 27 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/js/row.js 254 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/js/table.js 501 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/ar_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/az_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/bg_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/bn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/br_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/bs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/ca_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/cs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/cy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/da_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/de_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/el_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/en_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/eo_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/es_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/et_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/eu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/fa_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/fi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/fr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/gl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/he_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/hi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/hr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/hu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/hy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/id_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/is_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/it_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/ja_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/ka_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/ko_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/lt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/lv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/mk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/ms_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/nb_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/nl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/nn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/pl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/ps_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/pt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/ro_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/ru_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/si_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/sk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/sl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/sq_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/sr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/sv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/ta_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/th_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/tr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/uk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/vi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/zh-cn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/langs/zh-tw_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/merge_cells.htm 32 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/row.htm 158 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/table/table.htm 188 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/blank.htm 12 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/css/template.css 23 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/editor_plugin_src.js 159 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/js/template.js 106 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/ar_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/az_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/bg_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/bn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/br_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/bs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/ca_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/cs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/cy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/da_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/de_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/el_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/en_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/eo_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/es_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/et_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/eu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/fa_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/fi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/fr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/gl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/he_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/hi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/hr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/hu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/hy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/id_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/is_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/it_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/ja_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/ka_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/ko_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/lt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/lv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/mk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/ms_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/nb_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/nl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/nn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/pl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/ps_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/pt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/ro_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/ru_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/si_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/sk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/sl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/sq_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/sr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/sv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/ta_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/th_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/tr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/uk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/vi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/zh-cn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/langs/zh-tw_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/template/template.htm 31 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/visualblocks/css/visualblocks.css 21 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/visualblocks/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/visualblocks/editor_plugin_src.js 63 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/visualchars/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/visualchars/editor_plugin_src.js 83 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/wordcount/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/wordcount/editor_plugin_src.js 122 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/abbr.htm 142 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/acronym.htm 142 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/attributes.htm 149 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/cite.htm 142 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/css/attributes.css 11 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/css/popup.css 9 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/del.htm 162 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/editor_plugin.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/editor_plugin_src.js 132 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/ins.htm 162 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/js/abbr.js 28 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/js/acronym.js 28 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/js/attributes.js 111 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/js/cite.js 28 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/js/del.js 53 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/js/element_common.js 229 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/js/ins.js 53 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/ar_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/az_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/bg_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/bn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/br_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/bs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/ca_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/cs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/cy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/da_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/de_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/el_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/en_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/eo_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/es_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/et_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/eu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/fa_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/fi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/fr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/gl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/he_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/hi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/hr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/hu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/hy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/id_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/is_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/it_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/ja_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/ka_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/ko_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/lt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/lv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/mk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/ms_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/nb_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/nl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/nn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/pl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/ps_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/pt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/ro_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/ru_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/si_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/sk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/sl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/sq_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/sr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/sv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/ta_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/th_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/tr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/uk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/vi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/zh-cn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/plugins/xhtmlxtras/langs/zh-tw_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/about.htm 52 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/anchor.htm 26 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/charmap.htm 55 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/color_picker.htm 70 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/editor_template.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/editor_template_src.js 1490 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/image.htm 80 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/img/colorpicker.jpg patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/img/flash.gif patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/img/icons.gif patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/img/iframe.gif patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/img/pagebreak.gif patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/img/quicktime.gif patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/img/realmedia.gif patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/img/shockwave.gif patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/img/video.gif patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/img/windowsmedia.gif patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/js/about.js 73 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/js/anchor.js 56 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/js/charmap.js 363 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/js/color_picker.js 345 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/js/image.js 253 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/js/link.js 159 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/js/source_editor.js 78 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/ar.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/ar_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/az.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/az_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/bg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/bg_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/bn.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/bn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/br.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/br_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/bs.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/bs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/ca.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/ca_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/cs.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/cs_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/cy.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/cy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/da.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/da_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/de.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/de_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/el.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/el_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/en.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/en_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/eo.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/eo_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/es.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/es_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/et.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/et_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/eu.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/eu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/fa.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/fa_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/fi.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/fi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/fr.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/fr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/gl.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/gl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/he.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/he_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/hi.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/hi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/hr.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/hr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/hu.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/hu_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/hy.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/hy_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/id.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/id_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/is.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/is_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/it.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/it_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/ja.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/ja_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/ka.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/ka_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/ko.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/ko_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/lt.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/lt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/lv.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/lv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/mk.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/mk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/ms.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/ms_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/nb.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/nb_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/nl.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/nl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/nn.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/nn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/pl.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/pl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/ps.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/ps_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/pt.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/pt_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/ro.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/ro_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/ru.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/ru_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/si.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/si_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/sk.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/sk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/sl.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/sl_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/sq.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/sq_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/sr.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/sr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/sv.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/sv_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/ta.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/ta_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/th.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/th_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/tr.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/tr_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/uk.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/uk_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/vi.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/vi_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/zh-cn.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/zh-cn_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/zh-tw.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/langs/zh-tw_dlg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/link.htm 57 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/shortcuts.htm 47 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/skins/default/content.css 50 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/skins/default/dialog.css 118 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/skins/default/img/buttons.png patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/skins/default/img/items.gif patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/skins/default/img/menu_arrow.gif patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/skins/default/img/menu_check.gif patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/skins/default/img/progress.gif patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/skins/default/img/tabs.gif patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/skins/default/ui.css 219 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/skins/highcontrast/content.css 24 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/skins/highcontrast/dialog.css 106 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/skins/highcontrast/ui.css 106 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/skins/o2k7/content.css 48 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/skins/o2k7/dialog.css 118 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/skins/o2k7/img/button_bg.png patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_black.png patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_silver.png patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/skins/o2k7/ui.css 222 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/skins/o2k7/ui_black.css 8 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/skins/o2k7/ui_silver.css 5 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/advanced/source_editor.htm 25 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/editor_template.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/editor_template_src.js 84 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/img/icons.gif patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/ar.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/az.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/bg.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/bn.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/br.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/bs.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/ca.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/cs.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/cy.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/da.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/de.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/el.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/en.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/eo.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/es.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/et.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/eu.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/fa.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/fi.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/fr.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/gl.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/he.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/hi.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/hr.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/hu.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/hy.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/id.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/is.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/it.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/ja.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/ka.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/ko.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/lt.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/lv.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/mk.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/ms.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/nb.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/nl.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/nn.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/pl.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/ps.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/pt.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/ro.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/ru.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/si.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/sk.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/sl.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/sq.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/sr.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/sv.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/ta.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/th.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/tr.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/uk.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/vi.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/zh-cn.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/langs/zh-tw.js 1 ●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/skins/default/content.css 25 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/skins/default/ui.css 32 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/skins/o2k7/content.css 17 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/skins/o2k7/img/button_bg.png patch | view | raw | blame | history
program/js/tiny_mce/themes/simple/skins/o2k7/ui.css 35 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/tiny_mce.js 15 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/tiny_mce_popup.js 5 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/tiny_mce_src.js 19127 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/utils/editable_selects.js 70 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/utils/form_utils.js 210 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/utils/mctabs.js 162 ●●●●● patch | view | raw | blame | history
program/js/tiny_mce/utils/validate.js 252 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/ar.js 180 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/ar_SA.js 180 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/az.js 194 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/be.js 197 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/bg_BG.js 179 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/bn_BD.js 179 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/bs.js 186 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/ca.js 197 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/cs.js 196 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/cy.js 179 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/da.js 197 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/de.js 197 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/de_AT.js 197 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/dv.js 192 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/el.js 197 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/en_CA.js 191 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/en_GB.js 179 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/es.js 197 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/et.js 179 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/eu.js 191 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/fa.js 180 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/fi.js 194 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/fo.js 179 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/fr_FR.js 184 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/gd.js 179 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/gl.js 191 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/he_IL.js 180 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/hr.js 179 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/hu_HU.js 197 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/hy.js 179 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/id.js 186 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/is_IS.js 179 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/it.js 179 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/ja.js 197 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/ka_GE.js 179 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/kk.js 179 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/km_KH.js 197 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/ko_KR.js 186 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/lb.js 180 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/lt.js 186 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/lv.js 197 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/ml.js 179 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/ml_IN.js 179 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/mn_MN.js 179 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/nb_NO.js 197 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/nl.js 191 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/pl.js 191 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/pt_BR.js 191 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/pt_PT.js 197 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/ro.js 197 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/ru.js 196 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/si_LK.js 179 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/sk.js 197 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/sl_SI.js 179 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/sr.js 179 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/sv_SE.js 197 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/ta.js 197 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/ta_IN.js 197 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/tg.js 191 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/th_TH.js 179 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/tr_TR.js 192 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/tt.js 197 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/ug.js 189 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/uk.js 197 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/uk_UA.js 191 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/vi.js 179 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/vi_VN.js 197 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/zh_CN.js 197 ●●●●● patch | view | raw | blame | history
program/js/tinymce/langs/zh_TW.js 186 ●●●●● patch | view | raw | blame | history
program/js/tinymce/license.txt 504 ●●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/advlist/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/anchor/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/autolink/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/autoresize/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/autosave/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/bbcode/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/charmap/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/code/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/colorpicker/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/contextmenu/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/directionality/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/emoticons/img/smiley-cool.gif patch | view | raw | blame | history
program/js/tinymce/plugins/emoticons/img/smiley-cry.gif patch | view | raw | blame | history
program/js/tinymce/plugins/emoticons/img/smiley-embarassed.gif patch | view | raw | blame | history
program/js/tinymce/plugins/emoticons/img/smiley-foot-in-mouth.gif patch | view | raw | blame | history
program/js/tinymce/plugins/emoticons/img/smiley-frown.gif patch | view | raw | blame | history
program/js/tinymce/plugins/emoticons/img/smiley-innocent.gif patch | view | raw | blame | history
program/js/tinymce/plugins/emoticons/img/smiley-kiss.gif patch | view | raw | blame | history
program/js/tinymce/plugins/emoticons/img/smiley-laughing.gif patch | view | raw | blame | history
program/js/tinymce/plugins/emoticons/img/smiley-money-mouth.gif patch | view | raw | blame | history
program/js/tinymce/plugins/emoticons/img/smiley-sealed.gif patch | view | raw | blame | history
program/js/tinymce/plugins/emoticons/img/smiley-smile.gif patch | view | raw | blame | history
program/js/tinymce/plugins/emoticons/img/smiley-surprised.gif patch | view | raw | blame | history
program/js/tinymce/plugins/emoticons/img/smiley-tongue-out.gif patch | view | raw | blame | history
program/js/tinymce/plugins/emoticons/img/smiley-undecided.gif patch | view | raw | blame | history
program/js/tinymce/plugins/emoticons/img/smiley-wink.gif patch | view | raw | blame | history
program/js/tinymce/plugins/emoticons/img/smiley-yell.gif patch | view | raw | blame | history
program/js/tinymce/plugins/emoticons/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/fullpage/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/fullscreen/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/hr/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/image/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/importcss/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/insertdatetime/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/layer/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/legacyoutput/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/link/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/lists/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/media/moxieplayer.swf patch | view | raw | blame | history
program/js/tinymce/plugins/media/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/nonbreaking/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/noneditable/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/pagebreak/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/paste/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/preview/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/print/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/save/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/searchreplace/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/spellchecker/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/tabfocus/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/table/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/template/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/textcolor/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/visualblocks/css/visualblocks.css 135 ●●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/visualblocks/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/visualchars/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/plugins/wordcount/plugin.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/roundcube/browser.css 90 ●●●●● patch | view | raw | blame | history
program/js/tinymce/roundcube/content.css 26 ●●●●● patch | view | raw | blame | history
program/js/tinymce/roundcube/video.png patch | view | raw | blame | history
program/js/tinymce/skins/lightgray/content.inline.min.css 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/skins/lightgray/content.min.css 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/skins/lightgray/fonts/readme.md 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/skins/lightgray/fonts/tinymce-small.dev.svg 175 ●●●●● patch | view | raw | blame | history
program/js/tinymce/skins/lightgray/fonts/tinymce-small.eot patch | view | raw | blame | history
program/js/tinymce/skins/lightgray/fonts/tinymce-small.svg 62 ●●●●● patch | view | raw | blame | history
program/js/tinymce/skins/lightgray/fonts/tinymce-small.ttf patch | view | raw | blame | history
program/js/tinymce/skins/lightgray/fonts/tinymce-small.woff patch | view | raw | blame | history
program/js/tinymce/skins/lightgray/fonts/tinymce.dev.svg 153 ●●●●● patch | view | raw | blame | history
program/js/tinymce/skins/lightgray/fonts/tinymce.eot patch | view | raw | blame | history
program/js/tinymce/skins/lightgray/fonts/tinymce.svg 63 ●●●●● patch | view | raw | blame | history
program/js/tinymce/skins/lightgray/fonts/tinymce.ttf patch | view | raw | blame | history
program/js/tinymce/skins/lightgray/fonts/tinymce.woff patch | view | raw | blame | history
program/js/tinymce/skins/lightgray/img/anchor.gif patch | view | raw | blame | history
program/js/tinymce/skins/lightgray/img/loader.gif patch | view | raw | blame | history
program/js/tinymce/skins/lightgray/img/object.gif patch | view | raw | blame | history
program/js/tinymce/skins/lightgray/img/trans.gif patch | view | raw | blame | history
program/js/tinymce/skins/lightgray/skin.ie7.min.css 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/skins/lightgray/skin.min.css 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/themes/modern/theme.min.js 1 ●●●● patch | view | raw | blame | history
program/js/tinymce/tinymce.min.js 11 ●●●●● patch | view | raw | blame | history
program/js/treelist.js 588 ●●●●● patch | view | raw | blame | history
program/lib/Auth/SASL.php 125 ●●●●● patch | view | raw | blame | history
program/lib/Auth/SASL/Anonymous.php 71 ●●●●● patch | view | raw | blame | history
program/lib/Auth/SASL/Common.php 105 ●●●●● patch | view | raw | blame | history
program/lib/Auth/SASL/CramMD5.php 68 ●●●●● patch | view | raw | blame | history
program/lib/Auth/SASL/DigestMD5.php 197 ●●●●● patch | view | raw | blame | history
program/lib/Auth/SASL/External.php 63 ●●●●● patch | view | raw | blame | history
program/lib/Auth/SASL/Login.php 65 ●●●●● patch | view | raw | blame | history
program/lib/Auth/SASL/Plain.php 63 ●●●●● patch | view | raw | blame | history
program/lib/Auth/SASL/SCRAM.php 306 ●●●●● patch | view | raw | blame | history
program/lib/Crypt/GPG.php 2386 ●●●●● patch | view | raw | blame | history
program/lib/Crypt/GPG/ByteUtils.php 105 ●●●●● patch | view | raw | blame | history
program/lib/Crypt/GPG/DecryptStatusHandler.php 344 ●●●●● patch | view | raw | blame | history
program/lib/Crypt/GPG/Engine.php 2006 ●●●●● patch | view | raw | blame | history
program/lib/Crypt/GPG/Exceptions.php 598 ●●●●● patch | view | raw | blame | history
program/lib/Crypt/GPG/Key.php 223 ●●●●● patch | view | raw | blame | history
program/lib/Crypt/GPG/KeyGenerator.php 790 ●●●●● patch | view | raw | blame | history
program/lib/Crypt/GPG/KeyGeneratorErrorHandler.php 121 ●●●●● patch | view | raw | blame | history
program/lib/Crypt/GPG/KeyGeneratorStatusHandler.php 173 ●●●●● patch | view | raw | blame | history
program/lib/Crypt/GPG/PinEntry.php 875 ●●●●● patch | view | raw | blame | history
program/lib/Crypt/GPG/ProcessControl.php 150 ●●●●● patch | view | raw | blame | history
program/lib/Crypt/GPG/Signature.php 427 ●●●●● patch | view | raw | blame | history
program/lib/Crypt/GPG/SubKey.php 672 ●●●●● patch | view | raw | blame | history
program/lib/Crypt/GPG/UserId.php 373 ●●●●● patch | view | raw | blame | history
program/lib/Crypt/GPG/VerifyStatusHandler.php 216 ●●●●● patch | view | raw | blame | history
program/lib/Crypt/GPGAbstract.php 508 ●●●●● patch | view | raw | blame | history
program/lib/Mail/mime.php 1495 ●●●●● patch | view | raw | blame | history
program/lib/Mail/mimeDecode.php 1003 ●●●●● patch | view | raw | blame | history
program/lib/Mail/mimePart.php 1261 ●●●●● patch | view | raw | blame | history
program/lib/Net/IDNA2.php 3402 ●●●●● patch | view | raw | blame | history
program/lib/Net/IDNA2/Exception.php 4 ●●●● patch | view | raw | blame | history
program/lib/Net/IDNA2/Exception/Nameprep.php 6 ●●●●● patch | view | raw | blame | history
program/lib/Net/SMTP.php 1338 ●●●●● patch | view | raw | blame | history
program/lib/Net/Sieve.php 1274 ●●●●● patch | view | raw | blame | history
program/lib/Net/Socket.php 686 ●●●●● patch | view | raw | blame | history
program/lib/PEAR.php 1137 ●●●●● patch | view | raw | blame | history
program/lib/PEAR5.php 33 ●●●●● patch | view | raw | blame | history
program/lib/Roundcube/bootstrap.php 8 ●●●●● patch | view | raw | blame | history
program/lib/Roundcube/html.php 27 ●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube.php 84 ●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_addressbook.php 56 ●●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_cache.php 35 ●●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_charset.php 26 ●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_contacts.php 2 ●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_csv2vcard.php 175 ●●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_html2text.php 2 ●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_image.php 20 ●●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_imap.php 240 ●●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_imap_generic.php 417 ●●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_imap_search.php 25 ●●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_ldap.php 102 ●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_ldap_generic.php 907 ●●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_ldap_result.php 130 ●●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_message_header.php 12 ●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_mime.php 39 ●●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_output.php 36 ●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_plugin.php 21 ●●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_plugin_api.php 59 ●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_result_multifolder.php 27 ●●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_session.php 12 ●●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_spellchecker.php 13 ●●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_storage.php 17 ●●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_string_replacer.php 2 ●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_text2html.php 309 ●●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_utils.php 81 ●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_vcard.php 61 ●●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_washtml.php 12 ●●●●● patch | view | raw | blame | history
program/lib/encoding/CP1250.map 274 ●●●●● patch | view | raw | blame | history
program/lib/encoding/CP1251.map 274 ●●●●● patch | view | raw | blame | history
program/lib/encoding/CP1252.map 274 ●●●●● patch | view | raw | blame | history
program/lib/encoding/CP1253.map 274 ●●●●● patch | view | raw | blame | history
program/lib/encoding/CP1254.map 274 ●●●●● patch | view | raw | blame | history
program/lib/encoding/CP1255.map 274 ●●●●● patch | view | raw | blame | history
program/lib/encoding/CP1256.map 274 ●●●●● patch | view | raw | blame | history
program/lib/encoding/CP1257.map 274 ●●●●● patch | view | raw | blame | history
program/lib/encoding/CP1258.map 274 ●●●●● patch | view | raw | blame | history
program/lib/encoding/ISO-8859-1.map 303 ●●●●● patch | view | raw | blame | history
program/lib/encoding/ISO-8859-10.map 303 ●●●●● patch | view | raw | blame | history
program/lib/encoding/ISO-8859-11.map 297 ●●●●● patch | view | raw | blame | history
program/lib/encoding/ISO-8859-13.map 299 ●●●●● patch | view | raw | blame | history
program/lib/encoding/ISO-8859-14.map 301 ●●●●● patch | view | raw | blame | history
program/lib/encoding/ISO-8859-15.map 303 ●●●●● patch | view | raw | blame | history
program/lib/encoding/ISO-8859-16.map 299 ●●●●● patch | view | raw | blame | history
program/lib/encoding/ISO-8859-2.map 303 ●●●●● patch | view | raw | blame | history
program/lib/encoding/ISO-8859-3.map 296 ●●●●● patch | view | raw | blame | history
program/lib/encoding/ISO-8859-4.map 303 ●●●●● patch | view | raw | blame | history
program/lib/encoding/ISO-8859-5.map 303 ●●●●● patch | view | raw | blame | history
program/lib/encoding/ISO-8859-6.map 260 ●●●●● patch | view | raw | blame | history
program/lib/encoding/ISO-8859-7.map 308 ●●●●● patch | view | raw | blame | history
program/lib/encoding/ISO-8859-8.map 270 ●●●●● patch | view | raw | blame | history
program/lib/encoding/ISO-8859-9.map 307 ●●●●● patch | view | raw | blame | history
program/lib/encoding/KOI8R.map 302 ●●●●● patch | view | raw | blame | history
program/lib/encoding/KSC5601.map 17078 ●●●●● patch | view | raw | blame | history
program/lib/utf8.class.php 171 ●●●●● patch | view | raw | blame | history
program/localization/ar/labels.inc 4 ●●●● patch | view | raw | blame | history
program/localization/ar_SA/labels.inc 39 ●●●● patch | view | raw | blame | history
program/localization/ar_SA/messages.inc 2 ●●● patch | view | raw | blame | history
program/localization/ast/labels.inc 336 ●●●●● patch | view | raw | blame | history
program/localization/ast/messages.inc 17 ●●●● patch | view | raw | blame | history
program/localization/az_AZ/labels.inc 34 ●●●●● patch | view | raw | blame | history
program/localization/az_AZ/messages.inc 1 ●●●● patch | view | raw | blame | history
program/localization/be_BE/labels.inc 60 ●●●●● patch | view | raw | blame | history
program/localization/be_BE/messages.inc 11 ●●●●● patch | view | raw | blame | history
program/localization/bg_BG/labels.inc 82 ●●●● patch | view | raw | blame | history
program/localization/bg_BG/messages.inc 5 ●●●● patch | view | raw | blame | history
program/localization/bn_BD/labels.inc 24 ●●●● patch | view | raw | blame | history
program/localization/bn_BD/messages.inc 1 ●●●● patch | view | raw | blame | history
program/localization/br/labels.inc 81 ●●●● patch | view | raw | blame | history
program/localization/br/messages.inc 11 ●●●● patch | view | raw | blame | history
program/localization/bs_BA/labels.inc 120 ●●●● patch | view | raw | blame | history
program/localization/bs_BA/messages.inc 5 ●●●● patch | view | raw | blame | history
program/localization/ca_ES/labels.inc 111 ●●●● patch | view | raw | blame | history
program/localization/ca_ES/messages.inc 5 ●●●● patch | view | raw | blame | history
program/localization/cs_CZ/labels.inc 65 ●●●●● patch | view | raw | blame | history
program/localization/cs_CZ/messages.inc 5 ●●●● patch | view | raw | blame | history
program/localization/cy_GB/labels.inc 39 ●●●● patch | view | raw | blame | history
program/localization/cy_GB/messages.inc 3 ●●●● patch | view | raw | blame | history
program/localization/da_DK/labels.inc 60 ●●●●● patch | view | raw | blame | history
program/localization/da_DK/messages.inc 5 ●●●● patch | view | raw | blame | history
program/localization/de_CH/csv2vcard.inc 99 ●●●●● patch | view | raw | blame | history
program/localization/de_CH/labels.inc 41 ●●●● patch | view | raw | blame | history
program/localization/de_CH/messages.inc 4 ●●● patch | view | raw | blame | history
program/localization/de_DE/csv2vcard.inc 99 ●●●●● patch | view | raw | blame | history
program/localization/de_DE/labels.inc 102 ●●●● patch | view | raw | blame | history
program/localization/de_DE/messages.inc 9 ●●●●● patch | view | raw | blame | history
program/localization/el_GR/labels.inc 42 ●●●● patch | view | raw | blame | history
program/localization/el_GR/messages.inc 4 ●●● patch | view | raw | blame | history
program/localization/en_CA/labels.inc 40 ●●●● patch | view | raw | blame | history
program/localization/en_CA/messages.inc 5 ●●●● patch | view | raw | blame | history
program/localization/en_GB/labels.inc 39 ●●●● patch | view | raw | blame | history
program/localization/en_GB/messages.inc 3 ●●●● patch | view | raw | blame | history
program/localization/en_US/labels.inc 120 ●●●● patch | view | raw | blame | history
program/localization/en_US/messages.inc 3 ●●●● patch | view | raw | blame | history
program/localization/eo/labels.inc 24 ●●●● patch | view | raw | blame | history
program/localization/es_419/labels.inc 354 ●●●● patch | view | raw | blame | history
program/localization/es_419/messages.inc 160 ●●●●● patch | view | raw | blame | history
program/localization/es_AR/labels.inc 190 ●●●●● patch | view | raw | blame | history
program/localization/es_AR/messages.inc 22 ●●●●● patch | view | raw | blame | history
program/localization/es_ES/labels.inc 120 ●●●● patch | view | raw | blame | history
program/localization/es_ES/messages.inc 5 ●●●● patch | view | raw | blame | history
program/localization/et_EE/labels.inc 131 ●●●● patch | view | raw | blame | history
program/localization/et_EE/messages.inc 1 ●●●● patch | view | raw | blame | history
program/localization/eu_ES/labels.inc 114 ●●●● patch | view | raw | blame | history
program/localization/eu_ES/messages.inc 35 ●●●●● patch | view | raw | blame | history
program/localization/fa_AF/labels.inc 24 ●●●● patch | view | raw | blame | history
program/localization/fa_AF/messages.inc 1 ●●●● patch | view | raw | blame | history
program/localization/fa_IR/labels.inc 51 ●●●●● patch | view | raw | blame | history
program/localization/fa_IR/messages.inc 2 ●●●●● patch | view | raw | blame | history
program/localization/fi_FI/labels.inc 79 ●●●● patch | view | raw | blame | history
program/localization/fi_FI/messages.inc 6 ●●●● patch | view | raw | blame | history
program/localization/fo_FO/labels.inc 34 ●●●●● patch | view | raw | blame | history
program/localization/fo_FO/messages.inc 1 ●●●● patch | view | raw | blame | history
program/localization/fr_FR/labels.inc 129 ●●●● patch | view | raw | blame | history
program/localization/fr_FR/messages.inc 59 ●●●● patch | view | raw | blame | history
program/localization/fy_NL/labels.inc 6 ●●●● patch | view | raw | blame | history
program/localization/ga_IE/labels.inc 24 ●●●● patch | view | raw | blame | history
program/localization/gl_ES/labels.inc 100 ●●●● patch | view | raw | blame | history
program/localization/gl_ES/messages.inc 7 ●●●● patch | view | raw | blame | history
program/localization/he_IL/labels.inc 134 ●●●● patch | view | raw | blame | history
program/localization/he_IL/messages.inc 5 ●●●● patch | view | raw | blame | history
program/localization/hi_IN/labels.inc 24 ●●●● patch | view | raw | blame | history
program/localization/hr_HR/labels.inc 39 ●●●● patch | view | raw | blame | history
program/localization/hr_HR/messages.inc 4 ●●● patch | view | raw | blame | history
program/localization/hu_HU/labels.inc 93 ●●●●● patch | view | raw | blame | history
program/localization/hu_HU/messages.inc 27 ●●●●● patch | view | raw | blame | history
program/localization/hy_AM/labels.inc 31 ●●●● patch | view | raw | blame | history
program/localization/hy_AM/messages.inc 1 ●●●● patch | view | raw | blame | history
program/localization/ia/labels.inc 28 ●●●● patch | view | raw | blame | history
program/localization/id_ID/labels.inc 53 ●●●●● patch | view | raw | blame | history
program/localization/id_ID/messages.inc 11 ●●●●● patch | view | raw | blame | history
program/localization/is_IS/labels.inc 31 ●●●● patch | view | raw | blame | history
program/localization/it_IT/csv2vcard.inc 11 ●●●●● patch | view | raw | blame | history
program/localization/it_IT/labels.inc 120 ●●●● patch | view | raw | blame | history
program/localization/it_IT/messages.inc 5 ●●●● patch | view | raw | blame | history
program/localization/ja_JP/labels.inc 71 ●●●● patch | view | raw | blame | history
program/localization/ja_JP/messages.inc 5 ●●●● patch | view | raw | blame | history
program/localization/ka_GE/labels.inc 29 ●●●●● patch | view | raw | blame | history
program/localization/ka_GE/messages.inc 1 ●●●● patch | view | raw | blame | history
program/localization/km_KH/labels.inc 52 ●●●●● patch | view | raw | blame | history
program/localization/kn_IN/labels.inc 7 ●●●● patch | view | raw | blame | history
program/localization/ko_KR/labels.inc 286 ●●●●● patch | view | raw | blame | history
program/localization/ko_KR/messages.inc 241 ●●●● patch | view | raw | blame | history
program/localization/ku/labels.inc 24 ●●●● patch | view | raw | blame | history
program/localization/lb_LU/labels.inc 51 ●●●●● patch | view | raw | blame | history
program/localization/lb_LU/messages.inc 5 ●●●● patch | view | raw | blame | history
program/localization/lt_LT/labels.inc 121 ●●●● patch | view | raw | blame | history
program/localization/lt_LT/messages.inc 8 ●●●● patch | view | raw | blame | history
program/localization/lv_LV/labels.inc 64 ●●●● patch | view | raw | blame | history
program/localization/lv_LV/messages.inc 7 ●●●● patch | view | raw | blame | history
program/localization/mk_MK/labels.inc 24 ●●●● patch | view | raw | blame | history
program/localization/mk_MK/messages.inc 1 ●●●● patch | view | raw | blame | history
program/localization/ml_IN/labels.inc 10 ●●●● patch | view | raw | blame | history
program/localization/ml_IN/messages.inc 22 ●●●● patch | view | raw | blame | history
program/localization/mr_IN/labels.inc 25 ●●●●● patch | view | raw | blame | history
program/localization/mr_IN/messages.inc 1 ●●●● patch | view | raw | blame | history
program/localization/ms_MY/labels.inc 24 ●●●● patch | view | raw | blame | history
program/localization/nb_NO/labels.inc 39 ●●●● patch | view | raw | blame | history
program/localization/nb_NO/messages.inc 1 ●●●● patch | view | raw | blame | history
program/localization/ne_NP/labels.inc 24 ●●●● patch | view | raw | blame | history
program/localization/nl_BE/labels.inc 25 ●●●●● patch | view | raw | blame | history
program/localization/nl_BE/messages.inc 1 ●●●● patch | view | raw | blame | history
program/localization/nl_NL/labels.inc 120 ●●●● patch | view | raw | blame | history
program/localization/nl_NL/messages.inc 5 ●●●● patch | view | raw | blame | history
program/localization/nn_NO/labels.inc 31 ●●●● patch | view | raw | blame | history
program/localization/nn_NO/messages.inc 1 ●●●● patch | view | raw | blame | history
program/localization/pl_PL/labels.inc 118 ●●●● patch | view | raw | blame | history
program/localization/pl_PL/messages.inc 5 ●●●● patch | view | raw | blame | history
program/localization/ps/labels.inc 24 ●●●● patch | view | raw | blame | history
program/localization/ps/messages.inc 1 ●●●● patch | view | raw | blame | history
program/localization/pt_BR/labels.inc 46 ●●●●● patch | view | raw | blame | history
program/localization/pt_BR/messages.inc 7 ●●●● patch | view | raw | blame | history
program/localization/pt_PT/labels.inc 118 ●●●● patch | view | raw | blame | history
program/localization/pt_PT/messages.inc 5 ●●●● patch | view | raw | blame | history
program/localization/ro_RO/labels.inc 34 ●●●●● patch | view | raw | blame | history
program/localization/ro_RO/messages.inc 3 ●●●●● patch | view | raw | blame | history
program/localization/ru_RU/labels.inc 70 ●●●● patch | view | raw | blame | history
program/localization/ru_RU/messages.inc 5 ●●●● patch | view | raw | blame | history
program/localization/si_LK/labels.inc 30 ●●●● patch | view | raw | blame | history
program/localization/sk_SK/labels.inc 118 ●●●● patch | view | raw | blame | history
program/localization/sk_SK/messages.inc 5 ●●●● patch | view | raw | blame | history
program/localization/sl_SI/labels.inc 34 ●●●●● patch | view | raw | blame | history
program/localization/sl_SI/messages.inc 1 ●●●● patch | view | raw | blame | history
program/localization/sq_AL/labels.inc 24 ●●●● patch | view | raw | blame | history
program/localization/sr_CS/labels.inc 31 ●●●● patch | view | raw | blame | history
program/localization/sr_CS/messages.inc 1 ●●●● patch | view | raw | blame | history
program/localization/sv_SE/labels.inc 116 ●●●● patch | view | raw | blame | history
program/localization/sv_SE/messages.inc 7 ●●●● patch | view | raw | blame | history
program/localization/ta_IN/labels.inc 24 ●●●● patch | view | raw | blame | history
program/localization/ta_IN/messages.inc 4 ●●● patch | view | raw | blame | history
program/localization/th_TH/labels.inc 28 ●●●● patch | view | raw | blame | history
program/localization/ti/labels.inc 4 ●●●● patch | view | raw | blame | history
program/localization/tr_TR/labels.inc 114 ●●●● patch | view | raw | blame | history
program/localization/tr_TR/messages.inc 5 ●●●● patch | view | raw | blame | history
program/localization/uk_UA/labels.inc 31 ●●●● patch | view | raw | blame | history
program/localization/uk_UA/messages.inc 1 ●●●● patch | view | raw | blame | history
program/localization/ur_PK/labels.inc 4 ●●●● patch | view | raw | blame | history
program/localization/vi_VN/labels.inc 39 ●●●● patch | view | raw | blame | history
program/localization/vi_VN/messages.inc 23 ●●●●● patch | view | raw | blame | history
program/localization/zh_CN/labels.inc 107 ●●●● patch | view | raw | blame | history
program/localization/zh_CN/messages.inc 1 ●●●● patch | view | raw | blame | history
program/localization/zh_TW/labels.inc 44 ●●●●● patch | view | raw | blame | history
program/localization/zh_TW/messages.inc 4 ●●● patch | view | raw | blame | history
program/steps/addressbook/delete.inc 40 ●●●●● patch | view | raw | blame | history
program/steps/addressbook/edit.inc 6 ●●●●● patch | view | raw | blame | history
program/steps/addressbook/export.inc 4 ●●● patch | view | raw | blame | history
program/steps/addressbook/func.inc 68 ●●●●● patch | view | raw | blame | history
program/steps/addressbook/move.inc 24 ●●●●● patch | view | raw | blame | history
program/steps/addressbook/photo.inc 8 ●●●● patch | view | raw | blame | history
program/steps/addressbook/save.inc 39 ●●●●● patch | view | raw | blame | history
program/steps/addressbook/show.inc 7 ●●●● patch | view | raw | blame | history
program/steps/addressbook/undo.inc 3 ●●●●● patch | view | raw | blame | history
program/steps/mail/attachments.inc 25 ●●●● patch | view | raw | blame | history
program/steps/mail/autocomplete.inc 18 ●●●● patch | view | raw | blame | history
program/steps/mail/check_recent.inc 9 ●●●●● patch | view | raw | blame | history
program/steps/mail/compose.inc 59 ●●●●● patch | view | raw | blame | history
program/steps/mail/copy.inc 16 ●●●●● patch | view | raw | blame | history
program/steps/mail/folders.inc 4 ●●●● patch | view | raw | blame | history
program/steps/mail/func.inc 238 ●●●● patch | view | raw | blame | history
program/steps/mail/get.inc 2 ●●● patch | view | raw | blame | history
program/steps/mail/list.inc 102 ●●●●● patch | view | raw | blame | history
program/steps/mail/list_contacts.inc 2 ●●● patch | view | raw | blame | history
program/steps/mail/move_del.inc 17 ●●●●● patch | view | raw | blame | history
program/steps/mail/search.inc 26 ●●●●● patch | view | raw | blame | history
program/steps/mail/search_contacts.inc 2 ●●● patch | view | raw | blame | history
program/steps/mail/sendmail.inc 60 ●●●●● patch | view | raw | blame | history
program/steps/mail/show.inc 22 ●●●●● patch | view | raw | blame | history
program/steps/settings/about.inc 6 ●●●● patch | view | raw | blame | history
program/steps/settings/delete_identity.inc 55 ●●●●● patch | view | raw | blame | history
program/steps/settings/edit_folder.inc 49 ●●●●● patch | view | raw | blame | history
program/steps/settings/edit_identity.inc 16 ●●●● patch | view | raw | blame | history
program/steps/settings/edit_response.inc 2 ●●● patch | view | raw | blame | history
program/steps/settings/folders.inc 198 ●●●● patch | view | raw | blame | history
program/steps/settings/func.inc 35 ●●●● patch | view | raw | blame | history
program/steps/settings/identities.inc 22 ●●●●● patch | view | raw | blame | history
program/steps/settings/responses.inc 10 ●●●●● patch | view | raw | blame | history
program/steps/settings/save_folder.inc 25 ●●●●● patch | view | raw | blame | history
program/steps/settings/save_identity.inc 34 ●●●●● patch | view | raw | blame | history
program/steps/settings/save_prefs.inc 1 ●●●● patch | view | raw | blame | history
program/steps/settings/upload.inc 144 ●●●●● patch | view | raw | blame | history
program/steps/utils/html2text.inc 5 ●●●●● patch | view | raw | blame | history
program/steps/utils/spell_html.inc 36 ●●●●● patch | view | raw | blame | history
program/steps/utils/text2html.inc 33 ●●●●● patch | view | raw | blame | history
skins/classic/addressbook.css 47 ●●●● patch | view | raw | blame | history
skins/classic/common.css 320 ●●●●● patch | view | raw | blame | history
skins/classic/editor_content.css 31 ●●●●● patch | view | raw | blame | history
skins/classic/functions.js 232 ●●●●● patch | view | raw | blame | history
skins/classic/images/filedrop.png patch | view | raw | blame | history
skins/classic/includes/links.html 1 ●●●● patch | view | raw | blame | history
skins/classic/includes/messagetoolbar.html 30 ●●●● patch | view | raw | blame | history
skins/classic/mail.css 358 ●●●● patch | view | raw | blame | history
skins/classic/print.css 12 ●●●● patch | view | raw | blame | history
skins/classic/settings.css 68 ●●●●● patch | view | raw | blame | history
skins/classic/templates/about.html 2 ●●● patch | view | raw | blame | history
skins/classic/templates/addressbook.html 3 ●●●● patch | view | raw | blame | history
skins/classic/templates/compose.html 6 ●●●● patch | view | raw | blame | history
skins/classic/templates/folders.html 17 ●●●● patch | view | raw | blame | history
skins/classic/templates/mail.html 8 ●●●● patch | view | raw | blame | history
skins/classic/templates/message.html 2 ●●● patch | view | raw | blame | history
skins/classic/templates/messagepreview.html 4 ●●●● patch | view | raw | blame | history
skins/larry/addressbook.css 108 ●●●● patch | view | raw | blame | history
skins/larry/editor_content.css 31 ●●●●● patch | view | raw | blame | history
skins/larry/images/buttons.png patch | view | raw | blame | history
skins/larry/images/listicons.png patch | view | raw | blame | history
skins/larry/includes/footer.html 1 ●●●● patch | view | raw | blame | history
skins/larry/includes/header.html 18 ●●●●● patch | view | raw | blame | history
skins/larry/includes/links.html 1 ●●●● patch | view | raw | blame | history
skins/larry/includes/mailtoolbar.html 58 ●●●● patch | view | raw | blame | history
skins/larry/includes/settingstabs.html 8 ●●●●● patch | view | raw | blame | history
skins/larry/mail.css 469 ●●●● patch | view | raw | blame | history
skins/larry/print.css 11 ●●●● patch | view | raw | blame | history
skins/larry/settings.css 149 ●●●●● patch | view | raw | blame | history
skins/larry/styles.css 681 ●●●● patch | view | raw | blame | history
skins/larry/templates/about.html 2 ●●● patch | view | raw | blame | history
skins/larry/templates/addressbook.html 124 ●●●●● patch | view | raw | blame | history
skins/larry/templates/compose.html 132 ●●●● patch | view | raw | blame | history
skins/larry/templates/contactedit.html 10 ●●●●● patch | view | raw | blame | history
skins/larry/templates/folders.html 44 ●●●● patch | view | raw | blame | history
skins/larry/templates/identities.html 15 ●●●● patch | view | raw | blame | history
skins/larry/templates/importcontacts.html 25 ●●●●● patch | view | raw | blame | history
skins/larry/templates/login.html 10 ●●●●● patch | view | raw | blame | history
skins/larry/templates/mail.html 150 ●●●●● patch | view | raw | blame | history
skins/larry/templates/message.html 48 ●●●●● patch | view | raw | blame | history
skins/larry/templates/messageerror.html 14 ●●●●● patch | view | raw | blame | history
skins/larry/templates/messagepart.html 18 ●●●●● patch | view | raw | blame | history
skins/larry/templates/messagepreview.html 68 ●●●● patch | view | raw | blame | history
skins/larry/templates/responses.html 14 ●●●●● patch | view | raw | blame | history
skins/larry/templates/settings.html 13 ●●●●● patch | view | raw | blame | history
skins/larry/ui.js 446 ●●●● patch | view | raw | blame | history
tests/Framework/Csv2vcard.php 18 ●●●●● patch | view | raw | blame | history
tests/Framework/Html.php 9 ●●●●● patch | view | raw | blame | history
tests/Framework/Html2text.php 5 ●●●●● patch | view | raw | blame | history
tests/Framework/Mime.php 3 ●●●●● patch | view | raw | blame | history
tests/Framework/StringReplacer.php 4 ●●●● patch | view | raw | blame | history
tests/Framework/Text2Html.php 94 ●●●●● patch | view | raw | blame | history
tests/Framework/Utils.php 8 ●●●● patch | view | raw | blame | history
tests/Framework/VCard.php 35 ●●●●● patch | view | raw | blame | history
tests/Framework/Washtml.php 24 ●●●●● patch | view | raw | blame | history
tests/MailFunc.php 2 ●●● patch | view | raw | blame | history
tests/RcmailFunc.php 85 ●●●●● patch | view | raw | blame | history
tests/phpunit.xml 3 ●●●●● patch | view | raw | blame | history
tests/src/Csv2vcard/gmail.csv patch | view | raw | blame | history
tests/src/Csv2vcard/gmail.vcf 25 ●●●●● patch | view | raw | blame | history
CHANGELOG
@@ -1,11 +1,39 @@
CHANGELOG Roundcube Webmail
===========================
- Support contacts import in GMail CSV format
- Added namespace filter in Folder Manager
- Added folder searching in Folder Manager
- Added config option/user preference to disable saving messages in localStorage (#1489979)
- Added config option 'imap_log_session' to enable Roundcube <-> IMAP session ID logging
- Added config option 'log_session_id' to control the lengh of the session identifer in logs
- Implemented 'storage_connected' API hook after successful IMAP login (#1490025)
- Intergrate Net_LDAP3 and rcube_ldap_generic classes
- Add option (disabled_actions) to disable UI elements/actions (#1489638)
- Support password encryption using openssl extension (#1489989)
- Create/rename groups in UI dialogs (#1489951)
- Added 'contact_search_name' option to define autocompletion entry format
- Display quota information for current folder not INBOX only (#1487993)
- Support images in HTML signatures (#1488676)
- Display full quota information in popup (#1485769, #1486604)
- Mail compose: Selecting contact inserts recipient to previously focused input - to/cc/bcc accordingly (#1489684)
- Add option to set default message list mode - default_list_mode (#1487312)
- Close "no subject" prompt with Enter key (#1489580)
- Add config option to specify IMAP connection socket parameters - imap_conn_options (#1489948)
- Password: Add option to force new users to change their password (#1486884)
- Improve support for screen readers and assistive technology using WCAG 2.0 and WAI ARIA standards
- Enable basic keyboard navigation throughout the UI (#1487845)
- Select/scroll to previously selected message when returning from message page (#1489023)
- Display a warning if popup window was blocked (#1489618)
- Remove (was: ...) from message subject on reply (#1489375)
- Update to TinyMCE 4.1 (#1489057)
- Enable autolink plugin in TinyMCE (#1488845)
- Support image operations with Imagick extension (#1489734)
- Support upload progress with session.upload_progress and PECL uploadprogress module (#1488702)
- Make identity name field optional (#1489510)
- Utility script to remove user records from the local database
- Plugin API: Added message_saved hook (#1489752)
- Plugin API: Added imap_search_before hook
- Support messages import from zip archives
- Zipdownload: Added mbox format support (#1486069)
- Drop support for IE6, move IE7/IE8 support to legacy_browser plugin
@@ -16,9 +44,51 @@
- Set In-Reply-To and References for forwarded messages (#1489593)
- Removed redundant default_folders config option (#1489737)
- Implemented IMAP SPECIAL-USE extension support [RFC6154] (#1487830)
- Optimize some framed pages content for better performance (#1489792)
- Improve text messages display and conversion to HTML (#1488937)
- Don't remove links when html signature is converted to text (#1489621)
- Fix mbox files import
- Fix some mime-type to extension mapping checks in Installer (#1489983)
- Fix errors when using localStorage in Safari's private browsing mode (#1489996)
- Fix bug where $Forwarded flag was being set even if server didn't support it (#1490000)
- Fix various iCloud vCard issues, added fallback for external photos (#1489993)
- Fix invalid Content-Type header when send_format_flowed=false (#1489992)
- Fix errors when adding/updating contacts in active search (#1490015)
- Fix incorrect thumbnail rotation with GD and exif orientation data (#1490029)
- Fix contacts list update after adding/deleting/moving a contact (#1490028, #1490033)
- Fix handling of email addresses with quoted domain part (#1490040)
- Fix comm_path update on task switch (#1490041)
RELEASE 1.0.2
-------------
- Fix storing unsaved drafts in localStorage (#1489818)
- Add configurable LDAP_OPT_DEREF option (#1489864)
- Fix so when switching editor mode original version of signature is used (#1488849)
- Fix unintentional draft autosave request if autosave is disabled (#1489882)
- Fix malformed References: header in send/saved mail (#1489891)
- Fix handling unicode characters in links (#1489898)
- Fix incorrect handling of HTML comments in messages sanitization code (#1489904)
- Fix so current page is reset on list-mode change (#1489907)
- Fix so responses menu hides on click in classic skin (#1489915)
- Fix unintentional line-height style modification in HTML messages (#1489917)
- Fix broken normalize_string(), add support for ISO-8859-2 (#1489918)
- Support csv contacts import in German localization (#1489920)
- Fix so message list and counters are updated when a message is opened in new window (#1489919)
- Fix malformed recipient name when composing a message by clicking on mailto link (#1489942)
- Fix list reload after sending message in another window (#1489931)
- Fix so address format errors are ignored when saving a draft (#1489954)
- Fix incorrect label translation in return receipt (#1489963)
- Fix security issue in delete-response action - allow only ajax request
- Fix Delete button state after deleting identity/response (#1489972)
- Fix bug where contacts with no email address were listed on compose addressbook (#1489970)
- Fix images import from various vCard formats (#1489977)
- Fix sorting messages by size on servers without SORT capability (#1489981)
RELEASE 1.0.1
-------------
- Support 'error' and 'body_file' return attribs in 'message_before_send' hook (#1489595)
- Apply user-specific replacements to group's base_dn property (#1489779)
- Fix mbox files import
- Fix missing email address when importing contacts from outlook csv (#1489830)
- Fix bug where "With attachment" option in search filter wasn't selected after return from mail view (#1489774)
- Fix "washing" of unicoded style attributes (#1489777)
- Fix unintentional redirect from compose page in Webkit browsers (#1489789)
INSTALL
@@ -15,7 +15,7 @@
   - PCRE, DOM, JSON, XML, Session, Sockets (required)
   - PHP Data Objects (PDO) with driver for either MySQL, PostgreSQL or SQLite (required)
   - Libiconv, Zip (recommended)
   - Fileinfo, Mcrypt, mbstring (optional)
   - OpenSSL, Fileinfo, Mcrypt, mbstring (optional)
* PEAR packages distributed with Roundcube or external:
   - Mail_Mime 1.8.1 or newer
   - Mail_mimeDecode 1.5.5 or newer
@@ -35,7 +35,7 @@
   - magic_quotes_runtime disabled
   - magic_quotes_sybase disabled
   - register_globals disabled (PHP < 5.4)
* PHP compiled with OpenSSL to connect to IMAPS and to use the spell checker
* PHP compiled with OpenSSL to use secure (tls/ssl) connections and to use the spell checker
* A MySQL (4.0.8 or newer), PostgreSQL, MS SQL Server (2005 or newer) database engine
  or SQLite support in PHP
* One of the above databases with permission to create tables
README.md
@@ -27,8 +27,8 @@
text editor, [Googiespell][googiespell] library for spell checking or
the [WASHTML][washtml] sanitizer by Frederic Motte.
The current default skin uses icons designed by Stephen Horlander and [Kevin
Gerich][kmgerich] for Mozilla.org.
The current default skin 'Larry' was kindly created by FLINT / Büro für
Gestaltung, Berne, Switzerland.
INSTALLATION
bin/update.sh
@@ -157,7 +157,7 @@
  if ($RCI->config['db_dsnw']) {
    echo "Executing database schema update.\n";
    system("php " . INSTALL_PATH . "bin/updatedb.sh --package=roundcube --version=" . $opts['version']
      . " --dir=" . INSTALL_PATH . DIRECTORY_SEPARATOR . "SQL", $res);
      . " --dir=" . INSTALL_PATH . "SQL", $res);
    $success = !$res;
  }
bin/updatedb.sh
@@ -116,7 +116,7 @@
    $version = 2012080700;
}
$dir = $opts['dir'] . DIRECTORY_SEPARATOR . $DB->db_provider;
$dir = $opts['dir'] . '/' . $DB->db_provider;
if (!file_exists($dir)) {
    rcube::raise_error("DDL Upgrade files for " . $DB->db_provider . " driver not found.", false, true);
}
@@ -133,7 +133,7 @@
foreach ($result as $v) {
    echo "Updating database schema ($v)... ";
    $error = update_db_schema($opts['package'], $v, $dir . DIRECTORY_SEPARATOR . "$v.sql");
    $error = update_db_schema($opts['package'], $v, "$dir/$v.sql");
    if ($error) {
        echo "[FAILED]\n";
composer.json-dist
@@ -4,13 +4,50 @@
    "license": "GPL-3.0+",
    "repositories": [
        {
            "type": "pear",
            "url": "http://pear.php.net/"
        },
        {
            "type": "composer",
            "url": "http://plugins.roundcube.net/"
        },
        {
            "type": "vcs",
            "url": "git@github.com:roundcube/sample-plugin.git"
        },
        {
            "type": "vcs",
            "url": "git://git.kolab.org/git/pear/Net_LDAP3"
        },
        {
            "type": "package",
            "package": {
                "name": "Net_SMTP",
                "version": "dev-master",
                "source": {
                    "url": "http://github.com/pear/Net_SMTP",
                    "type": "git",
                    "reference": "master"
                }
            }
        }
    ],
    "require": {
        "php": ">=5.3.0",
        "roundcube/plugin-installer": ">=0.1.3"
        "roundcube/plugin-installer": ">=0.1.3",
        "pear/mail_mime": ">=1.8.9",
        "pear/mail_mime-decode": ">=1.5.5",
        "pear/net_smtp": "dev-master",
        "pear-pear.php.net/auth_sasl": ">=1.0.6",
        "pear-pear.php.net/net_idna2": ">=0.1.1",
        "pear-pear.php.net/net_sieve": ">=1.3.2",
        "pear-pear.php.net/net_ldap2": ">=2.0.12",
        "kolab/Net_LDAP3": "dev-master",
        "patchwork/utf8": "1.2.x"
    },
    "require-dev": {
        "pear-pear.php.net/crypt_gpg": "*",
        "phpunit/phpunit": "*"
    },
    "minimum-stability": "dev"
}
config/defaults.inc.php
@@ -66,6 +66,10 @@
// (read http://php.net/manual/en/function.date.php for all format characters)  
$config['log_date_format'] = 'd-M-Y H:i:s O';
// length of the session ID to prepend each log line with
// set to 0 to avoid session IDs being logged.
$config['log_session_id'] = 8;
// Syslog ident string to use, if using the 'syslog' log driver.
$config['syslog_id'] = 'roundcube';
@@ -123,6 +127,27 @@
// best server supported one)
$config['imap_auth_type'] = null;
// IMAP socket context options
// See http://php.net/manual/en/context.ssl.php
// The example below enables server certificate validation
//$config['imap_conn_options'] = array(
//  'ssl'         => array(
//     'verify_peer'  => true,
//     'verify_depth' => 3,
//     'cafile'       => '/etc/openssl/certs/ca.crt',
//   ),
// );
$config['imap_conn_options'] = null;
// IMAP connection timeout, in seconds. Default: 0 (use default_socket_timeout)
$config['imap_timeout'] = 0;
// Optional IMAP authentication identifier to be used as authorization proxy
$config['imap_auth_cid'] = null;
// Optional IMAP authentication password to be used for imap_auth_cid
$config['imap_auth_pw'] = null;
// If you know your imap's folder delimiter, you can specify it here.
// Otherwise it will be determined automatically
$config['imap_delimiter'] = null;
@@ -160,19 +185,17 @@
// Note: Because the list is cached, re-login is required after change.
$config['imap_disabled_caps'] = array();
// IMAP connection timeout, in seconds. Default: 0 (use default_socket_timeout)
$config['imap_timeout'] = 0;
// Optional IMAP authentication identifier to be used as authorization proxy
$config['imap_auth_cid'] = null;
// Optional IMAP authentication password to be used for imap_auth_cid
$config['imap_auth_pw'] = null;
// Log IMAP session identifers after each IMAP login.
// This is used to relate IMAP session with Roundcube user sessions
$config['imap_log_session'] = false;
// Type of IMAP indexes cache. Supported values: 'db', 'apc' and 'memcache'.
$config['imap_cache'] = null;
// Enables messages cache. Only 'db' cache is supported.
// This requires an IMAP server that supports QRESYNC and CONDSTORE
// extensions (RFC7162). See synchronize() in program/lib/Roundcube/rcube_imap_cache.php
// for further info, or if you experience syncing problems.
$config['messages_cache'] = false;
// Lifetime of IMAP indexes cache. Possible units: s, m, h, d, w
@@ -241,12 +264,13 @@
// requires 'smtp_timeout' to be non zero.
// $config['smtp_conn_options'] = array(
//   'ssl'         => array(
//     'verify_peer'     => true,
//     'verify_depth     => 3,
//     'cafile'          => '/etc/openssl/certs/ca.crt',
//     'verify_peer'  => true,
//     'verify_depth' => 3,
//     'cafile'       => '/etc/openssl/certs/ca.crt',
//   ),
// );
$config['smtp_conn_options'] = null;
// ----------------------------------
// LDAP
@@ -268,6 +292,9 @@
// don't allow these settings to be overriden by the user
$config['dont_override'] = array();
// List of disabled UI elements/actions
$config['disabled_actions'] = array();
// define which settings should be listed under the 'advanced' block
// which is hidden by default
@@ -464,6 +491,10 @@
// 3 - one identity with possibility to edit all params but not email address
// 4 - one identity with possibility to edit only signature
$config['identities_level'] = 0;
// Maximum size of uploaded image in kilobytes
// Images (in html signatures) are stored in database as data URIs
$config['identity_image_size'] = 64;
// Mimetypes supported by the browser.
// attachments of these types will open in a preview window
@@ -784,6 +815,8 @@
  'sizelimit'      => '0',          // Enables you to limit the count of entries fetched. Setting this to 0 means no limit.
  'timelimit'      => '0',          // Sets the number of seconds how long is spend on the search. Setting this to 0 means no limit.
  'referrals'      => false,        // Sets the LDAP_OPT_REFERRALS option. Mostly used in multi-domain Active Directory setups
  'dereference'    => 0,            // Sets the LDAP_OPT_DEREF option. One of: LDAP_DEREF_NEVER, LDAP_DEREF_SEARCHING, LDAP_DEREF_FINDING, LDAP_DEREF_ALWAYS
                                    // Used where addressbook contains aliases to objects elsewhere in the LDAP tree.
  // definition for contact groups (uncomment if no groups are supported)
  // for the groups base_dn, the user replacements %fu, %u, $d and %dc work as for base_dn (see above)
@@ -855,6 +888,11 @@
// Note: For LDAP sources fuzzy_search must be enabled to use 'partial' or 'prefix' mode
$config['addressbook_search_mode'] = 0;
// Template of contact entry on the autocompletion list.
// You can use contact fields as: name, email, organization, department, etc.
// See program/steps/addressbook/func.inc for a list
$config['contact_search_name'] = '{name} <{email}>';
// ----------------------------------
// USER PREFERENCES
// ----------------------------------
@@ -909,6 +947,10 @@
// 0 - never, 1 - always, 2 - on reply to HTML message, 3 - on forward or reply to HTML message
$config['htmleditor'] = 0;
// save copies of compose messages in the browser's local storage
// for recovery in case of browser crashes and session timeout.
$config['compose_save_localstorage'] = true;
// show pretty dates as standard
$config['prettydate'] = true;
@@ -960,9 +1002,12 @@
// If true, after message delete/move, the next message will be displayed
$config['display_next'] = true;
// 0 - Do not expand threads
// 1 - Expand all threads automatically
// 2 - Expand only threads with unread messages
// Default messages listing mode. One of 'threads' or 'list'.
$config['default_list_mode'] = 'list';
// 0 - Do not expand threads
// 1 - Expand all threads automatically
// 2 - Expand only threads with unread messages
$config['autoexpand_threads'] = 0;
// When replying:
@@ -987,7 +1032,7 @@
// Defaults of the search field configuration.
// The array can contain a per-folder list of header fields which should be considered when searching
// The entry with key '*' stands for all folders which do not have a specific list set.
// Please note that folder names should to be in sync with $config['default_folders']
// Please note that folder names should to be in sync with $config['*_mbox'] options
$config['search_mods'] = null;  // Example: array('*' => array('subject'=>1, 'from'=>1), 'Sent' => array('subject'=>1, 'to'=>1));
// Defaults of the addressbook search field configuration.
index.php
@@ -44,6 +44,7 @@
// Make the whole PHP output non-cacheable (#1487797)
$RCMAIL->output->nocacheing_headers();
$RCMAIL->output->common_headers();
// turn on output buffering
ob_start();
@@ -188,7 +189,7 @@
}
// check session and auth cookie
else if ($RCMAIL->task != 'login' && $_SESSION['user_id'] && $RCMAIL->action != 'send') {
else if ($RCMAIL->task != 'login' && $_SESSION['user_id']) {
    if (!$RCMAIL->session->check_auth()) {
        $RCMAIL->kill_session();
        $session_error = true;
@@ -211,7 +212,7 @@
        $OUTPUT->show_message('sessionerror', 'error', null, true, -1);
    }
    if ($OUTPUT->ajax_call || !empty($_REQUEST['_framed'])) {
    if ($OUTPUT->ajax_call || $OUTPUT->get_env('framed')) {
        $OUTPUT->command('session_error', $RCMAIL->url(array('_err' => 'session')));
        $OUTPUT->send('iframe');
    }
@@ -259,6 +260,14 @@
                'message' => "Referer check failed"), true, true);
        }
    }
    // check access to disabled actions
    $disabled_actions = (array) $RCMAIL->config->get('disabled_actions');
    if (in_array($RCMAIL->task . '.' . ($RCMAIL->action ?: 'index'), $disabled_actions)) {
        rcube::raise_error(array(
            'code' => 403, 'type' => 'php',
            'message' => "Action disabled"), true, true);
    }
}
// we're ready, user is authenticated and the request is safe
@@ -286,13 +295,14 @@
$redirects = 0; $incstep = null;
while ($redirects < 5) {
    // execute a plugin action
    if ($RCMAIL->plugins->is_plugin_task($RCMAIL->task)) {
        if (!$RCMAIL->action) $RCMAIL->action = 'index';
        $RCMAIL->plugins->exec_action($RCMAIL->task.'.'.$RCMAIL->action);
    if (preg_match('/^plugin\./', $RCMAIL->action)) {
        $RCMAIL->plugins->exec_action($RCMAIL->action);
        break;
    }
    else if (preg_match('/^plugin\./', $RCMAIL->action)) {
        $RCMAIL->plugins->exec_action($RCMAIL->action);
    // execute action registered to a plugin task
    else if ($RCMAIL->plugins->is_plugin_task($RCMAIL->task)) {
        if (!$RCMAIL->action) $RCMAIL->action = 'index';
        $RCMAIL->plugins->exec_action($RCMAIL->task.'.'.$RCMAIL->action);
        break;
    }
    // try to include the step file
installer/check.php
@@ -28,10 +28,13 @@
);
$required_libs = array(
    'PEAR'      => 'PEAR.php',
    'Net_SMTP'  => 'Net/SMTP.php',
    'Net_IDNA2' => 'Net/IDNA2.php',
    'Mail_mime' => 'Mail/mime.php',
    'PEAR'      => 'pear.php.net',
    'Auth_SASL' => 'pear.php.net',
    'Net_SMTP'  => 'pear.php.net',
    'Net_IDNA2' => 'pear.php.net',
    'Net_LDAP3' => 'git.kolab.org',
    'Mail_mime' => 'pear.php.net',
    'Mail_mimeDecode' => 'pear.php.net',
);
$ini_checks = array(
@@ -160,13 +163,13 @@
<?php
foreach ($required_libs as $classname => $file) {
foreach ($required_libs as $classname => $vendor) {
    @include_once $file;
    if (class_exists($classname)) {
        $RCI->pass($classname);
    }
    else {
        $RCI->fail($classname, "Failed to load $file", $source_urls[$classname]);
        $RCI->fail($classname, "Failed to load class $classname from $vendor", $source_urls[$classname]);
    }
    echo "<br />";
}
installer/index.php
@@ -3,9 +3,9 @@
/*
 +-------------------------------------------------------------------------+
 | Roundcube Webmail setup tool                                            |
 | Version 0.9-git                                                         |
 | Version 1.1-git                                                         |
 |                                                                         |
 | Copyright (C) 2009-2013, The Roundcube Dev Team                         |
 | Copyright (C) 2009-2014, The Roundcube Dev Team                         |
 |                                                                         |
 | This program is free software: you can redistribute it and/or modify    |
 | it under the terms of the GNU General Public License (with exceptions   |
@@ -49,6 +49,11 @@
set_include_path($include_path);
// include composer autoloader (if available)
if (@file_exists(INSTALL_PATH . 'vendor/autoload.php')) {
    require INSTALL_PATH . 'vendor/autoload.php';
}
require_once 'Roundcube/bootstrap.php';
// deprecated aliases (to be removed)
require_once 'bc.php';
installer/test.php
@@ -210,7 +210,6 @@
<h3>Test filetype detection</h3>
<p>
<?php
if ($errors = $RCI->check_mime_detection()) {
@@ -225,12 +224,9 @@
}
else {
  $RCI->pass('Fileinfo/mime_content_type configuration');
  echo "<br/>";
}
?>
</p>
<p>
<?php
if ($errors = $RCI->check_mime_extensions()) {
  $RCI->fail('Mimetype to file extension mapping');
@@ -239,6 +235,7 @@
}
else {
  $RCI->pass('Mimetype to file extension mapping');
  echo "<br/>";
}
?>
plugins/acl/acl.js
@@ -24,11 +24,7 @@
                    if (e.field.id != 'acluser')
                        return;
                    var value = e.insert;
                    // get UID from the entry value
                    if (value.match(/\s*\(([^)]+)\)[, ]*$/))
                        value = RegExp.$1;
                    e.field.value = value;
                    e.field.value = e.insert.replace(/[ ,;]+$/, '');
                });
            }
        }
@@ -140,15 +136,16 @@
rcube_webmail.prototype.acl_list_init = function()
{
    var method = this.env.acl_advanced ? 'addClass' : 'removeClass';
    $('#acl-switch')[method]('selected');
    $(this.gui_objects.acltable)[method]('advanced');
    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); });
    this.acl_list.addEventListener('dblclick', function(o) { rcmail.acl_list_dblclick(o); });
    this.acl_list.addEventListener('keypress', function(o) { rcmail.acl_list_keypress(o); });
    this.acl_list.init();
        {multiselect: true, draggable: false, keyboard: true});
    this.acl_list.addEventListener('select', function(o) { rcmail.acl_list_select(o); })
        .addEventListener('dblclick', function(o) { rcmail.acl_list_dblclick(o); })
        .addEventListener('keypress', function(o) { rcmail.acl_list_keypress(o); })
        .init();
}
// ACL table row selection handler
@@ -228,16 +225,23 @@
        row = $('thead > tr', table).clone();
    // Update new row
    $('td', row).map(function() {
        var r, cl = this.className.replace(/^acl/, '');
    $('th', row).map(function() {
        var td = $('<td>'),
            title = $(this).attr('title'),
            cl = this.className.replace(/^acl/, '');
        if (title)
            td.attr('title', title);
        if (items && items[cl])
            cl = items[cl];
        if (cl == 'user')
            $(this).text(o.username);
            td.addClass(cl).append($('<a>').text(o.username));
        else
            $(this).addClass(rcmail.acl_class(o.acl, cl)).text('');
            td.addClass(this.className + ' ' + rcmail.acl_class(o.acl, cl)).text('');
        $(this).replaceWith(td);
    });
    row.attr('id', 'rcmrow'+id);
@@ -281,10 +285,10 @@
{
    var ul, row, td, val = '', type = 'user', li_elements, body = $('body'),
        adv_ul = $('#advancedrights'), sim_ul = $('#simplerights'),
        name_input = $('#acluser');
        name_input = $('#acluser'), type_list = $('#usertype');
    if (!this.acl_form) {
        var fn = function () { $('input[value=user]').prop('checked', true); };
        var fn = function () { $('input[value="user"]').prop('checked', true); };
        name_input.click(fn).keypress(fn);
    }
@@ -329,23 +333,24 @@
    this.acl_id = id;
    var me = this, inst = window.rcmail, body = document.body;
    var buttons = {};
    buttons[rcmail.gettext('save')] = function(e) { inst.command('acl-save'); };
    buttons[rcmail.gettext('cancel')] = function(e) { inst.command('acl-cancel'); };
    var buttons = {}, me = this, body = document.body;
    buttons[this.gettext('save')] = function(e) { me.command('acl-save'); };
    buttons[this.gettext('cancel')] = function(e) { me.command('acl-cancel'); };
    // display it as popup
    this.acl_popup = rcmail.show_popup_dialog(
    this.acl_popup = this.show_popup_dialog(
        '<div style="width:480px;height:280px">&nbsp;</div>',
        id ? rcmail.gettext('acl.editperms') : rcmail.gettext('acl.newuser'),
        id ? this.gettext('acl.editperms') : this.gettext('acl.newuser'),
        buttons,
        {
            modal: true,
            closeOnEscape: false,
            closeOnEscape: true,
            close: function(e, ui) {
                (rcmail.is_framed() ? parent.rcmail : rcmail).ksearch_hide();
                (me.is_framed() ? parent.rcmail : me).ksearch_hide();
                me.acl_form.appendTo(body).hide();
                $(this).remove();
                window.focus(); // focus iframe
            }
        }
    );
@@ -354,9 +359,8 @@
    if (type == 'user')
        name_input.focus();
    // unfocus the list, make backspace key in name input field working
    this.acl_list.blur();
    else
        $('input:checked', type_list).focus();
}
// Returns class name according to ACL comparision result
plugins/acl/acl.php
@@ -88,6 +88,7 @@
        $search = rcube_utils::get_input_value('_search', rcube_utils::INPUT_GPC, true);
        $reqid  = rcube_utils::get_input_value('_reqid', rcube_utils::INPUT_GPC);
        $users  = array();
        $keys   = array();
        if ($this->init_ldap()) {
            $max  = (int) $this->rc->config->get('autocomplete_max', 15);
@@ -105,15 +106,37 @@
                }
                if ($user) {
                    if ($record['name'])
                        $user = $record['name'] . ' (' . $user . ')';
                    $display = rcube_addressbook::compose_search_name($record);
                    $user    = array('name' => $user, 'display' => $display);
                    $users[] = $user;
                    $keys[]  = $display ?: $user['name'];
                }
            }
            if ($this->rc->config->get('acl_groups')) {
                $prefix = $this->rc->config->get('acl_group_prefix');
                $result = $this->ldap->list_groups($search, $mode);
                foreach ($result as $record) {
                    $group = $record['name'];
                    if ($group) {
                        $users[] = array('name' => ($prefix ? $prefix : '')  . $group, 'display' => $group);
                        $keys[]  = $group;
                    }
                }
            }
        }
        sort($users, SORT_LOCALE_STRING);
        if (count($users)) {
            // sort users index
            asort($keys, SORT_LOCALE_STRING);
            // re-sort users according to index
            foreach ($keys as $idx => $val) {
                $keys[$idx] = $users[$idx];
            }
            $users = array_values($keys);
        }
        $this->rc->output->command('ksearch_query_results', $users, $search, $reqid);
        $this->rc->output->send();
@@ -286,7 +309,7 @@
        $textfield = new html_inputfield($attrib);
        $fields['user'] = html::label(array('for' => 'iduser'), $this->gettext('username'))
        $fields['user'] = html::label(array('for' => $attrib['id']), $this->gettext('username'))
            . ' ' . $textfield->show();
        // Add special entries
@@ -401,7 +424,7 @@
            }
            $table->add_row(array('id' => 'rcmrow'.$userid));
            $table->add('user', rcube::Q($user));
            $table->add('user', html::a(array('id' => 'rcmlinkrow'.$userid), rcube::Q($user)));
            foreach ($items as $key => $right) {
                $in = $this->acl_compare($userrights, $right);
@@ -439,9 +462,13 @@
        $result = 0;
        foreach ($users as $user) {
            $user = trim($user);
            $user   = trim($user);
            $prefix = $this->rc->config->get('acl_groups') ? $this->rc->config->get('acl_group_prefix') : '';
            if (!empty($this->specials) && in_array($user, $this->specials)) {
            if ($prefix && strpos($user, $prefix) === 0) {
                $username = $user;
            }
            else if (!empty($this->specials) && in_array($user, $this->specials)) {
                $username = $this->gettext($user);
            }
            else if (!empty($user)) {
@@ -653,8 +680,9 @@
     */
    private function init_ldap()
    {
        if ($this->ldap)
        if ($this->ldap) {
            return $this->ldap->ready;
        }
        // get LDAP config
        $config = $this->rc->config->get('acl_users_source');
@@ -666,7 +694,7 @@
        // not an array, use configured ldap_public source
        if (!is_array($config)) {
            $ldap_config = (array) $this->rc->config->get('ldap_public');
            $config = $ldap_config[$config];
            $config      = $ldap_config[$config];
        }
        $uid_field = $this->rc->config->get('acl_users_field', 'mail');
@@ -686,18 +714,17 @@
        }
        // add UID field to fieldmap, so it will be returned in a record with name
        $config['fieldmap'] = array(
            'name' => $name_field,
            'uid'  => $uid_field,
        );
        $config['fieldmap']['name'] = $name_field;
        $config['fieldmap']['uid']  = $uid_field;
        // search in UID and name fields
        $config['search_fields'] = array_values($config['fieldmap']);
        $config['search_fields']   = array_values($config['fieldmap']);
        $config['required_fields'] = array($uid_field);
        // set search filter
        if ($filter)
        if ($filter) {
            $config['filter'] = $filter;
        }
        // disable vlv
        $config['vlv'] = false;
plugins/acl/composer.json
@@ -3,7 +3,7 @@
    "type": "roundcube-plugin",
    "description": "IMAP Folders Access Control Lists Management (RFC4314, RFC2086).",
    "license": "GNU GPLv3+",
    "version": "1.3",
    "version": "1.5",
    "authors": [
        {
            "name": "Aleksander Machniak",
plugins/acl/config.inc.php.dist
@@ -16,10 +16,15 @@
// The LDAP search filter will be &'d with search queries
$config['acl_users_filter'] = '';
// Enable LDAP groups in user autocompletion.
// Note: LDAP addressbook defined in acl_users_source must include groups config
$config['acl_groups'] = false;
// Prefix added to the group name to build IMAP ACL identifier
$config['acl_group_prefix'] = 'group:';
// Include the following 'special' access control subjects in the ACL dialog;
// Defaults to array('anyone', 'anonymous') (not when set to an empty array)
// Example: array('anyone') to exclude 'anonymous'.
// Set to an empty array to exclude all special aci subjects.
$config['acl_specials'] = array('anyone', 'anonymous');
?>
plugins/acl/localization/ast.inc
New file
@@ -0,0 +1,80 @@
<?php
/*
 +-----------------------------------------------------------------------+
 | plugins/acl/localization/<lang>.inc                                   |
 |                                                                       |
 | Localization file of the Roundcube Webmail ACL plugin                 |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
 | See the README file for a full license statement.                     |
 |                                                                       |
 +-----------------------------------------------------------------------+
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-acl/
*/
$labels['sharing'] = 'Compartición';
$labels['myrights'] = 'Drechos d\'accesu';
$labels['username'] = 'Usuariu:';
$labels['advanced'] = 'Mou avanzáu';
$labels['newuser'] = 'Amestar entrada';
$labels['editperms'] = 'Editar permisos';
$labels['actions'] = 'Aición de drechos d\'accesu...';
$labels['anyone'] = 'Tolos usuarios (toos)';
$labels['anonymous'] = 'Convidaos (anónimos)';
$labels['identifier'] = 'Identificador';
$labels['acll'] = 'Guetar';
$labels['aclr'] = 'Lleer mensaxes';
$labels['acls'] = 'Estáu Caltener Vistu';
$labels['aclw'] = 'Escribir banderes';
$labels['acli'] = 'Inxertar (copiar a)';
$labels['aclc'] = 'Crear subcarpetes';
$labels['aclk'] = 'Crear subcarpetes';
$labels['acld'] = 'Desaniciar mensaxes';
$labels['aclt'] = 'Desaniciar mensaxes';
$labels['acle'] = 'Desanciar';
$labels['aclx'] = 'Desaniciar carpeta';
$labels['acla'] = 'Alministrar';
$labels['aclfull'] = 'Control total';
$labels['aclother'] = 'Otru';
$labels['aclread'] = 'Lleer';
$labels['aclwrite'] = 'Escribir';
$labels['acldelete'] = 'Desaniciar';
$labels['shortacll'] = 'Guetar';
$labels['shortaclr'] = 'Lleer';
$labels['shortacls'] = 'Caltener';
$labels['shortaclw'] = 'Escribir';
$labels['shortacli'] = 'Inxertar';
$labels['shortaclc'] = 'Crear';
$labels['shortaclk'] = 'Crear';
$labels['shortacld'] = 'Desaniciar';
$labels['shortaclt'] = 'Desaniciar';
$labels['shortacle'] = 'Desaniciar';
$labels['shortaclx'] = 'Desaniciu de carpeta';
$labels['shortacla'] = 'Alministrar';
$labels['shortaclother'] = 'Otru';
$labels['shortaclread'] = 'Lleer';
$labels['shortaclwrite'] = 'Escribir';
$labels['shortacldelete'] = 'Desaniciar';
$labels['longacll'] = 'La carpeta ye visible nes llistes y pue soscribise a';
$labels['longaclr'] = 'La carpeta nun pue abrise pa leer';
$labels['longaclx'] = 'La carpeta pue desaniciase o renomase';
$labels['longacla'] = 'Puen camudase los drechos d\'accesu de la carpeta';
$labels['longaclfull'] = 'Control completu incluyendo l\'alminitración de carpeta';
$labels['longaclread'] = 'La carpeta pue abrise pa llectura';
$labels['longaclwrite'] = 'Los mensaxes puen conseñase, escribise o copiase a la carpeta';
$labels['longacldelete'] = 'Los mensaxes puen desaniciase';
$labels['longaclother'] = 'Otros drechos d\'accesu';
$labels['ariasummaryacltable'] = 'Llista de drechos d\'accesu';
$messages['deleting'] = 'Desaniciando los drechos d\'accesu...';
$messages['saving'] = 'Guardando los drechos d\'accesu...';
$messages['updatesuccess'] = 'Camudaos con ésitu los drechos d\'accesu';
$messages['deletesuccess'] = 'Desaniciaos con ésitu los drechos d\'accesu';
$messages['createsuccess'] = 'Amestaos con ésitu los drechos d\'accesu';
$messages['updateerror'] = 'Nun puen anovase los drechos d\'accesu';
$messages['deleteerror'] = 'Nun puen desaniciase los drechos d\'accesu';
$messages['createerror'] = 'Nun puen amestase los drechos d\'accesu';
$messages['deleteconfirm'] = '¿De xuru quies desaniciar los drechos d\'accesu al(a los) usuariu(os) esbilláu(os)?';
?>
plugins/acl/localization/bs_BA.inc
@@ -18,8 +18,9 @@
$labels['sharing'] = 'Razmjena';
$labels['myrights'] = 'Prava pristupa';
$labels['username'] = 'Korisnik:';
$labels['advanced'] = 'napredni mod';
$labels['advanced'] = 'Napredni mod';
$labels['newuser'] = 'Dodaj unos';
$labels['editperms'] = 'Uredi dozvole';
$labels['actions'] = 'Akcije za prava pristupa...';
$labels['anyone'] = 'Svi korisnici (bilo ko)';
$labels['anonymous'] = 'Gosti (anonimno)';
@@ -37,6 +38,7 @@
$labels['acle'] = 'Izbriši';
$labels['aclx'] = 'Obriši folder';
$labels['acla'] = 'Administracija';
$labels['acln'] = 'Obilježi poruke';
$labels['aclfull'] = 'Puna kontrola';
$labels['aclother'] = 'Ostalo';
$labels['aclread'] = 'Pročitano';
@@ -55,6 +57,7 @@
$labels['shortacle'] = 'Izbriši';
$labels['shortaclx'] = 'Brisanje foldera';
$labels['shortacla'] = 'Administracija';
$labels['shortacln'] = 'Obilježli';
$labels['shortaclother'] = 'Ostalo';
$labels['shortaclread'] = 'Pročitano';
$labels['shortaclwrite'] = 'Piši';
@@ -72,10 +75,15 @@
$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['longacln'] = 'Dijeljeni podaci (obilježavanja) poruka mogu se mijenjati';
$labels['longaclfull'] = 'Puna kontrola uključujući i administraciju foldera';
$labels['longaclread'] = 'Folder je moguće otvoriti radi čitanja';
$labels['longaclwrite'] = 'Moguće je označavati, zapisivati i kopirati poruke u folder';
$labels['longacldelete'] = 'Moguće je obrisati poruke';
$labels['longaclother'] = 'Ostala prava pristupa';
$labels['ariasummaryacltable'] = 'Lista prava pristupa';
$labels['arialabelaclactions'] = 'Lista akcija';
$labels['arialabelaclform'] = 'Obrazac za prava pristupa';
$messages['deleting'] = 'Brišem prava pristupa...';
$messages['saving'] = 'Snimam prava pristupa...';
$messages['updatesuccess'] = 'Prava pristupa su uspješno promijenjena';
plugins/acl/localization/en_CA.inc
@@ -18,7 +18,9 @@
$labels['sharing'] = 'Sharing';
$labels['myrights'] = 'Access Rights';
$labels['username'] = 'User:';
$labels['advanced'] = 'Advanced mode';
$labels['newuser'] = 'Add entry';
$labels['editperms'] = 'Edit permissions';
$labels['actions'] = 'Access right actions...';
$labels['anyone'] = 'All users (anyone)';
$labels['anonymous'] = 'Guests (anonymous)';
@@ -36,6 +38,7 @@
$labels['acle'] = 'Expunge';
$labels['aclx'] = 'Delete folder';
$labels['acla'] = 'Administer';
$labels['acln'] = 'Annotate messages';
$labels['aclfull'] = 'Full control';
$labels['aclother'] = 'Other';
$labels['aclread'] = 'Read';
@@ -54,6 +57,7 @@
$labels['shortacle'] = 'Expunge';
$labels['shortaclx'] = 'Folder delete';
$labels['shortacla'] = 'Administer';
$labels['shortacln'] = 'Annotate';
$labels['shortaclother'] = 'Other';
$labels['shortaclread'] = 'Read';
$labels['shortaclwrite'] = 'Write';
@@ -71,6 +75,7 @@
$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['longacln'] = 'Messages shared metadata (annotations) can be changed';
$labels['longaclfull'] = 'Full control including folder administration';
$labels['longaclread'] = 'The folder can be opened for reading';
$labels['longaclwrite'] = 'Messages can be marked, written or copied to the folder';
plugins/acl/localization/en_US.inc
@@ -87,6 +87,11 @@
$labels['longaclread'] = 'The folder can be opened for reading';
$labels['longaclwrite'] = 'Messages can be marked, written or copied to the folder';
$labels['longacldelete'] = 'Messages can be deleted';
$labels['longaclother'] = 'Other access rights';
$labels['ariasummaryacltable'] = 'List of access rights';
$labels['arialabelaclactions'] = 'List actions';
$labels['arialabelaclform'] = 'Access rights form';
$messages['deleting'] = 'Deleting access rights...';
$messages['saving'] = 'Saving access rights...';
plugins/acl/localization/et_EE.inc
@@ -18,12 +18,17 @@
$labels['sharing'] = 'Jagamine';
$labels['myrights'] = 'Ligipääsuõigused';
$labels['username'] = 'Kasutaja:';
$labels['advanced'] = 'laiendatud režiim';
$labels['newuser'] = 'Lisa sissekanne';
$labels['editperms'] = 'Muuda õigusi';
$labels['actions'] = 'Ligipääsuõiguste toimingud...';
$labels['anyone'] = 'Kõik kasutajad';
$labels['anonymous'] = 'Külalised (anonüümsed)';
$labels['identifier'] = 'Tuvastaja';
$labels['acll'] = 'Ülevaade';
$labels['aclr'] = 'Lugeda kirju';
$labels['acls'] = 'Hoia nähtud olekut';
$labels['aclw'] = 'Salvesta lipud';
$labels['acli'] = 'Sisesta (kopeeri)';
$labels['aclp'] = 'Postita';
$labels['aclc'] = 'Luua alamkaustu';
@@ -33,11 +38,13 @@
$labels['acle'] = 'Eemalda';
$labels['aclx'] = 'Kustutada kausta';
$labels['acla'] = 'Administreerida';
$labels['acln'] = 'Annoteeri kirja';
$labels['aclfull'] = 'Täis kontroll';
$labels['aclother'] = 'Muu';
$labels['aclread'] = 'Loe';
$labels['aclwrite'] = 'Kirjuta';
$labels['acldelete'] = 'Kustuta';
$labels['shortacll'] = 'Ülevaade';
$labels['shortaclr'] = 'Loe';
$labels['shortacls'] = 'Säilita';
$labels['shortaclw'] = 'Kirjuta';
@@ -50,20 +57,33 @@
$labels['shortacle'] = 'Eemalda';
$labels['shortaclx'] = 'Kausta kustutamine';
$labels['shortacla'] = 'Administreerida';
$labels['shortacln'] = 'Annoteeri';
$labels['shortaclother'] = 'Muu';
$labels['shortaclread'] = 'Loe';
$labels['shortaclwrite'] = 'Kirjuta';
$labels['shortacldelete'] = 'Kustuta';
$labels['longacll'] = 'See kaust on nimekirjas nähtav ja seda saab tellida';
$labels['longaclr'] = 'Kausta saab lugemiseks avada';
$labels['longacls'] = 'Kirja loetuse lippu saab muuta';
$labels['longaclw'] = 'Kirja lippe ja otsingusõnu saab muuta, väljaarvatud loetud ja kustutatud';
$labels['longacli'] = 'Kirju saab salvestada ja kopeerida antud kausta';
$labels['longaclp'] = 'Kirju saab postitada antud kausta';
$labels['longaclc'] = 'Kaustasi saab luua (või ümber nimetada) otse siia kausta alla.';
$labels['longaclk'] = 'Kaustu saab luua (või ümber nimetada) otse siia kausta alla';
$labels['longacld'] = 'Kirja kustutamis lippu saab muuta';
$labels['longaclt'] = 'Kirja kustutamis lippu saab muuta';
$labels['longacle'] = 'Kirju saab eemaldada';
$labels['longaclx'] = 'Seda kausta ei saa kustutada ega ümber nimetada';
$labels['longacla'] = 'Selle kausta ligipääsuõigusi saab muuta';
$labels['longacln'] = 'Kirja jagatud metainfot (annotatsioonid) saab muuta';
$labels['longaclfull'] = 'Täielik kontroll koos kaustade haldamisega';
$labels['longaclread'] = 'Kausta saab lugemiseks avada';
$labels['longaclwrite'] = 'Kirju saab märgistada, salvestada või kopeerida kausta';
$labels['longacldelete'] = 'Kirju saab kustutada';
$labels['longaclother'] = 'Muud ligipääsu õigused';
$labels['ariasummaryacltable'] = 'Nimekir ligipääsu õigustest';
$labels['arialabelaclactions'] = 'Näita tegevusi';
$labels['arialabelaclform'] = 'Ligipääsu õiguste vorm';
$messages['deleting'] = 'Ligipääsuõiguste kustutamine...';
$messages['saving'] = 'Ligipääsuõiguste salvestamine...';
$messages['updatesuccess'] = 'Ligipääsuõigused on muudetud';
plugins/acl/localization/fi_FI.inc
@@ -21,12 +21,24 @@
$labels['editperms'] = 'Muokkaa oikeuksia';
$labels['anyone'] = 'Kaikki käyttäjät (kuka tahansa)';
$labels['anonymous'] = 'Vieraat (anonyymit)';
$labels['aclc'] = 'Luo alikansioita';
$labels['aclk'] = 'Luo alikansioita';
$labels['acld'] = 'Poista viestejä';
$labels['aclt'] = 'Poista viestejä';
$labels['aclx'] = 'Poista kansio';
$labels['aclfull'] = 'Täydet käyttöoikeudet';
$labels['aclother'] = 'Muu';
$labels['aclread'] = 'Luku';
$labels['aclwrite'] = 'Kirjoitus';
$labels['acldelete'] = 'Poisto';
$labels['shortaclc'] = 'Luo';
$labels['shortaclk'] = 'Luo';
$labels['shortacld'] = 'Poista';
$labels['shortaclt'] = 'Poista';
$labels['shortaclother'] = 'Muu';
$labels['shortaclread'] = 'Luku';
$labels['shortaclwrite'] = 'Kirjoitus';
$labels['shortacldelete'] = 'Poisto';
$labels['longaclr'] = 'Kansion voi avata lukua varten';
$labels['longaclx'] = 'Kansio voidaan poistaa tai nimetä uudelleen';
$labels['longacla'] = 'Kansion käyttöoikeuksia voi muuttaa';
plugins/acl/localization/it_IT.inc
@@ -80,6 +80,10 @@
$labels['longaclread'] = 'Questa cartella può essere aperta in lettura';
$labels['longaclwrite'] = 'I messaggi possono essere marcati, scritti o copiati nella cartella';
$labels['longacldelete'] = 'I messaggi possono essere eliminati';
$labels['longaclother'] = 'Altri diritti di accesso';
$labels['ariasummaryacltable'] = 'Elenco dei diritti di accesso';
$labels['arialabelaclactions'] = 'Lista azioni';
$labels['arialabelaclform'] = 'Modulo di accesso';
$messages['deleting'] = 'Sto eliminando i diritti di accesso...';
$messages['saving'] = 'Sto salvando i diritti di accesso...';
$messages['updatesuccess'] = 'I diritti d\'accesso sono stati cambiati';
plugins/acl/localization/pt_PT.inc
@@ -80,6 +80,10 @@
$labels['longaclread'] = 'A pasta pode ser aberta para leitura';
$labels['longaclwrite'] = 'As mensagens podem ser marcadas, guardadas ou copiadas para a pasta';
$labels['longacldelete'] = 'As mensagens podem ser eliminadas';
$labels['longaclother'] = 'Outros direitos de acesso';
$labels['ariasummaryacltable'] = 'Lista de direitos de acesso';
$labels['arialabelaclactions'] = 'Lista de acções';
$labels['arialabelaclform'] = 'Formulário de direitos de acesso';
$messages['deleting'] = 'A eliminar permissões de acesso...';
$messages['saving'] = 'A guardar permissões de acesso...';
$messages['updatesuccess'] = 'Permissões de acesso alteradas com sucesso';
plugins/acl/package.xml
@@ -13,9 +13,9 @@
        <email>alec@alec.pl</email>
        <active>yes</active>
    </lead>
    <date>2014-02-04</date>
    <date>2014-08-11</date>
    <version>
        <release>1.3</release>
        <release>1.5</release>
        <api>1.0</api>
    </version>
    <stability>
plugins/acl/skins/larry/acl.css
@@ -26,44 +26,39 @@
  border: none;
}
#acltable th,
#acltable td
{
  white-space: nowrap;
  text-align: center;
}
#acltable thead tr td
#acltable thead tr th
{
  border-left: #BBD3DA dotted 1px;
  font-size: 11px;
  font-weight: bold;
  width: auto;
}
#acltable tbody td
{
  border-bottom: #DDDDDD 1px solid;
  text-align: center;
  height: 16px;
  cursor: default;
}
#acltable thead td.user
#acltable thead tr > .user
{
  width: 30%;
  border-left: none;
}
#acltable.advanced thead td.user {
    width: 25%;
#acltable.advanced thead tr > .user {
  width: 25%;
}
#acltable tbody td.user
{
  text-align: left;
  overflow: hidden;
  text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
  border-left: none;
}
#acltable tbody td.partial
plugins/acl/skins/larry/templates/table.html
@@ -1,23 +1,26 @@
<div id="aclcontainer" class="uibox listbox">
<div id="acllist-content" class="scroller withfooter">
    <roundcube:object name="acltable" id="acltable" class="records-table" />
    <h2 class="voice" id="aria-label-acltable"><roundcube:label name="acl.ariasummaryacltable" /></h2>
    <roundcube:object name="acltable" id="acltable" class="records-table" aria-labelledby="aria-label-acltable" role="listbox" />
</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', undefined, {above:1});return false" innerClass="inner" content="&#9881;" />
    <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="return UI.toggle_popup('aclmenu', event)" innerClass="inner" content="&#9881;" aria-haspopup="true" aria-expanded="false" aria-owns="aclmenu-menu" />
</div>
</div>
<div id="aclmenu" class="popupmenu">
    <ul class="toolbarmenu selectable iconized">
        <li><roundcube:button command="acl-edit" label="edit" class="icon" classAct="icon active" innerclass="icon edit" /></li>
        <li><roundcube:button command="acl-delete" label="delete" class="icon" classAct="icon active" innerclass="icon delete" /></li>
<div id="aclmenu" class="popupmenu" aria-hidden="true" data-align="bottom">
    <h3 id="aria-label-aclactions" class="voice"><roundcube:label name="acl.arialabelaclactions" /></h3>
    <ul id="aclmenu-menu" class="toolbarmenu selectable iconized" role="menu" aria-labelledby="aria-label-aclactions">
        <li role="menuitem"><roundcube:button command="acl-edit" label="edit" class="icon" classAct="icon active" innerclass="icon edit" /></li>
        <li role="menuitem"><roundcube:button command="acl-delete" label="delete" class="icon" classAct="icon active" innerclass="icon delete" /></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');return false" class="active" /></li>
            <li role="menuitem"><roundcube:button name="acl-switch" id="acl-switch" label="acl.advanced" onclick="rcmail.command('acl-mode-switch');return false" class="active" /></li>
        <roundcube:endif />
    </ul>
</div>
<div id="aclform" class="propform" style="position:absolute; width:480px; top:0; left:0; padding:8px">
<div id="aclform" class="propform" style="position:absolute; width:480px; top:0; left:0; padding:8px" aria-labelledby="aria-label-aclform" aria-hidden="true" role="dialog">
    <h3 id="aria-label-aclform" class="voice"><roundcube:label name="acl.arialabelaclform" /></h3>
    <fieldset class="thinbordered"><legend><roundcube:label name="acl.identifier" /></legend>
        <roundcube:object name="acluser" id="acluser" size="35" class="proplist" />
    </fieldset>
plugins/additional_message_headers/config.inc.php.dist
@@ -1,7 +1,7 @@
<?php
// $config['additional_message_headers']['X-Remote-Browser'] = $_SERVER['HTTP_USER_AGENT'];
// $config['additional_message_headers']['X-Originating-IP'] = $_SERVER['REMOTE_ADDR'];
// $config['additional_message_headers']['X-Originating-IP'] = '[' . $_SERVER['REMOTE_ADDR'] .']';
// $config['additional_message_headers']['X-RoundCube-Server'] = $_SERVER['SERVER_ADDR'];
// if( isset( $_SERVER['MACHINE_NAME'] )) {
plugins/archive/localization/ast.inc
@@ -17,15 +17,15 @@
*/
$labels['buttontext'] = 'Archivu';
$labels['buttontitle'] = 'Archivar esti mensaxe';
$labels['archived'] = 'Mensaxe archiváu';
$labels['archivedreload'] = 'Archiváu correchamente. Recarga la páxina pa ver les nueves carpetes d\'archivu.';
$labels['archived'] = 'Archiváu con ésitu';
$labels['archivedreload'] = 'Archiváu con ésitu. Recarga la páxina pa ver les nueves carpetes d\'archivos.';
$labels['archiveerror'] = 'Nun pudieron archivase dalgunos mensaxes';
$labels['archivefolder'] = 'Archivu';
$labels['settingstitle'] = 'Archivu';
$labels['archivetype'] = 'Dividir l\'archivu por';
$labels['archivetypeyear'] = 'Añu (p.ex. Archivu/2012)';
$labels['archivetypemonth'] = 'Mes (p.ex. Archivu/2012/06)';
$labels['archivetypefolder'] = 'Bandexa orixinal';
$labels['archivetypefolder'] = 'Carpeta orixinal';
$labels['archivetypesender'] = 'Corréu-e del remitente';
$labels['unkownsender'] = 'desconocíu';
?>
plugins/archive/localization/be_BE.inc
@@ -16,16 +16,16 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-archive/
*/
$labels['buttontext'] = 'Архіў';
$labels['buttontitle'] = 'Перанесці ў Архіў';
$labels['archived'] = 'Перанесена ў Архіў';
$labels['archivedreload'] = 'Перанесена ў Архіў. Перазагрузіце старонку, каб пабачыць новыя архіўныя папкі.';
$labels['buttontitle'] = 'Перанесці ў архіў';
$labels['archived'] = 'Перанесена ў архіў';
$labels['archivedreload'] = 'Перанесена ў архіў. Перагрузіце старонку, каб пабачыць новыя архіўныя папкі.';
$labels['archiveerror'] = 'Некаторыя паведамленні не могуць быць перанесены ў архіў';
$labels['archivefolder'] = 'Архіў';
$labels['settingstitle'] = 'Архіў';
$labels['archivetype'] = 'Раздзяліць архіў паводле';
$labels['archivetypeyear'] = 'года (прыкладам, Архіў/2012)';
$labels['archivetypemonth'] = 'месяца (прыкладам, Архіў/2012/06)';
$labels['archivetypefolder'] = 'Арыгінальная папка';
$labels['archivetypefolder'] = 'Выточная папка';
$labels['archivetypesender'] = 'Эл. пошта адпраўніка';
$labels['unkownsender'] = 'невядомы';
?>
plugins/archive/localization/br.inc
@@ -19,4 +19,5 @@
$labels['buttontitle'] = 'Dielliñ ar gemenadenn-mañ';
$labels['archived'] = 'Diellet gant berzh';
$labels['archivefolder'] = 'Diell';
$labels['unkownsender'] = 'dianav';
?>
plugins/archive/localization/es_419.inc
@@ -15,15 +15,17 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-archive/
*/
$labels['buttontext'] = 'Archivo';
$labels['buttontext'] = 'Archivar';
$labels['buttontitle'] = 'Archivar este mensaje';
$labels['archived'] = 'Archivado exitosamente';
$labels['archivedreload'] = 'Achivado exitosamente. ';
$labels['archivedreload'] = 'Archivado exitosamente. Recarga esta página para ver las nuevas carpetas';
$labels['archiveerror'] = 'Algunos mensajes no pudieron ser archivados';
$labels['archivefolder'] = 'Archivo';
$labels['archivefolder'] = 'Archivar';
$labels['settingstitle'] = 'Archivar';
$labels['archivetype'] = 'Dividir archivo por';
$labels['archivetypeyear'] = 'Año (ej. Archivo/2012)';
$labels['archivetypemonth'] = 'Mes (ej. Archivo/2012/06)';
$labels['archivetypefolder'] = 'Carpeta original';
$labels['archivetypesender'] = 'Remitente de correo electrónico';
$labels['unkownsender'] = 'desconocido';
?>
plugins/archive/localization/ko_KR.inc
@@ -16,9 +16,9 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-archive/
*/
$labels['buttontext'] = '보관';
$labels['buttontitle'] = '이 메시지를 보관';
$labels['archived'] = '성공적으로 보관됨';
$labels['archivedreload'] = '성공적으로 보관됨. 페이지를 다시 불러와서 새 보관 폴더를 확인하세요.';
$labels['buttontitle'] = '이 메시지를 보관함에 저장';
$labels['archived'] = '성공적으로 보관함';
$labels['archivedreload'] = '성공적으로 보관됨. 페이지를 다시 불러와서 새로운 보관함 폴더를 확인하세요.';
$labels['archiveerror'] = '일부 메시지가 보관되지 않음';
$labels['archivefolder'] = '보관';
$labels['settingstitle'] = '보관';
@@ -26,6 +26,6 @@
$labels['archivetypeyear'] = '연도 (예: 보관 편지함/2012)';
$labels['archivetypemonth'] = '월 (예: 보관 편지함/2012/06)';
$labels['archivetypefolder'] = '원본 폴더';
$labels['archivetypesender'] = '발신인 이메일';
$labels['archivetypesender'] = '발송자 이메일';
$labels['unkownsender'] = '알 수 없음';
?>
plugins/attachment_reminder/localization/ast.inc
New file
@@ -0,0 +1,20 @@
<?php
/*
 +-----------------------------------------------------------------------+
 | plugins/attachment_reminder/localization/<lang>.inc                   |
 |                                                                       |
 | Localization file of the Roundcube Webmail Archive plugin             |
 | Copyright (C) 2013, The Roundcube Dev Team                            |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
 | See the README file for a full license statement.                     |
 |                                                                       |
 +-----------------------------------------------------------------------+
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-attachment_reminder/
*/
$messages['forgotattachment'] = "¿Escaecisti axuntar un ficheru?";
$messages['reminderoption'] = "Recordar alrodiu d'axuntos escaecíos";
$messages['keywords'] = "axuntu,ficheru,axuntar,axuntáu,axuntando,axuntao,axuntada,CV,carta de presentación";
plugins/attachment_reminder/localization/br.inc
New file
@@ -0,0 +1,20 @@
<?php
/*
 +-----------------------------------------------------------------------+
 | plugins/attachment_reminder/localization/<lang>.inc                   |
 |                                                                       |
 | Localization file of the Roundcube Webmail Archive plugin             |
 | Copyright (C) 2013, The Roundcube Dev Team                            |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
 | See the README file for a full license statement.                     |
 |                                                                       |
 +-----------------------------------------------------------------------+
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-attachment_reminder/
*/
$messages['forgotattachment'] = "Disonjet ho peus stagan er restr ?";
$messages['reminderoption'] = "Adgalv war ar pezhiou stag disonjet";
$messages['keywords'] = "pezh stag, restr, stagan, aman staget, stagit, ouzhpenan, CV, lizher youl";
plugins/attachment_reminder/localization/es_AR.inc
@@ -15,6 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-attachment_reminder/
*/
$messages['forgotattachment'] = "";
$messages['reminderoption'] = "";
$messages['keywords'] = "";
$messages['forgotattachment'] = "Has olvidado adjuntar un archivo?";
$messages['reminderoption'] = "Recordar sobre archivos adjuntos olvidados";
$messages['keywords'] = "adjunto,archivo,adjuntar,adjuntado,adjuntando,";
plugins/attachment_reminder/localization/id_ID.inc
@@ -15,6 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-attachment_reminder/
*/
$messages['forgotattachment'] = "Apakah anda lupa menambahkan attachment?";
$messages['reminderoption'] = "Pengingat attachment yang terlupakan";
$messages['forgotattachment'] = "Apakah anda lupa melampirkan sebuah file?";
$messages['reminderoption'] = "Ingatkan tentang lampiran yang terlupakan";
$messages['keywords'] = "attachment,file,attach,attached,attaching,enclosed,CV,cover letter";
plugins/attachment_reminder/localization/ko_KR.inc
@@ -16,5 +16,5 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-attachment_reminder/
*/
$messages['forgotattachment'] = "파일을 첨부하는 것을 잊으셨습니까?";
$messages['reminderoption'] = "잊었던 첨부파일에 대해 알리기";
$messages['reminderoption'] = "잊었던 첨부파일 추가에 대해 알림";
$messages['keywords'] = "attachment,file,attach,attached,attaching,enclosed,CV,cover letter";
plugins/attachment_reminder/localization/ml_IN.inc
@@ -15,6 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-attachment_reminder/
*/
$messages['forgotattachment'] = "";
$messages['reminderoption'] = "";
$messages['forgotattachment'] = "താങ്കൾ ഒരു ഫയൽ ചേർക്കാൻ മറന്നുപോയി";
$messages['reminderoption'] = "ചേർക്കാൻ മറന്നുപോയ ഫയലുകളെ പറ്റി ഓർമ്മപ്പെടുത്തുക";
$messages['keywords'] = "";
plugins/emoticons/emoticons.php
@@ -71,8 +71,8 @@
    }
    private function img_tag($ico, $title)
    {
        $path = './program/js/tiny_mce/plugins/emotions/img/';
    {
        $path = './program/js/tinymce/plugins/emoticons/img/';
        return html::img(array('src' => $path.$ico, 'title' => $title));
    }
}
plugins/help/localization/hu_HU.inc
@@ -15,7 +15,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-help/
*/
$labels['help'] = 'Segítség';
$labels['help'] = 'Súgó';
$labels['about'] = 'Névjegy';
$labels['license'] = 'Licenc';
$labels['license'] = 'Licensz';
?>
plugins/help/localization/ml_IN.inc
New file
@@ -0,0 +1,21 @@
<?php
/*
 +-----------------------------------------------------------------------+
 | plugins/help/localization/<lang>.inc                                  |
 |                                                                       |
 | Localization file of the Roundcube Webmail Help plugin                |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
 | See the README file for a full license statement.                     |
 |                                                                       |
 +-----------------------------------------------------------------------+
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-help/
*/
$labels['help'] = 'സഹായം';
$labels['about'] = 'വിവരം';
$labels['license'] = 'അനുമതി';
?>
plugins/help/skins/classic/help.css
@@ -13,7 +13,7 @@
  border-bottom: 0;
}
.closelink {
.helpwin .closelink {
    position: absolute;
    top: 20px;
    right: 20px;
plugins/help/skins/classic/templates/help.html
@@ -16,11 +16,11 @@
</script>
</head>
<roundcube:if condition="env:extwin" />
<body class="extwin">
<body class="extwin helpwin">
<roundcube:object name="message" id="message" />
<roundcube:button name="close" type="link" label="close" class="closelink" onclick="self.close()" />
<roundcube:else />
<body>
<body class="helpwin">
<roundcube:include file="/includes/taskbar.html" />
<roundcube:include file="/includes/header.html" />
<roundcube:endif />
plugins/hide_blockquote/hide_blockquote.js
@@ -25,7 +25,7 @@
  if (limit <= 0)
    return;
  $('pre > blockquote', $('#messagebody')).each(function() {
  $('div.message-part div.pre > blockquote', $('#messagebody')).each(function() {
    var div, link, q = $(this),
      text = $.trim(q.text()),
      res = text.split(/\n/);
plugins/hide_blockquote/localization/ast.inc
New file
@@ -0,0 +1,21 @@
<?php
/*
 +-----------------------------------------------------------------------+
 | plugins/hide_blockquote/localization/<lang>.inc                       |
 |                                                                       |
 | Localization file of the Roundcube Webmail Hide-Blockquote plugin     |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
 | See the README file for a full license statement.                     |
 |                                                                       |
 +-----------------------------------------------------------------------+
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-hide_blockquote/
*/
$labels['hide'] = 'Anubrir';
$labels['show'] = 'Amosar';
$labels['quotelimit'] = 'Anubrir la citación cuando la cuenta de llinies seya mayor de';
?>
plugins/hide_blockquote/localization/br.inc
New file
@@ -0,0 +1,20 @@
<?php
/*
 +-----------------------------------------------------------------------+
 | plugins/hide_blockquote/localization/<lang>.inc                       |
 |                                                                       |
 | Localization file of the Roundcube Webmail Hide-Blockquote plugin     |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
 | See the README file for a full license statement.                     |
 |                                                                       |
 +-----------------------------------------------------------------------+
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-hide_blockquote/
*/
$labels['hide'] = 'Kuzhat';
$labels['show'] = 'Diskouez';
?>
plugins/hide_blockquote/localization/ko_KR.inc
@@ -16,6 +16,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-hide_blockquote/
*/
$labels['hide'] = '숨기기';
$labels['show'] = '보이기';
$labels['quotelimit'] = '라인 개수가 정해진 개수보다 클 때 인용구 감추기';
$labels['show'] = '표시';
$labels['quotelimit'] = '행 개수가 다음보다 많을 때 인용구를 숨김:';
?>
plugins/hide_blockquote/localization/ml_IN.inc
New file
@@ -0,0 +1,21 @@
<?php
/*
 +-----------------------------------------------------------------------+
 | plugins/hide_blockquote/localization/<lang>.inc                       |
 |                                                                       |
 | Localization file of the Roundcube Webmail Hide-Blockquote plugin     |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
 | See the README file for a full license statement.                     |
 |                                                                       |
 +-----------------------------------------------------------------------+
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-hide_blockquote/
*/
$labels['hide'] = 'മറയ്ക്കുക';
$labels['show'] = 'പ്രദർശിപ്പിക്കുക';
$labels['quotelimit'] = 'ഇതിലും കൂടുതലാണ് വരികളുടെ എണ്ണമെങ്കിൽ അവലംബം മറയ്ക്കുക';
?>
plugins/jqueryui/composer.json
@@ -3,7 +3,7 @@
    "type": "roundcube-plugin",
    "description": "Plugin adds the complete jQuery-UI library including the smoothness theme to Roundcube. This allows other plugins to use jQuery-UI without having to load their own version. The benefit of using one central jQuery-UI is that we wont run into problems of conflicting jQuery libraries being loaded. All plugins that want to use jQuery-UI should use this plugin as a requirement.",
    "license": "GNU GPLv3+",
    "version": "1.9.1",
    "version": "1.10.4",
    "authors": [
        {
            "name": "Thomas Bruederli",
plugins/jqueryui/jqueryui.php
@@ -5,7 +5,7 @@
 *
 * Provide the jQuery UI library with according themes.
 *
 * @version 1.9.2
 * @version 1.10.4
 * @author Cor Bosman <roundcube@wa.ter.net>
 * @author Thomas Bruederli <roundcube@gmail.com>
 * @license GNU GPLv3+
@@ -13,32 +13,31 @@
class jqueryui extends rcube_plugin
{
    public $noajax = true;
    public $version = '1.10.4';
    private static $features = array();
    private static $ui_theme;
    public function init()
    {
        $version = '1.9.2';
        $rcmail = rcmail::get_instance();
        $this->load_config();
        // include UI scripts
        $this->include_script("js/jquery-ui-$version.custom.min.js");
        $this->include_script("js/jquery-ui-$this->version.custom.min.js");
        // include UI stylesheet
        $skin     = $rcmail->config->get('skin');
        $ui_map   = $rcmail->config->get('jquery_ui_skin_map', array());
        $ui_theme = $ui_map[$skin] ? $ui_map[$skin] : $skin;
        $ui_theme = $ui_map[$skin] ?: $skin;
        self::$ui_theme = $ui_theme;
        if (file_exists($this->home . "/themes/$ui_theme/jquery-ui-$version.custom.css")) {
            $this->include_stylesheet("themes/$ui_theme/jquery-ui-$version.custom.css");
        if (file_exists($this->home . "/themes/$ui_theme/jquery-ui-$this->version.custom.css")) {
            $this->include_stylesheet("themes/$ui_theme/jquery-ui-$this->version.custom.css");
        }
        else {
            $this->include_stylesheet("themes/larry/jquery-ui-$version.custom.css");
            $this->include_stylesheet("themes/larry/jquery-ui-$this->version.custom.css");
        }
        if ($ui_theme == 'larry') {
plugins/jqueryui/js/jquery-ui-1.10.4.custom.min.js
New file
@@ -0,0 +1,229 @@
/*! jQuery UI - v1.10.4 - 2014-06-15
* http://jqueryui.com
*
* @licstart The following is the entire license notice for the
*  JavaScript code in this page.
*
* Copyright 2014 jQuery Foundation and other contributors
*
* Licensed under the MIT licenses
*
* Permission is hereby granted, free of charge, to any person obtaining
* a copy of this software and associated documentation files (the
* "Software"), to deal in the Software without restriction, including
* without limitation the rights to use, copy, modify, merge, publish,
* distribute, sublicense, and/or sell copies of the Software, and to
* permit persons to whom the Software is furnished to do so, subject to
* the following conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
* LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
* OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*
* @licend The above is the entire license notice
*  for the JavaScript code in this page.
*
* Includes: jquery.ui.core.js, jquery.ui.widget.js, jquery.ui.mouse.js, jquery.ui.position.js, jquery.ui.draggable.js, jquery.ui.droppable.js, jquery.ui.resizable.js, jquery.ui.selectable.js, jquery.ui.sortable.js, jquery.ui.accordion.js, jquery.ui.autocomplete.js, jquery.ui.button.js, jquery.ui.datepicker.js, jquery.ui.dialog.js, jquery.ui.menu.js, jquery.ui.progressbar.js, jquery.ui.slider.js, jquery.ui.spinner.js, jquery.ui.tabs.js, jquery.ui.tooltip.js, jquery.ui.effect.js, jquery.ui.effect-blind.js, jquery.ui.effect-bounce.js, jquery.ui.effect-clip.js, jquery.ui.effect-drop.js, jquery.ui.effect-explode.js, jquery.ui.effect-fade.js, jquery.ui.effect-fold.js, jquery.ui.effect-highlight.js, jquery.ui.effect-pulsate.js, jquery.ui.effect-scale.js, jquery.ui.effect-shake.js, jquery.ui.effect-slide.js, jquery.ui.effect-transfer.js
*/
(function(e,t){function i(t,i){var s,a,o,r=t.nodeName.toLowerCase();return"area"===r?(s=t.parentNode,a=s.name,t.href&&a&&"map"===s.nodeName.toLowerCase()?(o=e("img[usemap=#"+a+"]")[0],!!o&&n(o)):!1):(/input|select|textarea|button|object/.test(r)?!t.disabled:"a"===r?t.href||i:i)&&n(t)}function n(t){return e.expr.filters.visible(t)&&!e(t).parents().addBack().filter(function(){return"hidden"===e.css(this,"visibility")}).length}var s=0,a=/^ui-id-\d+$/;e.ui=e.ui||{},e.extend(e.ui,{version:"1.10.4",keyCode:{BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38}}),e.fn.extend({focus:function(t){return function(i,n){return"number"==typeof i?this.each(function(){var t=this;setTimeout(function(){e(t).focus(),n&&n.call(t)},i)}):t.apply(this,arguments)}}(e.fn.focus),scrollParent:function(){var t;return t=e.ui.ie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?this.parents().filter(function(){return/(relative|absolute|fixed)/.test(e.css(this,"position"))&&/(auto|scroll)/.test(e.css(this,"overflow")+e.css(this,"overflow-y")+e.css(this,"overflow-x"))}).eq(0):this.parents().filter(function(){return/(auto|scroll)/.test(e.css(this,"overflow")+e.css(this,"overflow-y")+e.css(this,"overflow-x"))}).eq(0),/fixed/.test(this.css("position"))||!t.length?e(document):t},zIndex:function(i){if(i!==t)return this.css("zIndex",i);if(this.length)for(var n,s,a=e(this[0]);a.length&&a[0]!==document;){if(n=a.css("position"),("absolute"===n||"relative"===n||"fixed"===n)&&(s=parseInt(a.css("zIndex"),10),!isNaN(s)&&0!==s))return s;a=a.parent()}return 0},uniqueId:function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++s)})},removeUniqueId:function(){return this.each(function(){a.test(this.id)&&e(this).removeAttr("id")})}}),e.extend(e.expr[":"],{data:e.expr.createPseudo?e.expr.createPseudo(function(t){return function(i){return!!e.data(i,t)}}):function(t,i,n){return!!e.data(t,n[3])},focusable:function(t){return i(t,!isNaN(e.attr(t,"tabindex")))},tabbable:function(t){var n=e.attr(t,"tabindex"),s=isNaN(n);return(s||n>=0)&&i(t,!s)}}),e("<a>").outerWidth(1).jquery||e.each(["Width","Height"],function(i,n){function s(t,i,n,s){return e.each(a,function(){i-=parseFloat(e.css(t,"padding"+this))||0,n&&(i-=parseFloat(e.css(t,"border"+this+"Width"))||0),s&&(i-=parseFloat(e.css(t,"margin"+this))||0)}),i}var a="Width"===n?["Left","Right"]:["Top","Bottom"],o=n.toLowerCase(),r={innerWidth:e.fn.innerWidth,innerHeight:e.fn.innerHeight,outerWidth:e.fn.outerWidth,outerHeight:e.fn.outerHeight};e.fn["inner"+n]=function(i){return i===t?r["inner"+n].call(this):this.each(function(){e(this).css(o,s(this,i)+"px")})},e.fn["outer"+n]=function(t,i){return"number"!=typeof t?r["outer"+n].call(this,t):this.each(function(){e(this).css(o,s(this,t,!0,i)+"px")})}}),e.fn.addBack||(e.fn.addBack=function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}),e("<a>").data("a-b","a").removeData("a-b").data("a-b")&&(e.fn.removeData=function(t){return function(i){return arguments.length?t.call(this,e.camelCase(i)):t.call(this)}}(e.fn.removeData)),e.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase()),e.support.selectstart="onselectstart"in document.createElement("div"),e.fn.extend({disableSelection:function(){return this.bind((e.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),e.extend(e.ui,{plugin:{add:function(t,i,n){var s,a=e.ui[t].prototype;for(s in n)a.plugins[s]=a.plugins[s]||[],a.plugins[s].push([i,n[s]])},call:function(e,t,i){var n,s=e.plugins[t];if(s&&e.element[0].parentNode&&11!==e.element[0].parentNode.nodeType)for(n=0;s.length>n;n++)e.options[s[n][0]]&&s[n][1].apply(e.element,i)}},hasScroll:function(t,i){if("hidden"===e(t).css("overflow"))return!1;var n=i&&"left"===i?"scrollLeft":"scrollTop",s=!1;return t[n]>0?!0:(t[n]=1,s=t[n]>0,t[n]=0,s)}})})(jQuery);(function(t,e){var i=0,s=Array.prototype.slice,n=t.cleanData;t.cleanData=function(e){for(var i,s=0;null!=(i=e[s]);s++)try{t(i).triggerHandler("remove")}catch(a){}n(e)},t.widget=function(i,s,n){var a,o,r,h,l={},u=i.split(".")[0];i=i.split(".")[1],a=u+"-"+i,n||(n=s,s=t.Widget),t.expr[":"][a.toLowerCase()]=function(e){return!!t.data(e,a)},t[u]=t[u]||{},o=t[u][i],r=t[u][i]=function(t,i){return this._createWidget?(arguments.length&&this._createWidget(t,i),e):new r(t,i)},t.extend(r,o,{version:n.version,_proto:t.extend({},n),_childConstructors:[]}),h=new s,h.options=t.widget.extend({},h.options),t.each(n,function(i,n){return t.isFunction(n)?(l[i]=function(){var t=function(){return s.prototype[i].apply(this,arguments)},e=function(t){return s.prototype[i].apply(this,t)};return function(){var i,s=this._super,a=this._superApply;return this._super=t,this._superApply=e,i=n.apply(this,arguments),this._super=s,this._superApply=a,i}}(),e):(l[i]=n,e)}),r.prototype=t.widget.extend(h,{widgetEventPrefix:o?h.widgetEventPrefix||i:i},l,{constructor:r,namespace:u,widgetName:i,widgetFullName:a}),o?(t.each(o._childConstructors,function(e,i){var s=i.prototype;t.widget(s.namespace+"."+s.widgetName,r,i._proto)}),delete o._childConstructors):s._childConstructors.push(r),t.widget.bridge(i,r)},t.widget.extend=function(i){for(var n,a,o=s.call(arguments,1),r=0,h=o.length;h>r;r++)for(n in o[r])a=o[r][n],o[r].hasOwnProperty(n)&&a!==e&&(i[n]=t.isPlainObject(a)?t.isPlainObject(i[n])?t.widget.extend({},i[n],a):t.widget.extend({},a):a);return i},t.widget.bridge=function(i,n){var a=n.prototype.widgetFullName||i;t.fn[i]=function(o){var r="string"==typeof o,h=s.call(arguments,1),l=this;return o=!r&&h.length?t.widget.extend.apply(null,[o].concat(h)):o,r?this.each(function(){var s,n=t.data(this,a);return n?t.isFunction(n[o])&&"_"!==o.charAt(0)?(s=n[o].apply(n,h),s!==n&&s!==e?(l=s&&s.jquery?l.pushStack(s.get()):s,!1):e):t.error("no such method '"+o+"' for "+i+" widget instance"):t.error("cannot call methods on "+i+" prior to initialization; "+"attempted to call method '"+o+"'")}):this.each(function(){var e=t.data(this,a);e?e.option(o||{})._init():t.data(this,a,new n(o,this))}),l}},t.Widget=function(){},t.Widget._childConstructors=[],t.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{disabled:!1,create:null},_createWidget:function(e,s){s=t(s||this.defaultElement||this)[0],this.element=t(s),this.uuid=i++,this.eventNamespace="."+this.widgetName+this.uuid,this.options=t.widget.extend({},this.options,this._getCreateOptions(),e),this.bindings=t(),this.hoverable=t(),this.focusable=t(),s!==this&&(t.data(s,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===s&&this.destroy()}}),this.document=t(s.style?s.ownerDocument:s.document||s),this.window=t(this.document[0].defaultView||this.document[0].parentWindow)),this._create(),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:t.noop,_getCreateEventData:t.noop,_create:t.noop,_init:t.noop,destroy:function(){this._destroy(),this.element.unbind(this.eventNamespace).removeData(this.widgetName).removeData(this.widgetFullName).removeData(t.camelCase(this.widgetFullName)),this.widget().unbind(this.eventNamespace).removeAttr("aria-disabled").removeClass(this.widgetFullName+"-disabled "+"ui-state-disabled"),this.bindings.unbind(this.eventNamespace),this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus")},_destroy:t.noop,widget:function(){return this.element},option:function(i,s){var n,a,o,r=i;if(0===arguments.length)return t.widget.extend({},this.options);if("string"==typeof i)if(r={},n=i.split("."),i=n.shift(),n.length){for(a=r[i]=t.widget.extend({},this.options[i]),o=0;n.length-1>o;o++)a[n[o]]=a[n[o]]||{},a=a[n[o]];if(i=n.pop(),1===arguments.length)return a[i]===e?null:a[i];a[i]=s}else{if(1===arguments.length)return this.options[i]===e?null:this.options[i];r[i]=s}return this._setOptions(r),this},_setOptions:function(t){var e;for(e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return this.options[t]=e,"disabled"===t&&(this.widget().toggleClass(this.widgetFullName+"-disabled ui-state-disabled",!!e).attr("aria-disabled",e),this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus")),this},enable:function(){return this._setOption("disabled",!1)},disable:function(){return this._setOption("disabled",!0)},_on:function(i,s,n){var a,o=this;"boolean"!=typeof i&&(n=s,s=i,i=!1),n?(s=a=t(s),this.bindings=this.bindings.add(s)):(n=s,s=this.element,a=this.widget()),t.each(n,function(n,r){function h(){return i||o.options.disabled!==!0&&!t(this).hasClass("ui-state-disabled")?("string"==typeof r?o[r]:r).apply(o,arguments):e}"string"!=typeof r&&(h.guid=r.guid=r.guid||h.guid||t.guid++);var l=n.match(/^(\w+)\s*(.*)$/),u=l[1]+o.eventNamespace,c=l[2];c?a.delegate(c,u,h):s.bind(u,h)})},_off:function(t,e){e=(e||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,t.unbind(e).undelegate(e)},_delay:function(t,e){function i(){return("string"==typeof t?s[t]:t).apply(s,arguments)}var s=this;return setTimeout(i,e||0)},_hoverable:function(e){this.hoverable=this.hoverable.add(e),this._on(e,{mouseenter:function(e){t(e.currentTarget).addClass("ui-state-hover")},mouseleave:function(e){t(e.currentTarget).removeClass("ui-state-hover")}})},_focusable:function(e){this.focusable=this.focusable.add(e),this._on(e,{focusin:function(e){t(e.currentTarget).addClass("ui-state-focus")},focusout:function(e){t(e.currentTarget).removeClass("ui-state-focus")}})},_trigger:function(e,i,s){var n,a,o=this.options[e];if(s=s||{},i=t.Event(i),i.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase(),i.target=this.element[0],a=i.originalEvent)for(n in a)n in i||(i[n]=a[n]);return this.element.trigger(i,s),!(t.isFunction(o)&&o.apply(this.element[0],[i].concat(s))===!1||i.isDefaultPrevented())}},t.each({show:"fadeIn",hide:"fadeOut"},function(e,i){t.Widget.prototype["_"+e]=function(s,n,a){"string"==typeof n&&(n={effect:n});var o,r=n?n===!0||"number"==typeof n?i:n.effect||i:e;n=n||{},"number"==typeof n&&(n={duration:n}),o=!t.isEmptyObject(n),n.complete=a,n.delay&&s.delay(n.delay),o&&t.effects&&t.effects.effect[r]?s[e](n):r!==e&&s[r]?s[r](n.duration,n.easing,a):s.queue(function(i){t(this)[e](),a&&a.call(s[0]),i()})}})})(jQuery);(function(t){var e=!1;t(document).mouseup(function(){e=!1}),t.widget("ui.mouse",{version:"1.10.4",options:{cancel:"input,textarea,button,select,option",distance:1,delay:0},_mouseInit:function(){var e=this;this.element.bind("mousedown."+this.widgetName,function(t){return e._mouseDown(t)}).bind("click."+this.widgetName,function(i){return!0===t.data(i.target,e.widgetName+".preventClickEvent")?(t.removeData(i.target,e.widgetName+".preventClickEvent"),i.stopImmediatePropagation(),!1):undefined}),this.started=!1},_mouseDestroy:function(){this.element.unbind("."+this.widgetName),this._mouseMoveDelegate&&t(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(i){if(!e){this._mouseStarted&&this._mouseUp(i),this._mouseDownEvent=i;var s=this,n=1===i.which,a="string"==typeof this.options.cancel&&i.target.nodeName?t(i.target).closest(this.options.cancel).length:!1;return n&&!a&&this._mouseCapture(i)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){s.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(i)&&this._mouseDelayMet(i)&&(this._mouseStarted=this._mouseStart(i)!==!1,!this._mouseStarted)?(i.preventDefault(),!0):(!0===t.data(i.target,this.widgetName+".preventClickEvent")&&t.removeData(i.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(t){return s._mouseMove(t)},this._mouseUpDelegate=function(t){return s._mouseUp(t)},t(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate),i.preventDefault(),e=!0,!0)):!0}},_mouseMove:function(e){return t.ui.ie&&(!document.documentMode||9>document.documentMode)&&!e.button?this._mouseUp(e):this._mouseStarted?(this._mouseDrag(e),e.preventDefault()):(this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,e)!==!1,this._mouseStarted?this._mouseDrag(e):this._mouseUp(e)),!this._mouseStarted)},_mouseUp:function(e){return t(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,e.target===this._mouseDownEvent.target&&t.data(e.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(e)),!1},_mouseDistanceMet:function(t){return Math.max(Math.abs(this._mouseDownEvent.pageX-t.pageX),Math.abs(this._mouseDownEvent.pageY-t.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}})})(jQuery);(function(t,e){function i(t,e,i){return[parseFloat(t[0])*(p.test(t[0])?e/100:1),parseFloat(t[1])*(p.test(t[1])?i/100:1)]}function s(e,i){return parseInt(t.css(e,i),10)||0}function n(e){var i=e[0];return 9===i.nodeType?{width:e.width(),height:e.height(),offset:{top:0,left:0}}:t.isWindow(i)?{width:e.width(),height:e.height(),offset:{top:e.scrollTop(),left:e.scrollLeft()}}:i.preventDefault?{width:0,height:0,offset:{top:i.pageY,left:i.pageX}}:{width:e.outerWidth(),height:e.outerHeight(),offset:e.offset()}}t.ui=t.ui||{};var a,o=Math.max,r=Math.abs,l=Math.round,h=/left|center|right/,c=/top|center|bottom/,u=/[\+\-]\d+(\.[\d]+)?%?/,d=/^\w+/,p=/%$/,f=t.fn.position;t.position={scrollbarWidth:function(){if(a!==e)return a;var i,s,n=t("<div style='display:block;position:absolute;width:50px;height:50px;overflow:hidden;'><div style='height:100px;width:auto;'></div></div>"),o=n.children()[0];return t("body").append(n),i=o.offsetWidth,n.css("overflow","scroll"),s=o.offsetWidth,i===s&&(s=n[0].clientWidth),n.remove(),a=i-s},getScrollInfo:function(e){var i=e.isWindow||e.isDocument?"":e.element.css("overflow-x"),s=e.isWindow||e.isDocument?"":e.element.css("overflow-y"),n="scroll"===i||"auto"===i&&e.width<e.element[0].scrollWidth,a="scroll"===s||"auto"===s&&e.height<e.element[0].scrollHeight;return{width:a?t.position.scrollbarWidth():0,height:n?t.position.scrollbarWidth():0}},getWithinInfo:function(e){var i=t(e||window),s=t.isWindow(i[0]),n=!!i[0]&&9===i[0].nodeType;return{element:i,isWindow:s,isDocument:n,offset:i.offset()||{left:0,top:0},scrollLeft:i.scrollLeft(),scrollTop:i.scrollTop(),width:s?i.width():i.outerWidth(),height:s?i.height():i.outerHeight()}}},t.fn.position=function(e){if(!e||!e.of)return f.apply(this,arguments);e=t.extend({},e);var a,p,g,m,v,_,b=t(e.of),y=t.position.getWithinInfo(e.within),k=t.position.getScrollInfo(y),D=(e.collision||"flip").split(" "),w={};return _=n(b),b[0].preventDefault&&(e.at="left top"),p=_.width,g=_.height,m=_.offset,v=t.extend({},m),t.each(["my","at"],function(){var t,i,s=(e[this]||"").split(" ");1===s.length&&(s=h.test(s[0])?s.concat(["center"]):c.test(s[0])?["center"].concat(s):["center","center"]),s[0]=h.test(s[0])?s[0]:"center",s[1]=c.test(s[1])?s[1]:"center",t=u.exec(s[0]),i=u.exec(s[1]),w[this]=[t?t[0]:0,i?i[0]:0],e[this]=[d.exec(s[0])[0],d.exec(s[1])[0]]}),1===D.length&&(D[1]=D[0]),"right"===e.at[0]?v.left+=p:"center"===e.at[0]&&(v.left+=p/2),"bottom"===e.at[1]?v.top+=g:"center"===e.at[1]&&(v.top+=g/2),a=i(w.at,p,g),v.left+=a[0],v.top+=a[1],this.each(function(){var n,h,c=t(this),u=c.outerWidth(),d=c.outerHeight(),f=s(this,"marginLeft"),_=s(this,"marginTop"),x=u+f+s(this,"marginRight")+k.width,C=d+_+s(this,"marginBottom")+k.height,M=t.extend({},v),T=i(w.my,c.outerWidth(),c.outerHeight());"right"===e.my[0]?M.left-=u:"center"===e.my[0]&&(M.left-=u/2),"bottom"===e.my[1]?M.top-=d:"center"===e.my[1]&&(M.top-=d/2),M.left+=T[0],M.top+=T[1],t.support.offsetFractions||(M.left=l(M.left),M.top=l(M.top)),n={marginLeft:f,marginTop:_},t.each(["left","top"],function(i,s){t.ui.position[D[i]]&&t.ui.position[D[i]][s](M,{targetWidth:p,targetHeight:g,elemWidth:u,elemHeight:d,collisionPosition:n,collisionWidth:x,collisionHeight:C,offset:[a[0]+T[0],a[1]+T[1]],my:e.my,at:e.at,within:y,elem:c})}),e.using&&(h=function(t){var i=m.left-M.left,s=i+p-u,n=m.top-M.top,a=n+g-d,l={target:{element:b,left:m.left,top:m.top,width:p,height:g},element:{element:c,left:M.left,top:M.top,width:u,height:d},horizontal:0>s?"left":i>0?"right":"center",vertical:0>a?"top":n>0?"bottom":"middle"};u>p&&p>r(i+s)&&(l.horizontal="center"),d>g&&g>r(n+a)&&(l.vertical="middle"),l.important=o(r(i),r(s))>o(r(n),r(a))?"horizontal":"vertical",e.using.call(this,t,l)}),c.offset(t.extend(M,{using:h}))})},t.ui.position={fit:{left:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollLeft:s.offset.left,a=s.width,r=t.left-e.collisionPosition.marginLeft,l=n-r,h=r+e.collisionWidth-a-n;e.collisionWidth>a?l>0&&0>=h?(i=t.left+l+e.collisionWidth-a-n,t.left+=l-i):t.left=h>0&&0>=l?n:l>h?n+a-e.collisionWidth:n:l>0?t.left+=l:h>0?t.left-=h:t.left=o(t.left-r,t.left)},top:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollTop:s.offset.top,a=e.within.height,r=t.top-e.collisionPosition.marginTop,l=n-r,h=r+e.collisionHeight-a-n;e.collisionHeight>a?l>0&&0>=h?(i=t.top+l+e.collisionHeight-a-n,t.top+=l-i):t.top=h>0&&0>=l?n:l>h?n+a-e.collisionHeight:n:l>0?t.top+=l:h>0?t.top-=h:t.top=o(t.top-r,t.top)}},flip:{left:function(t,e){var i,s,n=e.within,a=n.offset.left+n.scrollLeft,o=n.width,l=n.isWindow?n.scrollLeft:n.offset.left,h=t.left-e.collisionPosition.marginLeft,c=h-l,u=h+e.collisionWidth-o-l,d="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,p="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,f=-2*e.offset[0];0>c?(i=t.left+d+p+f+e.collisionWidth-o-a,(0>i||r(c)>i)&&(t.left+=d+p+f)):u>0&&(s=t.left-e.collisionPosition.marginLeft+d+p+f-l,(s>0||u>r(s))&&(t.left+=d+p+f))},top:function(t,e){var i,s,n=e.within,a=n.offset.top+n.scrollTop,o=n.height,l=n.isWindow?n.scrollTop:n.offset.top,h=t.top-e.collisionPosition.marginTop,c=h-l,u=h+e.collisionHeight-o-l,d="top"===e.my[1],p=d?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,f="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,g=-2*e.offset[1];0>c?(s=t.top+p+f+g+e.collisionHeight-o-a,t.top+p+f+g>c&&(0>s||r(c)>s)&&(t.top+=p+f+g)):u>0&&(i=t.top-e.collisionPosition.marginTop+p+f+g-l,t.top+p+f+g>u&&(i>0||u>r(i))&&(t.top+=p+f+g))}},flipfit:{left:function(){t.ui.position.flip.left.apply(this,arguments),t.ui.position.fit.left.apply(this,arguments)},top:function(){t.ui.position.flip.top.apply(this,arguments),t.ui.position.fit.top.apply(this,arguments)}}},function(){var e,i,s,n,a,o=document.getElementsByTagName("body")[0],r=document.createElement("div");e=document.createElement(o?"div":"body"),s={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},o&&t.extend(s,{position:"absolute",left:"-1000px",top:"-1000px"});for(a in s)e.style[a]=s[a];e.appendChild(r),i=o||document.documentElement,i.insertBefore(e,i.firstChild),r.style.cssText="position: absolute; left: 10.7432222px;",n=t(r).offset().left,t.support.offsetFractions=n>10&&11>n,e.innerHTML="",i.removeChild(e)}()})(jQuery);(function(t){t.widget("ui.draggable",t.ui.mouse,{version:"1.10.4",widgetEventPrefix:"drag",options:{addClasses:!0,appendTo:"parent",axis:!1,connectToSortable:!1,containment:!1,cursor:"auto",cursorAt:!1,grid:!1,handle:!1,helper:"original",iframeFix:!1,opacity:!1,refreshPositions:!1,revert:!1,revertDuration:500,scope:"default",scroll:!0,scrollSensitivity:20,scrollSpeed:20,snap:!1,snapMode:"both",snapTolerance:20,stack:!1,zIndex:!1,drag:null,start:null,stop:null},_create:function(){"original"!==this.options.helper||/^(?:r|a|f)/.test(this.element.css("position"))||(this.element[0].style.position="relative"),this.options.addClasses&&this.element.addClass("ui-draggable"),this.options.disabled&&this.element.addClass("ui-draggable-disabled"),this._mouseInit()},_destroy:function(){this.element.removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled"),this._mouseDestroy()},_mouseCapture:function(e){var i=this.options;return this.helper||i.disabled||t(e.target).closest(".ui-resizable-handle").length>0?!1:(this.handle=this._getHandle(e),this.handle?(t(i.iframeFix===!0?"iframe":i.iframeFix).each(function(){t("<div class='ui-draggable-iframeFix' style='background: #fff;'></div>").css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1e3}).css(t(this).offset()).appendTo("body")}),!0):!1)},_mouseStart:function(e){var i=this.options;return this.helper=this._createHelper(e),this.helper.addClass("ui-draggable-dragging"),this._cacheHelperProportions(),t.ui.ddmanager&&(t.ui.ddmanager.current=this),this._cacheMargins(),this.cssPosition=this.helper.css("position"),this.scrollParent=this.helper.scrollParent(),this.offsetParent=this.helper.offsetParent(),this.offsetParentCssPosition=this.offsetParent.css("position"),this.offset=this.positionAbs=this.element.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},this.offset.scroll=!1,t.extend(this.offset,{click:{left:e.pageX-this.offset.left,top:e.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.originalPosition=this.position=this._generatePosition(e),this.originalPageX=e.pageX,this.originalPageY=e.pageY,i.cursorAt&&this._adjustOffsetFromHelper(i.cursorAt),this._setContainment(),this._trigger("start",e)===!1?(this._clear(),!1):(this._cacheHelperProportions(),t.ui.ddmanager&&!i.dropBehaviour&&t.ui.ddmanager.prepareOffsets(this,e),this._mouseDrag(e,!0),t.ui.ddmanager&&t.ui.ddmanager.dragStart(this,e),!0)},_mouseDrag:function(e,i){if("fixed"===this.offsetParentCssPosition&&(this.offset.parent=this._getParentOffset()),this.position=this._generatePosition(e),this.positionAbs=this._convertPositionTo("absolute"),!i){var s=this._uiHash();if(this._trigger("drag",e,s)===!1)return this._mouseUp({}),!1;this.position=s.position}return this.options.axis&&"y"===this.options.axis||(this.helper[0].style.left=this.position.left+"px"),this.options.axis&&"x"===this.options.axis||(this.helper[0].style.top=this.position.top+"px"),t.ui.ddmanager&&t.ui.ddmanager.drag(this,e),!1},_mouseStop:function(e){var i=this,s=!1;return t.ui.ddmanager&&!this.options.dropBehaviour&&(s=t.ui.ddmanager.drop(this,e)),this.dropped&&(s=this.dropped,this.dropped=!1),"original"!==this.options.helper||t.contains(this.element[0].ownerDocument,this.element[0])?("invalid"===this.options.revert&&!s||"valid"===this.options.revert&&s||this.options.revert===!0||t.isFunction(this.options.revert)&&this.options.revert.call(this.element,s)?t(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){i._trigger("stop",e)!==!1&&i._clear()}):this._trigger("stop",e)!==!1&&this._clear(),!1):!1},_mouseUp:function(e){return t("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)}),t.ui.ddmanager&&t.ui.ddmanager.dragStop(this,e),t.ui.mouse.prototype._mouseUp.call(this,e)},cancel:function(){return this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear(),this},_getHandle:function(e){return this.options.handle?!!t(e.target).closest(this.element.find(this.options.handle)).length:!0},_createHelper:function(e){var i=this.options,s=t.isFunction(i.helper)?t(i.helper.apply(this.element[0],[e])):"clone"===i.helper?this.element.clone().removeAttr("id"):this.element;return s.parents("body").length||s.appendTo("parent"===i.appendTo?this.element[0].parentNode:i.appendTo),s[0]===this.element[0]||/(fixed|absolute)/.test(s.css("position"))||s.css("position","absolute"),s},_adjustOffsetFromHelper:function(e){"string"==typeof e&&(e=e.split(" ")),t.isArray(e)&&(e={left:+e[0],top:+e[1]||0}),"left"in e&&(this.offset.click.left=e.left+this.margins.left),"right"in e&&(this.offset.click.left=this.helperProportions.width-e.right+this.margins.left),"top"in e&&(this.offset.click.top=e.top+this.margins.top),"bottom"in e&&(this.offset.click.top=this.helperProportions.height-e.bottom+this.margins.top)},_getParentOffset:function(){var e=this.offsetParent.offset();return"absolute"===this.cssPosition&&this.scrollParent[0]!==document&&t.contains(this.scrollParent[0],this.offsetParent[0])&&(e.left+=this.scrollParent.scrollLeft(),e.top+=this.scrollParent.scrollTop()),(this.offsetParent[0]===document.body||this.offsetParent[0].tagName&&"html"===this.offsetParent[0].tagName.toLowerCase()&&t.ui.ie)&&(e={top:0,left:0}),{top:e.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:e.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if("relative"===this.cssPosition){var t=this.element.position();return{top:t.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:t.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var e,i,s,n=this.options;return n.containment?"window"===n.containment?(this.containment=[t(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,t(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,t(window).scrollLeft()+t(window).width()-this.helperProportions.width-this.margins.left,t(window).scrollTop()+(t(window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top],undefined):"document"===n.containment?(this.containment=[0,0,t(document).width()-this.helperProportions.width-this.margins.left,(t(document).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top],undefined):n.containment.constructor===Array?(this.containment=n.containment,undefined):("parent"===n.containment&&(n.containment=this.helper[0].parentNode),i=t(n.containment),s=i[0],s&&(e="hidden"!==i.css("overflow"),this.containment=[(parseInt(i.css("borderLeftWidth"),10)||0)+(parseInt(i.css("paddingLeft"),10)||0),(parseInt(i.css("borderTopWidth"),10)||0)+(parseInt(i.css("paddingTop"),10)||0),(e?Math.max(s.scrollWidth,s.offsetWidth):s.offsetWidth)-(parseInt(i.css("borderRightWidth"),10)||0)-(parseInt(i.css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(e?Math.max(s.scrollHeight,s.offsetHeight):s.offsetHeight)-(parseInt(i.css("borderBottomWidth"),10)||0)-(parseInt(i.css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom],this.relative_container=i),undefined):(this.containment=null,undefined)},_convertPositionTo:function(e,i){i||(i=this.position);var s="absolute"===e?1:-1,n="absolute"!==this.cssPosition||this.scrollParent[0]!==document&&t.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent;return this.offset.scroll||(this.offset.scroll={top:n.scrollTop(),left:n.scrollLeft()}),{top:i.top+this.offset.relative.top*s+this.offset.parent.top*s-("fixed"===this.cssPosition?-this.scrollParent.scrollTop():this.offset.scroll.top)*s,left:i.left+this.offset.relative.left*s+this.offset.parent.left*s-("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():this.offset.scroll.left)*s}},_generatePosition:function(e){var i,s,n,a,o=this.options,r="absolute"!==this.cssPosition||this.scrollParent[0]!==document&&t.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,l=e.pageX,h=e.pageY;return this.offset.scroll||(this.offset.scroll={top:r.scrollTop(),left:r.scrollLeft()}),this.originalPosition&&(this.containment&&(this.relative_container?(s=this.relative_container.offset(),i=[this.containment[0]+s.left,this.containment[1]+s.top,this.containment[2]+s.left,this.containment[3]+s.top]):i=this.containment,e.pageX-this.offset.click.left<i[0]&&(l=i[0]+this.offset.click.left),e.pageY-this.offset.click.top<i[1]&&(h=i[1]+this.offset.click.top),e.pageX-this.offset.click.left>i[2]&&(l=i[2]+this.offset.click.left),e.pageY-this.offset.click.top>i[3]&&(h=i[3]+this.offset.click.top)),o.grid&&(n=o.grid[1]?this.originalPageY+Math.round((h-this.originalPageY)/o.grid[1])*o.grid[1]:this.originalPageY,h=i?n-this.offset.click.top>=i[1]||n-this.offset.click.top>i[3]?n:n-this.offset.click.top>=i[1]?n-o.grid[1]:n+o.grid[1]:n,a=o.grid[0]?this.originalPageX+Math.round((l-this.originalPageX)/o.grid[0])*o.grid[0]:this.originalPageX,l=i?a-this.offset.click.left>=i[0]||a-this.offset.click.left>i[2]?a:a-this.offset.click.left>=i[0]?a-o.grid[0]:a+o.grid[0]:a)),{top:h-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+("fixed"===this.cssPosition?-this.scrollParent.scrollTop():this.offset.scroll.top),left:l-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():this.offset.scroll.left)}},_clear:function(){this.helper.removeClass("ui-draggable-dragging"),this.helper[0]===this.element[0]||this.cancelHelperRemoval||this.helper.remove(),this.helper=null,this.cancelHelperRemoval=!1},_trigger:function(e,i,s){return s=s||this._uiHash(),t.ui.plugin.call(this,e,[i,s]),"drag"===e&&(this.positionAbs=this._convertPositionTo("absolute")),t.Widget.prototype._trigger.call(this,e,i,s)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}}),t.ui.plugin.add("draggable","connectToSortable",{start:function(e,i){var s=t(this).data("ui-draggable"),n=s.options,a=t.extend({},i,{item:s.element});s.sortables=[],t(n.connectToSortable).each(function(){var i=t.data(this,"ui-sortable");i&&!i.options.disabled&&(s.sortables.push({instance:i,shouldRevert:i.options.revert}),i.refreshPositions(),i._trigger("activate",e,a))})},stop:function(e,i){var s=t(this).data("ui-draggable"),n=t.extend({},i,{item:s.element});t.each(s.sortables,function(){this.instance.isOver?(this.instance.isOver=0,s.cancelHelperRemoval=!0,this.instance.cancelHelperRemoval=!1,this.shouldRevert&&(this.instance.options.revert=this.shouldRevert),this.instance._mouseStop(e),this.instance.options.helper=this.instance.options._helper,"original"===s.options.helper&&this.instance.currentItem.css({top:"auto",left:"auto"})):(this.instance.cancelHelperRemoval=!1,this.instance._trigger("deactivate",e,n))})},drag:function(e,i){var s=t(this).data("ui-draggable"),n=this;t.each(s.sortables,function(){var a=!1,o=this;this.instance.positionAbs=s.positionAbs,this.instance.helperProportions=s.helperProportions,this.instance.offset.click=s.offset.click,this.instance._intersectsWith(this.instance.containerCache)&&(a=!0,t.each(s.sortables,function(){return this.instance.positionAbs=s.positionAbs,this.instance.helperProportions=s.helperProportions,this.instance.offset.click=s.offset.click,this!==o&&this.instance._intersectsWith(this.instance.containerCache)&&t.contains(o.instance.element[0],this.instance.element[0])&&(a=!1),a})),a?(this.instance.isOver||(this.instance.isOver=1,this.instance.currentItem=t(n).clone().removeAttr("id").appendTo(this.instance.element).data("ui-sortable-item",!0),this.instance.options._helper=this.instance.options.helper,this.instance.options.helper=function(){return i.helper[0]},e.target=this.instance.currentItem[0],this.instance._mouseCapture(e,!0),this.instance._mouseStart(e,!0,!0),this.instance.offset.click.top=s.offset.click.top,this.instance.offset.click.left=s.offset.click.left,this.instance.offset.parent.left-=s.offset.parent.left-this.instance.offset.parent.left,this.instance.offset.parent.top-=s.offset.parent.top-this.instance.offset.parent.top,s._trigger("toSortable",e),s.dropped=this.instance.element,s.currentItem=s.element,this.instance.fromOutside=s),this.instance.currentItem&&this.instance._mouseDrag(e)):this.instance.isOver&&(this.instance.isOver=0,this.instance.cancelHelperRemoval=!0,this.instance.options.revert=!1,this.instance._trigger("out",e,this.instance._uiHash(this.instance)),this.instance._mouseStop(e,!0),this.instance.options.helper=this.instance.options._helper,this.instance.currentItem.remove(),this.instance.placeholder&&this.instance.placeholder.remove(),s._trigger("fromSortable",e),s.dropped=!1)})}}),t.ui.plugin.add("draggable","cursor",{start:function(){var e=t("body"),i=t(this).data("ui-draggable").options;e.css("cursor")&&(i._cursor=e.css("cursor")),e.css("cursor",i.cursor)},stop:function(){var e=t(this).data("ui-draggable").options;e._cursor&&t("body").css("cursor",e._cursor)}}),t.ui.plugin.add("draggable","opacity",{start:function(e,i){var s=t(i.helper),n=t(this).data("ui-draggable").options;s.css("opacity")&&(n._opacity=s.css("opacity")),s.css("opacity",n.opacity)},stop:function(e,i){var s=t(this).data("ui-draggable").options;s._opacity&&t(i.helper).css("opacity",s._opacity)}}),t.ui.plugin.add("draggable","scroll",{start:function(){var e=t(this).data("ui-draggable");e.scrollParent[0]!==document&&"HTML"!==e.scrollParent[0].tagName&&(e.overflowOffset=e.scrollParent.offset())},drag:function(e){var i=t(this).data("ui-draggable"),s=i.options,n=!1;i.scrollParent[0]!==document&&"HTML"!==i.scrollParent[0].tagName?(s.axis&&"x"===s.axis||(i.overflowOffset.top+i.scrollParent[0].offsetHeight-e.pageY<s.scrollSensitivity?i.scrollParent[0].scrollTop=n=i.scrollParent[0].scrollTop+s.scrollSpeed:e.pageY-i.overflowOffset.top<s.scrollSensitivity&&(i.scrollParent[0].scrollTop=n=i.scrollParent[0].scrollTop-s.scrollSpeed)),s.axis&&"y"===s.axis||(i.overflowOffset.left+i.scrollParent[0].offsetWidth-e.pageX<s.scrollSensitivity?i.scrollParent[0].scrollLeft=n=i.scrollParent[0].scrollLeft+s.scrollSpeed:e.pageX-i.overflowOffset.left<s.scrollSensitivity&&(i.scrollParent[0].scrollLeft=n=i.scrollParent[0].scrollLeft-s.scrollSpeed))):(s.axis&&"x"===s.axis||(e.pageY-t(document).scrollTop()<s.scrollSensitivity?n=t(document).scrollTop(t(document).scrollTop()-s.scrollSpeed):t(window).height()-(e.pageY-t(document).scrollTop())<s.scrollSensitivity&&(n=t(document).scrollTop(t(document).scrollTop()+s.scrollSpeed))),s.axis&&"y"===s.axis||(e.pageX-t(document).scrollLeft()<s.scrollSensitivity?n=t(document).scrollLeft(t(document).scrollLeft()-s.scrollSpeed):t(window).width()-(e.pageX-t(document).scrollLeft())<s.scrollSensitivity&&(n=t(document).scrollLeft(t(document).scrollLeft()+s.scrollSpeed)))),n!==!1&&t.ui.ddmanager&&!s.dropBehaviour&&t.ui.ddmanager.prepareOffsets(i,e)}}),t.ui.plugin.add("draggable","snap",{start:function(){var e=t(this).data("ui-draggable"),i=e.options;e.snapElements=[],t(i.snap.constructor!==String?i.snap.items||":data(ui-draggable)":i.snap).each(function(){var i=t(this),s=i.offset();this!==e.element[0]&&e.snapElements.push({item:this,width:i.outerWidth(),height:i.outerHeight(),top:s.top,left:s.left})})},drag:function(e,i){var s,n,a,o,r,l,h,c,u,d,p=t(this).data("ui-draggable"),g=p.options,f=g.snapTolerance,m=i.offset.left,_=m+p.helperProportions.width,v=i.offset.top,b=v+p.helperProportions.height;for(u=p.snapElements.length-1;u>=0;u--)r=p.snapElements[u].left,l=r+p.snapElements[u].width,h=p.snapElements[u].top,c=h+p.snapElements[u].height,r-f>_||m>l+f||h-f>b||v>c+f||!t.contains(p.snapElements[u].item.ownerDocument,p.snapElements[u].item)?(p.snapElements[u].snapping&&p.options.snap.release&&p.options.snap.release.call(p.element,e,t.extend(p._uiHash(),{snapItem:p.snapElements[u].item})),p.snapElements[u].snapping=!1):("inner"!==g.snapMode&&(s=f>=Math.abs(h-b),n=f>=Math.abs(c-v),a=f>=Math.abs(r-_),o=f>=Math.abs(l-m),s&&(i.position.top=p._convertPositionTo("relative",{top:h-p.helperProportions.height,left:0}).top-p.margins.top),n&&(i.position.top=p._convertPositionTo("relative",{top:c,left:0}).top-p.margins.top),a&&(i.position.left=p._convertPositionTo("relative",{top:0,left:r-p.helperProportions.width}).left-p.margins.left),o&&(i.position.left=p._convertPositionTo("relative",{top:0,left:l}).left-p.margins.left)),d=s||n||a||o,"outer"!==g.snapMode&&(s=f>=Math.abs(h-v),n=f>=Math.abs(c-b),a=f>=Math.abs(r-m),o=f>=Math.abs(l-_),s&&(i.position.top=p._convertPositionTo("relative",{top:h,left:0}).top-p.margins.top),n&&(i.position.top=p._convertPositionTo("relative",{top:c-p.helperProportions.height,left:0}).top-p.margins.top),a&&(i.position.left=p._convertPositionTo("relative",{top:0,left:r}).left-p.margins.left),o&&(i.position.left=p._convertPositionTo("relative",{top:0,left:l-p.helperProportions.width}).left-p.margins.left)),!p.snapElements[u].snapping&&(s||n||a||o||d)&&p.options.snap.snap&&p.options.snap.snap.call(p.element,e,t.extend(p._uiHash(),{snapItem:p.snapElements[u].item})),p.snapElements[u].snapping=s||n||a||o||d)}}),t.ui.plugin.add("draggable","stack",{start:function(){var e,i=this.data("ui-draggable").options,s=t.makeArray(t(i.stack)).sort(function(e,i){return(parseInt(t(e).css("zIndex"),10)||0)-(parseInt(t(i).css("zIndex"),10)||0)});s.length&&(e=parseInt(t(s[0]).css("zIndex"),10)||0,t(s).each(function(i){t(this).css("zIndex",e+i)}),this.css("zIndex",e+s.length))}}),t.ui.plugin.add("draggable","zIndex",{start:function(e,i){var s=t(i.helper),n=t(this).data("ui-draggable").options;s.css("zIndex")&&(n._zIndex=s.css("zIndex")),s.css("zIndex",n.zIndex)},stop:function(e,i){var s=t(this).data("ui-draggable").options;s._zIndex&&t(i.helper).css("zIndex",s._zIndex)}})})(jQuery);(function(t){function e(t,e,i){return t>e&&e+i>t}t.widget("ui.droppable",{version:"1.10.4",widgetEventPrefix:"drop",options:{accept:"*",activeClass:!1,addClasses:!0,greedy:!1,hoverClass:!1,scope:"default",tolerance:"intersect",activate:null,deactivate:null,drop:null,out:null,over:null},_create:function(){var e,i=this.options,s=i.accept;this.isover=!1,this.isout=!0,this.accept=t.isFunction(s)?s:function(t){return t.is(s)},this.proportions=function(){return arguments.length?(e=arguments[0],undefined):e?e:e={width:this.element[0].offsetWidth,height:this.element[0].offsetHeight}},t.ui.ddmanager.droppables[i.scope]=t.ui.ddmanager.droppables[i.scope]||[],t.ui.ddmanager.droppables[i.scope].push(this),i.addClasses&&this.element.addClass("ui-droppable")},_destroy:function(){for(var e=0,i=t.ui.ddmanager.droppables[this.options.scope];i.length>e;e++)i[e]===this&&i.splice(e,1);this.element.removeClass("ui-droppable ui-droppable-disabled")},_setOption:function(e,i){"accept"===e&&(this.accept=t.isFunction(i)?i:function(t){return t.is(i)}),t.Widget.prototype._setOption.apply(this,arguments)},_activate:function(e){var i=t.ui.ddmanager.current;this.options.activeClass&&this.element.addClass(this.options.activeClass),i&&this._trigger("activate",e,this.ui(i))},_deactivate:function(e){var i=t.ui.ddmanager.current;this.options.activeClass&&this.element.removeClass(this.options.activeClass),i&&this._trigger("deactivate",e,this.ui(i))},_over:function(e){var i=t.ui.ddmanager.current;i&&(i.currentItem||i.element)[0]!==this.element[0]&&this.accept.call(this.element[0],i.currentItem||i.element)&&(this.options.hoverClass&&this.element.addClass(this.options.hoverClass),this._trigger("over",e,this.ui(i)))},_out:function(e){var i=t.ui.ddmanager.current;i&&(i.currentItem||i.element)[0]!==this.element[0]&&this.accept.call(this.element[0],i.currentItem||i.element)&&(this.options.hoverClass&&this.element.removeClass(this.options.hoverClass),this._trigger("out",e,this.ui(i)))},_drop:function(e,i){var s=i||t.ui.ddmanager.current,n=!1;return s&&(s.currentItem||s.element)[0]!==this.element[0]?(this.element.find(":data(ui-droppable)").not(".ui-draggable-dragging").each(function(){var e=t.data(this,"ui-droppable");return e.options.greedy&&!e.options.disabled&&e.options.scope===s.options.scope&&e.accept.call(e.element[0],s.currentItem||s.element)&&t.ui.intersect(s,t.extend(e,{offset:e.element.offset()}),e.options.tolerance)?(n=!0,!1):undefined}),n?!1:this.accept.call(this.element[0],s.currentItem||s.element)?(this.options.activeClass&&this.element.removeClass(this.options.activeClass),this.options.hoverClass&&this.element.removeClass(this.options.hoverClass),this._trigger("drop",e,this.ui(s)),this.element):!1):!1},ui:function(t){return{draggable:t.currentItem||t.element,helper:t.helper,position:t.position,offset:t.positionAbs}}}),t.ui.intersect=function(t,i,s){if(!i.offset)return!1;var n,a,o=(t.positionAbs||t.position.absolute).left,r=(t.positionAbs||t.position.absolute).top,l=o+t.helperProportions.width,h=r+t.helperProportions.height,c=i.offset.left,u=i.offset.top,d=c+i.proportions().width,p=u+i.proportions().height;switch(s){case"fit":return o>=c&&d>=l&&r>=u&&p>=h;case"intersect":return o+t.helperProportions.width/2>c&&d>l-t.helperProportions.width/2&&r+t.helperProportions.height/2>u&&p>h-t.helperProportions.height/2;case"pointer":return n=(t.positionAbs||t.position.absolute).left+(t.clickOffset||t.offset.click).left,a=(t.positionAbs||t.position.absolute).top+(t.clickOffset||t.offset.click).top,e(a,u,i.proportions().height)&&e(n,c,i.proportions().width);case"touch":return(r>=u&&p>=r||h>=u&&p>=h||u>r&&h>p)&&(o>=c&&d>=o||l>=c&&d>=l||c>o&&l>d);default:return!1}},t.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(e,i){var s,n,a=t.ui.ddmanager.droppables[e.options.scope]||[],o=i?i.type:null,r=(e.currentItem||e.element).find(":data(ui-droppable)").addBack();t:for(s=0;a.length>s;s++)if(!(a[s].options.disabled||e&&!a[s].accept.call(a[s].element[0],e.currentItem||e.element))){for(n=0;r.length>n;n++)if(r[n]===a[s].element[0]){a[s].proportions().height=0;continue t}a[s].visible="none"!==a[s].element.css("display"),a[s].visible&&("mousedown"===o&&a[s]._activate.call(a[s],i),a[s].offset=a[s].element.offset(),a[s].proportions({width:a[s].element[0].offsetWidth,height:a[s].element[0].offsetHeight}))}},drop:function(e,i){var s=!1;return t.each((t.ui.ddmanager.droppables[e.options.scope]||[]).slice(),function(){this.options&&(!this.options.disabled&&this.visible&&t.ui.intersect(e,this,this.options.tolerance)&&(s=this._drop.call(this,i)||s),!this.options.disabled&&this.visible&&this.accept.call(this.element[0],e.currentItem||e.element)&&(this.isout=!0,this.isover=!1,this._deactivate.call(this,i)))}),s},dragStart:function(e,i){e.element.parentsUntil("body").bind("scroll.droppable",function(){e.options.refreshPositions||t.ui.ddmanager.prepareOffsets(e,i)})},drag:function(e,i){e.options.refreshPositions&&t.ui.ddmanager.prepareOffsets(e,i),t.each(t.ui.ddmanager.droppables[e.options.scope]||[],function(){if(!this.options.disabled&&!this.greedyChild&&this.visible){var s,n,a,o=t.ui.intersect(e,this,this.options.tolerance),r=!o&&this.isover?"isout":o&&!this.isover?"isover":null;r&&(this.options.greedy&&(n=this.options.scope,a=this.element.parents(":data(ui-droppable)").filter(function(){return t.data(this,"ui-droppable").options.scope===n}),a.length&&(s=t.data(a[0],"ui-droppable"),s.greedyChild="isover"===r)),s&&"isover"===r&&(s.isover=!1,s.isout=!0,s._out.call(s,i)),this[r]=!0,this["isout"===r?"isover":"isout"]=!1,this["isover"===r?"_over":"_out"].call(this,i),s&&"isout"===r&&(s.isout=!1,s.isover=!0,s._over.call(s,i)))}})},dragStop:function(e,i){e.element.parentsUntil("body").unbind("scroll.droppable"),e.options.refreshPositions||t.ui.ddmanager.prepareOffsets(e,i)}}})(jQuery);(function(t){function e(t){return parseInt(t,10)||0}function i(t){return!isNaN(parseInt(t,10))}t.widget("ui.resizable",t.ui.mouse,{version:"1.10.4",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_create:function(){var e,i,s,n,a,o=this,r=this.options;if(this.element.addClass("ui-resizable"),t.extend(this,{_aspectRatio:!!r.aspectRatio,aspectRatio:r.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:r.helper||r.ghost||r.animate?r.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)&&(this.element.wrap(t("<div class='ui-wrapper' style='overflow: hidden;'></div>").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.data("ui-resizable")),this.elementIsWrapper=!0,this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")}),this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0}),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css({margin:this.originalElement.css("margin")}),this._proportionallyResize()),this.handles=r.handles||(t(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),e=this.handles.split(","),this.handles={},i=0;e.length>i;i++)s=t.trim(e[i]),a="ui-resizable-"+s,n=t("<div class='ui-resizable-handle "+a+"'></div>"),n.css({zIndex:r.zIndex}),"se"===s&&n.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[s]=".ui-resizable-"+s,this.element.append(n);this._renderAxis=function(e){var i,s,n,a;e=e||this.element;for(i in this.handles)this.handles[i].constructor===String&&(this.handles[i]=t(this.handles[i],this.element).show()),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)&&(s=t(this.handles[i],this.element),a=/sw|ne|nw|se|n|s/.test(i)?s.outerHeight():s.outerWidth(),n=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join(""),e.css(n,a),this._proportionallyResize()),t(this.handles[i]).length},this._renderAxis(this.element),this._handles=t(".ui-resizable-handle",this.element).disableSelection(),this._handles.mouseover(function(){o.resizing||(this.className&&(n=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),o.axis=n&&n[1]?n[1]:"se")}),r.autoHide&&(this._handles.hide(),t(this.element).addClass("ui-resizable-autohide").mouseenter(function(){r.disabled||(t(this).removeClass("ui-resizable-autohide"),o._handles.show())}).mouseleave(function(){r.disabled||o.resizing||(t(this).addClass("ui-resizable-autohide"),o._handles.hide())})),this._mouseInit()},_destroy:function(){this._mouseDestroy();var e,i=function(e){t(e).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").removeData("ui-resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};return this.elementIsWrapper&&(i(this.element),e=this.element,this.originalElement.css({position:e.css("position"),width:e.outerWidth(),height:e.outerHeight(),top:e.css("top"),left:e.css("left")}).insertAfter(e),e.remove()),this.originalElement.css("resize",this.originalResizeStyle),i(this.originalElement),this},_mouseCapture:function(e){var i,s,n=!1;for(i in this.handles)s=t(this.handles[i])[0],(s===e.target||t.contains(s,e.target))&&(n=!0);return!this.options.disabled&&n},_mouseStart:function(i){var s,n,a,o=this.options,r=this.element.position(),l=this.element;return this.resizing=!0,/absolute/.test(l.css("position"))?l.css({position:"absolute",top:l.css("top"),left:l.css("left")}):l.is(".ui-draggable")&&l.css({position:"absolute",top:r.top,left:r.left}),this._renderProxy(),s=e(this.helper.css("left")),n=e(this.helper.css("top")),o.containment&&(s+=t(o.containment).scrollLeft()||0,n+=t(o.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:s,top:n},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:l.width(),height:l.height()},this.originalSize=this._helper?{width:l.outerWidth(),height:l.outerHeight()}:{width:l.width(),height:l.height()},this.originalPosition={left:s,top:n},this.sizeDiff={width:l.outerWidth()-l.width(),height:l.outerHeight()-l.height()},this.originalMousePosition={left:i.pageX,top:i.pageY},this.aspectRatio="number"==typeof o.aspectRatio?o.aspectRatio:this.originalSize.width/this.originalSize.height||1,a=t(".ui-resizable-"+this.axis).css("cursor"),t("body").css("cursor","auto"===a?this.axis+"-resize":a),l.addClass("ui-resizable-resizing"),this._propagate("start",i),!0},_mouseDrag:function(e){var i,s=this.helper,n={},a=this.originalMousePosition,o=this.axis,r=this.position.top,l=this.position.left,h=this.size.width,u=this.size.height,c=e.pageX-a.left||0,d=e.pageY-a.top||0,p=this._change[o];return p?(i=p.apply(this,[e,c,d]),this._updateVirtualBoundaries(e.shiftKey),(this._aspectRatio||e.shiftKey)&&(i=this._updateRatio(i,e)),i=this._respectSize(i,e),this._updateCache(i),this._propagate("resize",e),this.position.top!==r&&(n.top=this.position.top+"px"),this.position.left!==l&&(n.left=this.position.left+"px"),this.size.width!==h&&(n.width=this.size.width+"px"),this.size.height!==u&&(n.height=this.size.height+"px"),s.css(n),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),t.isEmptyObject(n)||this._trigger("resize",e,this.ui()),!1):!1},_mouseStop:function(e){this.resizing=!1;var i,s,n,a,o,r,l,h=this.options,u=this;return this._helper&&(i=this._proportionallyResizeElements,s=i.length&&/textarea/i.test(i[0].nodeName),n=s&&t.ui.hasScroll(i[0],"left")?0:u.sizeDiff.height,a=s?0:u.sizeDiff.width,o={width:u.helper.width()-a,height:u.helper.height()-n},r=parseInt(u.element.css("left"),10)+(u.position.left-u.originalPosition.left)||null,l=parseInt(u.element.css("top"),10)+(u.position.top-u.originalPosition.top)||null,h.animate||this.element.css(t.extend(o,{top:l,left:r})),u.helper.height(u.size.height),u.helper.width(u.size.width),this._helper&&!h.animate&&this._proportionallyResize()),t("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",e),this._helper&&this.helper.remove(),!1},_updateVirtualBoundaries:function(t){var e,s,n,a,o,r=this.options;o={minWidth:i(r.minWidth)?r.minWidth:0,maxWidth:i(r.maxWidth)?r.maxWidth:1/0,minHeight:i(r.minHeight)?r.minHeight:0,maxHeight:i(r.maxHeight)?r.maxHeight:1/0},(this._aspectRatio||t)&&(e=o.minHeight*this.aspectRatio,n=o.minWidth/this.aspectRatio,s=o.maxHeight*this.aspectRatio,a=o.maxWidth/this.aspectRatio,e>o.minWidth&&(o.minWidth=e),n>o.minHeight&&(o.minHeight=n),o.maxWidth>s&&(o.maxWidth=s),o.maxHeight>a&&(o.maxHeight=a)),this._vBoundaries=o},_updateCache:function(t){this.offset=this.helper.offset(),i(t.left)&&(this.position.left=t.left),i(t.top)&&(this.position.top=t.top),i(t.height)&&(this.size.height=t.height),i(t.width)&&(this.size.width=t.width)},_updateRatio:function(t){var e=this.position,s=this.size,n=this.axis;return i(t.height)?t.width=t.height*this.aspectRatio:i(t.width)&&(t.height=t.width/this.aspectRatio),"sw"===n&&(t.left=e.left+(s.width-t.width),t.top=null),"nw"===n&&(t.top=e.top+(s.height-t.height),t.left=e.left+(s.width-t.width)),t},_respectSize:function(t){var e=this._vBoundaries,s=this.axis,n=i(t.width)&&e.maxWidth&&e.maxWidth<t.width,a=i(t.height)&&e.maxHeight&&e.maxHeight<t.height,o=i(t.width)&&e.minWidth&&e.minWidth>t.width,r=i(t.height)&&e.minHeight&&e.minHeight>t.height,l=this.originalPosition.left+this.originalSize.width,h=this.position.top+this.size.height,u=/sw|nw|w/.test(s),c=/nw|ne|n/.test(s);return o&&(t.width=e.minWidth),r&&(t.height=e.minHeight),n&&(t.width=e.maxWidth),a&&(t.height=e.maxHeight),o&&u&&(t.left=l-e.minWidth),n&&u&&(t.left=l-e.maxWidth),r&&c&&(t.top=h-e.minHeight),a&&c&&(t.top=h-e.maxHeight),t.width||t.height||t.left||!t.top?t.width||t.height||t.top||!t.left||(t.left=null):t.top=null,t},_proportionallyResize:function(){if(this._proportionallyResizeElements.length){var t,e,i,s,n,a=this.helper||this.element;for(t=0;this._proportionallyResizeElements.length>t;t++){if(n=this._proportionallyResizeElements[t],!this.borderDif)for(this.borderDif=[],i=[n.css("borderTopWidth"),n.css("borderRightWidth"),n.css("borderBottomWidth"),n.css("borderLeftWidth")],s=[n.css("paddingTop"),n.css("paddingRight"),n.css("paddingBottom"),n.css("paddingLeft")],e=0;i.length>e;e++)this.borderDif[e]=(parseInt(i[e],10)||0)+(parseInt(s[e],10)||0);n.css({height:a.height()-this.borderDif[0]-this.borderDif[2]||0,width:a.width()-this.borderDif[1]-this.borderDif[3]||0})}}},_renderProxy:function(){var e=this.element,i=this.options;this.elementOffset=e.offset(),this._helper?(this.helper=this.helper||t("<div style='overflow:hidden;'></div>"),this.helper.addClass(this._helper).css({width:this.element.outerWidth()-1,height:this.element.outerHeight()-1,position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++i.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element},_change:{e:function(t,e){return{width:this.originalSize.width+e}},w:function(t,e){var i=this.originalSize,s=this.originalPosition;return{left:s.left+e,width:i.width-e}},n:function(t,e,i){var s=this.originalSize,n=this.originalPosition;return{top:n.top+i,height:s.height-i}},s:function(t,e,i){return{height:this.originalSize.height+i}},se:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},sw:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[e,i,s]))},ne:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},nw:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[e,i,s]))}},_propagate:function(e,i){t.ui.plugin.call(this,e,[i,this.ui()]),"resize"!==e&&this._trigger(e,i,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),t.ui.plugin.add("resizable","animate",{stop:function(e){var i=t(this).data("ui-resizable"),s=i.options,n=i._proportionallyResizeElements,a=n.length&&/textarea/i.test(n[0].nodeName),o=a&&t.ui.hasScroll(n[0],"left")?0:i.sizeDiff.height,r=a?0:i.sizeDiff.width,l={width:i.size.width-r,height:i.size.height-o},h=parseInt(i.element.css("left"),10)+(i.position.left-i.originalPosition.left)||null,u=parseInt(i.element.css("top"),10)+(i.position.top-i.originalPosition.top)||null;i.element.animate(t.extend(l,u&&h?{top:u,left:h}:{}),{duration:s.animateDuration,easing:s.animateEasing,step:function(){var s={width:parseInt(i.element.css("width"),10),height:parseInt(i.element.css("height"),10),top:parseInt(i.element.css("top"),10),left:parseInt(i.element.css("left"),10)};n&&n.length&&t(n[0]).css({width:s.width,height:s.height}),i._updateCache(s),i._propagate("resize",e)}})}}),t.ui.plugin.add("resizable","containment",{start:function(){var i,s,n,a,o,r,l,h=t(this).data("ui-resizable"),u=h.options,c=h.element,d=u.containment,p=d instanceof t?d.get(0):/parent/.test(d)?c.parent().get(0):d;p&&(h.containerElement=t(p),/document/.test(d)||d===document?(h.containerOffset={left:0,top:0},h.containerPosition={left:0,top:0},h.parentData={element:t(document),left:0,top:0,width:t(document).width(),height:t(document).height()||document.body.parentNode.scrollHeight}):(i=t(p),s=[],t(["Top","Right","Left","Bottom"]).each(function(t,n){s[t]=e(i.css("padding"+n))}),h.containerOffset=i.offset(),h.containerPosition=i.position(),h.containerSize={height:i.innerHeight()-s[3],width:i.innerWidth()-s[1]},n=h.containerOffset,a=h.containerSize.height,o=h.containerSize.width,r=t.ui.hasScroll(p,"left")?p.scrollWidth:o,l=t.ui.hasScroll(p)?p.scrollHeight:a,h.parentData={element:p,left:n.left,top:n.top,width:r,height:l}))},resize:function(e){var i,s,n,a,o=t(this).data("ui-resizable"),r=o.options,l=o.containerOffset,h=o.position,u=o._aspectRatio||e.shiftKey,c={top:0,left:0},d=o.containerElement;d[0]!==document&&/static/.test(d.css("position"))&&(c=l),h.left<(o._helper?l.left:0)&&(o.size.width=o.size.width+(o._helper?o.position.left-l.left:o.position.left-c.left),u&&(o.size.height=o.size.width/o.aspectRatio),o.position.left=r.helper?l.left:0),h.top<(o._helper?l.top:0)&&(o.size.height=o.size.height+(o._helper?o.position.top-l.top:o.position.top),u&&(o.size.width=o.size.height*o.aspectRatio),o.position.top=o._helper?l.top:0),o.offset.left=o.parentData.left+o.position.left,o.offset.top=o.parentData.top+o.position.top,i=Math.abs((o._helper?o.offset.left-c.left:o.offset.left-c.left)+o.sizeDiff.width),s=Math.abs((o._helper?o.offset.top-c.top:o.offset.top-l.top)+o.sizeDiff.height),n=o.containerElement.get(0)===o.element.parent().get(0),a=/relative|absolute/.test(o.containerElement.css("position")),n&&a&&(i-=Math.abs(o.parentData.left)),i+o.size.width>=o.parentData.width&&(o.size.width=o.parentData.width-i,u&&(o.size.height=o.size.width/o.aspectRatio)),s+o.size.height>=o.parentData.height&&(o.size.height=o.parentData.height-s,u&&(o.size.width=o.size.height*o.aspectRatio))},stop:function(){var e=t(this).data("ui-resizable"),i=e.options,s=e.containerOffset,n=e.containerPosition,a=e.containerElement,o=t(e.helper),r=o.offset(),l=o.outerWidth()-e.sizeDiff.width,h=o.outerHeight()-e.sizeDiff.height;e._helper&&!i.animate&&/relative/.test(a.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:l,height:h}),e._helper&&!i.animate&&/static/.test(a.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:l,height:h})}}),t.ui.plugin.add("resizable","alsoResize",{start:function(){var e=t(this).data("ui-resizable"),i=e.options,s=function(e){t(e).each(function(){var e=t(this);e.data("ui-resizable-alsoresize",{width:parseInt(e.width(),10),height:parseInt(e.height(),10),left:parseInt(e.css("left"),10),top:parseInt(e.css("top"),10)})})};"object"!=typeof i.alsoResize||i.alsoResize.parentNode?s(i.alsoResize):i.alsoResize.length?(i.alsoResize=i.alsoResize[0],s(i.alsoResize)):t.each(i.alsoResize,function(t){s(t)})},resize:function(e,i){var s=t(this).data("ui-resizable"),n=s.options,a=s.originalSize,o=s.originalPosition,r={height:s.size.height-a.height||0,width:s.size.width-a.width||0,top:s.position.top-o.top||0,left:s.position.left-o.left||0},l=function(e,s){t(e).each(function(){var e=t(this),n=t(this).data("ui-resizable-alsoresize"),a={},o=s&&s.length?s:e.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];t.each(o,function(t,e){var i=(n[e]||0)+(r[e]||0);i&&i>=0&&(a[e]=i||null)}),e.css(a)})};"object"!=typeof n.alsoResize||n.alsoResize.nodeType?l(n.alsoResize):t.each(n.alsoResize,function(t,e){l(t,e)})},stop:function(){t(this).removeData("resizable-alsoresize")}}),t.ui.plugin.add("resizable","ghost",{start:function(){var e=t(this).data("ui-resizable"),i=e.options,s=e.size;e.ghost=e.originalElement.clone(),e.ghost.css({opacity:.25,display:"block",position:"relative",height:s.height,width:s.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass("string"==typeof i.ghost?i.ghost:""),e.ghost.appendTo(e.helper)},resize:function(){var e=t(this).data("ui-resizable");e.ghost&&e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})},stop:function(){var e=t(this).data("ui-resizable");e.ghost&&e.helper&&e.helper.get(0).removeChild(e.ghost.get(0))}}),t.ui.plugin.add("resizable","grid",{resize:function(){var e=t(this).data("ui-resizable"),i=e.options,s=e.size,n=e.originalSize,a=e.originalPosition,o=e.axis,r="number"==typeof i.grid?[i.grid,i.grid]:i.grid,l=r[0]||1,h=r[1]||1,u=Math.round((s.width-n.width)/l)*l,c=Math.round((s.height-n.height)/h)*h,d=n.width+u,p=n.height+c,f=i.maxWidth&&d>i.maxWidth,g=i.maxHeight&&p>i.maxHeight,m=i.minWidth&&i.minWidth>d,v=i.minHeight&&i.minHeight>p;i.grid=r,m&&(d+=l),v&&(p+=h),f&&(d-=l),g&&(p-=h),/^(se|s|e)$/.test(o)?(e.size.width=d,e.size.height=p):/^(ne)$/.test(o)?(e.size.width=d,e.size.height=p,e.position.top=a.top-c):/^(sw)$/.test(o)?(e.size.width=d,e.size.height=p,e.position.left=a.left-u):(p-h>0?(e.size.height=p,e.position.top=a.top-c):(e.size.height=h,e.position.top=a.top+n.height-h),d-l>0?(e.size.width=d,e.position.left=a.left-u):(e.size.width=l,e.position.left=a.left+n.width-l))}})})(jQuery);(function(t){t.widget("ui.selectable",t.ui.mouse,{version:"1.10.4",options:{appendTo:"body",autoRefresh:!0,distance:0,filter:"*",tolerance:"touch",selected:null,selecting:null,start:null,stop:null,unselected:null,unselecting:null},_create:function(){var e,i=this;this.element.addClass("ui-selectable"),this.dragged=!1,this.refresh=function(){e=t(i.options.filter,i.element[0]),e.addClass("ui-selectee"),e.each(function(){var e=t(this),i=e.offset();t.data(this,"selectable-item",{element:this,$element:e,left:i.left,top:i.top,right:i.left+e.outerWidth(),bottom:i.top+e.outerHeight(),startselected:!1,selected:e.hasClass("ui-selected"),selecting:e.hasClass("ui-selecting"),unselecting:e.hasClass("ui-unselecting")})})},this.refresh(),this.selectees=e.addClass("ui-selectee"),this._mouseInit(),this.helper=t("<div class='ui-selectable-helper'></div>")},_destroy:function(){this.selectees.removeClass("ui-selectee").removeData("selectable-item"),this.element.removeClass("ui-selectable ui-selectable-disabled"),this._mouseDestroy()},_mouseStart:function(e){var i=this,s=this.options;this.opos=[e.pageX,e.pageY],this.options.disabled||(this.selectees=t(s.filter,this.element[0]),this._trigger("start",e),t(s.appendTo).append(this.helper),this.helper.css({left:e.pageX,top:e.pageY,width:0,height:0}),s.autoRefresh&&this.refresh(),this.selectees.filter(".ui-selected").each(function(){var s=t.data(this,"selectable-item");s.startselected=!0,e.metaKey||e.ctrlKey||(s.$element.removeClass("ui-selected"),s.selected=!1,s.$element.addClass("ui-unselecting"),s.unselecting=!0,i._trigger("unselecting",e,{unselecting:s.element}))}),t(e.target).parents().addBack().each(function(){var s,n=t.data(this,"selectable-item");return n?(s=!e.metaKey&&!e.ctrlKey||!n.$element.hasClass("ui-selected"),n.$element.removeClass(s?"ui-unselecting":"ui-selected").addClass(s?"ui-selecting":"ui-unselecting"),n.unselecting=!s,n.selecting=s,n.selected=s,s?i._trigger("selecting",e,{selecting:n.element}):i._trigger("unselecting",e,{unselecting:n.element}),!1):undefined}))},_mouseDrag:function(e){if(this.dragged=!0,!this.options.disabled){var i,s=this,n=this.options,a=this.opos[0],o=this.opos[1],r=e.pageX,l=e.pageY;return a>r&&(i=r,r=a,a=i),o>l&&(i=l,l=o,o=i),this.helper.css({left:a,top:o,width:r-a,height:l-o}),this.selectees.each(function(){var i=t.data(this,"selectable-item"),h=!1;i&&i.element!==s.element[0]&&("touch"===n.tolerance?h=!(i.left>r||a>i.right||i.top>l||o>i.bottom):"fit"===n.tolerance&&(h=i.left>a&&r>i.right&&i.top>o&&l>i.bottom),h?(i.selected&&(i.$element.removeClass("ui-selected"),i.selected=!1),i.unselecting&&(i.$element.removeClass("ui-unselecting"),i.unselecting=!1),i.selecting||(i.$element.addClass("ui-selecting"),i.selecting=!0,s._trigger("selecting",e,{selecting:i.element}))):(i.selecting&&((e.metaKey||e.ctrlKey)&&i.startselected?(i.$element.removeClass("ui-selecting"),i.selecting=!1,i.$element.addClass("ui-selected"),i.selected=!0):(i.$element.removeClass("ui-selecting"),i.selecting=!1,i.startselected&&(i.$element.addClass("ui-unselecting"),i.unselecting=!0),s._trigger("unselecting",e,{unselecting:i.element}))),i.selected&&(e.metaKey||e.ctrlKey||i.startselected||(i.$element.removeClass("ui-selected"),i.selected=!1,i.$element.addClass("ui-unselecting"),i.unselecting=!0,s._trigger("unselecting",e,{unselecting:i.element})))))}),!1}},_mouseStop:function(e){var i=this;return this.dragged=!1,t(".ui-unselecting",this.element[0]).each(function(){var s=t.data(this,"selectable-item");s.$element.removeClass("ui-unselecting"),s.unselecting=!1,s.startselected=!1,i._trigger("unselected",e,{unselected:s.element})}),t(".ui-selecting",this.element[0]).each(function(){var s=t.data(this,"selectable-item");s.$element.removeClass("ui-selecting").addClass("ui-selected"),s.selecting=!1,s.selected=!0,s.startselected=!0,i._trigger("selected",e,{selected:s.element})}),this._trigger("stop",e),this.helper.remove(),!1}})})(jQuery);(function(t){function e(t,e,i){return t>e&&e+i>t}function i(t){return/left|right/.test(t.css("float"))||/inline|table-cell/.test(t.css("display"))}t.widget("ui.sortable",t.ui.mouse,{version:"1.10.4",widgetEventPrefix:"sort",ready:!1,options:{appendTo:"parent",axis:!1,connectWith:!1,containment:!1,cursor:"auto",cursorAt:!1,dropOnEmpty:!0,forcePlaceholderSize:!1,forceHelperSize:!1,grid:!1,handle:!1,helper:"original",items:"> *",opacity:!1,placeholder:!1,revert:!1,scroll:!0,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1e3,activate:null,beforeStop:null,change:null,deactivate:null,out:null,over:null,receive:null,remove:null,sort:null,start:null,stop:null,update:null},_create:function(){var t=this.options;this.containerCache={},this.element.addClass("ui-sortable"),this.refresh(),this.floating=this.items.length?"x"===t.axis||i(this.items[0].item):!1,this.offset=this.element.offset(),this._mouseInit(),this.ready=!0},_destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled"),this._mouseDestroy();for(var t=this.items.length-1;t>=0;t--)this.items[t].item.removeData(this.widgetName+"-item");return this},_setOption:function(e,i){"disabled"===e?(this.options[e]=i,this.widget().toggleClass("ui-sortable-disabled",!!i)):t.Widget.prototype._setOption.apply(this,arguments)},_mouseCapture:function(e,i){var s=null,n=!1,a=this;return this.reverting?!1:this.options.disabled||"static"===this.options.type?!1:(this._refreshItems(e),t(e.target).parents().each(function(){return t.data(this,a.widgetName+"-item")===a?(s=t(this),!1):undefined}),t.data(e.target,a.widgetName+"-item")===a&&(s=t(e.target)),s?!this.options.handle||i||(t(this.options.handle,s).find("*").addBack().each(function(){this===e.target&&(n=!0)}),n)?(this.currentItem=s,this._removeCurrentsFromItems(),!0):!1:!1)},_mouseStart:function(e,i,s){var n,a,o=this.options;if(this.currentContainer=this,this.refreshPositions(),this.helper=this._createHelper(e),this._cacheHelperProportions(),this._cacheMargins(),this.scrollParent=this.helper.scrollParent(),this.offset=this.currentItem.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},t.extend(this.offset,{click:{left:e.pageX-this.offset.left,top:e.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.helper.css("position","absolute"),this.cssPosition=this.helper.css("position"),this.originalPosition=this._generatePosition(e),this.originalPageX=e.pageX,this.originalPageY=e.pageY,o.cursorAt&&this._adjustOffsetFromHelper(o.cursorAt),this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]},this.helper[0]!==this.currentItem[0]&&this.currentItem.hide(),this._createPlaceholder(),o.containment&&this._setContainment(),o.cursor&&"auto"!==o.cursor&&(a=this.document.find("body"),this.storedCursor=a.css("cursor"),a.css("cursor",o.cursor),this.storedStylesheet=t("<style>*{ cursor: "+o.cursor+" !important; }</style>").appendTo(a)),o.opacity&&(this.helper.css("opacity")&&(this._storedOpacity=this.helper.css("opacity")),this.helper.css("opacity",o.opacity)),o.zIndex&&(this.helper.css("zIndex")&&(this._storedZIndex=this.helper.css("zIndex")),this.helper.css("zIndex",o.zIndex)),this.scrollParent[0]!==document&&"HTML"!==this.scrollParent[0].tagName&&(this.overflowOffset=this.scrollParent.offset()),this._trigger("start",e,this._uiHash()),this._preserveHelperProportions||this._cacheHelperProportions(),!s)for(n=this.containers.length-1;n>=0;n--)this.containers[n]._trigger("activate",e,this._uiHash(this));return t.ui.ddmanager&&(t.ui.ddmanager.current=this),t.ui.ddmanager&&!o.dropBehaviour&&t.ui.ddmanager.prepareOffsets(this,e),this.dragging=!0,this.helper.addClass("ui-sortable-helper"),this._mouseDrag(e),!0},_mouseDrag:function(e){var i,s,n,a,o=this.options,r=!1;for(this.position=this._generatePosition(e),this.positionAbs=this._convertPositionTo("absolute"),this.lastPositionAbs||(this.lastPositionAbs=this.positionAbs),this.options.scroll&&(this.scrollParent[0]!==document&&"HTML"!==this.scrollParent[0].tagName?(this.overflowOffset.top+this.scrollParent[0].offsetHeight-e.pageY<o.scrollSensitivity?this.scrollParent[0].scrollTop=r=this.scrollParent[0].scrollTop+o.scrollSpeed:e.pageY-this.overflowOffset.top<o.scrollSensitivity&&(this.scrollParent[0].scrollTop=r=this.scrollParent[0].scrollTop-o.scrollSpeed),this.overflowOffset.left+this.scrollParent[0].offsetWidth-e.pageX<o.scrollSensitivity?this.scrollParent[0].scrollLeft=r=this.scrollParent[0].scrollLeft+o.scrollSpeed:e.pageX-this.overflowOffset.left<o.scrollSensitivity&&(this.scrollParent[0].scrollLeft=r=this.scrollParent[0].scrollLeft-o.scrollSpeed)):(e.pageY-t(document).scrollTop()<o.scrollSensitivity?r=t(document).scrollTop(t(document).scrollTop()-o.scrollSpeed):t(window).height()-(e.pageY-t(document).scrollTop())<o.scrollSensitivity&&(r=t(document).scrollTop(t(document).scrollTop()+o.scrollSpeed)),e.pageX-t(document).scrollLeft()<o.scrollSensitivity?r=t(document).scrollLeft(t(document).scrollLeft()-o.scrollSpeed):t(window).width()-(e.pageX-t(document).scrollLeft())<o.scrollSensitivity&&(r=t(document).scrollLeft(t(document).scrollLeft()+o.scrollSpeed))),r!==!1&&t.ui.ddmanager&&!o.dropBehaviour&&t.ui.ddmanager.prepareOffsets(this,e)),this.positionAbs=this._convertPositionTo("absolute"),this.options.axis&&"y"===this.options.axis||(this.helper[0].style.left=this.position.left+"px"),this.options.axis&&"x"===this.options.axis||(this.helper[0].style.top=this.position.top+"px"),i=this.items.length-1;i>=0;i--)if(s=this.items[i],n=s.item[0],a=this._intersectsWithPointer(s),a&&s.instance===this.currentContainer&&n!==this.currentItem[0]&&this.placeholder[1===a?"next":"prev"]()[0]!==n&&!t.contains(this.placeholder[0],n)&&("semi-dynamic"===this.options.type?!t.contains(this.element[0],n):!0)){if(this.direction=1===a?"down":"up","pointer"!==this.options.tolerance&&!this._intersectsWithSides(s))break;this._rearrange(e,s),this._trigger("change",e,this._uiHash());break}return this._contactContainers(e),t.ui.ddmanager&&t.ui.ddmanager.drag(this,e),this._trigger("sort",e,this._uiHash()),this.lastPositionAbs=this.positionAbs,!1},_mouseStop:function(e,i){if(e){if(t.ui.ddmanager&&!this.options.dropBehaviour&&t.ui.ddmanager.drop(this,e),this.options.revert){var s=this,n=this.placeholder.offset(),a=this.options.axis,o={};a&&"x"!==a||(o.left=n.left-this.offset.parent.left-this.margins.left+(this.offsetParent[0]===document.body?0:this.offsetParent[0].scrollLeft)),a&&"y"!==a||(o.top=n.top-this.offset.parent.top-this.margins.top+(this.offsetParent[0]===document.body?0:this.offsetParent[0].scrollTop)),this.reverting=!0,t(this.helper).animate(o,parseInt(this.options.revert,10)||500,function(){s._clear(e)})}else this._clear(e,i);return!1}},cancel:function(){if(this.dragging){this._mouseUp({target:null}),"original"===this.options.helper?this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"):this.currentItem.show();for(var e=this.containers.length-1;e>=0;e--)this.containers[e]._trigger("deactivate",null,this._uiHash(this)),this.containers[e].containerCache.over&&(this.containers[e]._trigger("out",null,this._uiHash(this)),this.containers[e].containerCache.over=0)}return this.placeholder&&(this.placeholder[0].parentNode&&this.placeholder[0].parentNode.removeChild(this.placeholder[0]),"original"!==this.options.helper&&this.helper&&this.helper[0].parentNode&&this.helper.remove(),t.extend(this,{helper:null,dragging:!1,reverting:!1,_noFinalSort:null}),this.domPosition.prev?t(this.domPosition.prev).after(this.currentItem):t(this.domPosition.parent).prepend(this.currentItem)),this},serialize:function(e){var i=this._getItemsAsjQuery(e&&e.connected),s=[];return e=e||{},t(i).each(function(){var i=(t(e.item||this).attr(e.attribute||"id")||"").match(e.expression||/(.+)[\-=_](.+)/);i&&s.push((e.key||i[1]+"[]")+"="+(e.key&&e.expression?i[1]:i[2]))}),!s.length&&e.key&&s.push(e.key+"="),s.join("&")},toArray:function(e){var i=this._getItemsAsjQuery(e&&e.connected),s=[];return e=e||{},i.each(function(){s.push(t(e.item||this).attr(e.attribute||"id")||"")}),s},_intersectsWith:function(t){var e=this.positionAbs.left,i=e+this.helperProportions.width,s=this.positionAbs.top,n=s+this.helperProportions.height,a=t.left,o=a+t.width,r=t.top,h=r+t.height,l=this.offset.click.top,c=this.offset.click.left,u="x"===this.options.axis||s+l>r&&h>s+l,d="y"===this.options.axis||e+c>a&&o>e+c,p=u&&d;return"pointer"===this.options.tolerance||this.options.forcePointerForContainers||"pointer"!==this.options.tolerance&&this.helperProportions[this.floating?"width":"height"]>t[this.floating?"width":"height"]?p:e+this.helperProportions.width/2>a&&o>i-this.helperProportions.width/2&&s+this.helperProportions.height/2>r&&h>n-this.helperProportions.height/2},_intersectsWithPointer:function(t){var i="x"===this.options.axis||e(this.positionAbs.top+this.offset.click.top,t.top,t.height),s="y"===this.options.axis||e(this.positionAbs.left+this.offset.click.left,t.left,t.width),n=i&&s,a=this._getDragVerticalDirection(),o=this._getDragHorizontalDirection();return n?this.floating?o&&"right"===o||"down"===a?2:1:a&&("down"===a?2:1):!1},_intersectsWithSides:function(t){var i=e(this.positionAbs.top+this.offset.click.top,t.top+t.height/2,t.height),s=e(this.positionAbs.left+this.offset.click.left,t.left+t.width/2,t.width),n=this._getDragVerticalDirection(),a=this._getDragHorizontalDirection();return this.floating&&a?"right"===a&&s||"left"===a&&!s:n&&("down"===n&&i||"up"===n&&!i)},_getDragVerticalDirection:function(){var t=this.positionAbs.top-this.lastPositionAbs.top;return 0!==t&&(t>0?"down":"up")},_getDragHorizontalDirection:function(){var t=this.positionAbs.left-this.lastPositionAbs.left;return 0!==t&&(t>0?"right":"left")},refresh:function(t){return this._refreshItems(t),this.refreshPositions(),this},_connectWith:function(){var t=this.options;return t.connectWith.constructor===String?[t.connectWith]:t.connectWith},_getItemsAsjQuery:function(e){function i(){r.push(this)}var s,n,a,o,r=[],h=[],l=this._connectWith();if(l&&e)for(s=l.length-1;s>=0;s--)for(a=t(l[s]),n=a.length-1;n>=0;n--)o=t.data(a[n],this.widgetFullName),o&&o!==this&&!o.options.disabled&&h.push([t.isFunction(o.options.items)?o.options.items.call(o.element):t(o.options.items,o.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),o]);for(h.push([t.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):t(this.options.items,this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),this]),s=h.length-1;s>=0;s--)h[s][0].each(i);return t(r)},_removeCurrentsFromItems:function(){var e=this.currentItem.find(":data("+this.widgetName+"-item)");this.items=t.grep(this.items,function(t){for(var i=0;e.length>i;i++)if(e[i]===t.item[0])return!1;return!0})},_refreshItems:function(e){this.items=[],this.containers=[this];var i,s,n,a,o,r,h,l,c=this.items,u=[[t.isFunction(this.options.items)?this.options.items.call(this.element[0],e,{item:this.currentItem}):t(this.options.items,this.element),this]],d=this._connectWith();if(d&&this.ready)for(i=d.length-1;i>=0;i--)for(n=t(d[i]),s=n.length-1;s>=0;s--)a=t.data(n[s],this.widgetFullName),a&&a!==this&&!a.options.disabled&&(u.push([t.isFunction(a.options.items)?a.options.items.call(a.element[0],e,{item:this.currentItem}):t(a.options.items,a.element),a]),this.containers.push(a));for(i=u.length-1;i>=0;i--)for(o=u[i][1],r=u[i][0],s=0,l=r.length;l>s;s++)h=t(r[s]),h.data(this.widgetName+"-item",o),c.push({item:h,instance:o,width:0,height:0,left:0,top:0})},refreshPositions:function(e){this.offsetParent&&this.helper&&(this.offset.parent=this._getParentOffset());var i,s,n,a;for(i=this.items.length-1;i>=0;i--)s=this.items[i],s.instance!==this.currentContainer&&this.currentContainer&&s.item[0]!==this.currentItem[0]||(n=this.options.toleranceElement?t(this.options.toleranceElement,s.item):s.item,e||(s.width=n.outerWidth(),s.height=n.outerHeight()),a=n.offset(),s.left=a.left,s.top=a.top);if(this.options.custom&&this.options.custom.refreshContainers)this.options.custom.refreshContainers.call(this);else for(i=this.containers.length-1;i>=0;i--)a=this.containers[i].element.offset(),this.containers[i].containerCache.left=a.left,this.containers[i].containerCache.top=a.top,this.containers[i].containerCache.width=this.containers[i].element.outerWidth(),this.containers[i].containerCache.height=this.containers[i].element.outerHeight();return this},_createPlaceholder:function(e){e=e||this;var i,s=e.options;s.placeholder&&s.placeholder.constructor!==String||(i=s.placeholder,s.placeholder={element:function(){var s=e.currentItem[0].nodeName.toLowerCase(),n=t("<"+s+">",e.document[0]).addClass(i||e.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper");return"tr"===s?e.currentItem.children().each(function(){t("<td>&#160;</td>",e.document[0]).attr("colspan",t(this).attr("colspan")||1).appendTo(n)}):"img"===s&&n.attr("src",e.currentItem.attr("src")),i||n.css("visibility","hidden"),n},update:function(t,n){(!i||s.forcePlaceholderSize)&&(n.height()||n.height(e.currentItem.innerHeight()-parseInt(e.currentItem.css("paddingTop")||0,10)-parseInt(e.currentItem.css("paddingBottom")||0,10)),n.width()||n.width(e.currentItem.innerWidth()-parseInt(e.currentItem.css("paddingLeft")||0,10)-parseInt(e.currentItem.css("paddingRight")||0,10)))}}),e.placeholder=t(s.placeholder.element.call(e.element,e.currentItem)),e.currentItem.after(e.placeholder),s.placeholder.update(e,e.placeholder)},_contactContainers:function(s){var n,a,o,r,h,l,c,u,d,p,f=null,g=null;for(n=this.containers.length-1;n>=0;n--)if(!t.contains(this.currentItem[0],this.containers[n].element[0]))if(this._intersectsWith(this.containers[n].containerCache)){if(f&&t.contains(this.containers[n].element[0],f.element[0]))continue;f=this.containers[n],g=n}else this.containers[n].containerCache.over&&(this.containers[n]._trigger("out",s,this._uiHash(this)),this.containers[n].containerCache.over=0);if(f)if(1===this.containers.length)this.containers[g].containerCache.over||(this.containers[g]._trigger("over",s,this._uiHash(this)),this.containers[g].containerCache.over=1);else{for(o=1e4,r=null,p=f.floating||i(this.currentItem),h=p?"left":"top",l=p?"width":"height",c=this.positionAbs[h]+this.offset.click[h],a=this.items.length-1;a>=0;a--)t.contains(this.containers[g].element[0],this.items[a].item[0])&&this.items[a].item[0]!==this.currentItem[0]&&(!p||e(this.positionAbs.top+this.offset.click.top,this.items[a].top,this.items[a].height))&&(u=this.items[a].item.offset()[h],d=!1,Math.abs(u-c)>Math.abs(u+this.items[a][l]-c)&&(d=!0,u+=this.items[a][l]),o>Math.abs(u-c)&&(o=Math.abs(u-c),r=this.items[a],this.direction=d?"up":"down"));if(!r&&!this.options.dropOnEmpty)return;if(this.currentContainer===this.containers[g])return;r?this._rearrange(s,r,null,!0):this._rearrange(s,null,this.containers[g].element,!0),this._trigger("change",s,this._uiHash()),this.containers[g]._trigger("change",s,this._uiHash(this)),this.currentContainer=this.containers[g],this.options.placeholder.update(this.currentContainer,this.placeholder),this.containers[g]._trigger("over",s,this._uiHash(this)),this.containers[g].containerCache.over=1}},_createHelper:function(e){var i=this.options,s=t.isFunction(i.helper)?t(i.helper.apply(this.element[0],[e,this.currentItem])):"clone"===i.helper?this.currentItem.clone():this.currentItem;return s.parents("body").length||t("parent"!==i.appendTo?i.appendTo:this.currentItem[0].parentNode)[0].appendChild(s[0]),s[0]===this.currentItem[0]&&(this._storedCSS={width:this.currentItem[0].style.width,height:this.currentItem[0].style.height,position:this.currentItem.css("position"),top:this.currentItem.css("top"),left:this.currentItem.css("left")}),(!s[0].style.width||i.forceHelperSize)&&s.width(this.currentItem.width()),(!s[0].style.height||i.forceHelperSize)&&s.height(this.currentItem.height()),s},_adjustOffsetFromHelper:function(e){"string"==typeof e&&(e=e.split(" ")),t.isArray(e)&&(e={left:+e[0],top:+e[1]||0}),"left"in e&&(this.offset.click.left=e.left+this.margins.left),"right"in e&&(this.offset.click.left=this.helperProportions.width-e.right+this.margins.left),"top"in e&&(this.offset.click.top=e.top+this.margins.top),"bottom"in e&&(this.offset.click.top=this.helperProportions.height-e.bottom+this.margins.top)},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var e=this.offsetParent.offset();return"absolute"===this.cssPosition&&this.scrollParent[0]!==document&&t.contains(this.scrollParent[0],this.offsetParent[0])&&(e.left+=this.scrollParent.scrollLeft(),e.top+=this.scrollParent.scrollTop()),(this.offsetParent[0]===document.body||this.offsetParent[0].tagName&&"html"===this.offsetParent[0].tagName.toLowerCase()&&t.ui.ie)&&(e={top:0,left:0}),{top:e.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:e.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if("relative"===this.cssPosition){var t=this.currentItem.position();return{top:t.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:t.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.currentItem.css("marginLeft"),10)||0,top:parseInt(this.currentItem.css("marginTop"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var e,i,s,n=this.options;"parent"===n.containment&&(n.containment=this.helper[0].parentNode),("document"===n.containment||"window"===n.containment)&&(this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,t("document"===n.containment?document:window).width()-this.helperProportions.width-this.margins.left,(t("document"===n.containment?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top]),/^(document|window|parent)$/.test(n.containment)||(e=t(n.containment)[0],i=t(n.containment).offset(),s="hidden"!==t(e).css("overflow"),this.containment=[i.left+(parseInt(t(e).css("borderLeftWidth"),10)||0)+(parseInt(t(e).css("paddingLeft"),10)||0)-this.margins.left,i.top+(parseInt(t(e).css("borderTopWidth"),10)||0)+(parseInt(t(e).css("paddingTop"),10)||0)-this.margins.top,i.left+(s?Math.max(e.scrollWidth,e.offsetWidth):e.offsetWidth)-(parseInt(t(e).css("borderLeftWidth"),10)||0)-(parseInt(t(e).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left,i.top+(s?Math.max(e.scrollHeight,e.offsetHeight):e.offsetHeight)-(parseInt(t(e).css("borderTopWidth"),10)||0)-(parseInt(t(e).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top])},_convertPositionTo:function(e,i){i||(i=this.position);var s="absolute"===e?1:-1,n="absolute"!==this.cssPosition||this.scrollParent[0]!==document&&t.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,a=/(html|body)/i.test(n[0].tagName);return{top:i.top+this.offset.relative.top*s+this.offset.parent.top*s-("fixed"===this.cssPosition?-this.scrollParent.scrollTop():a?0:n.scrollTop())*s,left:i.left+this.offset.relative.left*s+this.offset.parent.left*s-("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():a?0:n.scrollLeft())*s}},_generatePosition:function(e){var i,s,n=this.options,a=e.pageX,o=e.pageY,r="absolute"!==this.cssPosition||this.scrollParent[0]!==document&&t.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,h=/(html|body)/i.test(r[0].tagName);return"relative"!==this.cssPosition||this.scrollParent[0]!==document&&this.scrollParent[0]!==this.offsetParent[0]||(this.offset.relative=this._getRelativeOffset()),this.originalPosition&&(this.containment&&(e.pageX-this.offset.click.left<this.containment[0]&&(a=this.containment[0]+this.offset.click.left),e.pageY-this.offset.click.top<this.containment[1]&&(o=this.containment[1]+this.offset.click.top),e.pageX-this.offset.click.left>this.containment[2]&&(a=this.containment[2]+this.offset.click.left),e.pageY-this.offset.click.top>this.containment[3]&&(o=this.containment[3]+this.offset.click.top)),n.grid&&(i=this.originalPageY+Math.round((o-this.originalPageY)/n.grid[1])*n.grid[1],o=this.containment?i-this.offset.click.top>=this.containment[1]&&i-this.offset.click.top<=this.containment[3]?i:i-this.offset.click.top>=this.containment[1]?i-n.grid[1]:i+n.grid[1]:i,s=this.originalPageX+Math.round((a-this.originalPageX)/n.grid[0])*n.grid[0],a=this.containment?s-this.offset.click.left>=this.containment[0]&&s-this.offset.click.left<=this.containment[2]?s:s-this.offset.click.left>=this.containment[0]?s-n.grid[0]:s+n.grid[0]:s)),{top:o-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+("fixed"===this.cssPosition?-this.scrollParent.scrollTop():h?0:r.scrollTop()),left:a-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():h?0:r.scrollLeft())}},_rearrange:function(t,e,i,s){i?i[0].appendChild(this.placeholder[0]):e.item[0].parentNode.insertBefore(this.placeholder[0],"down"===this.direction?e.item[0]:e.item[0].nextSibling),this.counter=this.counter?++this.counter:1;var n=this.counter;this._delay(function(){n===this.counter&&this.refreshPositions(!s)})},_clear:function(t,e){function i(t,e,i){return function(s){i._trigger(t,s,e._uiHash(e))}}this.reverting=!1;var s,n=[];if(!this._noFinalSort&&this.currentItem.parent().length&&this.placeholder.before(this.currentItem),this._noFinalSort=null,this.helper[0]===this.currentItem[0]){for(s in this._storedCSS)("auto"===this._storedCSS[s]||"static"===this._storedCSS[s])&&(this._storedCSS[s]="");this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")}else this.currentItem.show();for(this.fromOutside&&!e&&n.push(function(t){this._trigger("receive",t,this._uiHash(this.fromOutside))}),!this.fromOutside&&this.domPosition.prev===this.currentItem.prev().not(".ui-sortable-helper")[0]&&this.domPosition.parent===this.currentItem.parent()[0]||e||n.push(function(t){this._trigger("update",t,this._uiHash())}),this!==this.currentContainer&&(e||(n.push(function(t){this._trigger("remove",t,this._uiHash())}),n.push(function(t){return function(e){t._trigger("receive",e,this._uiHash(this))}}.call(this,this.currentContainer)),n.push(function(t){return function(e){t._trigger("update",e,this._uiHash(this))}}.call(this,this.currentContainer)))),s=this.containers.length-1;s>=0;s--)e||n.push(i("deactivate",this,this.containers[s])),this.containers[s].containerCache.over&&(n.push(i("out",this,this.containers[s])),this.containers[s].containerCache.over=0);if(this.storedCursor&&(this.document.find("body").css("cursor",this.storedCursor),this.storedStylesheet.remove()),this._storedOpacity&&this.helper.css("opacity",this._storedOpacity),this._storedZIndex&&this.helper.css("zIndex","auto"===this._storedZIndex?"":this._storedZIndex),this.dragging=!1,this.cancelHelperRemoval){if(!e){for(this._trigger("beforeStop",t,this._uiHash()),s=0;n.length>s;s++)n[s].call(this,t);this._trigger("stop",t,this._uiHash())}return this.fromOutside=!1,!1}if(e||this._trigger("beforeStop",t,this._uiHash()),this.placeholder[0].parentNode.removeChild(this.placeholder[0]),this.helper[0]!==this.currentItem[0]&&this.helper.remove(),this.helper=null,!e){for(s=0;n.length>s;s++)n[s].call(this,t);this._trigger("stop",t,this._uiHash())}return this.fromOutside=!1,!0},_trigger:function(){t.Widget.prototype._trigger.apply(this,arguments)===!1&&this.cancel()},_uiHash:function(e){var i=e||this;return{helper:i.helper,placeholder:i.placeholder||t([]),position:i.position,originalPosition:i.originalPosition,offset:i.positionAbs,item:i.currentItem,sender:e?e.element:null}}})})(jQuery);(function(e){var t=0,i={},a={};i.height=i.paddingTop=i.paddingBottom=i.borderTopWidth=i.borderBottomWidth="hide",a.height=a.paddingTop=a.paddingBottom=a.borderTopWidth=a.borderBottomWidth="show",e.widget("ui.accordion",{version:"1.10.4",options:{active:0,animate:{},collapsible:!1,event:"click",header:"> li > :first-child,> :not(li):even",heightStyle:"auto",icons:{activeHeader:"ui-icon-triangle-1-s",header:"ui-icon-triangle-1-e"},activate:null,beforeActivate:null},_create:function(){var t=this.options;this.prevShow=this.prevHide=e(),this.element.addClass("ui-accordion ui-widget ui-helper-reset").attr("role","tablist"),t.collapsible||t.active!==!1&&null!=t.active||(t.active=0),this._processPanels(),0>t.active&&(t.active+=this.headers.length),this._refresh()},_getCreateEventData:function(){return{header:this.active,panel:this.active.length?this.active.next():e(),content:this.active.length?this.active.next():e()}},_createIcons:function(){var t=this.options.icons;t&&(e("<span>").addClass("ui-accordion-header-icon ui-icon "+t.header).prependTo(this.headers),this.active.children(".ui-accordion-header-icon").removeClass(t.header).addClass(t.activeHeader),this.headers.addClass("ui-accordion-icons"))},_destroyIcons:function(){this.headers.removeClass("ui-accordion-icons").children(".ui-accordion-header-icon").remove()},_destroy:function(){var e;this.element.removeClass("ui-accordion ui-widget ui-helper-reset").removeAttr("role"),this.headers.removeClass("ui-accordion-header ui-accordion-header-active ui-helper-reset ui-state-default ui-corner-all ui-state-active ui-state-disabled ui-corner-top").removeAttr("role").removeAttr("aria-expanded").removeAttr("aria-selected").removeAttr("aria-controls").removeAttr("tabIndex").each(function(){/^ui-accordion/.test(this.id)&&this.removeAttribute("id")}),this._destroyIcons(),e=this.headers.next().css("display","").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeClass("ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active ui-state-disabled").each(function(){/^ui-accordion/.test(this.id)&&this.removeAttribute("id")}),"content"!==this.options.heightStyle&&e.css("height","")},_setOption:function(e,t){return"active"===e?(this._activate(t),undefined):("event"===e&&(this.options.event&&this._off(this.headers,this.options.event),this._setupEvents(t)),this._super(e,t),"collapsible"!==e||t||this.options.active!==!1||this._activate(0),"icons"===e&&(this._destroyIcons(),t&&this._createIcons()),"disabled"===e&&this.headers.add(this.headers.next()).toggleClass("ui-state-disabled",!!t),undefined)},_keydown:function(t){if(!t.altKey&&!t.ctrlKey){var i=e.ui.keyCode,a=this.headers.length,s=this.headers.index(t.target),n=!1;switch(t.keyCode){case i.RIGHT:case i.DOWN:n=this.headers[(s+1)%a];break;case i.LEFT:case i.UP:n=this.headers[(s-1+a)%a];break;case i.SPACE:case i.ENTER:this._eventHandler(t);break;case i.HOME:n=this.headers[0];break;case i.END:n=this.headers[a-1]}n&&(e(t.target).attr("tabIndex",-1),e(n).attr("tabIndex",0),n.focus(),t.preventDefault())}},_panelKeyDown:function(t){t.keyCode===e.ui.keyCode.UP&&t.ctrlKey&&e(t.currentTarget).prev().focus()},refresh:function(){var t=this.options;this._processPanels(),t.active===!1&&t.collapsible===!0||!this.headers.length?(t.active=!1,this.active=e()):t.active===!1?this._activate(0):this.active.length&&!e.contains(this.element[0],this.active[0])?this.headers.length===this.headers.find(".ui-state-disabled").length?(t.active=!1,this.active=e()):this._activate(Math.max(0,t.active-1)):t.active=this.headers.index(this.active),this._destroyIcons(),this._refresh()},_processPanels:function(){this.headers=this.element.find(this.options.header).addClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all"),this.headers.next().addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom").filter(":not(.ui-accordion-content-active)").hide()},_refresh:function(){var i,a=this.options,s=a.heightStyle,n=this.element.parent(),r=this.accordionId="ui-accordion-"+(this.element.attr("id")||++t);this.active=this._findActive(a.active).addClass("ui-accordion-header-active ui-state-active ui-corner-top").removeClass("ui-corner-all"),this.active.next().addClass("ui-accordion-content-active").show(),this.headers.attr("role","tab").each(function(t){var i=e(this),a=i.attr("id"),s=i.next(),n=s.attr("id");a||(a=r+"-header-"+t,i.attr("id",a)),n||(n=r+"-panel-"+t,s.attr("id",n)),i.attr("aria-controls",n),s.attr("aria-labelledby",a)}).next().attr("role","tabpanel"),this.headers.not(this.active).attr({"aria-selected":"false","aria-expanded":"false",tabIndex:-1}).next().attr({"aria-hidden":"true"}).hide(),this.active.length?this.active.attr({"aria-selected":"true","aria-expanded":"true",tabIndex:0}).next().attr({"aria-hidden":"false"}):this.headers.eq(0).attr("tabIndex",0),this._createIcons(),this._setupEvents(a.event),"fill"===s?(i=n.height(),this.element.siblings(":visible").each(function(){var t=e(this),a=t.css("position");"absolute"!==a&&"fixed"!==a&&(i-=t.outerHeight(!0))}),this.headers.each(function(){i-=e(this).outerHeight(!0)}),this.headers.next().each(function(){e(this).height(Math.max(0,i-e(this).innerHeight()+e(this).height()))}).css("overflow","auto")):"auto"===s&&(i=0,this.headers.next().each(function(){i=Math.max(i,e(this).css("height","").height())}).height(i))},_activate:function(t){var i=this._findActive(t)[0];i!==this.active[0]&&(i=i||this.active[0],this._eventHandler({target:i,currentTarget:i,preventDefault:e.noop}))},_findActive:function(t){return"number"==typeof t?this.headers.eq(t):e()},_setupEvents:function(t){var i={keydown:"_keydown"};t&&e.each(t.split(" "),function(e,t){i[t]="_eventHandler"}),this._off(this.headers.add(this.headers.next())),this._on(this.headers,i),this._on(this.headers.next(),{keydown:"_panelKeyDown"}),this._hoverable(this.headers),this._focusable(this.headers)},_eventHandler:function(t){var i=this.options,a=this.active,s=e(t.currentTarget),n=s[0]===a[0],r=n&&i.collapsible,o=r?e():s.next(),h=a.next(),d={oldHeader:a,oldPanel:h,newHeader:r?e():s,newPanel:o};t.preventDefault(),n&&!i.collapsible||this._trigger("beforeActivate",t,d)===!1||(i.active=r?!1:this.headers.index(s),this.active=n?e():s,this._toggle(d),a.removeClass("ui-accordion-header-active ui-state-active"),i.icons&&a.children(".ui-accordion-header-icon").removeClass(i.icons.activeHeader).addClass(i.icons.header),n||(s.removeClass("ui-corner-all").addClass("ui-accordion-header-active ui-state-active ui-corner-top"),i.icons&&s.children(".ui-accordion-header-icon").removeClass(i.icons.header).addClass(i.icons.activeHeader),s.next().addClass("ui-accordion-content-active")))},_toggle:function(t){var i=t.newPanel,a=this.prevShow.length?this.prevShow:t.oldPanel;this.prevShow.add(this.prevHide).stop(!0,!0),this.prevShow=i,this.prevHide=a,this.options.animate?this._animate(i,a,t):(a.hide(),i.show(),this._toggleComplete(t)),a.attr({"aria-hidden":"true"}),a.prev().attr("aria-selected","false"),i.length&&a.length?a.prev().attr({tabIndex:-1,"aria-expanded":"false"}):i.length&&this.headers.filter(function(){return 0===e(this).attr("tabIndex")}).attr("tabIndex",-1),i.attr("aria-hidden","false").prev().attr({"aria-selected":"true",tabIndex:0,"aria-expanded":"true"})},_animate:function(e,t,s){var n,r,o,h=this,d=0,c=e.length&&(!t.length||e.index()<t.index()),l=this.options.animate||{},u=c&&l.down||l,v=function(){h._toggleComplete(s)};return"number"==typeof u&&(o=u),"string"==typeof u&&(r=u),r=r||u.easing||l.easing,o=o||u.duration||l.duration,t.length?e.length?(n=e.show().outerHeight(),t.animate(i,{duration:o,easing:r,step:function(e,t){t.now=Math.round(e)}}),e.hide().animate(a,{duration:o,easing:r,complete:v,step:function(e,i){i.now=Math.round(e),"height"!==i.prop?d+=i.now:"content"!==h.options.heightStyle&&(i.now=Math.round(n-t.outerHeight()-d),d=0)}}),undefined):t.animate(i,o,r,v):e.animate(a,o,r,v)},_toggleComplete:function(e){var t=e.oldPanel;t.removeClass("ui-accordion-content-active").prev().removeClass("ui-corner-top").addClass("ui-corner-all"),t.length&&(t.parent()[0].className=t.parent()[0].className),this._trigger("activate",null,e)}})})(jQuery);(function(e){e.widget("ui.autocomplete",{version:"1.10.4",defaultElement:"<input>",options:{appendTo:null,autoFocus:!1,delay:300,minLength:1,position:{my:"left top",at:"left bottom",collision:"none"},source:null,change:null,close:null,focus:null,open:null,response:null,search:null,select:null},requestIndex:0,pending:0,_create:function(){var t,i,s,n=this.element[0].nodeName.toLowerCase(),a="textarea"===n,o="input"===n;this.isMultiLine=a?!0:o?!1:this.element.prop("isContentEditable"),this.valueMethod=this.element[a||o?"val":"text"],this.isNewMenu=!0,this.element.addClass("ui-autocomplete-input").attr("autocomplete","off"),this._on(this.element,{keydown:function(n){if(this.element.prop("readOnly"))return t=!0,s=!0,i=!0,undefined;t=!1,s=!1,i=!1;var a=e.ui.keyCode;switch(n.keyCode){case a.PAGE_UP:t=!0,this._move("previousPage",n);break;case a.PAGE_DOWN:t=!0,this._move("nextPage",n);break;case a.UP:t=!0,this._keyEvent("previous",n);break;case a.DOWN:t=!0,this._keyEvent("next",n);break;case a.ENTER:case a.NUMPAD_ENTER:this.menu.active&&(t=!0,n.preventDefault(),this.menu.select(n));break;case a.TAB:this.menu.active&&this.menu.select(n);break;case a.ESCAPE:this.menu.element.is(":visible")&&(this._value(this.term),this.close(n),n.preventDefault());break;default:i=!0,this._searchTimeout(n)}},keypress:function(s){if(t)return t=!1,(!this.isMultiLine||this.menu.element.is(":visible"))&&s.preventDefault(),undefined;if(!i){var n=e.ui.keyCode;switch(s.keyCode){case n.PAGE_UP:this._move("previousPage",s);break;case n.PAGE_DOWN:this._move("nextPage",s);break;case n.UP:this._keyEvent("previous",s);break;case n.DOWN:this._keyEvent("next",s)}}},input:function(e){return s?(s=!1,e.preventDefault(),undefined):(this._searchTimeout(e),undefined)},focus:function(){this.selectedItem=null,this.previous=this._value()},blur:function(e){return this.cancelBlur?(delete this.cancelBlur,undefined):(clearTimeout(this.searching),this.close(e),this._change(e),undefined)}}),this._initSource(),this.menu=e("<ul>").addClass("ui-autocomplete ui-front").appendTo(this._appendTo()).menu({role:null}).hide().data("ui-menu"),this._on(this.menu.element,{mousedown:function(t){t.preventDefault(),this.cancelBlur=!0,this._delay(function(){delete this.cancelBlur});var i=this.menu.element[0];e(t.target).closest(".ui-menu-item").length||this._delay(function(){var t=this;this.document.one("mousedown",function(s){s.target===t.element[0]||s.target===i||e.contains(i,s.target)||t.close()})})},menufocus:function(t,i){if(this.isNewMenu&&(this.isNewMenu=!1,t.originalEvent&&/^mouse/.test(t.originalEvent.type)))return this.menu.blur(),this.document.one("mousemove",function(){e(t.target).trigger(t.originalEvent)}),undefined;var s=i.item.data("ui-autocomplete-item");!1!==this._trigger("focus",t,{item:s})?t.originalEvent&&/^key/.test(t.originalEvent.type)&&this._value(s.value):this.liveRegion.text(s.value)},menuselect:function(e,t){var i=t.item.data("ui-autocomplete-item"),s=this.previous;this.element[0]!==this.document[0].activeElement&&(this.element.focus(),this.previous=s,this._delay(function(){this.previous=s,this.selectedItem=i})),!1!==this._trigger("select",e,{item:i})&&this._value(i.value),this.term=this._value(),this.close(e),this.selectedItem=i}}),this.liveRegion=e("<span>",{role:"status","aria-live":"polite"}).addClass("ui-helper-hidden-accessible").insertBefore(this.element),this._on(this.window,{beforeunload:function(){this.element.removeAttr("autocomplete")}})},_destroy:function(){clearTimeout(this.searching),this.element.removeClass("ui-autocomplete-input").removeAttr("autocomplete"),this.menu.element.remove(),this.liveRegion.remove()},_setOption:function(e,t){this._super(e,t),"source"===e&&this._initSource(),"appendTo"===e&&this.menu.element.appendTo(this._appendTo()),"disabled"===e&&t&&this.xhr&&this.xhr.abort()},_appendTo:function(){var t=this.options.appendTo;return t&&(t=t.jquery||t.nodeType?e(t):this.document.find(t).eq(0)),t||(t=this.element.closest(".ui-front")),t.length||(t=this.document[0].body),t},_initSource:function(){var t,i,s=this;e.isArray(this.options.source)?(t=this.options.source,this.source=function(i,s){s(e.ui.autocomplete.filter(t,i.term))}):"string"==typeof this.options.source?(i=this.options.source,this.source=function(t,n){s.xhr&&s.xhr.abort(),s.xhr=e.ajax({url:i,data:t,dataType:"json",success:function(e){n(e)},error:function(){n([])}})}):this.source=this.options.source},_searchTimeout:function(e){clearTimeout(this.searching),this.searching=this._delay(function(){this.term!==this._value()&&(this.selectedItem=null,this.search(null,e))},this.options.delay)},search:function(e,t){return e=null!=e?e:this._value(),this.term=this._value(),e.length<this.options.minLength?this.close(t):this._trigger("search",t)!==!1?this._search(e):undefined},_search:function(e){this.pending++,this.element.addClass("ui-autocomplete-loading"),this.cancelSearch=!1,this.source({term:e},this._response())},_response:function(){var t=++this.requestIndex;return e.proxy(function(e){t===this.requestIndex&&this.__response(e),this.pending--,this.pending||this.element.removeClass("ui-autocomplete-loading")},this)},__response:function(e){e&&(e=this._normalize(e)),this._trigger("response",null,{content:e}),!this.options.disabled&&e&&e.length&&!this.cancelSearch?(this._suggest(e),this._trigger("open")):this._close()},close:function(e){this.cancelSearch=!0,this._close(e)},_close:function(e){this.menu.element.is(":visible")&&(this.menu.element.hide(),this.menu.blur(),this.isNewMenu=!0,this._trigger("close",e))},_change:function(e){this.previous!==this._value()&&this._trigger("change",e,{item:this.selectedItem})},_normalize:function(t){return t.length&&t[0].label&&t[0].value?t:e.map(t,function(t){return"string"==typeof t?{label:t,value:t}:e.extend({label:t.label||t.value,value:t.value||t.label},t)})},_suggest:function(t){var i=this.menu.element.empty();this._renderMenu(i,t),this.isNewMenu=!0,this.menu.refresh(),i.show(),this._resizeMenu(),i.position(e.extend({of:this.element},this.options.position)),this.options.autoFocus&&this.menu.next()},_resizeMenu:function(){var e=this.menu.element;e.outerWidth(Math.max(e.width("").outerWidth()+1,this.element.outerWidth()))},_renderMenu:function(t,i){var s=this;e.each(i,function(e,i){s._renderItemData(t,i)})},_renderItemData:function(e,t){return this._renderItem(e,t).data("ui-autocomplete-item",t)},_renderItem:function(t,i){return e("<li>").append(e("<a>").text(i.label)).appendTo(t)},_move:function(e,t){return this.menu.element.is(":visible")?this.menu.isFirstItem()&&/^previous/.test(e)||this.menu.isLastItem()&&/^next/.test(e)?(this._value(this.term),this.menu.blur(),undefined):(this.menu[e](t),undefined):(this.search(null,t),undefined)},widget:function(){return this.menu.element},_value:function(){return this.valueMethod.apply(this.element,arguments)},_keyEvent:function(e,t){(!this.isMultiLine||this.menu.element.is(":visible"))&&(this._move(e,t),t.preventDefault())}}),e.extend(e.ui.autocomplete,{escapeRegex:function(e){return e.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")},filter:function(t,i){var s=RegExp(e.ui.autocomplete.escapeRegex(i),"i");return e.grep(t,function(e){return s.test(e.label||e.value||e)})}}),e.widget("ui.autocomplete",e.ui.autocomplete,{options:{messages:{noResults:"No search results.",results:function(e){return e+(e>1?" results are":" result is")+" available, use up and down arrow keys to navigate."}}},__response:function(e){var t;this._superApply(arguments),this.options.disabled||this.cancelSearch||(t=e&&e.length?this.options.messages.results(e.length):this.options.messages.noResults,this.liveRegion.text(t))}})})(jQuery);(function(e){var t,i="ui-button ui-widget ui-state-default ui-corner-all",n="ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only",s=function(){var t=e(this);setTimeout(function(){t.find(":ui-button").button("refresh")},1)},a=function(t){var i=t.name,n=t.form,s=e([]);return i&&(i=i.replace(/'/g,"\\'"),s=n?e(n).find("[name='"+i+"']"):e("[name='"+i+"']",t.ownerDocument).filter(function(){return!this.form})),s};e.widget("ui.button",{version:"1.10.4",defaultElement:"<button>",options:{disabled:null,text:!0,label:null,icons:{primary:null,secondary:null}},_create:function(){this.element.closest("form").unbind("reset"+this.eventNamespace).bind("reset"+this.eventNamespace,s),"boolean"!=typeof this.options.disabled?this.options.disabled=!!this.element.prop("disabled"):this.element.prop("disabled",this.options.disabled),this._determineButtonType(),this.hasTitle=!!this.buttonElement.attr("title");var n=this,o=this.options,r="checkbox"===this.type||"radio"===this.type,h=r?"":"ui-state-active";null===o.label&&(o.label="input"===this.type?this.buttonElement.val():this.buttonElement.html()),this._hoverable(this.buttonElement),this.buttonElement.addClass(i).attr("role","button").bind("mouseenter"+this.eventNamespace,function(){o.disabled||this===t&&e(this).addClass("ui-state-active")}).bind("mouseleave"+this.eventNamespace,function(){o.disabled||e(this).removeClass(h)}).bind("click"+this.eventNamespace,function(e){o.disabled&&(e.preventDefault(),e.stopImmediatePropagation())}),this._on({focus:function(){this.buttonElement.addClass("ui-state-focus")},blur:function(){this.buttonElement.removeClass("ui-state-focus")}}),r&&this.element.bind("change"+this.eventNamespace,function(){n.refresh()}),"checkbox"===this.type?this.buttonElement.bind("click"+this.eventNamespace,function(){return o.disabled?!1:undefined}):"radio"===this.type?this.buttonElement.bind("click"+this.eventNamespace,function(){if(o.disabled)return!1;e(this).addClass("ui-state-active"),n.buttonElement.attr("aria-pressed","true");var t=n.element[0];a(t).not(t).map(function(){return e(this).button("widget")[0]}).removeClass("ui-state-active").attr("aria-pressed","false")}):(this.buttonElement.bind("mousedown"+this.eventNamespace,function(){return o.disabled?!1:(e(this).addClass("ui-state-active"),t=this,n.document.one("mouseup",function(){t=null}),undefined)}).bind("mouseup"+this.eventNamespace,function(){return o.disabled?!1:(e(this).removeClass("ui-state-active"),undefined)}).bind("keydown"+this.eventNamespace,function(t){return o.disabled?!1:((t.keyCode===e.ui.keyCode.SPACE||t.keyCode===e.ui.keyCode.ENTER)&&e(this).addClass("ui-state-active"),undefined)}).bind("keyup"+this.eventNamespace+" blur"+this.eventNamespace,function(){e(this).removeClass("ui-state-active")}),this.buttonElement.is("a")&&this.buttonElement.keyup(function(t){t.keyCode===e.ui.keyCode.SPACE&&e(this).click()})),this._setOption("disabled",o.disabled),this._resetButton()},_determineButtonType:function(){var e,t,i;this.type=this.element.is("[type=checkbox]")?"checkbox":this.element.is("[type=radio]")?"radio":this.element.is("input")?"input":"button","checkbox"===this.type||"radio"===this.type?(e=this.element.parents().last(),t="label[for='"+this.element.attr("id")+"']",this.buttonElement=e.find(t),this.buttonElement.length||(e=e.length?e.siblings():this.element.siblings(),this.buttonElement=e.filter(t),this.buttonElement.length||(this.buttonElement=e.find(t))),this.element.addClass("ui-helper-hidden-accessible"),i=this.element.is(":checked"),i&&this.buttonElement.addClass("ui-state-active"),this.buttonElement.prop("aria-pressed",i)):this.buttonElement=this.element},widget:function(){return this.buttonElement},_destroy:function(){this.element.removeClass("ui-helper-hidden-accessible"),this.buttonElement.removeClass(i+" ui-state-active "+n).removeAttr("role").removeAttr("aria-pressed").html(this.buttonElement.find(".ui-button-text").html()),this.hasTitle||this.buttonElement.removeAttr("title")},_setOption:function(e,t){return this._super(e,t),"disabled"===e?(this.element.prop("disabled",!!t),t&&this.buttonElement.removeClass("ui-state-focus"),undefined):(this._resetButton(),undefined)},refresh:function(){var t=this.element.is("input, button")?this.element.is(":disabled"):this.element.hasClass("ui-button-disabled");t!==this.options.disabled&&this._setOption("disabled",t),"radio"===this.type?a(this.element[0]).each(function(){e(this).is(":checked")?e(this).button("widget").addClass("ui-state-active").attr("aria-pressed","true"):e(this).button("widget").removeClass("ui-state-active").attr("aria-pressed","false")}):"checkbox"===this.type&&(this.element.is(":checked")?this.buttonElement.addClass("ui-state-active").attr("aria-pressed","true"):this.buttonElement.removeClass("ui-state-active").attr("aria-pressed","false"))},_resetButton:function(){if("input"===this.type)return this.options.label&&this.element.val(this.options.label),undefined;var t=this.buttonElement.removeClass(n),i=e("<span></span>",this.document[0]).addClass("ui-button-text").html(this.options.label).appendTo(t.empty()).text(),s=this.options.icons,a=s.primary&&s.secondary,o=[];s.primary||s.secondary?(this.options.text&&o.push("ui-button-text-icon"+(a?"s":s.primary?"-primary":"-secondary")),s.primary&&t.prepend("<span class='ui-button-icon-primary ui-icon "+s.primary+"'></span>"),s.secondary&&t.append("<span class='ui-button-icon-secondary ui-icon "+s.secondary+"'></span>"),this.options.text||(o.push(a?"ui-button-icons-only":"ui-button-icon-only"),this.hasTitle||t.attr("title",e.trim(i)))):o.push("ui-button-text-only"),t.addClass(o.join(" "))}}),e.widget("ui.buttonset",{version:"1.10.4",options:{items:"button, input[type=button], input[type=submit], input[type=reset], input[type=checkbox], input[type=radio], a, :data(ui-button)"},_create:function(){this.element.addClass("ui-buttonset")},_init:function(){this.refresh()},_setOption:function(e,t){"disabled"===e&&this.buttons.button("option",e,t),this._super(e,t)},refresh:function(){var t="rtl"===this.element.css("direction");this.buttons=this.element.find(this.options.items).filter(":ui-button").button("refresh").end().not(":ui-button").button().end().map(function(){return e(this).button("widget")[0]}).removeClass("ui-corner-all ui-corner-left ui-corner-right").filter(":first").addClass(t?"ui-corner-right":"ui-corner-left").end().filter(":last").addClass(t?"ui-corner-left":"ui-corner-right").end().end()},_destroy:function(){this.element.removeClass("ui-buttonset"),this.buttons.map(function(){return e(this).button("widget")[0]}).removeClass("ui-corner-left ui-corner-right").end().button("destroy")}})})(jQuery);(function(e,t){function i(){this._curInst=null,this._keyEvent=!1,this._disabledInputs=[],this._datepickerShowing=!1,this._inDialog=!1,this._mainDivId="ui-datepicker-div",this._inlineClass="ui-datepicker-inline",this._appendClass="ui-datepicker-append",this._triggerClass="ui-datepicker-trigger",this._dialogClass="ui-datepicker-dialog",this._disableClass="ui-datepicker-disabled",this._unselectableClass="ui-datepicker-unselectable",this._currentClass="ui-datepicker-current-day",this._dayOverClass="ui-datepicker-days-cell-over",this.regional=[],this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:!1,hideIfNoPrevNext:!1,navigationAsDateFormat:!1,gotoCurrent:!1,changeMonth:!1,changeYear:!1,yearRange:"c-10:c+10",showOtherMonths:!1,selectOtherMonths:!1,showWeek:!1,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:!0,showButtonPanel:!1,autoSize:!1,disabled:!1},e.extend(this._defaults,this.regional[""]),this.dpDiv=a(e("<div id='"+this._mainDivId+"' class='ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all'></div>"))}function a(t){var i="button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a";return t.delegate(i,"mouseout",function(){e(this).removeClass("ui-state-hover"),-1!==this.className.indexOf("ui-datepicker-prev")&&e(this).removeClass("ui-datepicker-prev-hover"),-1!==this.className.indexOf("ui-datepicker-next")&&e(this).removeClass("ui-datepicker-next-hover")}).delegate(i,"mouseover",function(){e.datepicker._isDisabledDatepicker(n.inline?t.parent()[0]:n.input[0])||(e(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"),e(this).addClass("ui-state-hover"),-1!==this.className.indexOf("ui-datepicker-prev")&&e(this).addClass("ui-datepicker-prev-hover"),-1!==this.className.indexOf("ui-datepicker-next")&&e(this).addClass("ui-datepicker-next-hover"))})}function s(t,i){e.extend(t,i);for(var a in i)null==i[a]&&(t[a]=i[a]);return t}e.extend(e.ui,{datepicker:{version:"1.10.4"}});var n,r="datepicker";e.extend(i.prototype,{markerClassName:"hasDatepicker",maxRows:4,_widgetDatepicker:function(){return this.dpDiv},setDefaults:function(e){return s(this._defaults,e||{}),this},_attachDatepicker:function(t,i){var a,s,n;a=t.nodeName.toLowerCase(),s="div"===a||"span"===a,t.id||(this.uuid+=1,t.id="dp"+this.uuid),n=this._newInst(e(t),s),n.settings=e.extend({},i||{}),"input"===a?this._connectDatepicker(t,n):s&&this._inlineDatepicker(t,n)},_newInst:function(t,i){var s=t[0].id.replace(/([^A-Za-z0-9_\-])/g,"\\\\$1");return{id:s,input:t,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:i,dpDiv:i?a(e("<div class='"+this._inlineClass+" ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all'></div>")):this.dpDiv}},_connectDatepicker:function(t,i){var a=e(t);i.append=e([]),i.trigger=e([]),a.hasClass(this.markerClassName)||(this._attachments(a,i),a.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp),this._autoSize(i),e.data(t,r,i),i.settings.disabled&&this._disableDatepicker(t))},_attachments:function(t,i){var a,s,n,r=this._get(i,"appendText"),o=this._get(i,"isRTL");i.append&&i.append.remove(),r&&(i.append=e("<span class='"+this._appendClass+"'>"+r+"</span>"),t[o?"before":"after"](i.append)),t.unbind("focus",this._showDatepicker),i.trigger&&i.trigger.remove(),a=this._get(i,"showOn"),("focus"===a||"both"===a)&&t.focus(this._showDatepicker),("button"===a||"both"===a)&&(s=this._get(i,"buttonText"),n=this._get(i,"buttonImage"),i.trigger=e(this._get(i,"buttonImageOnly")?e("<img/>").addClass(this._triggerClass).attr({src:n,alt:s,title:s}):e("<button type='button'></button>").addClass(this._triggerClass).html(n?e("<img/>").attr({src:n,alt:s,title:s}):s)),t[o?"before":"after"](i.trigger),i.trigger.click(function(){return e.datepicker._datepickerShowing&&e.datepicker._lastInput===t[0]?e.datepicker._hideDatepicker():e.datepicker._datepickerShowing&&e.datepicker._lastInput!==t[0]?(e.datepicker._hideDatepicker(),e.datepicker._showDatepicker(t[0])):e.datepicker._showDatepicker(t[0]),!1}))},_autoSize:function(e){if(this._get(e,"autoSize")&&!e.inline){var t,i,a,s,n=new Date(2009,11,20),r=this._get(e,"dateFormat");r.match(/[DM]/)&&(t=function(e){for(i=0,a=0,s=0;e.length>s;s++)e[s].length>i&&(i=e[s].length,a=s);return a},n.setMonth(t(this._get(e,r.match(/MM/)?"monthNames":"monthNamesShort"))),n.setDate(t(this._get(e,r.match(/DD/)?"dayNames":"dayNamesShort"))+20-n.getDay())),e.input.attr("size",this._formatDate(e,n).length)}},_inlineDatepicker:function(t,i){var a=e(t);a.hasClass(this.markerClassName)||(a.addClass(this.markerClassName).append(i.dpDiv),e.data(t,r,i),this._setDate(i,this._getDefaultDate(i),!0),this._updateDatepicker(i),this._updateAlternate(i),i.settings.disabled&&this._disableDatepicker(t),i.dpDiv.css("display","block"))},_dialogDatepicker:function(t,i,a,n,o){var u,c,h,l,d,p=this._dialogInst;return p||(this.uuid+=1,u="dp"+this.uuid,this._dialogInput=e("<input type='text' id='"+u+"' style='position: absolute; top: -100px; width: 0px;'/>"),this._dialogInput.keydown(this._doKeyDown),e("body").append(this._dialogInput),p=this._dialogInst=this._newInst(this._dialogInput,!1),p.settings={},e.data(this._dialogInput[0],r,p)),s(p.settings,n||{}),i=i&&i.constructor===Date?this._formatDate(p,i):i,this._dialogInput.val(i),this._pos=o?o.length?o:[o.pageX,o.pageY]:null,this._pos||(c=document.documentElement.clientWidth,h=document.documentElement.clientHeight,l=document.documentElement.scrollLeft||document.body.scrollLeft,d=document.documentElement.scrollTop||document.body.scrollTop,this._pos=[c/2-100+l,h/2-150+d]),this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px"),p.settings.onSelect=a,this._inDialog=!0,this.dpDiv.addClass(this._dialogClass),this._showDatepicker(this._dialogInput[0]),e.blockUI&&e.blockUI(this.dpDiv),e.data(this._dialogInput[0],r,p),this},_destroyDatepicker:function(t){var i,a=e(t),s=e.data(t,r);a.hasClass(this.markerClassName)&&(i=t.nodeName.toLowerCase(),e.removeData(t,r),"input"===i?(s.append.remove(),s.trigger.remove(),a.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)):("div"===i||"span"===i)&&a.removeClass(this.markerClassName).empty())},_enableDatepicker:function(t){var i,a,s=e(t),n=e.data(t,r);s.hasClass(this.markerClassName)&&(i=t.nodeName.toLowerCase(),"input"===i?(t.disabled=!1,n.trigger.filter("button").each(function(){this.disabled=!1}).end().filter("img").css({opacity:"1.0",cursor:""})):("div"===i||"span"===i)&&(a=s.children("."+this._inlineClass),a.children().removeClass("ui-state-disabled"),a.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",!1)),this._disabledInputs=e.map(this._disabledInputs,function(e){return e===t?null:e}))},_disableDatepicker:function(t){var i,a,s=e(t),n=e.data(t,r);s.hasClass(this.markerClassName)&&(i=t.nodeName.toLowerCase(),"input"===i?(t.disabled=!0,n.trigger.filter("button").each(function(){this.disabled=!0}).end().filter("img").css({opacity:"0.5",cursor:"default"})):("div"===i||"span"===i)&&(a=s.children("."+this._inlineClass),a.children().addClass("ui-state-disabled"),a.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",!0)),this._disabledInputs=e.map(this._disabledInputs,function(e){return e===t?null:e}),this._disabledInputs[this._disabledInputs.length]=t)},_isDisabledDatepicker:function(e){if(!e)return!1;for(var t=0;this._disabledInputs.length>t;t++)if(this._disabledInputs[t]===e)return!0;return!1},_getInst:function(t){try{return e.data(t,r)}catch(i){throw"Missing instance data for this datepicker"}},_optionDatepicker:function(i,a,n){var r,o,u,c,h=this._getInst(i);return 2===arguments.length&&"string"==typeof a?"defaults"===a?e.extend({},e.datepicker._defaults):h?"all"===a?e.extend({},h.settings):this._get(h,a):null:(r=a||{},"string"==typeof a&&(r={},r[a]=n),h&&(this._curInst===h&&this._hideDatepicker(),o=this._getDateDatepicker(i,!0),u=this._getMinMaxDate(h,"min"),c=this._getMinMaxDate(h,"max"),s(h.settings,r),null!==u&&r.dateFormat!==t&&r.minDate===t&&(h.settings.minDate=this._formatDate(h,u)),null!==c&&r.dateFormat!==t&&r.maxDate===t&&(h.settings.maxDate=this._formatDate(h,c)),"disabled"in r&&(r.disabled?this._disableDatepicker(i):this._enableDatepicker(i)),this._attachments(e(i),h),this._autoSize(h),this._setDate(h,o),this._updateAlternate(h),this._updateDatepicker(h)),t)},_changeDatepicker:function(e,t,i){this._optionDatepicker(e,t,i)},_refreshDatepicker:function(e){var t=this._getInst(e);t&&this._updateDatepicker(t)},_setDateDatepicker:function(e,t){var i=this._getInst(e);i&&(this._setDate(i,t),this._updateDatepicker(i),this._updateAlternate(i))},_getDateDatepicker:function(e,t){var i=this._getInst(e);return i&&!i.inline&&this._setDateFromField(i,t),i?this._getDate(i):null},_doKeyDown:function(t){var i,a,s,n=e.datepicker._getInst(t.target),r=!0,o=n.dpDiv.is(".ui-datepicker-rtl");if(n._keyEvent=!0,e.datepicker._datepickerShowing)switch(t.keyCode){case 9:e.datepicker._hideDatepicker(),r=!1;break;case 13:return s=e("td."+e.datepicker._dayOverClass+":not(."+e.datepicker._currentClass+")",n.dpDiv),s[0]&&e.datepicker._selectDay(t.target,n.selectedMonth,n.selectedYear,s[0]),i=e.datepicker._get(n,"onSelect"),i?(a=e.datepicker._formatDate(n),i.apply(n.input?n.input[0]:null,[a,n])):e.datepicker._hideDatepicker(),!1;case 27:e.datepicker._hideDatepicker();break;case 33:e.datepicker._adjustDate(t.target,t.ctrlKey?-e.datepicker._get(n,"stepBigMonths"):-e.datepicker._get(n,"stepMonths"),"M");break;case 34:e.datepicker._adjustDate(t.target,t.ctrlKey?+e.datepicker._get(n,"stepBigMonths"):+e.datepicker._get(n,"stepMonths"),"M");break;case 35:(t.ctrlKey||t.metaKey)&&e.datepicker._clearDate(t.target),r=t.ctrlKey||t.metaKey;break;case 36:(t.ctrlKey||t.metaKey)&&e.datepicker._gotoToday(t.target),r=t.ctrlKey||t.metaKey;break;case 37:(t.ctrlKey||t.metaKey)&&e.datepicker._adjustDate(t.target,o?1:-1,"D"),r=t.ctrlKey||t.metaKey,t.originalEvent.altKey&&e.datepicker._adjustDate(t.target,t.ctrlKey?-e.datepicker._get(n,"stepBigMonths"):-e.datepicker._get(n,"stepMonths"),"M");break;case 38:(t.ctrlKey||t.metaKey)&&e.datepicker._adjustDate(t.target,-7,"D"),r=t.ctrlKey||t.metaKey;break;case 39:(t.ctrlKey||t.metaKey)&&e.datepicker._adjustDate(t.target,o?-1:1,"D"),r=t.ctrlKey||t.metaKey,t.originalEvent.altKey&&e.datepicker._adjustDate(t.target,t.ctrlKey?+e.datepicker._get(n,"stepBigMonths"):+e.datepicker._get(n,"stepMonths"),"M");break;case 40:(t.ctrlKey||t.metaKey)&&e.datepicker._adjustDate(t.target,7,"D"),r=t.ctrlKey||t.metaKey;break;default:r=!1}else 36===t.keyCode&&t.ctrlKey?e.datepicker._showDatepicker(this):r=!1;r&&(t.preventDefault(),t.stopPropagation())},_doKeyPress:function(i){var a,s,n=e.datepicker._getInst(i.target);return e.datepicker._get(n,"constrainInput")?(a=e.datepicker._possibleChars(e.datepicker._get(n,"dateFormat")),s=String.fromCharCode(null==i.charCode?i.keyCode:i.charCode),i.ctrlKey||i.metaKey||" ">s||!a||a.indexOf(s)>-1):t},_doKeyUp:function(t){var i,a=e.datepicker._getInst(t.target);if(a.input.val()!==a.lastVal)try{i=e.datepicker.parseDate(e.datepicker._get(a,"dateFormat"),a.input?a.input.val():null,e.datepicker._getFormatConfig(a)),i&&(e.datepicker._setDateFromField(a),e.datepicker._updateAlternate(a),e.datepicker._updateDatepicker(a))}catch(s){}return!0},_showDatepicker:function(t){if(t=t.target||t,"input"!==t.nodeName.toLowerCase()&&(t=e("input",t.parentNode)[0]),!e.datepicker._isDisabledDatepicker(t)&&e.datepicker._lastInput!==t){var i,a,n,r,o,u,c;i=e.datepicker._getInst(t),e.datepicker._curInst&&e.datepicker._curInst!==i&&(e.datepicker._curInst.dpDiv.stop(!0,!0),i&&e.datepicker._datepickerShowing&&e.datepicker._hideDatepicker(e.datepicker._curInst.input[0])),a=e.datepicker._get(i,"beforeShow"),n=a?a.apply(t,[t,i]):{},n!==!1&&(s(i.settings,n),i.lastVal=null,e.datepicker._lastInput=t,e.datepicker._setDateFromField(i),e.datepicker._inDialog&&(t.value=""),e.datepicker._pos||(e.datepicker._pos=e.datepicker._findPos(t),e.datepicker._pos[1]+=t.offsetHeight),r=!1,e(t).parents().each(function(){return r|="fixed"===e(this).css("position"),!r}),o={left:e.datepicker._pos[0],top:e.datepicker._pos[1]},e.datepicker._pos=null,i.dpDiv.empty(),i.dpDiv.css({position:"absolute",display:"block",top:"-1000px"}),e.datepicker._updateDatepicker(i),o=e.datepicker._checkOffset(i,o,r),i.dpDiv.css({position:e.datepicker._inDialog&&e.blockUI?"static":r?"fixed":"absolute",display:"none",left:o.left+"px",top:o.top+"px"}),i.inline||(u=e.datepicker._get(i,"showAnim"),c=e.datepicker._get(i,"duration"),i.dpDiv.zIndex(e(t).zIndex()+1),e.datepicker._datepickerShowing=!0,e.effects&&e.effects.effect[u]?i.dpDiv.show(u,e.datepicker._get(i,"showOptions"),c):i.dpDiv[u||"show"](u?c:null),e.datepicker._shouldFocusInput(i)&&i.input.focus(),e.datepicker._curInst=i))}},_updateDatepicker:function(t){this.maxRows=4,n=t,t.dpDiv.empty().append(this._generateHTML(t)),this._attachHandlers(t),t.dpDiv.find("."+this._dayOverClass+" a").mouseover();var i,a=this._getNumberOfMonths(t),s=a[1],r=17;t.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width(""),s>1&&t.dpDiv.addClass("ui-datepicker-multi-"+s).css("width",r*s+"em"),t.dpDiv[(1!==a[0]||1!==a[1]?"add":"remove")+"Class"]("ui-datepicker-multi"),t.dpDiv[(this._get(t,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl"),t===e.datepicker._curInst&&e.datepicker._datepickerShowing&&e.datepicker._shouldFocusInput(t)&&t.input.focus(),t.yearshtml&&(i=t.yearshtml,setTimeout(function(){i===t.yearshtml&&t.yearshtml&&t.dpDiv.find("select.ui-datepicker-year:first").replaceWith(t.yearshtml),i=t.yearshtml=null},0))},_shouldFocusInput:function(e){return e.input&&e.input.is(":visible")&&!e.input.is(":disabled")&&!e.input.is(":focus")},_checkOffset:function(t,i,a){var s=t.dpDiv.outerWidth(),n=t.dpDiv.outerHeight(),r=t.input?t.input.outerWidth():0,o=t.input?t.input.outerHeight():0,u=document.documentElement.clientWidth+(a?0:e(document).scrollLeft()),c=document.documentElement.clientHeight+(a?0:e(document).scrollTop());return i.left-=this._get(t,"isRTL")?s-r:0,i.left-=a&&i.left===t.input.offset().left?e(document).scrollLeft():0,i.top-=a&&i.top===t.input.offset().top+o?e(document).scrollTop():0,i.left-=Math.min(i.left,i.left+s>u&&u>s?Math.abs(i.left+s-u):0),i.top-=Math.min(i.top,i.top+n>c&&c>n?Math.abs(n+o):0),i},_findPos:function(t){for(var i,a=this._getInst(t),s=this._get(a,"isRTL");t&&("hidden"===t.type||1!==t.nodeType||e.expr.filters.hidden(t));)t=t[s?"previousSibling":"nextSibling"];return i=e(t).offset(),[i.left,i.top]},_hideDatepicker:function(t){var i,a,s,n,o=this._curInst;!o||t&&o!==e.data(t,r)||this._datepickerShowing&&(i=this._get(o,"showAnim"),a=this._get(o,"duration"),s=function(){e.datepicker._tidyDialog(o)},e.effects&&(e.effects.effect[i]||e.effects[i])?o.dpDiv.hide(i,e.datepicker._get(o,"showOptions"),a,s):o.dpDiv["slideDown"===i?"slideUp":"fadeIn"===i?"fadeOut":"hide"](i?a:null,s),i||s(),this._datepickerShowing=!1,n=this._get(o,"onClose"),n&&n.apply(o.input?o.input[0]:null,[o.input?o.input.val():"",o]),this._lastInput=null,this._inDialog&&(this._dialogInput.css({position:"absolute",left:"0",top:"-100px"}),e.blockUI&&(e.unblockUI(),e("body").append(this.dpDiv))),this._inDialog=!1)},_tidyDialog:function(e){e.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(t){if(e.datepicker._curInst){var i=e(t.target),a=e.datepicker._getInst(i[0]);(i[0].id!==e.datepicker._mainDivId&&0===i.parents("#"+e.datepicker._mainDivId).length&&!i.hasClass(e.datepicker.markerClassName)&&!i.closest("."+e.datepicker._triggerClass).length&&e.datepicker._datepickerShowing&&(!e.datepicker._inDialog||!e.blockUI)||i.hasClass(e.datepicker.markerClassName)&&e.datepicker._curInst!==a)&&e.datepicker._hideDatepicker()}},_adjustDate:function(t,i,a){var s=e(t),n=this._getInst(s[0]);this._isDisabledDatepicker(s[0])||(this._adjustInstDate(n,i+("M"===a?this._get(n,"showCurrentAtPos"):0),a),this._updateDatepicker(n))},_gotoToday:function(t){var i,a=e(t),s=this._getInst(a[0]);this._get(s,"gotoCurrent")&&s.currentDay?(s.selectedDay=s.currentDay,s.drawMonth=s.selectedMonth=s.currentMonth,s.drawYear=s.selectedYear=s.currentYear):(i=new Date,s.selectedDay=i.getDate(),s.drawMonth=s.selectedMonth=i.getMonth(),s.drawYear=s.selectedYear=i.getFullYear()),this._notifyChange(s),this._adjustDate(a)},_selectMonthYear:function(t,i,a){var s=e(t),n=this._getInst(s[0]);n["selected"+("M"===a?"Month":"Year")]=n["draw"+("M"===a?"Month":"Year")]=parseInt(i.options[i.selectedIndex].value,10),this._notifyChange(n),this._adjustDate(s)},_selectDay:function(t,i,a,s){var n,r=e(t);e(s).hasClass(this._unselectableClass)||this._isDisabledDatepicker(r[0])||(n=this._getInst(r[0]),n.selectedDay=n.currentDay=e("a",s).html(),n.selectedMonth=n.currentMonth=i,n.selectedYear=n.currentYear=a,this._selectDate(t,this._formatDate(n,n.currentDay,n.currentMonth,n.currentYear)))},_clearDate:function(t){var i=e(t);this._selectDate(i,"")},_selectDate:function(t,i){var a,s=e(t),n=this._getInst(s[0]);i=null!=i?i:this._formatDate(n),n.input&&n.input.val(i),this._updateAlternate(n),a=this._get(n,"onSelect"),a?a.apply(n.input?n.input[0]:null,[i,n]):n.input&&n.input.trigger("change"),n.inline?this._updateDatepicker(n):(this._hideDatepicker(),this._lastInput=n.input[0],"object"!=typeof n.input[0]&&n.input.focus(),this._lastInput=null)},_updateAlternate:function(t){var i,a,s,n=this._get(t,"altField");n&&(i=this._get(t,"altFormat")||this._get(t,"dateFormat"),a=this._getDate(t),s=this.formatDate(i,a,this._getFormatConfig(t)),e(n).each(function(){e(this).val(s)}))},noWeekends:function(e){var t=e.getDay();return[t>0&&6>t,""]},iso8601Week:function(e){var t,i=new Date(e.getTime());return i.setDate(i.getDate()+4-(i.getDay()||7)),t=i.getTime(),i.setMonth(0),i.setDate(1),Math.floor(Math.round((t-i)/864e5)/7)+1},parseDate:function(i,a,s){if(null==i||null==a)throw"Invalid arguments";if(a="object"==typeof a?""+a:a+"",""===a)return null;var n,r,o,u,c=0,h=(s?s.shortYearCutoff:null)||this._defaults.shortYearCutoff,l="string"!=typeof h?h:(new Date).getFullYear()%100+parseInt(h,10),d=(s?s.dayNamesShort:null)||this._defaults.dayNamesShort,p=(s?s.dayNames:null)||this._defaults.dayNames,g=(s?s.monthNamesShort:null)||this._defaults.monthNamesShort,m=(s?s.monthNames:null)||this._defaults.monthNames,f=-1,_=-1,v=-1,k=-1,y=!1,b=function(e){var t=i.length>n+1&&i.charAt(n+1)===e;return t&&n++,t},D=function(e){var t=b(e),i="@"===e?14:"!"===e?20:"y"===e&&t?4:"o"===e?3:2,s=RegExp("^\\d{1,"+i+"}"),n=a.substring(c).match(s);if(!n)throw"Missing number at position "+c;return c+=n[0].length,parseInt(n[0],10)},w=function(i,s,n){var r=-1,o=e.map(b(i)?n:s,function(e,t){return[[t,e]]}).sort(function(e,t){return-(e[1].length-t[1].length)});if(e.each(o,function(e,i){var s=i[1];return a.substr(c,s.length).toLowerCase()===s.toLowerCase()?(r=i[0],c+=s.length,!1):t}),-1!==r)return r+1;throw"Unknown name at position "+c},M=function(){if(a.charAt(c)!==i.charAt(n))throw"Unexpected literal at position "+c;c++};for(n=0;i.length>n;n++)if(y)"'"!==i.charAt(n)||b("'")?M():y=!1;else switch(i.charAt(n)){case"d":v=D("d");break;case"D":w("D",d,p);break;case"o":k=D("o");break;case"m":_=D("m");break;case"M":_=w("M",g,m);break;case"y":f=D("y");break;case"@":u=new Date(D("@")),f=u.getFullYear(),_=u.getMonth()+1,v=u.getDate();break;case"!":u=new Date((D("!")-this._ticksTo1970)/1e4),f=u.getFullYear(),_=u.getMonth()+1,v=u.getDate();break;case"'":b("'")?M():y=!0;break;default:M()}if(a.length>c&&(o=a.substr(c),!/^\s+/.test(o)))throw"Extra/unparsed characters found in date: "+o;if(-1===f?f=(new Date).getFullYear():100>f&&(f+=(new Date).getFullYear()-(new Date).getFullYear()%100+(l>=f?0:-100)),k>-1)for(_=1,v=k;;){if(r=this._getDaysInMonth(f,_-1),r>=v)break;_++,v-=r}if(u=this._daylightSavingAdjust(new Date(f,_-1,v)),u.getFullYear()!==f||u.getMonth()+1!==_||u.getDate()!==v)throw"Invalid date";return u},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:1e7*60*60*24*(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925)),formatDate:function(e,t,i){if(!t)return"";var a,s=(i?i.dayNamesShort:null)||this._defaults.dayNamesShort,n=(i?i.dayNames:null)||this._defaults.dayNames,r=(i?i.monthNamesShort:null)||this._defaults.monthNamesShort,o=(i?i.monthNames:null)||this._defaults.monthNames,u=function(t){var i=e.length>a+1&&e.charAt(a+1)===t;return i&&a++,i},c=function(e,t,i){var a=""+t;if(u(e))for(;i>a.length;)a="0"+a;return a},h=function(e,t,i,a){return u(e)?a[t]:i[t]},l="",d=!1;if(t)for(a=0;e.length>a;a++)if(d)"'"!==e.charAt(a)||u("'")?l+=e.charAt(a):d=!1;else switch(e.charAt(a)){case"d":l+=c("d",t.getDate(),2);break;case"D":l+=h("D",t.getDay(),s,n);break;case"o":l+=c("o",Math.round((new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime()-new Date(t.getFullYear(),0,0).getTime())/864e5),3);break;case"m":l+=c("m",t.getMonth()+1,2);break;case"M":l+=h("M",t.getMonth(),r,o);break;case"y":l+=u("y")?t.getFullYear():(10>t.getYear()%100?"0":"")+t.getYear()%100;break;case"@":l+=t.getTime();break;case"!":l+=1e4*t.getTime()+this._ticksTo1970;break;case"'":u("'")?l+="'":d=!0;break;default:l+=e.charAt(a)}return l},_possibleChars:function(e){var t,i="",a=!1,s=function(i){var a=e.length>t+1&&e.charAt(t+1)===i;return a&&t++,a};for(t=0;e.length>t;t++)if(a)"'"!==e.charAt(t)||s("'")?i+=e.charAt(t):a=!1;else switch(e.charAt(t)){case"d":case"m":case"y":case"@":i+="0123456789";break;case"D":case"M":return null;case"'":s("'")?i+="'":a=!0;break;default:i+=e.charAt(t)}return i},_get:function(e,i){return e.settings[i]!==t?e.settings[i]:this._defaults[i]},_setDateFromField:function(e,t){if(e.input.val()!==e.lastVal){var i=this._get(e,"dateFormat"),a=e.lastVal=e.input?e.input.val():null,s=this._getDefaultDate(e),n=s,r=this._getFormatConfig(e);try{n=this.parseDate(i,a,r)||s}catch(o){a=t?"":a}e.selectedDay=n.getDate(),e.drawMonth=e.selectedMonth=n.getMonth(),e.drawYear=e.selectedYear=n.getFullYear(),e.currentDay=a?n.getDate():0,e.currentMonth=a?n.getMonth():0,e.currentYear=a?n.getFullYear():0,this._adjustInstDate(e)}},_getDefaultDate:function(e){return this._restrictMinMax(e,this._determineDate(e,this._get(e,"defaultDate"),new Date))},_determineDate:function(t,i,a){var s=function(e){var t=new Date;return t.setDate(t.getDate()+e),t},n=function(i){try{return e.datepicker.parseDate(e.datepicker._get(t,"dateFormat"),i,e.datepicker._getFormatConfig(t))}catch(a){}for(var s=(i.toLowerCase().match(/^c/)?e.datepicker._getDate(t):null)||new Date,n=s.getFullYear(),r=s.getMonth(),o=s.getDate(),u=/([+\-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,c=u.exec(i);c;){switch(c[2]||"d"){case"d":case"D":o+=parseInt(c[1],10);break;case"w":case"W":o+=7*parseInt(c[1],10);break;case"m":case"M":r+=parseInt(c[1],10),o=Math.min(o,e.datepicker._getDaysInMonth(n,r));break;case"y":case"Y":n+=parseInt(c[1],10),o=Math.min(o,e.datepicker._getDaysInMonth(n,r))}c=u.exec(i)}return new Date(n,r,o)},r=null==i||""===i?a:"string"==typeof i?n(i):"number"==typeof i?isNaN(i)?a:s(i):new Date(i.getTime());return r=r&&"Invalid Date"==""+r?a:r,r&&(r.setHours(0),r.setMinutes(0),r.setSeconds(0),r.setMilliseconds(0)),this._daylightSavingAdjust(r)},_daylightSavingAdjust:function(e){return e?(e.setHours(e.getHours()>12?e.getHours()+2:0),e):null},_setDate:function(e,t,i){var a=!t,s=e.selectedMonth,n=e.selectedYear,r=this._restrictMinMax(e,this._determineDate(e,t,new Date));e.selectedDay=e.currentDay=r.getDate(),e.drawMonth=e.selectedMonth=e.currentMonth=r.getMonth(),e.drawYear=e.selectedYear=e.currentYear=r.getFullYear(),s===e.selectedMonth&&n===e.selectedYear||i||this._notifyChange(e),this._adjustInstDate(e),e.input&&e.input.val(a?"":this._formatDate(e))},_getDate:function(e){var t=!e.currentYear||e.input&&""===e.input.val()?null:this._daylightSavingAdjust(new Date(e.currentYear,e.currentMonth,e.currentDay));return t},_attachHandlers:function(t){var i=this._get(t,"stepMonths"),a="#"+t.id.replace(/\\\\/g,"\\");t.dpDiv.find("[data-handler]").map(function(){var t={prev:function(){e.datepicker._adjustDate(a,-i,"M")},next:function(){e.datepicker._adjustDate(a,+i,"M")},hide:function(){e.datepicker._hideDatepicker()},today:function(){e.datepicker._gotoToday(a)},selectDay:function(){return e.datepicker._selectDay(a,+this.getAttribute("data-month"),+this.getAttribute("data-year"),this),!1},selectMonth:function(){return e.datepicker._selectMonthYear(a,this,"M"),!1},selectYear:function(){return e.datepicker._selectMonthYear(a,this,"Y"),!1}};e(this).bind(this.getAttribute("data-event"),t[this.getAttribute("data-handler")])})},_generateHTML:function(e){var t,i,a,s,n,r,o,u,c,h,l,d,p,g,m,f,_,v,k,y,b,D,w,M,C,x,I,N,T,A,E,S,Y,F,P,O,j,K,R,H=new Date,W=this._daylightSavingAdjust(new Date(H.getFullYear(),H.getMonth(),H.getDate())),L=this._get(e,"isRTL"),U=this._get(e,"showButtonPanel"),B=this._get(e,"hideIfNoPrevNext"),z=this._get(e,"navigationAsDateFormat"),q=this._getNumberOfMonths(e),G=this._get(e,"showCurrentAtPos"),J=this._get(e,"stepMonths"),Q=1!==q[0]||1!==q[1],V=this._daylightSavingAdjust(e.currentDay?new Date(e.currentYear,e.currentMonth,e.currentDay):new Date(9999,9,9)),$=this._getMinMaxDate(e,"min"),X=this._getMinMaxDate(e,"max"),Z=e.drawMonth-G,et=e.drawYear;if(0>Z&&(Z+=12,et--),X)for(t=this._daylightSavingAdjust(new Date(X.getFullYear(),X.getMonth()-q[0]*q[1]+1,X.getDate())),t=$&&$>t?$:t;this._daylightSavingAdjust(new Date(et,Z,1))>t;)Z--,0>Z&&(Z=11,et--);for(e.drawMonth=Z,e.drawYear=et,i=this._get(e,"prevText"),i=z?this.formatDate(i,this._daylightSavingAdjust(new Date(et,Z-J,1)),this._getFormatConfig(e)):i,a=this._canAdjustMonth(e,-1,et,Z)?"<a class='ui-datepicker-prev ui-corner-all' data-handler='prev' data-event='click' title='"+i+"'><span class='ui-icon ui-icon-circle-triangle-"+(L?"e":"w")+"'>"+i+"</span></a>":B?"":"<a class='ui-datepicker-prev ui-corner-all ui-state-disabled' title='"+i+"'><span class='ui-icon ui-icon-circle-triangle-"+(L?"e":"w")+"'>"+i+"</span></a>",s=this._get(e,"nextText"),s=z?this.formatDate(s,this._daylightSavingAdjust(new Date(et,Z+J,1)),this._getFormatConfig(e)):s,n=this._canAdjustMonth(e,1,et,Z)?"<a class='ui-datepicker-next ui-corner-all' data-handler='next' data-event='click' title='"+s+"'><span class='ui-icon ui-icon-circle-triangle-"+(L?"w":"e")+"'>"+s+"</span></a>":B?"":"<a class='ui-datepicker-next ui-corner-all ui-state-disabled' title='"+s+"'><span class='ui-icon ui-icon-circle-triangle-"+(L?"w":"e")+"'>"+s+"</span></a>",r=this._get(e,"currentText"),o=this._get(e,"gotoCurrent")&&e.currentDay?V:W,r=z?this.formatDate(r,o,this._getFormatConfig(e)):r,u=e.inline?"":"<button type='button' class='ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all' data-handler='hide' data-event='click'>"+this._get(e,"closeText")+"</button>",c=U?"<div class='ui-datepicker-buttonpane ui-widget-content'>"+(L?u:"")+(this._isInRange(e,o)?"<button type='button' class='ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all' data-handler='today' data-event='click'>"+r+"</button>":"")+(L?"":u)+"</div>":"",h=parseInt(this._get(e,"firstDay"),10),h=isNaN(h)?0:h,l=this._get(e,"showWeek"),d=this._get(e,"dayNames"),p=this._get(e,"dayNamesMin"),g=this._get(e,"monthNames"),m=this._get(e,"monthNamesShort"),f=this._get(e,"beforeShowDay"),_=this._get(e,"showOtherMonths"),v=this._get(e,"selectOtherMonths"),k=this._getDefaultDate(e),y="",D=0;q[0]>D;D++){for(w="",this.maxRows=4,M=0;q[1]>M;M++){if(C=this._daylightSavingAdjust(new Date(et,Z,e.selectedDay)),x=" ui-corner-all",I="",Q){if(I+="<div class='ui-datepicker-group",q[1]>1)switch(M){case 0:I+=" ui-datepicker-group-first",x=" ui-corner-"+(L?"right":"left");break;case q[1]-1:I+=" ui-datepicker-group-last",x=" ui-corner-"+(L?"left":"right");break;default:I+=" ui-datepicker-group-middle",x=""}I+="'>"}for(I+="<div class='ui-datepicker-header ui-widget-header ui-helper-clearfix"+x+"'>"+(/all|left/.test(x)&&0===D?L?n:a:"")+(/all|right/.test(x)&&0===D?L?a:n:"")+this._generateMonthYearHeader(e,Z,et,$,X,D>0||M>0,g,m)+"</div><table class='ui-datepicker-calendar'><thead>"+"<tr>",N=l?"<th class='ui-datepicker-week-col'>"+this._get(e,"weekHeader")+"</th>":"",b=0;7>b;b++)T=(b+h)%7,N+="<th"+((b+h+6)%7>=5?" class='ui-datepicker-week-end'":"")+">"+"<span title='"+d[T]+"'>"+p[T]+"</span></th>";for(I+=N+"</tr></thead><tbody>",A=this._getDaysInMonth(et,Z),et===e.selectedYear&&Z===e.selectedMonth&&(e.selectedDay=Math.min(e.selectedDay,A)),E=(this._getFirstDayOfMonth(et,Z)-h+7)%7,S=Math.ceil((E+A)/7),Y=Q?this.maxRows>S?this.maxRows:S:S,this.maxRows=Y,F=this._daylightSavingAdjust(new Date(et,Z,1-E)),P=0;Y>P;P++){for(I+="<tr>",O=l?"<td class='ui-datepicker-week-col'>"+this._get(e,"calculateWeek")(F)+"</td>":"",b=0;7>b;b++)j=f?f.apply(e.input?e.input[0]:null,[F]):[!0,""],K=F.getMonth()!==Z,R=K&&!v||!j[0]||$&&$>F||X&&F>X,O+="<td class='"+((b+h+6)%7>=5?" ui-datepicker-week-end":"")+(K?" ui-datepicker-other-month":"")+(F.getTime()===C.getTime()&&Z===e.selectedMonth&&e._keyEvent||k.getTime()===F.getTime()&&k.getTime()===C.getTime()?" "+this._dayOverClass:"")+(R?" "+this._unselectableClass+" ui-state-disabled":"")+(K&&!_?"":" "+j[1]+(F.getTime()===V.getTime()?" "+this._currentClass:"")+(F.getTime()===W.getTime()?" ui-datepicker-today":""))+"'"+(K&&!_||!j[2]?"":" title='"+j[2].replace(/'/g,"&#39;")+"'")+(R?"":" data-handler='selectDay' data-event='click' data-month='"+F.getMonth()+"' data-year='"+F.getFullYear()+"'")+">"+(K&&!_?"&#xa0;":R?"<span class='ui-state-default'>"+F.getDate()+"</span>":"<a class='ui-state-default"+(F.getTime()===W.getTime()?" ui-state-highlight":"")+(F.getTime()===V.getTime()?" ui-state-active":"")+(K?" ui-priority-secondary":"")+"' href='#'>"+F.getDate()+"</a>")+"</td>",F.setDate(F.getDate()+1),F=this._daylightSavingAdjust(F);I+=O+"</tr>"}Z++,Z>11&&(Z=0,et++),I+="</tbody></table>"+(Q?"</div>"+(q[0]>0&&M===q[1]-1?"<div class='ui-datepicker-row-break'></div>":""):""),w+=I}y+=w}return y+=c,e._keyEvent=!1,y},_generateMonthYearHeader:function(e,t,i,a,s,n,r,o){var u,c,h,l,d,p,g,m,f=this._get(e,"changeMonth"),_=this._get(e,"changeYear"),v=this._get(e,"showMonthAfterYear"),k="<div class='ui-datepicker-title'>",y="";if(n||!f)y+="<span class='ui-datepicker-month'>"+r[t]+"</span>";else{for(u=a&&a.getFullYear()===i,c=s&&s.getFullYear()===i,y+="<select class='ui-datepicker-month' data-handler='selectMonth' data-event='change'>",h=0;12>h;h++)(!u||h>=a.getMonth())&&(!c||s.getMonth()>=h)&&(y+="<option value='"+h+"'"+(h===t?" selected='selected'":"")+">"+o[h]+"</option>");y+="</select>"}if(v||(k+=y+(!n&&f&&_?"":"&#xa0;")),!e.yearshtml)if(e.yearshtml="",n||!_)k+="<span class='ui-datepicker-year'>"+i+"</span>";else{for(l=this._get(e,"yearRange").split(":"),d=(new Date).getFullYear(),p=function(e){var t=e.match(/c[+\-].*/)?i+parseInt(e.substring(1),10):e.match(/[+\-].*/)?d+parseInt(e,10):parseInt(e,10);
return isNaN(t)?d:t},g=p(l[0]),m=Math.max(g,p(l[1]||"")),g=a?Math.max(g,a.getFullYear()):g,m=s?Math.min(m,s.getFullYear()):m,e.yearshtml+="<select class='ui-datepicker-year' data-handler='selectYear' data-event='change'>";m>=g;g++)e.yearshtml+="<option value='"+g+"'"+(g===i?" selected='selected'":"")+">"+g+"</option>";e.yearshtml+="</select>",k+=e.yearshtml,e.yearshtml=null}return k+=this._get(e,"yearSuffix"),v&&(k+=(!n&&f&&_?"":"&#xa0;")+y),k+="</div>"},_adjustInstDate:function(e,t,i){var a=e.drawYear+("Y"===i?t:0),s=e.drawMonth+("M"===i?t:0),n=Math.min(e.selectedDay,this._getDaysInMonth(a,s))+("D"===i?t:0),r=this._restrictMinMax(e,this._daylightSavingAdjust(new Date(a,s,n)));e.selectedDay=r.getDate(),e.drawMonth=e.selectedMonth=r.getMonth(),e.drawYear=e.selectedYear=r.getFullYear(),("M"===i||"Y"===i)&&this._notifyChange(e)},_restrictMinMax:function(e,t){var i=this._getMinMaxDate(e,"min"),a=this._getMinMaxDate(e,"max"),s=i&&i>t?i:t;return a&&s>a?a:s},_notifyChange:function(e){var t=this._get(e,"onChangeMonthYear");t&&t.apply(e.input?e.input[0]:null,[e.selectedYear,e.selectedMonth+1,e])},_getNumberOfMonths:function(e){var t=this._get(e,"numberOfMonths");return null==t?[1,1]:"number"==typeof t?[1,t]:t},_getMinMaxDate:function(e,t){return this._determineDate(e,this._get(e,t+"Date"),null)},_getDaysInMonth:function(e,t){return 32-this._daylightSavingAdjust(new Date(e,t,32)).getDate()},_getFirstDayOfMonth:function(e,t){return new Date(e,t,1).getDay()},_canAdjustMonth:function(e,t,i,a){var s=this._getNumberOfMonths(e),n=this._daylightSavingAdjust(new Date(i,a+(0>t?t:s[0]*s[1]),1));return 0>t&&n.setDate(this._getDaysInMonth(n.getFullYear(),n.getMonth())),this._isInRange(e,n)},_isInRange:function(e,t){var i,a,s=this._getMinMaxDate(e,"min"),n=this._getMinMaxDate(e,"max"),r=null,o=null,u=this._get(e,"yearRange");return u&&(i=u.split(":"),a=(new Date).getFullYear(),r=parseInt(i[0],10),o=parseInt(i[1],10),i[0].match(/[+\-].*/)&&(r+=a),i[1].match(/[+\-].*/)&&(o+=a)),(!s||t.getTime()>=s.getTime())&&(!n||t.getTime()<=n.getTime())&&(!r||t.getFullYear()>=r)&&(!o||o>=t.getFullYear())},_getFormatConfig:function(e){var t=this._get(e,"shortYearCutoff");return t="string"!=typeof t?t:(new Date).getFullYear()%100+parseInt(t,10),{shortYearCutoff:t,dayNamesShort:this._get(e,"dayNamesShort"),dayNames:this._get(e,"dayNames"),monthNamesShort:this._get(e,"monthNamesShort"),monthNames:this._get(e,"monthNames")}},_formatDate:function(e,t,i,a){t||(e.currentDay=e.selectedDay,e.currentMonth=e.selectedMonth,e.currentYear=e.selectedYear);var s=t?"object"==typeof t?t:this._daylightSavingAdjust(new Date(a,i,t)):this._daylightSavingAdjust(new Date(e.currentYear,e.currentMonth,e.currentDay));return this.formatDate(this._get(e,"dateFormat"),s,this._getFormatConfig(e))}}),e.fn.datepicker=function(t){if(!this.length)return this;e.datepicker.initialized||(e(document).mousedown(e.datepicker._checkExternalClick),e.datepicker.initialized=!0),0===e("#"+e.datepicker._mainDivId).length&&e("body").append(e.datepicker.dpDiv);var i=Array.prototype.slice.call(arguments,1);return"string"!=typeof t||"isDisabled"!==t&&"getDate"!==t&&"widget"!==t?"option"===t&&2===arguments.length&&"string"==typeof arguments[1]?e.datepicker["_"+t+"Datepicker"].apply(e.datepicker,[this[0]].concat(i)):this.each(function(){"string"==typeof t?e.datepicker["_"+t+"Datepicker"].apply(e.datepicker,[this].concat(i)):e.datepicker._attachDatepicker(this,t)}):e.datepicker["_"+t+"Datepicker"].apply(e.datepicker,[this[0]].concat(i))},e.datepicker=new i,e.datepicker.initialized=!1,e.datepicker.uuid=(new Date).getTime(),e.datepicker.version="1.10.4"})(jQuery);(function(e){var t={buttons:!0,height:!0,maxHeight:!0,maxWidth:!0,minHeight:!0,minWidth:!0,width:!0},i={maxHeight:!0,maxWidth:!0,minHeight:!0,minWidth:!0};e.widget("ui.dialog",{version:"1.10.4",options:{appendTo:"body",autoOpen:!0,buttons:[],closeOnEscape:!0,closeText:"close",dialogClass:"",draggable:!0,hide:null,height:"auto",maxHeight:null,maxWidth:null,minHeight:150,minWidth:150,modal:!1,position:{my:"center",at:"center",of:window,collision:"fit",using:function(t){var i=e(this).css(t).offset().top;0>i&&e(this).css("top",t.top-i)}},resizable:!0,show:null,title:null,width:300,beforeClose:null,close:null,drag:null,dragStart:null,dragStop:null,focus:null,open:null,resize:null,resizeStart:null,resizeStop:null},_create:function(){this.originalCss={display:this.element[0].style.display,width:this.element[0].style.width,minHeight:this.element[0].style.minHeight,maxHeight:this.element[0].style.maxHeight,height:this.element[0].style.height},this.originalPosition={parent:this.element.parent(),index:this.element.parent().children().index(this.element)},this.originalTitle=this.element.attr("title"),this.options.title=this.options.title||this.originalTitle,this._createWrapper(),this.element.show().removeAttr("title").addClass("ui-dialog-content ui-widget-content").appendTo(this.uiDialog),this._createTitlebar(),this._createButtonPane(),this.options.draggable&&e.fn.draggable&&this._makeDraggable(),this.options.resizable&&e.fn.resizable&&this._makeResizable(),this._isOpen=!1},_init:function(){this.options.autoOpen&&this.open()},_appendTo:function(){var t=this.options.appendTo;return t&&(t.jquery||t.nodeType)?e(t):this.document.find(t||"body").eq(0)},_destroy:function(){var e,t=this.originalPosition;this._destroyOverlay(),this.element.removeUniqueId().removeClass("ui-dialog-content ui-widget-content").css(this.originalCss).detach(),this.uiDialog.stop(!0,!0).remove(),this.originalTitle&&this.element.attr("title",this.originalTitle),e=t.parent.children().eq(t.index),e.length&&e[0]!==this.element[0]?e.before(this.element):t.parent.append(this.element)},widget:function(){return this.uiDialog},disable:e.noop,enable:e.noop,close:function(t){var i,a=this;if(this._isOpen&&this._trigger("beforeClose",t)!==!1){if(this._isOpen=!1,this._destroyOverlay(),!this.opener.filter(":focusable").focus().length)try{i=this.document[0].activeElement,i&&"body"!==i.nodeName.toLowerCase()&&e(i).blur()}catch(s){}this._hide(this.uiDialog,this.options.hide,function(){a._trigger("close",t)})}},isOpen:function(){return this._isOpen},moveToTop:function(){this._moveToTop()},_moveToTop:function(e,t){var i=!!this.uiDialog.nextAll(":visible").insertBefore(this.uiDialog).length;return i&&!t&&this._trigger("focus",e),i},open:function(){var t=this;return this._isOpen?(this._moveToTop()&&this._focusTabbable(),undefined):(this._isOpen=!0,this.opener=e(this.document[0].activeElement),this._size(),this._position(),this._createOverlay(),this._moveToTop(null,!0),this._show(this.uiDialog,this.options.show,function(){t._focusTabbable(),t._trigger("focus")}),this._trigger("open"),undefined)},_focusTabbable:function(){var e=this.element.find("[autofocus]");e.length||(e=this.element.find(":tabbable")),e.length||(e=this.uiDialogButtonPane.find(":tabbable")),e.length||(e=this.uiDialogTitlebarClose.filter(":tabbable")),e.length||(e=this.uiDialog),e.eq(0).focus()},_keepFocus:function(t){function i(){var t=this.document[0].activeElement,i=this.uiDialog[0]===t||e.contains(this.uiDialog[0],t);i||this._focusTabbable()}t.preventDefault(),i.call(this),this._delay(i)},_createWrapper:function(){this.uiDialog=e("<div>").addClass("ui-dialog ui-widget ui-widget-content ui-corner-all ui-front "+this.options.dialogClass).hide().attr({tabIndex:-1,role:"dialog"}).appendTo(this._appendTo()),this._on(this.uiDialog,{keydown:function(t){if(this.options.closeOnEscape&&!t.isDefaultPrevented()&&t.keyCode&&t.keyCode===e.ui.keyCode.ESCAPE)return t.preventDefault(),this.close(t),undefined;if(t.keyCode===e.ui.keyCode.TAB){var i=this.uiDialog.find(":tabbable"),a=i.filter(":first"),s=i.filter(":last");t.target!==s[0]&&t.target!==this.uiDialog[0]||t.shiftKey?t.target!==a[0]&&t.target!==this.uiDialog[0]||!t.shiftKey||(s.focus(1),t.preventDefault()):(a.focus(1),t.preventDefault())}},mousedown:function(e){this._moveToTop(e)&&this._focusTabbable()}}),this.element.find("[aria-describedby]").length||this.uiDialog.attr({"aria-describedby":this.element.uniqueId().attr("id")})},_createTitlebar:function(){var t;this.uiDialogTitlebar=e("<div>").addClass("ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix").prependTo(this.uiDialog),this._on(this.uiDialogTitlebar,{mousedown:function(t){e(t.target).closest(".ui-dialog-titlebar-close")||this.uiDialog.focus()}}),this.uiDialogTitlebarClose=e("<button type='button'></button>").button({label:this.options.closeText,icons:{primary:"ui-icon-closethick"},text:!1}).addClass("ui-dialog-titlebar-close").appendTo(this.uiDialogTitlebar),this._on(this.uiDialogTitlebarClose,{click:function(e){e.preventDefault(),this.close(e)}}),t=e("<span>").uniqueId().addClass("ui-dialog-title").prependTo(this.uiDialogTitlebar),this._title(t),this.uiDialog.attr({"aria-labelledby":t.attr("id")})},_title:function(e){this.options.title||e.html("&#160;"),e.text(this.options.title)},_createButtonPane:function(){this.uiDialogButtonPane=e("<div>").addClass("ui-dialog-buttonpane ui-widget-content ui-helper-clearfix"),this.uiButtonSet=e("<div>").addClass("ui-dialog-buttonset").appendTo(this.uiDialogButtonPane),this._createButtons()},_createButtons:function(){var t=this,i=this.options.buttons;return this.uiDialogButtonPane.remove(),this.uiButtonSet.empty(),e.isEmptyObject(i)||e.isArray(i)&&!i.length?(this.uiDialog.removeClass("ui-dialog-buttons"),undefined):(e.each(i,function(i,a){var s,n;a=e.isFunction(a)?{click:a,text:i}:a,a=e.extend({type:"button"},a),s=a.click,a.click=function(){s.apply(t.element[0],arguments)},n={icons:a.icons,text:a.showText},delete a.icons,delete a.showText,e("<button></button>",a).button(n).appendTo(t.uiButtonSet)}),this.uiDialog.addClass("ui-dialog-buttons"),this.uiDialogButtonPane.appendTo(this.uiDialog),undefined)},_makeDraggable:function(){function t(e){return{position:e.position,offset:e.offset}}var i=this,a=this.options;this.uiDialog.draggable({cancel:".ui-dialog-content, .ui-dialog-titlebar-close",handle:".ui-dialog-titlebar",containment:"document",start:function(a,s){e(this).addClass("ui-dialog-dragging"),i._blockFrames(),i._trigger("dragStart",a,t(s))},drag:function(e,a){i._trigger("drag",e,t(a))},stop:function(s,n){a.position=[n.position.left-i.document.scrollLeft(),n.position.top-i.document.scrollTop()],e(this).removeClass("ui-dialog-dragging"),i._unblockFrames(),i._trigger("dragStop",s,t(n))}})},_makeResizable:function(){function t(e){return{originalPosition:e.originalPosition,originalSize:e.originalSize,position:e.position,size:e.size}}var i=this,a=this.options,s=a.resizable,n=this.uiDialog.css("position"),r="string"==typeof s?s:"n,e,s,w,se,sw,ne,nw";this.uiDialog.resizable({cancel:".ui-dialog-content",containment:"document",alsoResize:this.element,maxWidth:a.maxWidth,maxHeight:a.maxHeight,minWidth:a.minWidth,minHeight:this._minHeight(),handles:r,start:function(a,s){e(this).addClass("ui-dialog-resizing"),i._blockFrames(),i._trigger("resizeStart",a,t(s))},resize:function(e,a){i._trigger("resize",e,t(a))},stop:function(s,n){a.height=e(this).height(),a.width=e(this).width(),e(this).removeClass("ui-dialog-resizing"),i._unblockFrames(),i._trigger("resizeStop",s,t(n))}}).css("position",n)},_minHeight:function(){var e=this.options;return"auto"===e.height?e.minHeight:Math.min(e.minHeight,e.height)},_position:function(){var e=this.uiDialog.is(":visible");e||this.uiDialog.show(),this.uiDialog.position(this.options.position),e||this.uiDialog.hide()},_setOptions:function(a){var s=this,n=!1,r={};e.each(a,function(e,a){s._setOption(e,a),e in t&&(n=!0),e in i&&(r[e]=a)}),n&&(this._size(),this._position()),this.uiDialog.is(":data(ui-resizable)")&&this.uiDialog.resizable("option",r)},_setOption:function(e,t){var i,a,s=this.uiDialog;"dialogClass"===e&&s.removeClass(this.options.dialogClass).addClass(t),"disabled"!==e&&(this._super(e,t),"appendTo"===e&&this.uiDialog.appendTo(this._appendTo()),"buttons"===e&&this._createButtons(),"closeText"===e&&this.uiDialogTitlebarClose.button({label:""+t}),"draggable"===e&&(i=s.is(":data(ui-draggable)"),i&&!t&&s.draggable("destroy"),!i&&t&&this._makeDraggable()),"position"===e&&this._position(),"resizable"===e&&(a=s.is(":data(ui-resizable)"),a&&!t&&s.resizable("destroy"),a&&"string"==typeof t&&s.resizable("option","handles",t),a||t===!1||this._makeResizable()),"title"===e&&this._title(this.uiDialogTitlebar.find(".ui-dialog-title")))},_size:function(){var e,t,i,a=this.options;this.element.show().css({width:"auto",minHeight:0,maxHeight:"none",height:0}),a.minWidth>a.width&&(a.width=a.minWidth),e=this.uiDialog.css({height:"auto",width:a.width}).outerHeight(),t=Math.max(0,a.minHeight-e),i="number"==typeof a.maxHeight?Math.max(0,a.maxHeight-e):"none","auto"===a.height?this.element.css({minHeight:t,maxHeight:i,height:"auto"}):this.element.height(Math.max(0,a.height-e)),this.uiDialog.is(":data(ui-resizable)")&&this.uiDialog.resizable("option","minHeight",this._minHeight())},_blockFrames:function(){this.iframeBlocks=this.document.find("iframe").map(function(){var t=e(this);return e("<div>").css({position:"absolute",width:t.outerWidth(),height:t.outerHeight()}).appendTo(t.parent()).offset(t.offset())[0]})},_unblockFrames:function(){this.iframeBlocks&&(this.iframeBlocks.remove(),delete this.iframeBlocks)},_allowInteraction:function(t){return e(t.target).closest(".ui-dialog").length?!0:!!e(t.target).closest(".ui-datepicker").length},_createOverlay:function(){if(this.options.modal){var t=this,i=this.widgetFullName;e.ui.dialog.overlayInstances||this._delay(function(){e.ui.dialog.overlayInstances&&this.document.bind("focusin.dialog",function(a){t._allowInteraction(a)||(a.preventDefault(),e(".ui-dialog:visible:last .ui-dialog-content").data(i)._focusTabbable())})}),this.overlay=e("<div>").addClass("ui-widget-overlay ui-front").appendTo(this._appendTo()),this._on(this.overlay,{mousedown:"_keepFocus"}),e.ui.dialog.overlayInstances++}},_destroyOverlay:function(){this.options.modal&&this.overlay&&(e.ui.dialog.overlayInstances--,e.ui.dialog.overlayInstances||this.document.unbind("focusin.dialog"),this.overlay.remove(),this.overlay=null)}}),e.ui.dialog.overlayInstances=0,e.uiBackCompat!==!1&&e.widget("ui.dialog",e.ui.dialog,{_position:function(){var t,i=this.options.position,a=[],s=[0,0];i?(("string"==typeof i||"object"==typeof i&&"0"in i)&&(a=i.split?i.split(" "):[i[0],i[1]],1===a.length&&(a[1]=a[0]),e.each(["left","top"],function(e,t){+a[e]===a[e]&&(s[e]=a[e],a[e]=t)}),i={my:a[0]+(0>s[0]?s[0]:"+"+s[0])+" "+a[1]+(0>s[1]?s[1]:"+"+s[1]),at:a.join(" ")}),i=e.extend({},e.ui.dialog.prototype.options.position,i)):i=e.ui.dialog.prototype.options.position,t=this.uiDialog.is(":visible"),t||this.uiDialog.show(),this.uiDialog.position(i),t||this.uiDialog.hide()}})})(jQuery);(function(t){t.widget("ui.menu",{version:"1.10.4",defaultElement:"<ul>",delay:300,options:{icons:{submenu:"ui-icon-carat-1-e"},menus:"ul",position:{my:"left top",at:"right top"},role:"menu",blur:null,focus:null,select:null},_create:function(){this.activeMenu=this.element,this.mouseHandled=!1,this.element.uniqueId().addClass("ui-menu ui-widget ui-widget-content ui-corner-all").toggleClass("ui-menu-icons",!!this.element.find(".ui-icon").length).attr({role:this.options.role,tabIndex:0}).bind("click"+this.eventNamespace,t.proxy(function(t){this.options.disabled&&t.preventDefault()},this)),this.options.disabled&&this.element.addClass("ui-state-disabled").attr("aria-disabled","true"),this._on({"mousedown .ui-menu-item > a":function(t){t.preventDefault()},"click .ui-state-disabled > a":function(t){t.preventDefault()},"click .ui-menu-item:has(a)":function(e){var i=t(e.target).closest(".ui-menu-item");!this.mouseHandled&&i.not(".ui-state-disabled").length&&(this.select(e),e.isPropagationStopped()||(this.mouseHandled=!0),i.has(".ui-menu").length?this.expand(e):!this.element.is(":focus")&&t(this.document[0].activeElement).closest(".ui-menu").length&&(this.element.trigger("focus",[!0]),this.active&&1===this.active.parents(".ui-menu").length&&clearTimeout(this.timer)))},"mouseenter .ui-menu-item":function(e){var i=t(e.currentTarget);i.siblings().children(".ui-state-active").removeClass("ui-state-active"),this.focus(e,i)},mouseleave:"collapseAll","mouseleave .ui-menu":"collapseAll",focus:function(t,e){var i=this.active||this.element.children(".ui-menu-item").eq(0);e||this.focus(t,i)},blur:function(e){this._delay(function(){t.contains(this.element[0],this.document[0].activeElement)||this.collapseAll(e)})},keydown:"_keydown"}),this.refresh(),this._on(this.document,{click:function(e){t(e.target).closest(".ui-menu").length||this.collapseAll(e),this.mouseHandled=!1}})},_destroy:function(){this.element.removeAttr("aria-activedescendant").find(".ui-menu").addBack().removeClass("ui-menu ui-widget ui-widget-content ui-corner-all ui-menu-icons").removeAttr("role").removeAttr("tabIndex").removeAttr("aria-labelledby").removeAttr("aria-expanded").removeAttr("aria-hidden").removeAttr("aria-disabled").removeUniqueId().show(),this.element.find(".ui-menu-item").removeClass("ui-menu-item").removeAttr("role").removeAttr("aria-disabled").children("a").removeUniqueId().removeClass("ui-corner-all ui-state-hover").removeAttr("tabIndex").removeAttr("role").removeAttr("aria-haspopup").children().each(function(){var e=t(this);e.data("ui-menu-submenu-carat")&&e.remove()}),this.element.find(".ui-menu-divider").removeClass("ui-menu-divider ui-widget-content")},_keydown:function(e){function i(t){return t.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}var s,n,a,o,r,l=!0;switch(e.keyCode){case t.ui.keyCode.PAGE_UP:this.previousPage(e);break;case t.ui.keyCode.PAGE_DOWN:this.nextPage(e);break;case t.ui.keyCode.HOME:this._move("first","first",e);break;case t.ui.keyCode.END:this._move("last","last",e);break;case t.ui.keyCode.UP:this.previous(e);break;case t.ui.keyCode.DOWN:this.next(e);break;case t.ui.keyCode.LEFT:this.collapse(e);break;case t.ui.keyCode.RIGHT:this.active&&!this.active.is(".ui-state-disabled")&&this.expand(e);break;case t.ui.keyCode.ENTER:case t.ui.keyCode.SPACE:this._activate(e);break;case t.ui.keyCode.ESCAPE:this.collapse(e);break;default:l=!1,n=this.previousFilter||"",a=String.fromCharCode(e.keyCode),o=!1,clearTimeout(this.filterTimer),a===n?o=!0:a=n+a,r=RegExp("^"+i(a),"i"),s=this.activeMenu.children(".ui-menu-item").filter(function(){return r.test(t(this).children("a").text())}),s=o&&-1!==s.index(this.active.next())?this.active.nextAll(".ui-menu-item"):s,s.length||(a=String.fromCharCode(e.keyCode),r=RegExp("^"+i(a),"i"),s=this.activeMenu.children(".ui-menu-item").filter(function(){return r.test(t(this).children("a").text())})),s.length?(this.focus(e,s),s.length>1?(this.previousFilter=a,this.filterTimer=this._delay(function(){delete this.previousFilter},1e3)):delete this.previousFilter):delete this.previousFilter}l&&e.preventDefault()},_activate:function(t){this.active.is(".ui-state-disabled")||(this.active.children("a[aria-haspopup='true']").length?this.expand(t):this.select(t))},refresh:function(){var e,i=this.options.icons.submenu,s=this.element.find(this.options.menus);this.element.toggleClass("ui-menu-icons",!!this.element.find(".ui-icon").length),s.filter(":not(.ui-menu)").addClass("ui-menu ui-widget ui-widget-content ui-corner-all").hide().attr({role:this.options.role,"aria-hidden":"true","aria-expanded":"false"}).each(function(){var e=t(this),s=e.prev("a"),n=t("<span>").addClass("ui-menu-icon ui-icon "+i).data("ui-menu-submenu-carat",!0);s.attr("aria-haspopup","true").prepend(n),e.attr("aria-labelledby",s.attr("id"))}),e=s.add(this.element),e.children(":not(.ui-menu-item):has(a)").addClass("ui-menu-item").attr("role","presentation").children("a").uniqueId().addClass("ui-corner-all").attr({tabIndex:-1,role:this._itemRole()}),e.children(":not(.ui-menu-item)").each(function(){var e=t(this);/[^\-\u2014\u2013\s]/.test(e.text())||e.addClass("ui-widget-content ui-menu-divider")}),e.children(".ui-state-disabled").attr("aria-disabled","true"),this.active&&!t.contains(this.element[0],this.active[0])&&this.blur()},_itemRole:function(){return{menu:"menuitem",listbox:"option"}[this.options.role]},_setOption:function(t,e){"icons"===t&&this.element.find(".ui-menu-icon").removeClass(this.options.icons.submenu).addClass(e.submenu),this._super(t,e)},focus:function(t,e){var i,s;this.blur(t,t&&"focus"===t.type),this._scrollIntoView(e),this.active=e.first(),s=this.active.children("a").addClass("ui-state-focus"),this.options.role&&this.element.attr("aria-activedescendant",s.attr("id")),this.active.parent().closest(".ui-menu-item").children("a:first").addClass("ui-state-active"),t&&"keydown"===t.type?this._close():this.timer=this._delay(function(){this._close()},this.delay),i=e.children(".ui-menu"),i.length&&t&&/^mouse/.test(t.type)&&this._startOpening(i),this.activeMenu=e.parent(),this._trigger("focus",t,{item:e})},_scrollIntoView:function(e){var i,s,n,a,o,r;this._hasScroll()&&(i=parseFloat(t.css(this.activeMenu[0],"borderTopWidth"))||0,s=parseFloat(t.css(this.activeMenu[0],"paddingTop"))||0,n=e.offset().top-this.activeMenu.offset().top-i-s,a=this.activeMenu.scrollTop(),o=this.activeMenu.height(),r=e.height(),0>n?this.activeMenu.scrollTop(a+n):n+r>o&&this.activeMenu.scrollTop(a+n-o+r))},blur:function(t,e){e||clearTimeout(this.timer),this.active&&(this.active.children("a").removeClass("ui-state-focus"),this.active=null,this._trigger("blur",t,{item:this.active}))},_startOpening:function(t){clearTimeout(this.timer),"true"===t.attr("aria-hidden")&&(this.timer=this._delay(function(){this._close(),this._open(t)},this.delay))},_open:function(e){var i=t.extend({of:this.active},this.options.position);clearTimeout(this.timer),this.element.find(".ui-menu").not(e.parents(".ui-menu")).hide().attr("aria-hidden","true"),e.show().removeAttr("aria-hidden").attr("aria-expanded","true").position(i)},collapseAll:function(e,i){clearTimeout(this.timer),this.timer=this._delay(function(){var s=i?this.element:t(e&&e.target).closest(this.element.find(".ui-menu"));s.length||(s=this.element),this._close(s),this.blur(e),this.activeMenu=s},this.delay)},_close:function(t){t||(t=this.active?this.active.parent():this.element),t.find(".ui-menu").hide().attr("aria-hidden","true").attr("aria-expanded","false").end().find("a.ui-state-active").removeClass("ui-state-active")},collapse:function(t){var e=this.active&&this.active.parent().closest(".ui-menu-item",this.element);e&&e.length&&(this._close(),this.focus(t,e))},expand:function(t){var e=this.active&&this.active.children(".ui-menu ").children(".ui-menu-item").first();e&&e.length&&(this._open(e.parent()),this._delay(function(){this.focus(t,e)}))},next:function(t){this._move("next","first",t)},previous:function(t){this._move("prev","last",t)},isFirstItem:function(){return this.active&&!this.active.prevAll(".ui-menu-item").length},isLastItem:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},_move:function(t,e,i){var s;this.active&&(s="first"===t||"last"===t?this.active["first"===t?"prevAll":"nextAll"](".ui-menu-item").eq(-1):this.active[t+"All"](".ui-menu-item").eq(0)),s&&s.length&&this.active||(s=this.activeMenu.children(".ui-menu-item")[e]()),this.focus(i,s)},nextPage:function(e){var i,s,n;return this.active?(this.isLastItem()||(this._hasScroll()?(s=this.active.offset().top,n=this.element.height(),this.active.nextAll(".ui-menu-item").each(function(){return i=t(this),0>i.offset().top-s-n}),this.focus(e,i)):this.focus(e,this.activeMenu.children(".ui-menu-item")[this.active?"last":"first"]())),undefined):(this.next(e),undefined)},previousPage:function(e){var i,s,n;return this.active?(this.isFirstItem()||(this._hasScroll()?(s=this.active.offset().top,n=this.element.height(),this.active.prevAll(".ui-menu-item").each(function(){return i=t(this),i.offset().top-s+n>0}),this.focus(e,i)):this.focus(e,this.activeMenu.children(".ui-menu-item").first())),undefined):(this.next(e),undefined)},_hasScroll:function(){return this.element.outerHeight()<this.element.prop("scrollHeight")},select:function(e){this.active=this.active||t(e.target).closest(".ui-menu-item");var i={item:this.active};this.active.has(".ui-menu").length||this.collapseAll(e,!0),this._trigger("select",e,i)}})})(jQuery);(function(t,e){t.widget("ui.progressbar",{version:"1.10.4",options:{max:100,value:0,change:null,complete:null},min:0,_create:function(){this.oldValue=this.options.value=this._constrainedValue(),this.element.addClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").attr({role:"progressbar","aria-valuemin":this.min}),this.valueDiv=t("<div class='ui-progressbar-value ui-widget-header ui-corner-left'></div>").appendTo(this.element),this._refreshValue()},_destroy:function(){this.element.removeClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").removeAttr("role").removeAttr("aria-valuemin").removeAttr("aria-valuemax").removeAttr("aria-valuenow"),this.valueDiv.remove()},value:function(t){return t===e?this.options.value:(this.options.value=this._constrainedValue(t),this._refreshValue(),e)},_constrainedValue:function(t){return t===e&&(t=this.options.value),this.indeterminate=t===!1,"number"!=typeof t&&(t=0),this.indeterminate?!1:Math.min(this.options.max,Math.max(this.min,t))},_setOptions:function(t){var e=t.value;delete t.value,this._super(t),this.options.value=this._constrainedValue(e),this._refreshValue()},_setOption:function(t,e){"max"===t&&(e=Math.max(this.min,e)),this._super(t,e)},_percentage:function(){return this.indeterminate?100:100*(this.options.value-this.min)/(this.options.max-this.min)},_refreshValue:function(){var e=this.options.value,i=this._percentage();this.valueDiv.toggle(this.indeterminate||e>this.min).toggleClass("ui-corner-right",e===this.options.max).width(i.toFixed(0)+"%"),this.element.toggleClass("ui-progressbar-indeterminate",this.indeterminate),this.indeterminate?(this.element.removeAttr("aria-valuenow"),this.overlayDiv||(this.overlayDiv=t("<div class='ui-progressbar-overlay'></div>").appendTo(this.valueDiv))):(this.element.attr({"aria-valuemax":this.options.max,"aria-valuenow":e}),this.overlayDiv&&(this.overlayDiv.remove(),this.overlayDiv=null)),this.oldValue!==e&&(this.oldValue=e,this._trigger("change")),e===this.options.max&&this._trigger("complete")}})})(jQuery);(function(t){var e=5;t.widget("ui.slider",t.ui.mouse,{version:"1.10.4",widgetEventPrefix:"slide",options:{animate:!1,distance:0,max:100,min:0,orientation:"horizontal",range:!1,step:1,value:0,values:null,change:null,slide:null,start:null,stop:null},_create:function(){this._keySliding=!1,this._mouseSliding=!1,this._animateOff=!0,this._handleIndex=null,this._detectOrientation(),this._mouseInit(),this.element.addClass("ui-slider ui-slider-"+this.orientation+" ui-widget"+" ui-widget-content"+" ui-corner-all"),this._refresh(),this._setOption("disabled",this.options.disabled),this._animateOff=!1},_refresh:function(){this._createRange(),this._createHandles(),this._setupEvents(),this._refreshValue()},_createHandles:function(){var e,i,s=this.options,n=this.element.find(".ui-slider-handle").addClass("ui-state-default ui-corner-all"),a="<a class='ui-slider-handle ui-state-default ui-corner-all' href='#'></a>",o=[];for(i=s.values&&s.values.length||1,n.length>i&&(n.slice(i).remove(),n=n.slice(0,i)),e=n.length;i>e;e++)o.push(a);this.handles=n.add(t(o.join("")).appendTo(this.element)),this.handle=this.handles.eq(0),this.handles.each(function(e){t(this).data("ui-slider-handle-index",e)})},_createRange:function(){var e=this.options,i="";e.range?(e.range===!0&&(e.values?e.values.length&&2!==e.values.length?e.values=[e.values[0],e.values[0]]:t.isArray(e.values)&&(e.values=e.values.slice(0)):e.values=[this._valueMin(),this._valueMin()]),this.range&&this.range.length?this.range.removeClass("ui-slider-range-min ui-slider-range-max").css({left:"",bottom:""}):(this.range=t("<div></div>").appendTo(this.element),i="ui-slider-range ui-widget-header ui-corner-all"),this.range.addClass(i+("min"===e.range||"max"===e.range?" ui-slider-range-"+e.range:""))):(this.range&&this.range.remove(),this.range=null)},_setupEvents:function(){var t=this.handles.add(this.range).filter("a");this._off(t),this._on(t,this._handleEvents),this._hoverable(t),this._focusable(t)},_destroy:function(){this.handles.remove(),this.range&&this.range.remove(),this.element.removeClass("ui-slider ui-slider-horizontal ui-slider-vertical ui-widget ui-widget-content ui-corner-all"),this._mouseDestroy()},_mouseCapture:function(e){var i,s,n,a,o,r,l,h,u=this,c=this.options;return c.disabled?!1:(this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()},this.elementOffset=this.element.offset(),i={x:e.pageX,y:e.pageY},s=this._normValueFromMouse(i),n=this._valueMax()-this._valueMin()+1,this.handles.each(function(e){var i=Math.abs(s-u.values(e));(n>i||n===i&&(e===u._lastChangedValue||u.values(e)===c.min))&&(n=i,a=t(this),o=e)}),r=this._start(e,o),r===!1?!1:(this._mouseSliding=!0,this._handleIndex=o,a.addClass("ui-state-active").focus(),l=a.offset(),h=!t(e.target).parents().addBack().is(".ui-slider-handle"),this._clickOffset=h?{left:0,top:0}:{left:e.pageX-l.left-a.width()/2,top:e.pageY-l.top-a.height()/2-(parseInt(a.css("borderTopWidth"),10)||0)-(parseInt(a.css("borderBottomWidth"),10)||0)+(parseInt(a.css("marginTop"),10)||0)},this.handles.hasClass("ui-state-hover")||this._slide(e,o,s),this._animateOff=!0,!0))},_mouseStart:function(){return!0},_mouseDrag:function(t){var e={x:t.pageX,y:t.pageY},i=this._normValueFromMouse(e);return this._slide(t,this._handleIndex,i),!1},_mouseStop:function(t){return this.handles.removeClass("ui-state-active"),this._mouseSliding=!1,this._stop(t,this._handleIndex),this._change(t,this._handleIndex),this._handleIndex=null,this._clickOffset=null,this._animateOff=!1,!1},_detectOrientation:function(){this.orientation="vertical"===this.options.orientation?"vertical":"horizontal"},_normValueFromMouse:function(t){var e,i,s,n,a;return"horizontal"===this.orientation?(e=this.elementSize.width,i=t.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)):(e=this.elementSize.height,i=t.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)),s=i/e,s>1&&(s=1),0>s&&(s=0),"vertical"===this.orientation&&(s=1-s),n=this._valueMax()-this._valueMin(),a=this._valueMin()+s*n,this._trimAlignValue(a)},_start:function(t,e){var i={handle:this.handles[e],value:this.value()};return this.options.values&&this.options.values.length&&(i.value=this.values(e),i.values=this.values()),this._trigger("start",t,i)},_slide:function(t,e,i){var s,n,a;this.options.values&&this.options.values.length?(s=this.values(e?0:1),2===this.options.values.length&&this.options.range===!0&&(0===e&&i>s||1===e&&s>i)&&(i=s),i!==this.values(e)&&(n=this.values(),n[e]=i,a=this._trigger("slide",t,{handle:this.handles[e],value:i,values:n}),s=this.values(e?0:1),a!==!1&&this.values(e,i))):i!==this.value()&&(a=this._trigger("slide",t,{handle:this.handles[e],value:i}),a!==!1&&this.value(i))},_stop:function(t,e){var i={handle:this.handles[e],value:this.value()};this.options.values&&this.options.values.length&&(i.value=this.values(e),i.values=this.values()),this._trigger("stop",t,i)},_change:function(t,e){if(!this._keySliding&&!this._mouseSliding){var i={handle:this.handles[e],value:this.value()};this.options.values&&this.options.values.length&&(i.value=this.values(e),i.values=this.values()),this._lastChangedValue=e,this._trigger("change",t,i)}},value:function(t){return arguments.length?(this.options.value=this._trimAlignValue(t),this._refreshValue(),this._change(null,0),undefined):this._value()},values:function(e,i){var s,n,a;if(arguments.length>1)return this.options.values[e]=this._trimAlignValue(i),this._refreshValue(),this._change(null,e),undefined;if(!arguments.length)return this._values();if(!t.isArray(arguments[0]))return this.options.values&&this.options.values.length?this._values(e):this.value();for(s=this.options.values,n=arguments[0],a=0;s.length>a;a+=1)s[a]=this._trimAlignValue(n[a]),this._change(null,a);this._refreshValue()},_setOption:function(e,i){var s,n=0;switch("range"===e&&this.options.range===!0&&("min"===i?(this.options.value=this._values(0),this.options.values=null):"max"===i&&(this.options.value=this._values(this.options.values.length-1),this.options.values=null)),t.isArray(this.options.values)&&(n=this.options.values.length),t.Widget.prototype._setOption.apply(this,arguments),e){case"orientation":this._detectOrientation(),this.element.removeClass("ui-slider-horizontal ui-slider-vertical").addClass("ui-slider-"+this.orientation),this._refreshValue();break;case"value":this._animateOff=!0,this._refreshValue(),this._change(null,0),this._animateOff=!1;break;case"values":for(this._animateOff=!0,this._refreshValue(),s=0;n>s;s+=1)this._change(null,s);this._animateOff=!1;break;case"min":case"max":this._animateOff=!0,this._refreshValue(),this._animateOff=!1;break;case"range":this._animateOff=!0,this._refresh(),this._animateOff=!1}},_value:function(){var t=this.options.value;return t=this._trimAlignValue(t)},_values:function(t){var e,i,s;if(arguments.length)return e=this.options.values[t],e=this._trimAlignValue(e);if(this.options.values&&this.options.values.length){for(i=this.options.values.slice(),s=0;i.length>s;s+=1)i[s]=this._trimAlignValue(i[s]);return i}return[]},_trimAlignValue:function(t){if(this._valueMin()>=t)return this._valueMin();if(t>=this._valueMax())return this._valueMax();var e=this.options.step>0?this.options.step:1,i=(t-this._valueMin())%e,s=t-i;return 2*Math.abs(i)>=e&&(s+=i>0?e:-e),parseFloat(s.toFixed(5))},_valueMin:function(){return this.options.min},_valueMax:function(){return this.options.max},_refreshValue:function(){var e,i,s,n,a,o=this.options.range,r=this.options,l=this,h=this._animateOff?!1:r.animate,u={};this.options.values&&this.options.values.length?this.handles.each(function(s){i=100*((l.values(s)-l._valueMin())/(l._valueMax()-l._valueMin())),u["horizontal"===l.orientation?"left":"bottom"]=i+"%",t(this).stop(1,1)[h?"animate":"css"](u,r.animate),l.options.range===!0&&("horizontal"===l.orientation?(0===s&&l.range.stop(1,1)[h?"animate":"css"]({left:i+"%"},r.animate),1===s&&l.range[h?"animate":"css"]({width:i-e+"%"},{queue:!1,duration:r.animate})):(0===s&&l.range.stop(1,1)[h?"animate":"css"]({bottom:i+"%"},r.animate),1===s&&l.range[h?"animate":"css"]({height:i-e+"%"},{queue:!1,duration:r.animate}))),e=i}):(s=this.value(),n=this._valueMin(),a=this._valueMax(),i=a!==n?100*((s-n)/(a-n)):0,u["horizontal"===this.orientation?"left":"bottom"]=i+"%",this.handle.stop(1,1)[h?"animate":"css"](u,r.animate),"min"===o&&"horizontal"===this.orientation&&this.range.stop(1,1)[h?"animate":"css"]({width:i+"%"},r.animate),"max"===o&&"horizontal"===this.orientation&&this.range[h?"animate":"css"]({width:100-i+"%"},{queue:!1,duration:r.animate}),"min"===o&&"vertical"===this.orientation&&this.range.stop(1,1)[h?"animate":"css"]({height:i+"%"},r.animate),"max"===o&&"vertical"===this.orientation&&this.range[h?"animate":"css"]({height:100-i+"%"},{queue:!1,duration:r.animate}))},_handleEvents:{keydown:function(i){var s,n,a,o,r=t(i.target).data("ui-slider-handle-index");switch(i.keyCode){case t.ui.keyCode.HOME:case t.ui.keyCode.END:case t.ui.keyCode.PAGE_UP:case t.ui.keyCode.PAGE_DOWN:case t.ui.keyCode.UP:case t.ui.keyCode.RIGHT:case t.ui.keyCode.DOWN:case t.ui.keyCode.LEFT:if(i.preventDefault(),!this._keySliding&&(this._keySliding=!0,t(i.target).addClass("ui-state-active"),s=this._start(i,r),s===!1))return}switch(o=this.options.step,n=a=this.options.values&&this.options.values.length?this.values(r):this.value(),i.keyCode){case t.ui.keyCode.HOME:a=this._valueMin();break;case t.ui.keyCode.END:a=this._valueMax();break;case t.ui.keyCode.PAGE_UP:a=this._trimAlignValue(n+(this._valueMax()-this._valueMin())/e);break;case t.ui.keyCode.PAGE_DOWN:a=this._trimAlignValue(n-(this._valueMax()-this._valueMin())/e);break;case t.ui.keyCode.UP:case t.ui.keyCode.RIGHT:if(n===this._valueMax())return;a=this._trimAlignValue(n+o);break;case t.ui.keyCode.DOWN:case t.ui.keyCode.LEFT:if(n===this._valueMin())return;a=this._trimAlignValue(n-o)}this._slide(i,r,a)},click:function(t){t.preventDefault()},keyup:function(e){var i=t(e.target).data("ui-slider-handle-index");this._keySliding&&(this._keySliding=!1,this._stop(e,i),this._change(e,i),t(e.target).removeClass("ui-state-active"))}}})})(jQuery);(function(t){function e(t){return function(){var e=this.element.val();t.apply(this,arguments),this._refresh(),e!==this.element.val()&&this._trigger("change")}}t.widget("ui.spinner",{version:"1.10.4",defaultElement:"<input>",widgetEventPrefix:"spin",options:{culture:null,icons:{down:"ui-icon-triangle-1-s",up:"ui-icon-triangle-1-n"},incremental:!0,max:null,min:null,numberFormat:null,page:10,step:1,change:null,spin:null,start:null,stop:null},_create:function(){this._setOption("max",this.options.max),this._setOption("min",this.options.min),this._setOption("step",this.options.step),""!==this.value()&&this._value(this.element.val(),!0),this._draw(),this._on(this._events),this._refresh(),this._on(this.window,{beforeunload:function(){this.element.removeAttr("autocomplete")}})},_getCreateOptions:function(){var e={},i=this.element;return t.each(["min","max","step"],function(t,s){var n=i.attr(s);void 0!==n&&n.length&&(e[s]=n)}),e},_events:{keydown:function(t){this._start(t)&&this._keydown(t)&&t.preventDefault()},keyup:"_stop",focus:function(){this.previous=this.element.val()},blur:function(t){return this.cancelBlur?(delete this.cancelBlur,void 0):(this._stop(),this._refresh(),this.previous!==this.element.val()&&this._trigger("change",t),void 0)},mousewheel:function(t,e){if(e){if(!this.spinning&&!this._start(t))return!1;this._spin((e>0?1:-1)*this.options.step,t),clearTimeout(this.mousewheelTimer),this.mousewheelTimer=this._delay(function(){this.spinning&&this._stop(t)},100),t.preventDefault()}},"mousedown .ui-spinner-button":function(e){function i(){var t=this.element[0]===this.document[0].activeElement;t||(this.element.focus(),this.previous=s,this._delay(function(){this.previous=s}))}var s;s=this.element[0]===this.document[0].activeElement?this.previous:this.element.val(),e.preventDefault(),i.call(this),this.cancelBlur=!0,this._delay(function(){delete this.cancelBlur,i.call(this)}),this._start(e)!==!1&&this._repeat(null,t(e.currentTarget).hasClass("ui-spinner-up")?1:-1,e)},"mouseup .ui-spinner-button":"_stop","mouseenter .ui-spinner-button":function(e){return t(e.currentTarget).hasClass("ui-state-active")?this._start(e)===!1?!1:(this._repeat(null,t(e.currentTarget).hasClass("ui-spinner-up")?1:-1,e),void 0):void 0},"mouseleave .ui-spinner-button":"_stop"},_draw:function(){var t=this.uiSpinner=this.element.addClass("ui-spinner-input").attr("autocomplete","off").wrap(this._uiSpinnerHtml()).parent().append(this._buttonHtml());this.element.attr("role","spinbutton"),this.buttons=t.find(".ui-spinner-button").attr("tabIndex",-1).button().removeClass("ui-corner-all"),this.buttons.height()>Math.ceil(.5*t.height())&&t.height()>0&&t.height(t.height()),this.options.disabled&&this.disable()},_keydown:function(e){var i=this.options,s=t.ui.keyCode;switch(e.keyCode){case s.UP:return this._repeat(null,1,e),!0;case s.DOWN:return this._repeat(null,-1,e),!0;case s.PAGE_UP:return this._repeat(null,i.page,e),!0;case s.PAGE_DOWN:return this._repeat(null,-i.page,e),!0}return!1},_uiSpinnerHtml:function(){return"<span class='ui-spinner ui-widget ui-widget-content ui-corner-all'></span>"},_buttonHtml:function(){return"<a class='ui-spinner-button ui-spinner-up ui-corner-tr'><span class='ui-icon "+this.options.icons.up+"'>&#9650;</span>"+"</a>"+"<a class='ui-spinner-button ui-spinner-down ui-corner-br'>"+"<span class='ui-icon "+this.options.icons.down+"'>&#9660;</span>"+"</a>"},_start:function(t){return this.spinning||this._trigger("start",t)!==!1?(this.counter||(this.counter=1),this.spinning=!0,!0):!1},_repeat:function(t,e,i){t=t||500,clearTimeout(this.timer),this.timer=this._delay(function(){this._repeat(40,e,i)},t),this._spin(e*this.options.step,i)},_spin:function(t,e){var i=this.value()||0;this.counter||(this.counter=1),i=this._adjustValue(i+t*this._increment(this.counter)),this.spinning&&this._trigger("spin",e,{value:i})===!1||(this._value(i),this.counter++)},_increment:function(e){var i=this.options.incremental;return i?t.isFunction(i)?i(e):Math.floor(e*e*e/5e4-e*e/500+17*e/200+1):1},_precision:function(){var t=this._precisionOf(this.options.step);return null!==this.options.min&&(t=Math.max(t,this._precisionOf(this.options.min))),t},_precisionOf:function(t){var e=""+t,i=e.indexOf(".");return-1===i?0:e.length-i-1},_adjustValue:function(t){var e,i,s=this.options;return e=null!==s.min?s.min:0,i=t-e,i=Math.round(i/s.step)*s.step,t=e+i,t=parseFloat(t.toFixed(this._precision())),null!==s.max&&t>s.max?s.max:null!==s.min&&s.min>t?s.min:t},_stop:function(t){this.spinning&&(clearTimeout(this.timer),clearTimeout(this.mousewheelTimer),this.counter=0,this.spinning=!1,this._trigger("stop",t))},_setOption:function(t,e){if("culture"===t||"numberFormat"===t){var i=this._parse(this.element.val());return this.options[t]=e,this.element.val(this._format(i)),void 0}("max"===t||"min"===t||"step"===t)&&"string"==typeof e&&(e=this._parse(e)),"icons"===t&&(this.buttons.first().find(".ui-icon").removeClass(this.options.icons.up).addClass(e.up),this.buttons.last().find(".ui-icon").removeClass(this.options.icons.down).addClass(e.down)),this._super(t,e),"disabled"===t&&(e?(this.element.prop("disabled",!0),this.buttons.button("disable")):(this.element.prop("disabled",!1),this.buttons.button("enable")))},_setOptions:e(function(t){this._super(t),this._value(this.element.val())}),_parse:function(t){return"string"==typeof t&&""!==t&&(t=window.Globalize&&this.options.numberFormat?Globalize.parseFloat(t,10,this.options.culture):+t),""===t||isNaN(t)?null:t},_format:function(t){return""===t?"":window.Globalize&&this.options.numberFormat?Globalize.format(t,this.options.numberFormat,this.options.culture):t},_refresh:function(){this.element.attr({"aria-valuemin":this.options.min,"aria-valuemax":this.options.max,"aria-valuenow":this._parse(this.element.val())})},_value:function(t,e){var i;""!==t&&(i=this._parse(t),null!==i&&(e||(i=this._adjustValue(i)),t=this._format(i))),this.element.val(t),this._refresh()},_destroy:function(){this.element.removeClass("ui-spinner-input").prop("disabled",!1).removeAttr("autocomplete").removeAttr("role").removeAttr("aria-valuemin").removeAttr("aria-valuemax").removeAttr("aria-valuenow"),this.uiSpinner.replaceWith(this.element)},stepUp:e(function(t){this._stepUp(t)}),_stepUp:function(t){this._start()&&(this._spin((t||1)*this.options.step),this._stop())},stepDown:e(function(t){this._stepDown(t)}),_stepDown:function(t){this._start()&&(this._spin((t||1)*-this.options.step),this._stop())},pageUp:e(function(t){this._stepUp((t||1)*this.options.page)}),pageDown:e(function(t){this._stepDown((t||1)*this.options.page)}),value:function(t){return arguments.length?(e(this._value).call(this,t),void 0):this._parse(this.element.val())},widget:function(){return this.uiSpinner}})})(jQuery);(function(t,e){function i(){return++n}function s(t){return t=t.cloneNode(!1),t.hash.length>1&&decodeURIComponent(t.href.replace(a,""))===decodeURIComponent(location.href.replace(a,""))}var n=0,a=/#.*$/;t.widget("ui.tabs",{version:"1.10.4",delay:300,options:{active:null,collapsible:!1,event:"click",heightStyle:"content",hide:null,show:null,activate:null,beforeActivate:null,beforeLoad:null,load:null},_create:function(){var e=this,i=this.options;this.running=!1,this.element.addClass("ui-tabs ui-widget ui-widget-content ui-corner-all").toggleClass("ui-tabs-collapsible",i.collapsible).delegate(".ui-tabs-nav > li","mousedown"+this.eventNamespace,function(e){t(this).is(".ui-state-disabled")&&e.preventDefault()}).delegate(".ui-tabs-anchor","focus"+this.eventNamespace,function(){t(this).closest("li").is(".ui-state-disabled")&&this.blur()}),this._processTabs(),i.active=this._initialActive(),t.isArray(i.disabled)&&(i.disabled=t.unique(i.disabled.concat(t.map(this.tabs.filter(".ui-state-disabled"),function(t){return e.tabs.index(t)}))).sort()),this.active=this.options.active!==!1&&this.anchors.length?this._findActive(i.active):t(),this._refresh(),this.active.length&&this.load(i.active)},_initialActive:function(){var i=this.options.active,s=this.options.collapsible,n=location.hash.substring(1);return null===i&&(n&&this.tabs.each(function(s,a){return t(a).attr("aria-controls")===n?(i=s,!1):e}),null===i&&(i=this.tabs.index(this.tabs.filter(".ui-tabs-active"))),(null===i||-1===i)&&(i=this.tabs.length?0:!1)),i!==!1&&(i=this.tabs.index(this.tabs.eq(i)),-1===i&&(i=s?!1:0)),!s&&i===!1&&this.anchors.length&&(i=0),i},_getCreateEventData:function(){return{tab:this.active,panel:this.active.length?this._getPanelForTab(this.active):t()}},_tabKeydown:function(i){var s=t(this.document[0].activeElement).closest("li"),n=this.tabs.index(s),a=!0;if(!this._handlePageNav(i)){switch(i.keyCode){case t.ui.keyCode.RIGHT:case t.ui.keyCode.DOWN:n++;break;case t.ui.keyCode.UP:case t.ui.keyCode.LEFT:a=!1,n--;break;case t.ui.keyCode.END:n=this.anchors.length-1;break;case t.ui.keyCode.HOME:n=0;break;case t.ui.keyCode.SPACE:return i.preventDefault(),clearTimeout(this.activating),this._activate(n),e;case t.ui.keyCode.ENTER:return i.preventDefault(),clearTimeout(this.activating),this._activate(n===this.options.active?!1:n),e;default:return}i.preventDefault(),clearTimeout(this.activating),n=this._focusNextTab(n,a),i.ctrlKey||(s.attr("aria-selected","false"),this.tabs.eq(n).attr("aria-selected","true"),this.activating=this._delay(function(){this.option("active",n)},this.delay))}},_panelKeydown:function(e){this._handlePageNav(e)||e.ctrlKey&&e.keyCode===t.ui.keyCode.UP&&(e.preventDefault(),this.active.focus())},_handlePageNav:function(i){return i.altKey&&i.keyCode===t.ui.keyCode.PAGE_UP?(this._activate(this._focusNextTab(this.options.active-1,!1)),!0):i.altKey&&i.keyCode===t.ui.keyCode.PAGE_DOWN?(this._activate(this._focusNextTab(this.options.active+1,!0)),!0):e},_findNextTab:function(e,i){function s(){return e>n&&(e=0),0>e&&(e=n),e}for(var n=this.tabs.length-1;-1!==t.inArray(s(),this.options.disabled);)e=i?e+1:e-1;return e},_focusNextTab:function(t,e){return t=this._findNextTab(t,e),this.tabs.eq(t).focus(),t},_setOption:function(t,i){return"active"===t?(this._activate(i),e):"disabled"===t?(this._setupDisabled(i),e):(this._super(t,i),"collapsible"===t&&(this.element.toggleClass("ui-tabs-collapsible",i),i||this.options.active!==!1||this._activate(0)),"event"===t&&this._setupEvents(i),"heightStyle"===t&&this._setupHeightStyle(i),e)},_tabId:function(t){return t.attr("aria-controls")||"ui-tabs-"+i()},_sanitizeSelector:function(t){return t?t.replace(/[!"$%&'()*+,.\/:;<=>?@\[\]\^`{|}~]/g,"\\$&"):""},refresh:function(){var e=this.options,i=this.tablist.children(":has(a[href])");e.disabled=t.map(i.filter(".ui-state-disabled"),function(t){return i.index(t)}),this._processTabs(),e.active!==!1&&this.anchors.length?this.active.length&&!t.contains(this.tablist[0],this.active[0])?this.tabs.length===e.disabled.length?(e.active=!1,this.active=t()):this._activate(this._findNextTab(Math.max(0,e.active-1),!1)):e.active=this.tabs.index(this.active):(e.active=!1,this.active=t()),this._refresh()},_refresh:function(){this._setupDisabled(this.options.disabled),this._setupEvents(this.options.event),this._setupHeightStyle(this.options.heightStyle),this.tabs.not(this.active).attr({"aria-selected":"false",tabIndex:-1}),this.panels.not(this._getPanelForTab(this.active)).hide().attr({"aria-expanded":"false","aria-hidden":"true"}),this.active.length?(this.active.addClass("ui-tabs-active ui-state-active").attr({"aria-selected":"true",tabIndex:0}),this._getPanelForTab(this.active).show().attr({"aria-expanded":"true","aria-hidden":"false"})):this.tabs.eq(0).attr("tabIndex",0)},_processTabs:function(){var e=this;this.tablist=this._getList().addClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all").attr("role","tablist"),this.tabs=this.tablist.find("> li:has(a[href])").addClass("ui-state-default ui-corner-top").attr({role:"tab",tabIndex:-1}),this.anchors=this.tabs.map(function(){return t("a",this)[0]}).addClass("ui-tabs-anchor").attr({role:"presentation",tabIndex:-1}),this.panels=t(),this.anchors.each(function(i,n){var a,o,r,h=t(n).uniqueId().attr("id"),l=t(n).closest("li"),c=l.attr("aria-controls");s(n)?(a=n.hash,o=e.element.find(e._sanitizeSelector(a))):(r=e._tabId(l),a="#"+r,o=e.element.find(a),o.length||(o=e._createPanel(r),o.insertAfter(e.panels[i-1]||e.tablist)),o.attr("aria-live","polite")),o.length&&(e.panels=e.panels.add(o)),c&&l.data("ui-tabs-aria-controls",c),l.attr({"aria-controls":a.substring(1),"aria-labelledby":h}),o.attr("aria-labelledby",h)}),this.panels.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").attr("role","tabpanel")},_getList:function(){return this.tablist||this.element.find("ol,ul").eq(0)},_createPanel:function(e){return t("<div>").attr("id",e).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").data("ui-tabs-destroy",!0)},_setupDisabled:function(e){t.isArray(e)&&(e.length?e.length===this.anchors.length&&(e=!0):e=!1);for(var i,s=0;i=this.tabs[s];s++)e===!0||-1!==t.inArray(s,e)?t(i).addClass("ui-state-disabled").attr("aria-disabled","true"):t(i).removeClass("ui-state-disabled").removeAttr("aria-disabled");this.options.disabled=e},_setupEvents:function(e){var i={click:function(t){t.preventDefault()}};e&&t.each(e.split(" "),function(t,e){i[e]="_eventHandler"}),this._off(this.anchors.add(this.tabs).add(this.panels)),this._on(this.anchors,i),this._on(this.tabs,{keydown:"_tabKeydown"}),this._on(this.panels,{keydown:"_panelKeydown"}),this._focusable(this.tabs),this._hoverable(this.tabs)},_setupHeightStyle:function(e){var i,s=this.element.parent();"fill"===e?(i=s.height(),i-=this.element.outerHeight()-this.element.height(),this.element.siblings(":visible").each(function(){var e=t(this),s=e.css("position");"absolute"!==s&&"fixed"!==s&&(i-=e.outerHeight(!0))}),this.element.children().not(this.panels).each(function(){i-=t(this).outerHeight(!0)}),this.panels.each(function(){t(this).height(Math.max(0,i-t(this).innerHeight()+t(this).height()))}).css("overflow","auto")):"auto"===e&&(i=0,this.panels.each(function(){i=Math.max(i,t(this).height("").height())}).height(i))},_eventHandler:function(e){var i=this.options,s=this.active,n=t(e.currentTarget),a=n.closest("li"),o=a[0]===s[0],r=o&&i.collapsible,h=r?t():this._getPanelForTab(a),l=s.length?this._getPanelForTab(s):t(),c={oldTab:s,oldPanel:l,newTab:r?t():a,newPanel:h};e.preventDefault(),a.hasClass("ui-state-disabled")||a.hasClass("ui-tabs-loading")||this.running||o&&!i.collapsible||this._trigger("beforeActivate",e,c)===!1||(i.active=r?!1:this.tabs.index(a),this.active=o?t():a,this.xhr&&this.xhr.abort(),l.length||h.length||t.error("jQuery UI Tabs: Mismatching fragment identifier."),h.length&&this.load(this.tabs.index(a),e),this._toggle(e,c))},_toggle:function(e,i){function s(){a.running=!1,a._trigger("activate",e,i)}function n(){i.newTab.closest("li").addClass("ui-tabs-active ui-state-active"),o.length&&a.options.show?a._show(o,a.options.show,s):(o.show(),s())}var a=this,o=i.newPanel,r=i.oldPanel;this.running=!0,r.length&&this.options.hide?this._hide(r,this.options.hide,function(){i.oldTab.closest("li").removeClass("ui-tabs-active ui-state-active"),n()}):(i.oldTab.closest("li").removeClass("ui-tabs-active ui-state-active"),r.hide(),n()),r.attr({"aria-expanded":"false","aria-hidden":"true"}),i.oldTab.attr("aria-selected","false"),o.length&&r.length?i.oldTab.attr("tabIndex",-1):o.length&&this.tabs.filter(function(){return 0===t(this).attr("tabIndex")}).attr("tabIndex",-1),o.attr({"aria-expanded":"true","aria-hidden":"false"}),i.newTab.attr({"aria-selected":"true",tabIndex:0})},_activate:function(e){var i,s=this._findActive(e);s[0]!==this.active[0]&&(s.length||(s=this.active),i=s.find(".ui-tabs-anchor")[0],this._eventHandler({target:i,currentTarget:i,preventDefault:t.noop}))},_findActive:function(e){return e===!1?t():this.tabs.eq(e)},_getIndex:function(t){return"string"==typeof t&&(t=this.anchors.index(this.anchors.filter("[href$='"+t+"']"))),t},_destroy:function(){this.xhr&&this.xhr.abort(),this.element.removeClass("ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible"),this.tablist.removeClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all").removeAttr("role"),this.anchors.removeClass("ui-tabs-anchor").removeAttr("role").removeAttr("tabIndex").removeUniqueId(),this.tabs.add(this.panels).each(function(){t.data(this,"ui-tabs-destroy")?t(this).remove():t(this).removeClass("ui-state-default ui-state-active ui-state-disabled ui-corner-top ui-corner-bottom ui-widget-content ui-tabs-active ui-tabs-panel").removeAttr("tabIndex").removeAttr("aria-live").removeAttr("aria-busy").removeAttr("aria-selected").removeAttr("aria-labelledby").removeAttr("aria-hidden").removeAttr("aria-expanded").removeAttr("role")}),this.tabs.each(function(){var e=t(this),i=e.data("ui-tabs-aria-controls");i?e.attr("aria-controls",i).removeData("ui-tabs-aria-controls"):e.removeAttr("aria-controls")}),this.panels.show(),"content"!==this.options.heightStyle&&this.panels.css("height","")},enable:function(i){var s=this.options.disabled;s!==!1&&(i===e?s=!1:(i=this._getIndex(i),s=t.isArray(s)?t.map(s,function(t){return t!==i?t:null}):t.map(this.tabs,function(t,e){return e!==i?e:null})),this._setupDisabled(s))},disable:function(i){var s=this.options.disabled;if(s!==!0){if(i===e)s=!0;else{if(i=this._getIndex(i),-1!==t.inArray(i,s))return;s=t.isArray(s)?t.merge([i],s).sort():[i]}this._setupDisabled(s)}},load:function(e,i){e=this._getIndex(e);var n=this,a=this.tabs.eq(e),o=a.find(".ui-tabs-anchor"),r=this._getPanelForTab(a),h={tab:a,panel:r};s(o[0])||(this.xhr=t.ajax(this._ajaxSettings(o,i,h)),this.xhr&&"canceled"!==this.xhr.statusText&&(a.addClass("ui-tabs-loading"),r.attr("aria-busy","true"),this.xhr.success(function(t){setTimeout(function(){r.html(t),n._trigger("load",i,h)},1)}).complete(function(t,e){setTimeout(function(){"abort"===e&&n.panels.stop(!1,!0),a.removeClass("ui-tabs-loading"),r.removeAttr("aria-busy"),t===n.xhr&&delete n.xhr},1)})))},_ajaxSettings:function(e,i,s){var n=this;return{url:e.attr("href"),beforeSend:function(e,a){return n._trigger("beforeLoad",i,t.extend({jqXHR:e,ajaxSettings:a},s))}}},_getPanelForTab:function(e){var i=t(e).attr("aria-controls");return this.element.find(this._sanitizeSelector("#"+i))}})})(jQuery);(function(t){function e(e,i){var s=(e.attr("aria-describedby")||"").split(/\s+/);s.push(i),e.data("ui-tooltip-id",i).attr("aria-describedby",t.trim(s.join(" ")))}function i(e){var i=e.data("ui-tooltip-id"),s=(e.attr("aria-describedby")||"").split(/\s+/),n=t.inArray(i,s);-1!==n&&s.splice(n,1),e.removeData("ui-tooltip-id"),s=t.trim(s.join(" ")),s?e.attr("aria-describedby",s):e.removeAttr("aria-describedby")}var s=0;t.widget("ui.tooltip",{version:"1.10.4",options:{content:function(){var e=t(this).attr("title")||"";return t("<a>").text(e).html()},hide:!0,items:"[title]:not([disabled])",position:{my:"left top+15",at:"left bottom",collision:"flipfit flip"},show:!0,tooltipClass:null,track:!1,close:null,open:null},_create:function(){this._on({mouseover:"open",focusin:"open"}),this.tooltips={},this.parents={},this.options.disabled&&this._disable()},_setOption:function(e,i){var s=this;return"disabled"===e?(this[i?"_disable":"_enable"](),this.options[e]=i,void 0):(this._super(e,i),"content"===e&&t.each(this.tooltips,function(t,e){s._updateContent(e)}),void 0)},_disable:function(){var e=this;t.each(this.tooltips,function(i,s){var n=t.Event("blur");n.target=n.currentTarget=s[0],e.close(n,!0)}),this.element.find(this.options.items).addBack().each(function(){var e=t(this);e.is("[title]")&&e.data("ui-tooltip-title",e.attr("title")).attr("title","")})},_enable:function(){this.element.find(this.options.items).addBack().each(function(){var e=t(this);e.data("ui-tooltip-title")&&e.attr("title",e.data("ui-tooltip-title"))})},open:function(e){var i=this,s=t(e?e.target:this.element).closest(this.options.items);s.length&&!s.data("ui-tooltip-id")&&(s.attr("title")&&s.data("ui-tooltip-title",s.attr("title")),s.data("ui-tooltip-open",!0),e&&"mouseover"===e.type&&s.parents().each(function(){var e,s=t(this);s.data("ui-tooltip-open")&&(e=t.Event("blur"),e.target=e.currentTarget=this,i.close(e,!0)),s.attr("title")&&(s.uniqueId(),i.parents[this.id]={element:this,title:s.attr("title")},s.attr("title",""))}),this._updateContent(s,e))},_updateContent:function(t,e){var i,s=this.options.content,n=this,a=e?e.type:null;return"string"==typeof s?this._open(e,t,s):(i=s.call(t[0],function(i){t.data("ui-tooltip-open")&&n._delay(function(){e&&(e.type=a),this._open(e,t,i)})}),i&&this._open(e,t,i),void 0)},_open:function(i,s,n){function a(t){l.of=t,o.is(":hidden")||o.position(l)}var o,r,h,l=t.extend({},this.options.position);if(n){if(o=this._find(s),o.length)return o.find(".ui-tooltip-content").html(n),void 0;s.is("[title]")&&(i&&"mouseover"===i.type?s.attr("title",""):s.removeAttr("title")),o=this._tooltip(s),e(s,o.attr("id")),o.find(".ui-tooltip-content").html(n),this.options.track&&i&&/^mouse/.test(i.type)?(this._on(this.document,{mousemove:a}),a(i)):o.position(t.extend({of:s},this.options.position)),o.hide(),this._show(o,this.options.show),this.options.show&&this.options.show.delay&&(h=this.delayedShow=setInterval(function(){o.is(":visible")&&(a(l.of),clearInterval(h))},t.fx.interval)),this._trigger("open",i,{tooltip:o}),r={keyup:function(e){if(e.keyCode===t.ui.keyCode.ESCAPE){var i=t.Event(e);i.currentTarget=s[0],this.close(i,!0)}},remove:function(){this._removeTooltip(o)}},i&&"mouseover"!==i.type||(r.mouseleave="close"),i&&"focusin"!==i.type||(r.focusout="close"),this._on(!0,s,r)}},close:function(e){var s=this,n=t(e?e.currentTarget:this.element),a=this._find(n);this.closing||(clearInterval(this.delayedShow),n.data("ui-tooltip-title")&&n.attr("title",n.data("ui-tooltip-title")),i(n),a.stop(!0),this._hide(a,this.options.hide,function(){s._removeTooltip(t(this))}),n.removeData("ui-tooltip-open"),this._off(n,"mouseleave focusout keyup"),n[0]!==this.element[0]&&this._off(n,"remove"),this._off(this.document,"mousemove"),e&&"mouseleave"===e.type&&t.each(this.parents,function(e,i){t(i.element).attr("title",i.title),delete s.parents[e]}),this.closing=!0,this._trigger("close",e,{tooltip:a}),this.closing=!1)},_tooltip:function(e){var i="ui-tooltip-"+s++,n=t("<div>").attr({id:i,role:"tooltip"}).addClass("ui-tooltip ui-widget ui-corner-all ui-widget-content "+(this.options.tooltipClass||""));return t("<div>").addClass("ui-tooltip-content").appendTo(n),n.appendTo(this.document[0].body),this.tooltips[i]=e,n},_find:function(e){var i=e.data("ui-tooltip-id");return i?t("#"+i):t()},_removeTooltip:function(t){t.remove(),delete this.tooltips[t.attr("id")]},_destroy:function(){var e=this;t.each(this.tooltips,function(i,s){var n=t.Event("blur");n.target=n.currentTarget=s[0],e.close(n,!0),t("#"+i).remove(),s.data("ui-tooltip-title")&&(s.attr("title",s.data("ui-tooltip-title")),s.removeData("ui-tooltip-title"))})}})})(jQuery);(function(e,t){var i="ui-effects-";e.effects={effect:{}},function(e,t){function i(e,t,i){var a=d[t.type]||{};return null==e?i||!t.def?null:t.def:(e=a.floor?~~e:parseFloat(e),isNaN(e)?t.def:a.mod?(e+a.mod)%a.mod:0>e?0:e>a.max?a.max:e)}function a(i){var a=l(),s=a._rgba=[];return i=i.toLowerCase(),m(h,function(e,n){var r,o=n.re.exec(i),h=o&&n.parse(o),l=n.space||"rgba";return h?(r=a[l](h),a[u[l].cache]=r[u[l].cache],s=a._rgba=r._rgba,!1):t}),s.length?("0,0,0,0"===s.join()&&e.extend(s,n.transparent),a):n[i]}function s(e,t,i){return i=(i+1)%1,1>6*i?e+6*(t-e)*i:1>2*i?t:2>3*i?e+6*(t-e)*(2/3-i):e}var n,r="backgroundColor borderBottomColor borderLeftColor borderRightColor borderTopColor color columnRuleColor outlineColor textDecorationColor textEmphasisColor",o=/^([\-+])=\s*(\d+\.?\d*)/,h=[{re:/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,parse:function(e){return[e[1],e[2],e[3],e[4]]}},{re:/rgba?\(\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,parse:function(e){return[2.55*e[1],2.55*e[2],2.55*e[3],e[4]]}},{re:/#([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})/,parse:function(e){return[parseInt(e[1],16),parseInt(e[2],16),parseInt(e[3],16)]}},{re:/#([a-f0-9])([a-f0-9])([a-f0-9])/,parse:function(e){return[parseInt(e[1]+e[1],16),parseInt(e[2]+e[2],16),parseInt(e[3]+e[3],16)]}},{re:/hsla?\(\s*(\d+(?:\.\d+)?)\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,space:"hsla",parse:function(e){return[e[1],e[2]/100,e[3]/100,e[4]]}}],l=e.Color=function(t,i,a,s){return new e.Color.fn.parse(t,i,a,s)},u={rgba:{props:{red:{idx:0,type:"byte"},green:{idx:1,type:"byte"},blue:{idx:2,type:"byte"}}},hsla:{props:{hue:{idx:0,type:"degrees"},saturation:{idx:1,type:"percent"},lightness:{idx:2,type:"percent"}}}},d={"byte":{floor:!0,max:255},percent:{max:1},degrees:{mod:360,floor:!0}},c=l.support={},p=e("<p>")[0],m=e.each;p.style.cssText="background-color:rgba(1,1,1,.5)",c.rgba=p.style.backgroundColor.indexOf("rgba")>-1,m(u,function(e,t){t.cache="_"+e,t.props.alpha={idx:3,type:"percent",def:1}}),l.fn=e.extend(l.prototype,{parse:function(s,r,o,h){if(s===t)return this._rgba=[null,null,null,null],this;(s.jquery||s.nodeType)&&(s=e(s).css(r),r=t);var d=this,c=e.type(s),p=this._rgba=[];return r!==t&&(s=[s,r,o,h],c="array"),"string"===c?this.parse(a(s)||n._default):"array"===c?(m(u.rgba.props,function(e,t){p[t.idx]=i(s[t.idx],t)}),this):"object"===c?(s instanceof l?m(u,function(e,t){s[t.cache]&&(d[t.cache]=s[t.cache].slice())}):m(u,function(t,a){var n=a.cache;m(a.props,function(e,t){if(!d[n]&&a.to){if("alpha"===e||null==s[e])return;d[n]=a.to(d._rgba)}d[n][t.idx]=i(s[e],t,!0)}),d[n]&&0>e.inArray(null,d[n].slice(0,3))&&(d[n][3]=1,a.from&&(d._rgba=a.from(d[n])))}),this):t},is:function(e){var i=l(e),a=!0,s=this;return m(u,function(e,n){var r,o=i[n.cache];return o&&(r=s[n.cache]||n.to&&n.to(s._rgba)||[],m(n.props,function(e,i){return null!=o[i.idx]?a=o[i.idx]===r[i.idx]:t})),a}),a},_space:function(){var e=[],t=this;return m(u,function(i,a){t[a.cache]&&e.push(i)}),e.pop()},transition:function(e,t){var a=l(e),s=a._space(),n=u[s],r=0===this.alpha()?l("transparent"):this,o=r[n.cache]||n.to(r._rgba),h=o.slice();return a=a[n.cache],m(n.props,function(e,s){var n=s.idx,r=o[n],l=a[n],u=d[s.type]||{};null!==l&&(null===r?h[n]=l:(u.mod&&(l-r>u.mod/2?r+=u.mod:r-l>u.mod/2&&(r-=u.mod)),h[n]=i((l-r)*t+r,s)))}),this[s](h)},blend:function(t){if(1===this._rgba[3])return this;var i=this._rgba.slice(),a=i.pop(),s=l(t)._rgba;return l(e.map(i,function(e,t){return(1-a)*s[t]+a*e}))},toRgbaString:function(){var t="rgba(",i=e.map(this._rgba,function(e,t){return null==e?t>2?1:0:e});return 1===i[3]&&(i.pop(),t="rgb("),t+i.join()+")"},toHslaString:function(){var t="hsla(",i=e.map(this.hsla(),function(e,t){return null==e&&(e=t>2?1:0),t&&3>t&&(e=Math.round(100*e)+"%"),e});return 1===i[3]&&(i.pop(),t="hsl("),t+i.join()+")"},toHexString:function(t){var i=this._rgba.slice(),a=i.pop();return t&&i.push(~~(255*a)),"#"+e.map(i,function(e){return e=(e||0).toString(16),1===e.length?"0"+e:e}).join("")},toString:function(){return 0===this._rgba[3]?"transparent":this.toRgbaString()}}),l.fn.parse.prototype=l.fn,u.hsla.to=function(e){if(null==e[0]||null==e[1]||null==e[2])return[null,null,null,e[3]];var t,i,a=e[0]/255,s=e[1]/255,n=e[2]/255,r=e[3],o=Math.max(a,s,n),h=Math.min(a,s,n),l=o-h,u=o+h,d=.5*u;return t=h===o?0:a===o?60*(s-n)/l+360:s===o?60*(n-a)/l+120:60*(a-s)/l+240,i=0===l?0:.5>=d?l/u:l/(2-u),[Math.round(t)%360,i,d,null==r?1:r]},u.hsla.from=function(e){if(null==e[0]||null==e[1]||null==e[2])return[null,null,null,e[3]];var t=e[0]/360,i=e[1],a=e[2],n=e[3],r=.5>=a?a*(1+i):a+i-a*i,o=2*a-r;return[Math.round(255*s(o,r,t+1/3)),Math.round(255*s(o,r,t)),Math.round(255*s(o,r,t-1/3)),n]},m(u,function(a,s){var n=s.props,r=s.cache,h=s.to,u=s.from;l.fn[a]=function(a){if(h&&!this[r]&&(this[r]=h(this._rgba)),a===t)return this[r].slice();var s,o=e.type(a),d="array"===o||"object"===o?a:arguments,c=this[r].slice();return m(n,function(e,t){var a=d["object"===o?e:t.idx];null==a&&(a=c[t.idx]),c[t.idx]=i(a,t)}),u?(s=l(u(c)),s[r]=c,s):l(c)},m(n,function(t,i){l.fn[t]||(l.fn[t]=function(s){var n,r=e.type(s),h="alpha"===t?this._hsla?"hsla":"rgba":a,l=this[h](),u=l[i.idx];return"undefined"===r?u:("function"===r&&(s=s.call(this,u),r=e.type(s)),null==s&&i.empty?this:("string"===r&&(n=o.exec(s),n&&(s=u+parseFloat(n[2])*("+"===n[1]?1:-1))),l[i.idx]=s,this[h](l)))})})}),l.hook=function(t){var i=t.split(" ");m(i,function(t,i){e.cssHooks[i]={set:function(t,s){var n,r,o="";if("transparent"!==s&&("string"!==e.type(s)||(n=a(s)))){if(s=l(n||s),!c.rgba&&1!==s._rgba[3]){for(r="backgroundColor"===i?t.parentNode:t;(""===o||"transparent"===o)&&r&&r.style;)try{o=e.css(r,"backgroundColor"),r=r.parentNode}catch(h){}s=s.blend(o&&"transparent"!==o?o:"_default")}s=s.toRgbaString()}try{t.style[i]=s}catch(h){}}},e.fx.step[i]=function(t){t.colorInit||(t.start=l(t.elem,i),t.end=l(t.end),t.colorInit=!0),e.cssHooks[i].set(t.elem,t.start.transition(t.end,t.pos))}})},l.hook(r),e.cssHooks.borderColor={expand:function(e){var t={};return m(["Top","Right","Bottom","Left"],function(i,a){t["border"+a+"Color"]=e}),t}},n=e.Color.names={aqua:"#00ffff",black:"#000000",blue:"#0000ff",fuchsia:"#ff00ff",gray:"#808080",green:"#008000",lime:"#00ff00",maroon:"#800000",navy:"#000080",olive:"#808000",purple:"#800080",red:"#ff0000",silver:"#c0c0c0",teal:"#008080",white:"#ffffff",yellow:"#ffff00",transparent:[null,null,null,0],_default:"#ffffff"}}(jQuery),function(){function i(t){var i,a,s=t.ownerDocument.defaultView?t.ownerDocument.defaultView.getComputedStyle(t,null):t.currentStyle,n={};if(s&&s.length&&s[0]&&s[s[0]])for(a=s.length;a--;)i=s[a],"string"==typeof s[i]&&(n[e.camelCase(i)]=s[i]);else for(i in s)"string"==typeof s[i]&&(n[i]=s[i]);return n}function a(t,i){var a,s,r={};for(a in i)s=i[a],t[a]!==s&&(n[a]||(e.fx.step[a]||!isNaN(parseFloat(s)))&&(r[a]=s));return r}var s=["add","remove","toggle"],n={border:1,borderBottom:1,borderColor:1,borderLeft:1,borderRight:1,borderTop:1,borderWidth:1,margin:1,padding:1};e.each(["borderLeftStyle","borderRightStyle","borderBottomStyle","borderTopStyle"],function(t,i){e.fx.step[i]=function(e){("none"!==e.end&&!e.setAttr||1===e.pos&&!e.setAttr)&&(jQuery.style(e.elem,i,e.end),e.setAttr=!0)}}),e.fn.addBack||(e.fn.addBack=function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}),e.effects.animateClass=function(t,n,r,o){var h=e.speed(n,r,o);return this.queue(function(){var n,r=e(this),o=r.attr("class")||"",l=h.children?r.find("*").addBack():r;l=l.map(function(){var t=e(this);return{el:t,start:i(this)}}),n=function(){e.each(s,function(e,i){t[i]&&r[i+"Class"](t[i])})},n(),l=l.map(function(){return this.end=i(this.el[0]),this.diff=a(this.start,this.end),this}),r.attr("class",o),l=l.map(function(){var t=this,i=e.Deferred(),a=e.extend({},h,{queue:!1,complete:function(){i.resolve(t)}});return this.el.animate(this.diff,a),i.promise()}),e.when.apply(e,l.get()).done(function(){n(),e.each(arguments,function(){var t=this.el;e.each(this.diff,function(e){t.css(e,"")})}),h.complete.call(r[0])})})},e.fn.extend({addClass:function(t){return function(i,a,s,n){return a?e.effects.animateClass.call(this,{add:i},a,s,n):t.apply(this,arguments)}}(e.fn.addClass),removeClass:function(t){return function(i,a,s,n){return arguments.length>1?e.effects.animateClass.call(this,{remove:i},a,s,n):t.apply(this,arguments)}}(e.fn.removeClass),toggleClass:function(i){return function(a,s,n,r,o){return"boolean"==typeof s||s===t?n?e.effects.animateClass.call(this,s?{add:a}:{remove:a},n,r,o):i.apply(this,arguments):e.effects.animateClass.call(this,{toggle:a},s,n,r)}}(e.fn.toggleClass),switchClass:function(t,i,a,s,n){return e.effects.animateClass.call(this,{add:i,remove:t},a,s,n)}})}(),function(){function a(t,i,a,s){return e.isPlainObject(t)&&(i=t,t=t.effect),t={effect:t},null==i&&(i={}),e.isFunction(i)&&(s=i,a=null,i={}),("number"==typeof i||e.fx.speeds[i])&&(s=a,a=i,i={}),e.isFunction(a)&&(s=a,a=null),i&&e.extend(t,i),a=a||i.duration,t.duration=e.fx.off?0:"number"==typeof a?a:a in e.fx.speeds?e.fx.speeds[a]:e.fx.speeds._default,t.complete=s||i.complete,t}function s(t){return!t||"number"==typeof t||e.fx.speeds[t]?!0:"string"!=typeof t||e.effects.effect[t]?e.isFunction(t)?!0:"object"!=typeof t||t.effect?!1:!0:!0}e.extend(e.effects,{version:"1.10.4",save:function(e,t){for(var a=0;t.length>a;a++)null!==t[a]&&e.data(i+t[a],e[0].style[t[a]])},restore:function(e,a){var s,n;for(n=0;a.length>n;n++)null!==a[n]&&(s=e.data(i+a[n]),s===t&&(s=""),e.css(a[n],s))},setMode:function(e,t){return"toggle"===t&&(t=e.is(":hidden")?"show":"hide"),t},getBaseline:function(e,t){var i,a;switch(e[0]){case"top":i=0;break;case"middle":i=.5;break;case"bottom":i=1;break;default:i=e[0]/t.height}switch(e[1]){case"left":a=0;break;case"center":a=.5;break;case"right":a=1;break;default:a=e[1]/t.width}return{x:a,y:i}},createWrapper:function(t){if(t.parent().is(".ui-effects-wrapper"))return t.parent();var i={width:t.outerWidth(!0),height:t.outerHeight(!0),"float":t.css("float")},a=e("<div></div>").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}),s={width:t.width(),height:t.height()},n=document.activeElement;try{n.id}catch(r){n=document.body}return t.wrap(a),(t[0]===n||e.contains(t[0],n))&&e(n).focus(),a=t.parent(),"static"===t.css("position")?(a.css({position:"relative"}),t.css({position:"relative"})):(e.extend(i,{position:t.css("position"),zIndex:t.css("z-index")}),e.each(["top","left","bottom","right"],function(e,a){i[a]=t.css(a),isNaN(parseInt(i[a],10))&&(i[a]="auto")}),t.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})),t.css(s),a.css(i).show()},removeWrapper:function(t){var i=document.activeElement;return t.parent().is(".ui-effects-wrapper")&&(t.parent().replaceWith(t),(t[0]===i||e.contains(t[0],i))&&e(i).focus()),t},setTransition:function(t,i,a,s){return s=s||{},e.each(i,function(e,i){var n=t.cssUnit(i);n[0]>0&&(s[i]=n[0]*a+n[1])}),s}}),e.fn.extend({effect:function(){function t(t){function a(){e.isFunction(n)&&n.call(s[0]),e.isFunction(t)&&t()}var s=e(this),n=i.complete,o=i.mode;(s.is(":hidden")?"hide"===o:"show"===o)?(s[o](),a()):r.call(s[0],i,a)}var i=a.apply(this,arguments),s=i.mode,n=i.queue,r=e.effects.effect[i.effect];return e.fx.off||!r?s?this[s](i.duration,i.complete):this.each(function(){i.complete&&i.complete.call(this)}):n===!1?this.each(t):this.queue(n||"fx",t)},show:function(e){return function(t){if(s(t))return e.apply(this,arguments);var i=a.apply(this,arguments);return i.mode="show",this.effect.call(this,i)}}(e.fn.show),hide:function(e){return function(t){if(s(t))return e.apply(this,arguments);var i=a.apply(this,arguments);return i.mode="hide",this.effect.call(this,i)}}(e.fn.hide),toggle:function(e){return function(t){if(s(t)||"boolean"==typeof t)return e.apply(this,arguments);var i=a.apply(this,arguments);return i.mode="toggle",this.effect.call(this,i)}}(e.fn.toggle),cssUnit:function(t){var i=this.css(t),a=[];return e.each(["em","px","%","pt"],function(e,t){i.indexOf(t)>0&&(a=[parseFloat(i),t])}),a}})}(),function(){var t={};e.each(["Quad","Cubic","Quart","Quint","Expo"],function(e,i){t[i]=function(t){return Math.pow(t,e+2)}}),e.extend(t,{Sine:function(e){return 1-Math.cos(e*Math.PI/2)},Circ:function(e){return 1-Math.sqrt(1-e*e)},Elastic:function(e){return 0===e||1===e?e:-Math.pow(2,8*(e-1))*Math.sin((80*(e-1)-7.5)*Math.PI/15)},Back:function(e){return e*e*(3*e-2)},Bounce:function(e){for(var t,i=4;((t=Math.pow(2,--i))-1)/11>e;);return 1/Math.pow(4,3-i)-7.5625*Math.pow((3*t-2)/22-e,2)}}),e.each(t,function(t,i){e.easing["easeIn"+t]=i,e.easing["easeOut"+t]=function(e){return 1-i(1-e)},e.easing["easeInOut"+t]=function(e){return.5>e?i(2*e)/2:1-i(-2*e+2)/2}})}()})(jQuery);(function(e){var t=/up|down|vertical/,i=/up|left|vertical|horizontal/;e.effects.effect.blind=function(a,s){var n,r,o,h=e(this),l=["position","top","bottom","left","right","height","width"],u=e.effects.setMode(h,a.mode||"hide"),d=a.direction||"up",c=t.test(d),p=c?"height":"width",m=c?"top":"left",f=i.test(d),g={},y="show"===u;h.parent().is(".ui-effects-wrapper")?e.effects.save(h.parent(),l):e.effects.save(h,l),h.show(),n=e.effects.createWrapper(h).css({overflow:"hidden"}),r=n[p](),o=parseFloat(n.css(m))||0,g[p]=y?r:0,f||(h.css(c?"bottom":"right",0).css(c?"top":"left","auto").css({position:"absolute"}),g[m]=y?o:r+o),y&&(n.css(p,0),f||n.css(m,o+r)),n.animate(g,{duration:a.duration,easing:a.easing,queue:!1,complete:function(){"hide"===u&&h.hide(),e.effects.restore(h,l),e.effects.removeWrapper(h),s()}})}})(jQuery);(function(e){e.effects.effect.bounce=function(t,i){var a,s,n,r=e(this),o=["position","top","bottom","left","right","height","width"],h=e.effects.setMode(r,t.mode||"effect"),l="hide"===h,u="show"===h,d=t.direction||"up",c=t.distance,p=t.times||5,m=2*p+(u||l?1:0),f=t.duration/m,g=t.easing,y="up"===d||"down"===d?"top":"left",v="up"===d||"left"===d,b=r.queue(),x=b.length;for((u||l)&&o.push("opacity"),e.effects.save(r,o),r.show(),e.effects.createWrapper(r),c||(c=r["top"===y?"outerHeight":"outerWidth"]()/3),u&&(n={opacity:1},n[y]=0,r.css("opacity",0).css(y,v?2*-c:2*c).animate(n,f,g)),l&&(c/=Math.pow(2,p-1)),n={},n[y]=0,a=0;p>a;a++)s={},s[y]=(v?"-=":"+=")+c,r.animate(s,f,g).animate(n,f,g),c=l?2*c:c/2;l&&(s={opacity:0},s[y]=(v?"-=":"+=")+c,r.animate(s,f,g)),r.queue(function(){l&&r.hide(),e.effects.restore(r,o),e.effects.removeWrapper(r),i()}),x>1&&b.splice.apply(b,[1,0].concat(b.splice(x,m+1))),r.dequeue()}})(jQuery);(function(e){e.effects.effect.clip=function(t,i){var a,s,n,r=e(this),o=["position","top","bottom","left","right","height","width"],h=e.effects.setMode(r,t.mode||"hide"),l="show"===h,u=t.direction||"vertical",d="vertical"===u,c=d?"height":"width",p=d?"top":"left",m={};e.effects.save(r,o),r.show(),a=e.effects.createWrapper(r).css({overflow:"hidden"}),s="IMG"===r[0].tagName?a:r,n=s[c](),l&&(s.css(c,0),s.css(p,n/2)),m[c]=l?n:0,m[p]=l?0:n/2,s.animate(m,{queue:!1,duration:t.duration,easing:t.easing,complete:function(){l||r.hide(),e.effects.restore(r,o),e.effects.removeWrapper(r),i()}})}})(jQuery);(function(e){e.effects.effect.drop=function(t,i){var a,s=e(this),n=["position","top","bottom","left","right","opacity","height","width"],r=e.effects.setMode(s,t.mode||"hide"),o="show"===r,h=t.direction||"left",l="up"===h||"down"===h?"top":"left",u="up"===h||"left"===h?"pos":"neg",d={opacity:o?1:0};e.effects.save(s,n),s.show(),e.effects.createWrapper(s),a=t.distance||s["top"===l?"outerHeight":"outerWidth"](!0)/2,o&&s.css("opacity",0).css(l,"pos"===u?-a:a),d[l]=(o?"pos"===u?"+=":"-=":"pos"===u?"-=":"+=")+a,s.animate(d,{queue:!1,duration:t.duration,easing:t.easing,complete:function(){"hide"===r&&s.hide(),e.effects.restore(s,n),e.effects.removeWrapper(s),i()}})}})(jQuery);(function(e){e.effects.effect.explode=function(t,i){function a(){b.push(this),b.length===d*c&&s()}function s(){p.css({visibility:"visible"}),e(b).remove(),f||p.hide(),i()}var n,r,o,h,l,u,d=t.pieces?Math.round(Math.sqrt(t.pieces)):3,c=d,p=e(this),m=e.effects.setMode(p,t.mode||"hide"),f="show"===m,g=p.show().css("visibility","hidden").offset(),y=Math.ceil(p.outerWidth()/c),v=Math.ceil(p.outerHeight()/d),b=[];for(n=0;d>n;n++)for(h=g.top+n*v,u=n-(d-1)/2,r=0;c>r;r++)o=g.left+r*y,l=r-(c-1)/2,p.clone().appendTo("body").wrap("<div></div>").css({position:"absolute",visibility:"visible",left:-r*y,top:-n*v}).parent().addClass("ui-effects-explode").css({position:"absolute",overflow:"hidden",width:y,height:v,left:o+(f?l*y:0),top:h+(f?u*v:0),opacity:f?0:1}).animate({left:o+(f?0:l*y),top:h+(f?0:u*v),opacity:f?1:0},t.duration||500,t.easing,a)}})(jQuery);(function(e){e.effects.effect.fade=function(t,i){var a=e(this),s=e.effects.setMode(a,t.mode||"toggle");a.animate({opacity:s},{queue:!1,duration:t.duration,easing:t.easing,complete:i})}})(jQuery);(function(e){e.effects.effect.fold=function(t,i){var a,s,n=e(this),r=["position","top","bottom","left","right","height","width"],o=e.effects.setMode(n,t.mode||"hide"),h="show"===o,l="hide"===o,u=t.size||15,d=/([0-9]+)%/.exec(u),c=!!t.horizFirst,p=h!==c,m=p?["width","height"]:["height","width"],f=t.duration/2,g={},v={};e.effects.save(n,r),n.show(),a=e.effects.createWrapper(n).css({overflow:"hidden"}),s=p?[a.width(),a.height()]:[a.height(),a.width()],d&&(u=parseInt(d[1],10)/100*s[l?0:1]),h&&a.css(c?{height:0,width:u}:{height:u,width:0}),g[m[0]]=h?s[0]:u,v[m[1]]=h?s[1]:0,a.animate(g,f,t.easing).animate(v,f,t.easing,function(){l&&n.hide(),e.effects.restore(n,r),e.effects.removeWrapper(n),i()})}})(jQuery);(function(e){e.effects.effect.highlight=function(t,i){var a=e(this),s=["backgroundImage","backgroundColor","opacity"],n=e.effects.setMode(a,t.mode||"show"),r={backgroundColor:a.css("backgroundColor")};"hide"===n&&(r.opacity=0),e.effects.save(a,s),a.show().css({backgroundImage:"none",backgroundColor:t.color||"#ffff99"}).animate(r,{queue:!1,duration:t.duration,easing:t.easing,complete:function(){"hide"===n&&a.hide(),e.effects.restore(a,s),i()}})}})(jQuery);(function(e){e.effects.effect.pulsate=function(t,i){var a,s=e(this),n=e.effects.setMode(s,t.mode||"show"),r="show"===n,o="hide"===n,h=r||"hide"===n,l=2*(t.times||5)+(h?1:0),u=t.duration/l,d=0,c=s.queue(),p=c.length;for((r||!s.is(":visible"))&&(s.css("opacity",0).show(),d=1),a=1;l>a;a++)s.animate({opacity:d},u,t.easing),d=1-d;s.animate({opacity:d},u,t.easing),s.queue(function(){o&&s.hide(),i()}),p>1&&c.splice.apply(c,[1,0].concat(c.splice(p,l+1))),s.dequeue()}})(jQuery);(function(e){e.effects.effect.puff=function(t,i){var a=e(this),s=e.effects.setMode(a,t.mode||"hide"),r="hide"===s,n=parseInt(t.percent,10)||150,o=n/100,h={height:a.height(),width:a.width(),outerHeight:a.outerHeight(),outerWidth:a.outerWidth()};e.extend(t,{effect:"scale",queue:!1,fade:!0,mode:s,complete:i,percent:r?n:100,from:r?h:{height:h.height*o,width:h.width*o,outerHeight:h.outerHeight*o,outerWidth:h.outerWidth*o}}),a.effect(t)},e.effects.effect.scale=function(t,i){var a=e(this),s=e.extend(!0,{},t),r=e.effects.setMode(a,t.mode||"effect"),n=parseInt(t.percent,10)||(0===parseInt(t.percent,10)?0:"hide"===r?0:100),o=t.direction||"both",h=t.origin,l={height:a.height(),width:a.width(),outerHeight:a.outerHeight(),outerWidth:a.outerWidth()},u={y:"horizontal"!==o?n/100:1,x:"vertical"!==o?n/100:1};s.effect="size",s.queue=!1,s.complete=i,"effect"!==r&&(s.origin=h||["middle","center"],s.restore=!0),s.from=t.from||("show"===r?{height:0,width:0,outerHeight:0,outerWidth:0}:l),s.to={height:l.height*u.y,width:l.width*u.x,outerHeight:l.outerHeight*u.y,outerWidth:l.outerWidth*u.x},s.fade&&("show"===r&&(s.from.opacity=0,s.to.opacity=1),"hide"===r&&(s.from.opacity=1,s.to.opacity=0)),a.effect(s)},e.effects.effect.size=function(t,i){var a,s,r,n=e(this),o=["position","top","bottom","left","right","width","height","overflow","opacity"],h=["position","top","bottom","left","right","overflow","opacity"],l=["width","height","overflow"],u=["fontSize"],d=["borderTopWidth","borderBottomWidth","paddingTop","paddingBottom"],c=["borderLeftWidth","borderRightWidth","paddingLeft","paddingRight"],p=e.effects.setMode(n,t.mode||"effect"),m=t.restore||"effect"!==p,f=t.scale||"both",g=t.origin||["middle","center"],y=n.css("position"),v=m?o:h,b={height:0,width:0,outerHeight:0,outerWidth:0};"show"===p&&n.show(),a={height:n.height(),width:n.width(),outerHeight:n.outerHeight(),outerWidth:n.outerWidth()},"toggle"===t.mode&&"show"===p?(n.from=t.to||b,n.to=t.from||a):(n.from=t.from||("show"===p?b:a),n.to=t.to||("hide"===p?b:a)),r={from:{y:n.from.height/a.height,x:n.from.width/a.width},to:{y:n.to.height/a.height,x:n.to.width/a.width}},("box"===f||"both"===f)&&(r.from.y!==r.to.y&&(v=v.concat(d),n.from=e.effects.setTransition(n,d,r.from.y,n.from),n.to=e.effects.setTransition(n,d,r.to.y,n.to)),r.from.x!==r.to.x&&(v=v.concat(c),n.from=e.effects.setTransition(n,c,r.from.x,n.from),n.to=e.effects.setTransition(n,c,r.to.x,n.to))),("content"===f||"both"===f)&&r.from.y!==r.to.y&&(v=v.concat(u).concat(l),n.from=e.effects.setTransition(n,u,r.from.y,n.from),n.to=e.effects.setTransition(n,u,r.to.y,n.to)),e.effects.save(n,v),n.show(),e.effects.createWrapper(n),n.css("overflow","hidden").css(n.from),g&&(s=e.effects.getBaseline(g,a),n.from.top=(a.outerHeight-n.outerHeight())*s.y,n.from.left=(a.outerWidth-n.outerWidth())*s.x,n.to.top=(a.outerHeight-n.to.outerHeight)*s.y,n.to.left=(a.outerWidth-n.to.outerWidth)*s.x),n.css(n.from),("content"===f||"both"===f)&&(d=d.concat(["marginTop","marginBottom"]).concat(u),c=c.concat(["marginLeft","marginRight"]),l=o.concat(d).concat(c),n.find("*[width]").each(function(){var i=e(this),a={height:i.height(),width:i.width(),outerHeight:i.outerHeight(),outerWidth:i.outerWidth()};m&&e.effects.save(i,l),i.from={height:a.height*r.from.y,width:a.width*r.from.x,outerHeight:a.outerHeight*r.from.y,outerWidth:a.outerWidth*r.from.x},i.to={height:a.height*r.to.y,width:a.width*r.to.x,outerHeight:a.height*r.to.y,outerWidth:a.width*r.to.x},r.from.y!==r.to.y&&(i.from=e.effects.setTransition(i,d,r.from.y,i.from),i.to=e.effects.setTransition(i,d,r.to.y,i.to)),r.from.x!==r.to.x&&(i.from=e.effects.setTransition(i,c,r.from.x,i.from),i.to=e.effects.setTransition(i,c,r.to.x,i.to)),i.css(i.from),i.animate(i.to,t.duration,t.easing,function(){m&&e.effects.restore(i,l)})})),n.animate(n.to,{queue:!1,duration:t.duration,easing:t.easing,complete:function(){0===n.to.opacity&&n.css("opacity",n.from.opacity),"hide"===p&&n.hide(),e.effects.restore(n,v),m||("static"===y?n.css({position:"relative",top:n.to.top,left:n.to.left}):e.each(["top","left"],function(e,t){n.css(t,function(t,i){var a=parseInt(i,10),s=e?n.to.left:n.to.top;return"auto"===i?s+"px":a+s+"px"})})),e.effects.removeWrapper(n),i()}})}})(jQuery);(function(e){e.effects.effect.shake=function(t,i){var a,s=e(this),r=["position","top","bottom","left","right","height","width"],n=e.effects.setMode(s,t.mode||"effect"),o=t.direction||"left",h=t.distance||20,l=t.times||3,u=2*l+1,d=Math.round(t.duration/u),c="up"===o||"down"===o?"top":"left",p="up"===o||"left"===o,m={},f={},g={},y=s.queue(),v=y.length;for(e.effects.save(s,r),s.show(),e.effects.createWrapper(s),m[c]=(p?"-=":"+=")+h,f[c]=(p?"+=":"-=")+2*h,g[c]=(p?"-=":"+=")+2*h,s.animate(m,d,t.easing),a=1;l>a;a++)s.animate(f,d,t.easing).animate(g,d,t.easing);s.animate(f,d,t.easing).animate(m,d/2,t.easing).queue(function(){"hide"===n&&s.hide(),e.effects.restore(s,r),e.effects.removeWrapper(s),i()}),v>1&&y.splice.apply(y,[1,0].concat(y.splice(v,u+1))),s.dequeue()}})(jQuery);(function(e){e.effects.effect.slide=function(t,i){var a,s=e(this),r=["position","top","bottom","left","right","width","height"],n=e.effects.setMode(s,t.mode||"show"),o="show"===n,h=t.direction||"left",l="up"===h||"down"===h?"top":"left",u="up"===h||"left"===h,d={};e.effects.save(s,r),s.show(),a=t.distance||s["top"===l?"outerHeight":"outerWidth"](!0),e.effects.createWrapper(s).css({overflow:"hidden"}),o&&s.css(l,u?isNaN(a)?"-"+a:-a:a),d[l]=(o?u?"+=":"-=":u?"-=":"+=")+a,s.animate(d,{queue:!1,duration:t.duration,easing:t.easing,complete:function(){"hide"===n&&s.hide(),e.effects.restore(s,r),e.effects.removeWrapper(s),i()}})}})(jQuery);(function(e){e.effects.effect.transfer=function(t,i){var a=e(this),s=e(t.to),r="fixed"===s.css("position"),n=e("body"),o=r?n.scrollTop():0,h=r?n.scrollLeft():0,l=s.offset(),u={top:l.top-o,left:l.left-h,height:s.innerHeight(),width:s.innerWidth()},d=a.offset(),c=e("<div class='ui-effects-transfer'></div>").appendTo(document.body).addClass(t.className).css({top:d.top-o,left:d.left-h,height:a.innerHeight(),width:a.innerWidth(),position:r?"fixed":"absolute"}).animate(u,t.duration,t.easing,function(){c.remove(),i()})}})(jQuery);
/*! jQuery UI Accessible Datepicker extension
* Copyright 2014 Kolab Systems AG
*/
(function($, undefined) {
// references to super class methods
var __newInst           = $.datepicker._newInst;
var __updateDatepicker  = $.datepicker._updateDatepicker;
var __connectDatepicker = $.datepicker._connectDatepicker;
var __showDatepicker    = $.datepicker._showDatepicker;
var __hideDatepicker    = $.datepicker._hideDatepicker;
// "extend" singleton instance methods
$.extend($.datepicker, {
    /* Create a new instance object */
    _newInst: function(target, inline) {
        var that = this, inst = __newInst.call(this, target, inline);
        if (inst.inline) {
            // attach keyboard event handler
            inst.dpDiv.on('keydown.datepicker', '.ui-datepicker-calendar', function(event) {
                // we're only interested navigation keys
                if ($.inArray(event.keyCode, [ 13, 33, 34, 35, 36, 37, 38, 39, 40]) == -1) {
                    return;
                }
                event.stopPropagation();
                event.preventDefault();
                inst._hasfocus = true;
                var activeCell;
                switch (event.keyCode) {
                    case $.ui.keyCode.ENTER:
                        if ((activeCell = $('.' + that._dayOverClass, inst.dpDiv).get(0) || $('.' + that._currentClass, inst.dpDiv).get(0))) {
                            that._selectDay(inst.input, inst.selectedMonth, inst.selectedYear, activeCell);
                        }
                        break;
                    case $.ui.keyCode.PAGE_UP:
                        that._adjustDate(inst.input, -that._get(inst, 'stepMonths'), 'M');
                        break;
                    case $.ui.keyCode.PAGE_DOWN:
                        that._adjustDate(inst.input, that._get(inst, 'stepMonths'), 'M');
                        break;
                    default:
                        return that._cursorKeydown(event, inst);
                }
            })
            .attr('role', 'region')
            .attr('aria-labelledby', inst.id + '-dp-title');
        }
        else {
            var widgetId = inst.dpDiv.attr('id') || inst.id + '-dp-widget';
            inst.dpDiv.attr('id', widgetId)
                .attr('aria-hidden', 'true')
                .attr('aria-labelledby', inst.id + '-dp-title');
                $(inst.input).attr('aria-haspopup', 'true')
                    .attr('aria-expanded', 'false')
                    .attr('aria-owns', widgetId);
        }
        return inst;
    },
    /* Attach the date picker to an input field */
    _connectDatepicker: function(target, inst) {
        __connectDatepicker.call(this, target, inst);
        var that = this;
        // register additional keyboard events to control date selection with cursor keys
        $(target).unbind('keyup.datepicker-extended').bind('keyup.datepicker-extended', function(event) {
            var inc = 1;
            switch (event.keyCode) {
                case 109:
                case 189:  // "minus"
                    inc = -1;
                case 107:
                case 187:  // "plus"
                    that._adjustInstDate(inst, inc, 'D');
                    that._selectDate(target, that._formatDate(inst, inst.selectedDay, inst.selectedMonth, inst.selectedYear));
                    break;
                case $.ui.keyCode.UP:
                case $.ui.keyCode.DOWN:
                    // unfold datepicker if not visible
                    if ($.datepicker._lastInput !== target && !$.datepicker._isDisabledDatepicker(target)) {
                        that._showDatepicker(event);
                        event.stopPropagation();
                        event.preventDefault();
                        return false;
                    }
                default:
                    if (!$.datepicker._isDisabledDatepicker(target) && !event.ctrlKey && !event.metaKey) {
                        return that._cursorKeydown(event, inst);
                    }
            }
        })
        .attr('autocomplete', 'off');
    },
    /* Handle keyboard event on datepicker widget */
    _cursorKeydown: function(event, inst) {
        inst._keyEvent = true;
        var isRTL = inst.dpDiv.hasClass('ui-datepicker-rtl');
        switch (event.keyCode) {
            case $.ui.keyCode.LEFT:
                this._adjustDate(inst.input, (isRTL ? +1 : -1), 'D');
                break;
            case $.ui.keyCode.RIGHT:
                this._adjustDate(inst.input, (isRTL ? -1 : +1), 'D');
                break;
            case $.ui.keyCode.UP:
                this._adjustDate(inst.input, -7, 'D');
                break;
            case $.ui.keyCode.DOWN:
                this._adjustDate(inst.input, +7, 'D');
                break;
            case $.ui.keyCode.HOME:
                // TODO: jump to first of month
                break;
            case $.ui.keyCode.END:
                // TODO: jump to end of month
                break;
        }
        return true;
    },
    /* Pop-up the date picker for a given input field */
    _showDatepicker: function(input) {
        input = input.target || input;
        __showDatepicker.call(this, input);
        var inst = $.datepicker._getInst(input);
        if (inst && $.datepicker._datepickerShowing) {
            inst.dpDiv.attr('aria-hidden', 'false');
            $(input).attr('aria-expanded', 'true');
        }
    },
    /* Hide the date picker from view */
    _hideDatepicker: function(input) {
        __hideDatepicker.call(this, input);
        var inst = this._curInst;;
        if (inst && !$.datepicker._datepickerShowing) {
            inst.dpDiv.attr('aria-hidden', 'true');
            $(inst.input).attr('aria-expanded', 'false');
        }
    },
    /* Render the date picker content */
    _updateDatepicker: function(inst) {
        __updateDatepicker.call(this, inst);
        var activeCell = $('.' + this._dayOverClass, inst.dpDiv).get(0) || $('.' + this._currentClass, inst.dpDiv).get(0);
        if (activeCell) {
            activeCell = $(activeCell);
            activeCell.attr('id', inst.id + '-day-' + activeCell.text());
        }
        // allow focus on main container only
        inst.dpDiv.find('.ui-datepicker-calendar')
            .attr('tabindex', inst.inline ? '0' : '-1')
            .attr('role', 'grid')
            .attr('aria-readonly', 'true')
            .attr('aria-activedescendant', activeCell ? activeCell.attr('id') : '')
            .find('td').attr('role', 'gridcell').attr('aria-selected', 'false')
            .find('a').attr('tabindex', '-1');
        $('.ui-datepicker-current-day', inst.dpDiv).attr('aria-selected', 'true');
        inst.dpDiv.find('.ui-datepicker-title')
            .attr('id', inst.id + '-dp-title')
        // set focus again after update
        if (inst._hasfocus) {
            inst.dpDiv.find('.ui-datepicker-calendar').focus();
            inst._hasfocus = false;
        }
    }
});
}(jQuery));
plugins/jqueryui/js/jquery-ui-1.9.2.custom.min.js
File was deleted
plugins/jqueryui/js/jquery-ui-accessible-datepicker.js
New file
@@ -0,0 +1,214 @@
/*! jQuery UI Accessible Datepicker extension
* (to be appended to jquery-ui-*.custom.min.js)
*
* @licstart The following is the entire license notice for the
*  JavaScript code in this page.
*
* Copyright 2014 Kolab Systems AG
*
* The JavaScript code in this page is free software: you can
* redistribute it and/or modify it under the terms of the GNU
* General Public License (GNU GPL) as published by the Free Software
* Foundation, either version 3 of the License, or (at your option)
* any later version.  The code is distributed WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE.  See the GNU GPL for more details.
*
* As additional permission under GNU GPL version 3 section 7, you
* may distribute non-source (e.g., minimized or compacted) forms of
* that code without the copy of the GNU GPL normally required by
* section 4, provided you include this license notice and a URL
* through which recipients can access the Corresponding Source.
*
* @licend The above is the entire license notice
*  for the JavaScript code in this page.
*/
(function($, undefined) {
// references to super class methods
var __newInst           = $.datepicker._newInst;
var __updateDatepicker  = $.datepicker._updateDatepicker;
var __connectDatepicker = $.datepicker._connectDatepicker;
var __showDatepicker    = $.datepicker._showDatepicker;
var __hideDatepicker    = $.datepicker._hideDatepicker;
// "extend" singleton instance methods
$.extend($.datepicker, {
    /* Create a new instance object */
    _newInst: function(target, inline) {
        var that = this, inst = __newInst.call(this, target, inline);
        if (inst.inline) {
            // attach keyboard event handler
            inst.dpDiv.on('keydown.datepicker', '.ui-datepicker-calendar', function(event) {
                // we're only interested navigation keys
                if ($.inArray(event.keyCode, [ 13, 33, 34, 35, 36, 37, 38, 39, 40]) == -1) {
                    return;
                }
                event.stopPropagation();
                event.preventDefault();
                inst._hasfocus = true;
                var activeCell;
                switch (event.keyCode) {
                    case $.ui.keyCode.ENTER:
                        if ((activeCell = $('.' + that._dayOverClass, inst.dpDiv).get(0) || $('.' + that._currentClass, inst.dpDiv).get(0))) {
                            that._selectDay(inst.input, inst.selectedMonth, inst.selectedYear, activeCell);
                        }
                        break;
                    case $.ui.keyCode.PAGE_UP:
                        that._adjustDate(inst.input, -that._get(inst, 'stepMonths'), 'M');
                        break;
                    case $.ui.keyCode.PAGE_DOWN:
                        that._adjustDate(inst.input, that._get(inst, 'stepMonths'), 'M');
                        break;
                    default:
                        return that._cursorKeydown(event, inst);
                }
            })
            .attr('role', 'region')
            .attr('aria-labelledby', inst.id + '-dp-title');
        }
        else {
            var widgetId = inst.dpDiv.attr('id') || inst.id + '-dp-widget';
            inst.dpDiv.attr('id', widgetId)
                .attr('aria-hidden', 'true')
                .attr('aria-labelledby', inst.id + '-dp-title');
                $(inst.input).attr('aria-haspopup', 'true')
                    .attr('aria-expanded', 'false')
                    .attr('aria-owns', widgetId);
        }
        return inst;
    },
    /* Attach the date picker to an input field */
    _connectDatepicker: function(target, inst) {
        __connectDatepicker.call(this, target, inst);
        var that = this;
        // register additional keyboard events to control date selection with cursor keys
        $(target).unbind('keyup.datepicker-extended').bind('keyup.datepicker-extended', function(event) {
            var inc = 1;
            switch (event.keyCode) {
                case 109:
                case 189:  // "minus"
                    inc = -1;
                case 107:
                case 187:  // "plus"
                    that._adjustInstDate(inst, inc, 'D');
                    that._selectDate(target, that._formatDate(inst, inst.selectedDay, inst.selectedMonth, inst.selectedYear));
                    break;
                case $.ui.keyCode.UP:
                case $.ui.keyCode.DOWN:
                    // unfold datepicker if not visible
                    if ($.datepicker._lastInput !== target && !$.datepicker._isDisabledDatepicker(target)) {
                        that._showDatepicker(event);
                        event.stopPropagation();
                        event.preventDefault();
                        return false;
                    }
                default:
                    if (!$.datepicker._isDisabledDatepicker(target) && !event.ctrlKey && !event.metaKey) {
                        return that._cursorKeydown(event, inst);
                    }
            }
        })
        .attr('autocomplete', 'off');
    },
    /* Handle keyboard event on datepicker widget */
    _cursorKeydown: function(event, inst) {
        inst._keyEvent = true;
        var isRTL = inst.dpDiv.hasClass('ui-datepicker-rtl');
        switch (event.keyCode) {
            case $.ui.keyCode.LEFT:
                this._adjustDate(inst.input, (isRTL ? +1 : -1), 'D');
                break;
            case $.ui.keyCode.RIGHT:
                this._adjustDate(inst.input, (isRTL ? -1 : +1), 'D');
                break;
            case $.ui.keyCode.UP:
                this._adjustDate(inst.input, -7, 'D');
                break;
            case $.ui.keyCode.DOWN:
                this._adjustDate(inst.input, +7, 'D');
                break;
            case $.ui.keyCode.HOME:
                // TODO: jump to first of month
                break;
            case $.ui.keyCode.END:
                // TODO: jump to end of month
                break;
        }
        return true;
    },
    /* Pop-up the date picker for a given input field */
    _showDatepicker: function(input) {
        input = input.target || input;
        __showDatepicker.call(this, input);
        var inst = $.datepicker._getInst(input);
        if (inst && $.datepicker._datepickerShowing) {
            inst.dpDiv.attr('aria-hidden', 'false');
            $(input).attr('aria-expanded', 'true');
        }
    },
    /* Hide the date picker from view */
    _hideDatepicker: function(input) {
        __hideDatepicker.call(this, input);
        var inst = this._curInst;;
        if (inst && !$.datepicker._datepickerShowing) {
            inst.dpDiv.attr('aria-hidden', 'true');
            $(inst.input).attr('aria-expanded', 'false');
        }
    },
    /* Render the date picker content */
    _updateDatepicker: function(inst) {
        __updateDatepicker.call(this, inst);
        var activeCell = $('.' + this._dayOverClass, inst.dpDiv).get(0) || $('.' + this._currentClass, inst.dpDiv).get(0);
        if (activeCell) {
            activeCell = $(activeCell);
            activeCell.attr('id', inst.id + '-day-' + activeCell.text());
        }
        // allow focus on main container only
        inst.dpDiv.find('.ui-datepicker-calendar')
            .attr('tabindex', inst.inline ? '0' : '-1')
            .attr('role', 'grid')
            .attr('aria-readonly', 'true')
            .attr('aria-activedescendant', activeCell ? activeCell.attr('id') : '')
            .find('td').attr('role', 'gridcell').attr('aria-selected', 'false')
            .find('a').attr('tabindex', '-1');
        $('.ui-datepicker-current-day', inst.dpDiv).attr('aria-selected', 'true');
        inst.dpDiv.find('.ui-datepicker-title')
            .attr('id', inst.id + '-dp-title')
        // set focus again after update
        if (inst._hasfocus) {
            inst.dpDiv.find('.ui-datepicker-calendar').focus();
            inst._hasfocus = false;
        }
    }
});
}(jQuery));
plugins/jqueryui/package.xml
File was deleted
plugins/jqueryui/themes/classic/images/animated-overlay.gif
plugins/jqueryui/themes/classic/jquery-ui-1.10.4.custom.css
New file
@@ -0,0 +1,1223 @@
/*! jQuery UI - v1.10.4 - 2014-06-17
* http://jqueryui.com
* Includes: jquery.ui.core.css, jquery.ui.resizable.css, jquery.ui.selectable.css, jquery.ui.accordion.css, jquery.ui.autocomplete.css, jquery.ui.button.css, jquery.ui.datepicker.css, jquery.ui.dialog.css, jquery.ui.menu.css, jquery.ui.progressbar.css, jquery.ui.slider.css, jquery.ui.spinner.css, jquery.ui.tabs.css, jquery.ui.tooltip.css, jquery.ui.theme.css
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Lucida%20Grande%2C%20Verdana%2C%20Arial%2C%20Helvetica%2C%20sans-serif&fwDefault=normal&fsDefault=1em&cornerRadius=0&bgColorHeader=f4f4f4&bgTextureHeader=highlight_hard&bgImgOpacityHeader=90&borderColorHeader=999999&fcHeader=333333&iconColorHeader=333333&bgColorContent=ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=000000&iconColorContent=000000&bgColorDefault=e6e6e7&bgTextureDefault=highlight_hard&bgImgOpacityDefault=90&borderColorDefault=aaaaaa&fcDefault=000000&iconColorDefault=666666&bgColorHover=e6e6e7&bgTextureHover=highlight_hard&bgImgOpacityHover=90&borderColorHover=999999&fcHover=000000&iconColorHover=333333&bgColorActive=a3a3a3&bgTextureActive=highlight_hard&bgImgOpacityActive=90&borderColorActive=a4a4a4&fcActive=000000&iconColorActive=333333&bgColorHighlight=cc3333&bgTextureHighlight=flat&bgImgOpacityHighlight=90&borderColorHighlight=cc3333&fcHighlight=ffffff&iconColorHighlight=dddddd&bgColorError=fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=cc3333&fcError=cc3333&iconColorError=cc3333&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=35&thicknessShadow=6px&offsetTopShadow=-6px&offsetLeftShadow=-6px&cornerRadiusShadow=6px&ctl=themeroller
* Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */
/* Layout helpers
----------------------------------*/
.ui-helper-hidden {
    display: none;
}
.ui-helper-hidden-accessible {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}
.ui-helper-reset {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    line-height: 1.3;
    text-decoration: none;
    font-size: 100%;
    list-style: none;
}
.ui-helper-clearfix:before,
.ui-helper-clearfix:after {
    content: "";
    display: table;
    border-collapse: collapse;
}
.ui-helper-clearfix:after {
    clear: both;
}
.ui-helper-clearfix {
    min-height: 0; /* support: IE7 */
}
.ui-helper-zfix {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    opacity: 0;
    filter:Alpha(Opacity=0);
}
.ui-front {
    z-index: 100;
}
/* Interaction Cues
----------------------------------*/
.ui-state-disabled {
    cursor: default !important;
}
/* Icons
----------------------------------*/
/* states and images */
.ui-icon {
    display: block;
    text-indent: -99999px;
    overflow: hidden;
    background-repeat: no-repeat;
}
/* Misc visuals
----------------------------------*/
/* Overlays */
.ui-widget-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.ui-resizable {
    position: relative;
}
.ui-resizable-handle {
    position: absolute;
    font-size: 0.1px;
    display: block;
}
.ui-resizable-disabled .ui-resizable-handle,
.ui-resizable-autohide .ui-resizable-handle {
    display: none;
}
.ui-resizable-n {
    cursor: n-resize;
    height: 7px;
    width: 100%;
    top: -5px;
    left: 0;
}
.ui-resizable-s {
    cursor: s-resize;
    height: 7px;
    width: 100%;
    bottom: -5px;
    left: 0;
}
.ui-resizable-e {
    cursor: e-resize;
    width: 7px;
    right: -5px;
    top: 0;
    height: 100%;
}
.ui-resizable-w {
    cursor: w-resize;
    width: 7px;
    left: -5px;
    top: 0;
    height: 100%;
}
.ui-resizable-se {
    cursor: se-resize;
    width: 12px;
    height: 12px;
    right: 1px;
    bottom: 1px;
}
.ui-resizable-sw {
    cursor: sw-resize;
    width: 9px;
    height: 9px;
    left: -5px;
    bottom: -5px;
}
.ui-resizable-nw {
    cursor: nw-resize;
    width: 9px;
    height: 9px;
    left: -5px;
    top: -5px;
}
.ui-resizable-ne {
    cursor: ne-resize;
    width: 9px;
    height: 9px;
    right: -5px;
    top: -5px;
}
.ui-selectable-helper {
    position: absolute;
    z-index: 100;
    border: 1px dotted black;
}
.ui-accordion .ui-accordion-header {
    display: block;
    cursor: pointer;
    position: relative;
    margin-top: 2px;
    padding: .5em .5em .5em .7em;
    min-height: 0; /* support: IE7 */
}
.ui-accordion .ui-accordion-icons {
    padding-left: 2.2em;
}
.ui-accordion .ui-accordion-noicons {
    padding-left: .7em;
}
.ui-accordion .ui-accordion-icons .ui-accordion-icons {
    padding-left: 2.2em;
}
.ui-accordion .ui-accordion-header .ui-accordion-header-icon {
    position: absolute;
    left: .5em;
    top: 50%;
    margin-top: -8px;
}
.ui-accordion .ui-accordion-content {
    padding: 1em 2.2em;
    border-top: 0;
    overflow: auto;
}
.ui-autocomplete {
    position: absolute;
    top: 0;
    left: 0;
    cursor: default;
}
.ui-button {
    display: inline-block;
    position: relative;
    padding: 0;
    line-height: normal;
    margin-right: .1em;
    cursor: pointer;
    vertical-align: middle;
    text-align: center;
    overflow: visible; /* removes extra width in IE */
}
.ui-button,
.ui-button:link,
.ui-button:visited,
.ui-button:hover,
.ui-button:active {
    text-decoration: none;
}
/* to make room for the icon, a width needs to be set here */
.ui-button-icon-only {
    width: 2.2em;
}
/* button elements seem to need a little more width */
button.ui-button-icon-only {
    width: 2.4em;
}
.ui-button-icons-only {
    width: 3.4em;
}
button.ui-button-icons-only {
    width: 3.7em;
}
button.ui-button-text-only,
a.ui-button-text-only {
    background-image: url("images/buttongradient.png") !important;
}
/* button text element */
.ui-button .ui-button-text {
    display: block;
    line-height: normal;
}
.ui-button-text-only .ui-button-text {
    padding: .3em 1em;
}
.ui-button-icon-only .ui-button-text,
.ui-button-icons-only .ui-button-text {
    padding: .4em;
    text-indent: -9999999px;
}
.ui-button-text-icon-primary .ui-button-text,
.ui-button-text-icons .ui-button-text {
    padding: .4em 1em .4em 2.1em;
}
.ui-button-text-icon-secondary .ui-button-text,
.ui-button-text-icons .ui-button-text {
    padding: .4em 2.1em .4em 1em;
}
.ui-button-text-icons .ui-button-text {
    padding-left: 2.1em;
    padding-right: 2.1em;
}
/* no icon support for input elements, provide padding by default */
input.ui-button {
    padding: .4em 1em;
}
/* button icon element(s) */
.ui-button-icon-only .ui-icon,
.ui-button-text-icon-primary .ui-icon,
.ui-button-text-icon-secondary .ui-icon,
.ui-button-text-icons .ui-icon,
.ui-button-icons-only .ui-icon {
    position: absolute;
    top: 50%;
    margin-top: -8px;
}
.ui-button-icon-only .ui-icon {
    left: 50%;
    margin-left: -8px;
}
.ui-button-text-icon-primary .ui-button-icon-primary,
.ui-button-text-icons .ui-button-icon-primary,
.ui-button-icons-only .ui-button-icon-primary {
    left: .5em;
}
.ui-button-text-icon-secondary .ui-button-icon-secondary,
.ui-button-text-icons .ui-button-icon-secondary,
.ui-button-icons-only .ui-button-icon-secondary {
    right: .5em;
}
/* button sets */
.ui-buttonset {
    margin-right: 7px;
}
.ui-buttonset .ui-button {
    margin-left: 0;
    margin-right: -.3em;
}
/* workarounds */
/* reset extra padding in Firefox, see h5bp.com/l */
input.ui-button::-moz-focus-inner,
button.ui-button::-moz-focus-inner {
    border: 0;
    padding: 0;
}
.ui-datepicker {
    width: 17em;
    padding: .2em .2em 0;
    display: none;
    box-shadow: 1px 1px 18px #999;
    -moz-box-shadow: 1px 1px 12px #999;
    -webkit-box-shadow: #999 1px 1px 12px;
}
.ui-datepicker .ui-datepicker-header {
    position: relative;
    padding: .2em 0;
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
    position: absolute;
    top: 2px;
    width: 1.8em;
    height: 1.8em;
}
.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
    top: 1px;
}
.ui-datepicker .ui-datepicker-prev {
    left: 2px;
}
.ui-datepicker .ui-datepicker-next {
    right: 2px;
}
.ui-datepicker .ui-datepicker-prev-hover {
    left: 1px;
}
.ui-datepicker .ui-datepicker-next-hover {
    right: 1px;
}
.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
    display: block;
    position: absolute;
    left: 50%;
    margin-left: -8px;
    top: 50%;
    margin-top: -8px;
}
.ui-datepicker .ui-datepicker-title {
    margin: 0 2.3em;
    line-height: 1.8em;
    text-align: center;
}
.ui-datepicker .ui-datepicker-title select {
    font-size: 1em;
    margin: 1px 0;
}
.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
    width: 49%;
}
.ui-datepicker table {
    width: 100%;
    font-size: .9em;
    border-collapse: collapse;
    margin: 0 0 .4em;
}
.ui-datepicker th {
    padding: .7em .3em;
    text-align: center;
    font-weight: bold;
    border: 0;
}
.ui-datepicker td {
    border: 0;
    padding: 1px;
}
.ui-datepicker td span,
.ui-datepicker td a {
    display: block;
    padding: .2em;
    text-align: right;
    text-decoration: none;
}
.ui-datepicker td.ui-datepicker-current-day .ui-state-active {
    background:#c33;
    border-color:#a22;
    color:#fff;
}
.ui-datepicker .ui-datepicker-buttonpane {
    background-image: none;
    margin: .7em 0 0 0;
    padding: 0 .2em;
    border-left: 0;
    border-right: 0;
    border-bottom: 0;
}
.ui-datepicker .ui-datepicker-buttonpane button {
    float: right;
    margin: .5em .2em .4em;
    cursor: default;
    padding: .2em .6em .3em .6em;
    width: auto;
    overflow: visible;
}
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
    float: left;
}
/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi {
    width: auto;
}
.ui-datepicker-multi .ui-datepicker-group {
    float: left;
}
.ui-datepicker-multi .ui-datepicker-group table {
    width: 95%;
    margin: 0 auto .4em;
}
.ui-datepicker-multi-2 .ui-datepicker-group {
    width: 50%;
}
.ui-datepicker-multi-3 .ui-datepicker-group {
    width: 33.3%;
}
.ui-datepicker-multi-4 .ui-datepicker-group {
    width: 25%;
}
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
    border-left-width: 0;
}
.ui-datepicker-multi .ui-datepicker-buttonpane {
    clear: left;
}
.ui-datepicker-row-break {
    clear: both;
    width: 100%;
    font-size: 0;
}
/* RTL support */
.ui-datepicker-rtl {
    direction: rtl;
}
.ui-datepicker-rtl .ui-datepicker-prev {
    right: 2px;
    left: auto;
}
.ui-datepicker-rtl .ui-datepicker-next {
    left: 2px;
    right: auto;
}
.ui-datepicker-rtl .ui-datepicker-prev:hover {
    right: 1px;
    left: auto;
}
.ui-datepicker-rtl .ui-datepicker-next:hover {
    left: 1px;
    right: auto;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane {
    clear: right;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane button {
    float: left;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
.ui-datepicker-rtl .ui-datepicker-group {
    float: right;
}
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
    border-right-width: 0;
    border-left-width: 1px;
}
.ui-dialog {
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    padding: .2em;
    outline: 0;
    -webkit-box-shadow: #999 1px 1px 12px;
    -moz-box-shadow: 1px 1px 12px #999;
    box-shadow: 1px 1px 18px #999;
}
.ui-dialog .ui-dialog-titlebar {
    padding: .4em 1em;
    position: relative;
}
.ui-dialog .ui-dialog-title {
    float: left;
    margin: .1em 0;
    white-space: nowrap;
    width: 90%;
    overflow: hidden;
    text-overflow: ellipsis;
}
.ui-dialog .ui-dialog-titlebar-close {
    position: absolute;
    right: .3em;
    top: 50%;
    width: 20px;
    margin: -10px 0 0 0;
    padding: 1px;
    height: 20px;
}
.no-close .ui-dialog-titlebar-close {
    display: none !important;
}
.ui-dialog .ui-dialog-content {
    position: relative;
    border: 0;
    padding: .5em 1em;
    background: none;
    overflow: auto;
}
.ui-dialog .ui-dialog-buttonpane {
    text-align: left;
    border-width: 1px 0 0 0;
    background-image: none;
    margin-top: .5em;
    padding: .3em 1em .5em .4em;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
    float: right;
}
.ui-dialog .ui-dialog-buttonpane button {
    margin: .5em .4em .5em 0;
    cursor: default;
}
.ui-dialog .ui-resizable-se {
    width: 12px;
    height: 12px;
    right: -5px;
    bottom: -5px;
    background-position: 16px 16px;
}
.ui-draggable .ui-dialog-titlebar {
    cursor: move;
}
.ui-menu {
    list-style: none;
    padding: 2px;
    margin: 0;
    display: block;
    outline: none;
    -webkit-box-shadow: #999 1px 1px 12px;
    -moz-box-shadow: 1px 1px 12px #999;
    box-shadow: 1px 1px 18px #999;
}
.ui-menu .ui-menu {
    margin-top: -3px;
    position: absolute;
}
.ui-menu .ui-menu-item {
    margin: 0;
    padding: 0;
    width: 100%;
    /* support: IE10, see #8844 */
    list-style-image: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);
}
.ui-menu .ui-menu-divider {
    margin: 5px -2px 5px -2px;
    height: 0;
    font-size: 0;
    line-height: 0;
    border-width: 1px 0 0 0;
}
.ui-menu .ui-menu-item a {
    text-decoration: none;
    display: block;
    padding: 2px .4em;
    line-height: 1.5;
    min-height: 0; /* support: IE7 */
    font-weight: normal;
}
.ui-menu .ui-menu-item a.ui-state-focus,
.ui-menu .ui-menu-item a.ui-state-active {
    font-weight: normal;
    margin: -1px;
    background: #c33;
    border-color: #a22;
    color: #fff;
}
.ui-menu .ui-state-disabled {
    font-weight: normal;
    margin: .4em 0 .2em;
    line-height: 1.5;
}
.ui-menu .ui-state-disabled a {
    cursor: default;
}
/* icon support */
.ui-menu-icons {
    position: relative;
}
.ui-menu-icons .ui-menu-item a {
    position: relative;
    padding-left: 2em;
}
/* left-aligned */
.ui-menu .ui-icon {
    position: absolute;
    top: .2em;
    left: .2em;
}
/* right-aligned */
.ui-menu .ui-menu-icon {
    position: static;
    float: right;
}
.ui-progressbar {
    height: 2em;
    text-align: left;
    overflow: hidden;
}
.ui-progressbar .ui-progressbar-value {
    margin: -1px;
    height: 100%;
}
.ui-progressbar .ui-progressbar-overlay {
    background: url("images/animated-overlay.gif");
    height: 100%;
    filter: alpha(opacity=25);
    opacity: 0.25;
}
.ui-progressbar-indeterminate .ui-progressbar-value {
    background-image: none;
}
.ui-slider {
    position: relative;
    text-align: left;
}
.ui-slider .ui-slider-handle {
    position: absolute;
    z-index: 2;
    width: 1.2em;
    height: 1.2em;
    cursor: default;
}
.ui-slider .ui-slider-range {
    position: absolute;
    z-index: 1;
    font-size: .7em;
    display: block;
    border: 0;
    background-position: 0 0;
}
/* For IE8 - See #6727 */
.ui-slider.ui-state-disabled .ui-slider-handle,
.ui-slider.ui-state-disabled .ui-slider-range {
    filter: inherit;
}
.ui-slider-horizontal {
    height: .8em;
}
.ui-slider-horizontal .ui-slider-handle {
    top: -.3em;
    margin-left: -.6em;
}
.ui-slider-horizontal .ui-slider-range {
    top: 0;
    height: 100%;
}
.ui-slider-horizontal .ui-slider-range-min {
    left: 0;
}
.ui-slider-horizontal .ui-slider-range-max {
    right: 0;
}
.ui-slider-vertical {
    width: .8em;
    height: 100px;
}
.ui-slider-vertical .ui-slider-handle {
    left: -.3em;
    margin-left: 0;
    margin-bottom: -.6em;
}
.ui-slider-vertical .ui-slider-range {
    left: 0;
    width: 100%;
}
.ui-slider-vertical .ui-slider-range-min {
    bottom: 0;
}
.ui-slider-vertical .ui-slider-range-max {
    top: 0;
}
.ui-spinner {
    position: relative;
    display: inline-block;
    overflow: hidden;
    padding: 0;
    vertical-align: middle;
}
.ui-spinner-input {
    border: none;
    background: none;
    color: inherit;
    padding: 0;
    margin: .2em 0;
    vertical-align: middle;
    margin-left: .4em;
    margin-right: 22px;
}
.ui-spinner-button {
    width: 16px;
    height: 50%;
    font-size: .5em;
    padding: 0;
    margin: 0;
    text-align: center;
    position: absolute;
    cursor: default;
    display: block;
    overflow: hidden;
    right: 0;
}
/* more specificity required here to override default borders */
.ui-spinner a.ui-spinner-button {
    border-top: none;
    border-bottom: none;
    border-right: none;
}
/* vertically center icon */
.ui-spinner .ui-icon {
    position: absolute;
    margin-top: -8px;
    top: 50%;
    left: 0;
}
.ui-spinner-up {
    top: 0;
}
.ui-spinner-down {
    bottom: 0;
}
/* TR overrides */
.ui-spinner .ui-icon-triangle-1-s {
    /* need to fix icons sprite */
    background-position: -65px -16px;
}
.ui-tabs {
    position: relative;/* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
    padding: .2em;
}
.ui-tabs .ui-tabs-nav {
    margin: 0;
    padding: .2em .2em 0;
}
.ui-tabs .ui-tabs-nav li {
    list-style: none;
    float: left;
    position: relative;
    top: 0;
    margin: 0;
    border-bottom-width: 0;
    padding: 0;
    white-space: nowrap;
    -webkit-border-top-left-radius: 2px;
    -moz-border-radius-topleft: 2px;
    border-top-left-radius: 2px;
    -webkit-border-top-right-radius: 2px;
    -moz-border-radius-topright: 2px;
    border-top-right-radius: 2px;
}
.ui-tabs .ui-tabs-nav .ui-tabs-anchor {
    float: left;
    padding: .3em 1em;
    text-decoration: none;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-active {
    margin-bottom: -1px;
    padding-bottom: 1px;
}
.ui-dialog .ui-tabs-nav li.ui-tabs-active {
    background: #fff;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor {
    cursor: text;
}
.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor {
    cursor: pointer;
}
.ui-tabs .ui-tabs-panel {
    display: block;
    border-width: 0;
    padding: 1em 1.4em;
    background: none;
}
.ui-tooltip {
    padding: 8px;
    position: absolute;
    z-index: 9999;
    max-width: 300px;
    -webkit-box-shadow: 0 0 5px #aaa;
    box-shadow: 0 0 5px #aaa;
}
body .ui-tooltip {
    border-width: 2px;
}
/* Component containers
----------------------------------*/
.ui-widget {
    font-family: Lucida Grande, Verdana, Arial, Helvetica, sans-serif;
    font-size: 1em;
}
.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, Helvetica, sans-serif;
    font-size: 1em;
}
.ui-widget-content {
    border: 1px solid #aaaaaa;
    background: #ffffff url("images/ui-bg_flat_75_ffffff_40x100.png") 50% 50% repeat-x;
    color: #000000;
}
.ui-widget-content a {
    color: #000000;
}
.ui-widget-header {
    border: 1px solid #999999;
    border-width: 0 0 1px 0;
    background: #f4f4f4 url("images/listheader.png") 50% 50% repeat;
    color: #333333;
    font-weight: bold;
    margin: -0.2em -0.2em 0 -0.2em;
}
.ui-widget-header a {
    color: #333333;
}
/* Interaction states
----------------------------------*/
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
    border: 1px solid #aaaaaa;
    background: #e6e6e7 url("images/ui-bg_highlight-hard_90_e6e6e7_1x100.png") 50% 50% repeat-x;
    font-weight: normal;
    color: #000000;
}
.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited {
    color: #000000;
    text-decoration: none;
}
.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus {
    border: 1px solid #999999;
    background: #e6e6e7 url("images/ui-bg_highlight-hard_90_e6e6e7_1x100.png") 50% 50% repeat-x;
    font-weight: normal;
    color: #000000;
}
.ui-state-focus,
.ui-widget-content .ui-state-focus {
    border: 1px solid #c33;
    color: #a00;
}
.ui-tabs-nav .ui-state-focus {
    border: 1px solid #a4a4a4;
    color: #000;
}
.ui-state-hover a,
.ui-state-hover a:hover,
.ui-state-hover a:link,
.ui-state-hover a:visited,
.ui-state-focus a,
.ui-state-focus a:hover,
.ui-state-focus a:link,
.ui-state-focus a:visited {
    color: #000000;
    text-decoration: none;
}
.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active {
    border: 1px solid #a4a4a4;
    background: #a3a3a3 url("images/ui-bg_highlight-hard_90_a3a3a3_1x100.png") 50% 50% repeat-x;
    font-weight: normal;
    color: #000000;
}
.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
    color: #000000;
    text-decoration: none;
}
/* Interaction Cues
----------------------------------*/
.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
    border: 1px solid #cc3333;
    background: #cc3333 url("images/ui-bg_flat_90_cc3333_40x100.png") 50% 50% repeat-x;
    color: #ffffff;
}
.ui-state-highlight a,
.ui-widget-content .ui-state-highlight a,
.ui-widget-header .ui-state-highlight a {
    color: #ffffff;
}
.ui-state-error,
.ui-widget-content .ui-state-error,
.ui-widget-header .ui-state-error {
    border: 1px solid #cc3333;
    background: #fef1ec url("images/ui-bg_glass_95_fef1ec_1x400.png") 50% 50% repeat-x;
    color: #cc3333;
}
.ui-state-error a,
.ui-widget-content .ui-state-error a,
.ui-widget-header .ui-state-error a {
    color: #cc3333;
}
.ui-state-error-text,
.ui-widget-content .ui-state-error-text,
.ui-widget-header .ui-state-error-text {
    color: #cc3333;
}
.ui-priority-primary,
.ui-widget-content .ui-priority-primary,
.ui-widget-header .ui-priority-primary {
    font-weight: bold;
}
.ui-priority-secondary,
.ui-widget-content .ui-priority-secondary,
.ui-widget-header .ui-priority-secondary {
    opacity: .6;
    filter:Alpha(Opacity=60);
    font-weight: normal;
}
.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
    opacity: .35;
    filter:Alpha(Opacity=35);
    background-image: none;
}
.ui-state-disabled .ui-icon {
    filter:Alpha(Opacity=35); /* For IE8 - See #6059 */
}
/* Icons
----------------------------------*/
/* states and images */
.ui-icon {
    width: 16px;
    height: 16px;
}
.ui-icon,
.ui-widget-content .ui-icon {
    background-image: url("images/ui-icons_000000_256x240.png");
}
.ui-widget-header .ui-icon {
    background-image: url("images/ui-icons_333333_256x240.png");
}
.ui-state-default .ui-icon {
    background-image: url("images/ui-icons_666666_256x240.png");
}
.ui-state-hover .ui-icon,
.ui-state-focus .ui-icon {
    background-image: url("images/ui-icons_333333_256x240.png");
}
.ui-state-active .ui-icon {
    background-image: url("images/ui-icons_333333_256x240.png");
}
.ui-state-highlight .ui-icon {
    background-image: url("images/ui-icons_dddddd_256x240.png");
}
.ui-state-error .ui-icon,
.ui-state-error-text .ui-icon {
    background-image: url("images/ui-icons_cc3333_256x240.png");
}
/* positioning */
.ui-icon-blank { background-position: 16px 16px; }
.ui-icon-carat-1-n { background-position: 0 0; }
.ui-icon-carat-1-ne { background-position: -16px 0; }
.ui-icon-carat-1-e { background-position: -32px 0; }
.ui-icon-carat-1-se { background-position: -48px 0; }
.ui-icon-carat-1-s { background-position: -64px 0; }
.ui-icon-carat-1-sw { background-position: -80px 0; }
.ui-icon-carat-1-w { background-position: -96px 0; }
.ui-icon-carat-1-nw { background-position: -112px 0; }
.ui-icon-carat-2-n-s { background-position: -128px 0; }
.ui-icon-carat-2-e-w { background-position: -144px 0; }
.ui-icon-triangle-1-n { background-position: 0 -16px; }
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
.ui-icon-triangle-1-e { background-position: -32px -16px; }
.ui-icon-triangle-1-se { background-position: -48px -16px; }
.ui-icon-triangle-1-s { background-position: -64px -16px; }
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
.ui-icon-triangle-1-w { background-position: -96px -16px; }
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
.ui-icon-arrow-1-n { background-position: 0 -32px; }
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
.ui-icon-arrow-1-e { background-position: -32px -32px; }
.ui-icon-arrow-1-se { background-position: -48px -32px; }
.ui-icon-arrow-1-s { background-position: -64px -32px; }
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
.ui-icon-arrow-1-w { background-position: -96px -32px; }
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
.ui-icon-arrowthick-1-n { background-position: 0 -48px; }
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
.ui-icon-arrow-4 { background-position: 0 -80px; }
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
.ui-icon-extlink { background-position: -32px -80px; }
.ui-icon-newwin { background-position: -48px -80px; }
.ui-icon-refresh { background-position: -64px -80px; }
.ui-icon-shuffle { background-position: -80px -80px; }
.ui-icon-transfer-e-w { background-position: -96px -80px; }
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
.ui-icon-folder-collapsed { background-position: 0 -96px; }
.ui-icon-folder-open { background-position: -16px -96px; }
.ui-icon-document { background-position: -32px -96px; }
.ui-icon-document-b { background-position: -48px -96px; }
.ui-icon-note { background-position: -64px -96px; }
.ui-icon-mail-closed { background-position: -80px -96px; }
.ui-icon-mail-open { background-position: -96px -96px; }
.ui-icon-suitcase { background-position: -112px -96px; }
.ui-icon-comment { background-position: -128px -96px; }
.ui-icon-person { background-position: -144px -96px; }
.ui-icon-print { background-position: -160px -96px; }
.ui-icon-trash { background-position: -176px -96px; }
.ui-icon-locked { background-position: -192px -96px; }
.ui-icon-unlocked { background-position: -208px -96px; }
.ui-icon-bookmark { background-position: -224px -96px; }
.ui-icon-tag { background-position: -240px -96px; }
.ui-icon-home { background-position: 0 -112px; }
.ui-icon-flag { background-position: -16px -112px; }
.ui-icon-calendar { background-position: -32px -112px; }
.ui-icon-cart { background-position: -48px -112px; }
.ui-icon-pencil { background-position: -64px -112px; }
.ui-icon-clock { background-position: -80px -112px; }
.ui-icon-disk { background-position: -96px -112px; }
.ui-icon-calculator { background-position: -112px -112px; }
.ui-icon-zoomin { background-position: -128px -112px; }
.ui-icon-zoomout { background-position: -144px -112px; }
.ui-icon-search { background-position: -160px -112px; }
.ui-icon-wrench { background-position: -176px -112px; }
.ui-icon-gear { background-position: -192px -112px; }
.ui-icon-heart { background-position: -208px -112px; }
.ui-icon-star { background-position: -224px -112px; }
.ui-icon-link { background-position: -240px -112px; }
.ui-icon-cancel { background-position: 0 -128px; }
.ui-icon-plus { background-position: -16px -128px; }
.ui-icon-plusthick { background-position: -32px -128px; }
.ui-icon-minus { background-position: -48px -128px; }
.ui-icon-minusthick { background-position: -64px -128px; }
.ui-icon-close { background-position: -80px -128px; }
.ui-icon-closethick { background-position: -96px -128px; }
.ui-icon-key { background-position: -112px -128px; }
.ui-icon-lightbulb { background-position: -128px -128px; }
.ui-icon-scissors { background-position: -144px -128px; }
.ui-icon-clipboard { background-position: -160px -128px; }
.ui-icon-copy { background-position: -176px -128px; }
.ui-icon-contact { background-position: -192px -128px; }
.ui-icon-image { background-position: -208px -128px; }
.ui-icon-video { background-position: -224px -128px; }
.ui-icon-script { background-position: -240px -128px; }
.ui-icon-alert { background-position: 0 -144px; }
.ui-icon-info { background-position: -16px -144px; }
.ui-icon-notice { background-position: -32px -144px; }
.ui-icon-help { background-position: -48px -144px; }
.ui-icon-check { background-position: -64px -144px; }
.ui-icon-bullet { background-position: -80px -144px; }
.ui-icon-radio-on { background-position: -96px -144px; }
.ui-icon-radio-off { background-position: -112px -144px; }
.ui-icon-pin-w { background-position: -128px -144px; }
.ui-icon-pin-s { background-position: -144px -144px; }
.ui-icon-play { background-position: 0 -160px; }
.ui-icon-pause { background-position: -16px -160px; }
.ui-icon-seek-next { background-position: -32px -160px; }
.ui-icon-seek-prev { background-position: -48px -160px; }
.ui-icon-seek-end { background-position: -64px -160px; }
.ui-icon-seek-start { background-position: -80px -160px; }
/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
.ui-icon-seek-first { background-position: -80px -160px; }
.ui-icon-stop { background-position: -96px -160px; }
.ui-icon-eject { background-position: -112px -160px; }
.ui-icon-volume-off { background-position: -128px -160px; }
.ui-icon-volume-on { background-position: -144px -160px; }
.ui-icon-power { background-position: 0 -176px; }
.ui-icon-signal-diag { background-position: -16px -176px; }
.ui-icon-signal { background-position: -32px -176px; }
.ui-icon-battery-0 { background-position: -48px -176px; }
.ui-icon-battery-1 { background-position: -64px -176px; }
.ui-icon-battery-2 { background-position: -80px -176px; }
.ui-icon-battery-3 { background-position: -96px -176px; }
.ui-icon-circle-plus { background-position: 0 -192px; }
.ui-icon-circle-minus { background-position: -16px -192px; }
.ui-icon-circle-close { background-position: -32px -192px; }
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
.ui-icon-circle-zoomin { background-position: -176px -192px; }
.ui-icon-circle-zoomout { background-position: -192px -192px; }
.ui-icon-circle-check { background-position: -208px -192px; }
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
.ui-icon-circlesmall-close { background-position: -32px -208px; }
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
.ui-icon-squaresmall-close { background-position: -80px -208px; }
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
/* Misc visuals
----------------------------------*/
/* Corner radius */
.ui-corner-all,
.ui-corner-top,
.ui-corner-left,
.ui-corner-tl {
    border-top-left-radius: 0;
}
.ui-corner-all,
.ui-corner-top,
.ui-corner-right,
.ui-corner-tr {
    border-top-right-radius: 0;
}
.ui-corner-all,
.ui-corner-bottom,
.ui-corner-left,
.ui-corner-bl {
    border-bottom-left-radius: 0;
}
.ui-corner-all,
.ui-corner-bottom,
.ui-corner-right,
.ui-corner-br {
    border-bottom-right-radius: 0;
}
/* Overlays */
.ui-widget-overlay {
    background: #aaaaaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x;
    opacity: .3;
    filter: Alpha(Opacity=30);
}
.ui-widget-shadow {
    margin: -6px 0 0 -6px;
    padding: 6px;
    background: #aaaaaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x;
    opacity: .35;
    filter: Alpha(Opacity=35);
    border-radius: 6px;
}
plugins/jqueryui/themes/classic/jquery-ui-1.9.2.custom.css
File was deleted
plugins/jqueryui/themes/classic/roundcube-custom.diff
@@ -1,118 +1,174 @@
--- jquery-ui-1.8.18.custom.css.orig    2012-03-02 08:13:36.000000000 +0100
+++ jquery-ui-1.8.18.custom.css    2012-03-02 17:22:10.000000000 +0100
@@ -58,7 +58,7 @@
 .ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Lucida Grande, Verdana, Arial, Helvetica, sans-serif; font-size: 1em; }
 .ui-widget-content { border: 1px solid #aaaaaa; background: #ffffff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x; color: #000000; }
 .ui-widget-content a { color: #000000; }
-.ui-widget-header { border: 1px solid #999999; background: #f4f4f4 url(images/ui-bg_highlight-hard_90_f4f4f4_1x100.png) 50% 50% repeat-x; color: #333333; font-weight: bold; }
+.ui-widget-header { border: 1px solid #999999; border-width: 0 0 1px 0; background: #f4f4f4 url(images/listheader.png) 50% 50% repeat; color: #333333; font-weight: bold; margin: -0.2em -0.2em 0 -0.2em; }
 .ui-widget-header a { color: #333333; }
--- jquery-ui-1.10.4.custom.orig.css    2014-06-17 00:44:04.000000000 +0200
+++ jquery-ui-1.10.4.custom.css    2014-07-31 08:55:11.000000000 +0200
@@ -226,13 +226,18 @@
     width: 3.7em;
 }
 
 /* Interaction states
@@ -69,6 +69,8 @@
 .ui-state-hover a, .ui-state-hover a:hover { color: #000000; text-decoration: none; }
 .ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #a4a4a4; background: #a3a3a3 url(images/ui-bg_highlight-hard_90_a3a3a3_1x100.png) 50% 50% repeat-x; font-weight: normal; color: #000000; }
 .ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #000000; text-decoration: none; }
+.ui-state-focus, .ui-widget-content .ui-state-focus { border: 1px solid #c33; color: #a00; }
+.ui-tabs-nav .ui-state-focus { border: 1px solid #a4a4a4; color: #000000; }
 .ui-widget :active { outline: none; }
 /* Interaction Cues
@@ -79,7 +81,7 @@
 .ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #cc3333; }
 .ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #cc3333; }
 .ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; }
-.ui-priority-secondary, .ui-widget-content .ui-priority-secondary,  .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; }
+.ui-priority-secondary, .ui-widget-content .ui-priority-secondary,  .ui-widget-header .ui-priority-secondary { opacity: .6; filter:Alpha(Opacity=60); font-weight: normal; }
 .ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; }
 /* Icons
@@ -346,6 +348,8 @@
 /* workarounds */
 * html .ui-autocomplete { width:1px; } /* without this, the menu expands to 100% in IE6 */
+#ui-active-menuitem { background:#c33; border-color:#a22; color:#fff; }
+button.ui-button-text-only,
+a.ui-button-text-only {
+    background-image: url("images/buttongradient.png") !important;
+}
+
 /*
  * jQuery UI Menu 1.8.18
  *
@@ -361,6 +365,9 @@
     margin: 0;
     display:block;
     float: left;
 /* button text element */
 .ui-button .ui-button-text {
     display: block;
     line-height: normal;
 }
 .ui-button-text-only .ui-button-text {
-    padding: .4em 1em;
+    padding: .3em 1em;
 }
 .ui-button-icon-only .ui-button-text,
 .ui-button-icons-only .ui-button-text {
@@ -301,6 +306,9 @@
     width: 17em;
     padding: .2em .2em 0;
     display: none;
+    box-shadow: 1px 1px 18px #999;
+    -moz-box-shadow: 1px 1px 12px #999;
+    -webkit-box-shadow: #999 1px 1px 12px;
 }
 .ui-datepicker .ui-datepicker-header {
     position: relative;
@@ -374,6 +382,11 @@
     text-align: right;
     text-decoration: none;
 }
+.ui-datepicker td.ui-datepicker-current-day .ui-state-active {
+    background:#c33;
+    border-color:#a22;
+    color:#fff;
+}
 .ui-datepicker .ui-datepicker-buttonpane {
     background-image: none;
     margin: .7em 0 0 0;
@@ -385,7 +398,7 @@
 .ui-datepicker .ui-datepicker-buttonpane button {
     float: right;
     margin: .5em .2em .4em;
-    cursor: pointer;
+    cursor: default;
     padding: .2em .6em .3em .6em;
     width: auto;
     overflow: visible;
@@ -469,6 +482,9 @@
     left: 0;
     padding: .2em;
     outline: 0;
+    -webkit-box-shadow: #999 1px 1px 12px;
+    -moz-box-shadow: 1px 1px 12px #999;
+    box-shadow: 1px 1px 18px #999;
 }
 .ui-dialog .ui-dialog-titlebar {
     padding: .4em 1em;
@@ -491,6 +507,9 @@
     padding: 1px;
     height: 20px;
 }
+.no-close .ui-dialog-titlebar-close {
+    display: none !important;
+}
 .ui-dialog .ui-dialog-content {
     position: relative;
     border: 0;
@@ -510,7 +529,7 @@
 }
 .ui-dialog .ui-dialog-buttonpane button {
     margin: .5em .4em .5em 0;
-    cursor: pointer;
+    cursor: default;
 }
 .ui-dialog .ui-resizable-se {
     width: 12px;
@@ -528,6 +547,9 @@
     margin: 0;
     display: block;
     outline: none;
+    -webkit-box-shadow: #999 1px 1px 12px;
+    -moz-box-shadow: 1px 1px 12px #999;
+    box-shadow: 1px 1px 18px #999;
 }
 .ui-menu .ui-menu {
     margin-top: -3px;
@@ -399,10 +406,11 @@
 button.ui-button-icon-only { width: 2.4em; } /* button elements seem to need a little more width */
 .ui-button-icons-only { width: 3.4em; }
 button.ui-button-icons-only { width: 3.7em; }
+button.ui-button-text-only, a.ui-button-text-only { background-image: url(images/buttongradient.png) !important; }
@@ -559,6 +581,9 @@
 .ui-menu .ui-menu-item a.ui-state-active {
     font-weight: normal;
     margin: -1px;
+    background: #c33;
+    border-color: #a22;
+    color: #fff;
 }
 
 /*button text element */
 .ui-button .ui-button-text { display: block; line-height: 1.4;  }
-.ui-button-text-only .ui-button-text { padding: .4em 1em; }
+.ui-button-text-only .ui-button-text { padding: .3em 1em; }
 .ui-button-icon-only .ui-button-text, .ui-button-icons-only .ui-button-text { padding: .4em; text-indent: -9999999px; }
 .ui-button-text-icon-primary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 1em .4em 2.1em; }
 .ui-button-text-icon-secondary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 2.1em .4em 1em; }
@@ -432,7 +440,7 @@
  *
  * http://docs.jquery.com/UI/Dialog#theming
  */
-.ui-dialog { position: absolute; padding: .2em; width: 300px; overflow: hidden; }
+.ui-dialog { position: absolute; padding: .2em; width: 300px; overflow: hidden; box-shadow: 1px 1px 18px #999; -moz-box-shadow: 1px 1px 12px #999; -webkit-box-shadow: #999 1px 1px 12px; }
 .ui-dialog .ui-dialog-titlebar { padding: .4em 1em; position: relative;  }
 .ui-dialog .ui-dialog-title { float: left; margin: .1em 16px .1em 0; }
 .ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; }
@@ -441,7 +449,7 @@
 .ui-dialog .ui-dialog-content { position: relative; border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; }
 .ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; }
 .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { float: right; }
-.ui-dialog .ui-dialog-buttonpane button { margin: .5em .4em .5em 0; cursor: pointer; }
+.ui-dialog .ui-dialog-buttonpane button { margin: .5em .4em .5em 0; cursor: default; }
 .ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; }
 .ui-draggable .ui-dialog-titlebar { cursor: move; }
 /*
@@ -478,13 +486,16 @@
  */
 .ui-tabs { position: relative; padding: .2em; zoom: 1; } /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
 .ui-tabs .ui-tabs-nav { margin: 0; padding: .2em .2em 0; }
-.ui-tabs .ui-tabs-nav li { list-style: none; float: left; position: relative; top: 1px; margin: 0 .2em 1px 0; border-bottom: 0 !important; padding: 0; white-space: nowrap; }
-.ui-tabs .ui-tabs-nav li a { float: left; padding: .5em 1em; text-decoration: none; }
+.ui-tabs .ui-tabs-nav li { list-style: none; float: left; position: relative; top: 1px; margin: 0 0 1px 0; border-bottom: 0 !important; padding: 0; white-space: nowrap; -moz-border-radius-topleft: 2px; -webkit-border-top-left-radius: 2px; border-top-left-radius: 2px; -moz-border-radius-topright: 2px; -webkit-border-top-right-radius: 2px; border-top-right-radius: 2px; }
+.ui-tabs .ui-tabs-nav li a { float: left; padding: .3em 1em; text-decoration: none; }
 .ui-tabs .ui-tabs-nav li.ui-tabs-selected { margin-bottom: 0; padding-bottom: 1px; }
 .ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; }
 .ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
 .ui-tabs .ui-tabs-panel { display: block; border-width: 0; padding: 1em 1.4em; background: none; }
 .ui-tabs .ui-tabs-hide { display: none !important; }
+
+.ui-dialog .ui-tabs .ui-tabs-nav li.ui-tabs-selected { background:#fff; }
+
 /*
  * jQuery UI Datepicker 1.8.18
  *
@@ -494,7 +505,7 @@
  *
  * http://docs.jquery.com/UI/Datepicker#theming
  */
-.ui-datepicker { width: 17em; padding: .2em .2em 0; display: none; }
+.ui-datepicker { width: 17em; padding: .2em .2em 0; display: none; box-shadow: 1px 1px 18px #999; -moz-box-shadow: 1px 1px 12px #999; -webkit-box-shadow: #999 1px 1px 12px; }
 .ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; }
 .ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; }
 .ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; }
@@ -512,8 +523,9 @@
 .ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0;  }
 .ui-datepicker td { border: 0; padding: 1px; }
 .ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; }
+.ui-datepicker td.ui-datepicker-current-day .ui-state-active { background:#c33; border-color:#a22; color:#fff; }
 .ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; }
-.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; }
+.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: default; padding: .2em .6em .3em .6em; width:auto; overflow:visible; }
 .ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; }
 /* with multiple calendars */
 .ui-menu .ui-state-disabled {
@@ -740,20 +765,29 @@
     float: left;
     position: relative;
     top: 0;
-    margin: 1px .2em 0 0;
+    margin: 0;
     border-bottom-width: 0;
     padding: 0;
     white-space: nowrap;
+    -webkit-border-top-left-radius: 2px;
+    -moz-border-radius-topleft: 2px;
+    border-top-left-radius: 2px;
+    -webkit-border-top-right-radius: 2px;
+    -moz-border-radius-topright: 2px;
+    border-top-right-radius: 2px;
 }
 .ui-tabs .ui-tabs-nav .ui-tabs-anchor {
     float: left;
-    padding: .5em 1em;
+    padding: .3em 1em;
     text-decoration: none;
 }
 .ui-tabs .ui-tabs-nav li.ui-tabs-active {
     margin-bottom: -1px;
     padding-bottom: 1px;
 }
+.ui-dialog .ui-tabs-nav li.ui-tabs-active {
+    background: #fff;
+}
 .ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,
 .ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,
 .ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor {
@@ -806,9 +840,11 @@
 }
 .ui-widget-header {
     border: 1px solid #999999;
-    background: #f4f4f4 url("images/ui-bg_highlight-hard_90_f4f4f4_1x100.png") 50% 50% repeat-x;
+    border-width: 0 0 1px 0;
+    background: #f4f4f4 url("images/listheader.png") 50% 50% repeat;
     color: #333333;
     font-weight: bold;
+    margin: -0.2em -0.2em 0 -0.2em;
 }
 .ui-widget-header a {
     color: #333333;
@@ -841,6 +877,15 @@
     font-weight: normal;
     color: #000000;
 }
+.ui-state-focus,
+.ui-widget-content .ui-state-focus {
+    border: 1px solid #c33;
+    color: #a00;
+}
+.ui-tabs-nav .ui-state-focus {
+    border: 1px solid #a4a4a4;
+    color: #000;
+}
 .ui-state-hover a,
 .ui-state-hover a:hover,
 .ui-state-hover a:link,
@@ -906,8 +951,8 @@
 .ui-priority-secondary,
 .ui-widget-content .ui-priority-secondary,
 .ui-widget-header .ui-priority-secondary {
-    opacity: .7;
-    filter:Alpha(Opacity=70);
+    opacity: .6;
+    filter:Alpha(Opacity=60);
     font-weight: normal;
 }
 .ui-state-disabled,
plugins/jqueryui/themes/larry/images/animated-overlay.gif
plugins/jqueryui/themes/larry/images/ui-bg_highlight-hard_55_b0ccd7_1x100.png
Binary files differ
plugins/jqueryui/themes/larry/images/ui-bg_highlight-hard_65_ffffff_1x100.png
Binary files differ
plugins/jqueryui/themes/larry/images/ui-bg_highlight-hard_75_eaeaea_1x100.png
Binary files differ
plugins/jqueryui/themes/larry/images/ui-bg_highlight-hard_75_f8f8f8_1x100.png
Binary files differ
plugins/jqueryui/themes/larry/images/ui-bg_highlight-soft_75_fafafa_1x100.png
Binary files differ
plugins/jqueryui/themes/larry/images/ui-bg_highlight-soft_90_e4e4e4_1x100.png
Binary files differ
plugins/jqueryui/themes/larry/jquery-ui-1.10.4.custom.css
New file
@@ -0,0 +1,1515 @@
/*! jQuery UI - v1.10.4 - 2014-06-17
* http://jqueryui.com
* Includes: jquery.ui.core.css, jquery.ui.resizable.css, jquery.ui.selectable.css, jquery.ui.accordion.css, jquery.ui.autocomplete.css, jquery.ui.button.css, jquery.ui.datepicker.css, jquery.ui.dialog.css, jquery.ui.menu.css, jquery.ui.progressbar.css, jquery.ui.slider.css, jquery.ui.spinner.css, jquery.ui.tabs.css, jquery.ui.tooltip.css, jquery.ui.theme.css
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Lucida%20Grande%2CVerdana%2CArial%2Csans-serif&fwDefault=bold&fsDefault=1.0em&cornerRadius=5px&bgColorHeader=e4e4e4&bgTextureHeader=highlight_soft&bgImgOpacityHeader=90&borderColorHeader=fafafa&fcHeader=666666&iconColorHeader=004458&bgColorContent=fafafa&bgTextureContent=highlight_soft&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=33333&iconColorContent=004458&bgColorDefault=f8f8f8&bgTextureDefault=highlight_hard&bgImgOpacityDefault=75&borderColorDefault=cccccc&fcDefault=666666&iconColorDefault=004458&bgColorHover=eaeaea&bgTextureHover=highlight_hard&bgImgOpacityHover=75&borderColorHover=aaaaaa&fcHover=333333&iconColorHover=004458&bgColorActive=ffffff&bgTextureActive=highlight_hard&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=333333&iconColorActive=004458&bgColorHighlight=b0ccd7&bgTextureHighlight=highlight_hard&bgImgOpacityHighlight=55&borderColorHighlight=a3a3a3&fcHighlight=004458&iconColorHighlight=004458&bgColorError=fef1ec&bgTextureError=flat&bgImgOpacityError=95&borderColorError=d7211e&fcError=d64040&iconColorError=d7211e&bgColorOverlay=333333&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=50&bgColorShadow=666666&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=20&thicknessShadow=6px&offsetTopShadow=-6px&offsetLeftShadow=-6px&cornerRadiusShadow=8px
* Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */
/* Layout helpers
----------------------------------*/
.ui-helper-hidden {
    display: none;
}
.ui-helper-hidden-accessible {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}
.ui-helper-reset {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    line-height: 1.3;
    text-decoration: none;
    font-size: 100%;
    list-style: none;
}
.ui-helper-clearfix:before,
.ui-helper-clearfix:after {
    content: "";
    display: table;
    border-collapse: collapse;
}
.ui-helper-clearfix:after {
    clear: both;
}
.ui-helper-clearfix {
    min-height: 0; /* support: IE7 */
}
.ui-helper-zfix {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    opacity: 0;
    filter:Alpha(Opacity=0);
}
.ui-front {
    z-index: 100;
}
/* Interaction Cues
----------------------------------*/
.ui-state-disabled {
    cursor: default !important;
}
/* Icons
----------------------------------*/
/* states and images */
.ui-icon {
    display: block;
    text-indent: -99999px;
    overflow: hidden;
    background-repeat: no-repeat;
}
/* Misc visuals
----------------------------------*/
/* Overlays */
.ui-widget-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.ui-resizable {
    position: relative;
}
.ui-resizable-handle {
    position: absolute;
    font-size: 0.1px;
    display: block;
}
.ui-resizable-disabled .ui-resizable-handle,
.ui-resizable-autohide .ui-resizable-handle {
    display: none;
}
.ui-resizable-n {
    cursor: n-resize;
    height: 7px;
    width: 100%;
    top: -5px;
    left: 0;
}
.ui-resizable-s {
    cursor: s-resize;
    height: 7px;
    width: 100%;
    bottom: -5px;
    left: 0;
}
.ui-resizable-e {
    cursor: e-resize;
    width: 7px;
    right: -5px;
    top: 0;
    height: 100%;
}
.ui-resizable-w {
    cursor: w-resize;
    width: 7px;
    left: -5px;
    top: 0;
    height: 100%;
}
.ui-resizable-se {
    cursor: se-resize;
    width: 12px;
    height: 12px;
    right: 1px;
    bottom: 1px;
}
.ui-resizable-sw {
    cursor: sw-resize;
    width: 9px;
    height: 9px;
    left: -5px;
    bottom: -5px;
}
.ui-resizable-nw {
    cursor: nw-resize;
    width: 9px;
    height: 9px;
    left: -5px;
    top: -5px;
}
.ui-resizable-ne {
    cursor: ne-resize;
    width: 9px;
    height: 9px;
    right: -5px;
    top: -5px;
}
.ui-selectable-helper {
    position: absolute;
    z-index: 100;
    border: 1px dotted black;
}
.ui-accordion .ui-accordion-header {
    display: block;
    cursor: pointer;
    position: relative;
    margin-top: 2px;
    padding: .5em .5em .5em .7em;
    min-height: 0; /* support: IE7 */
}
.ui-accordion .ui-accordion-icons {
    padding-left: 2.2em;
}
.ui-accordion .ui-accordion-noicons {
    padding-left: .7em;
}
.ui-accordion .ui-accordion-icons .ui-accordion-icons {
    padding-left: 2.2em;
}
.ui-accordion .ui-accordion-header .ui-accordion-header-icon {
    position: absolute;
    left: .5em;
    top: 50%;
    margin-top: -8px;
}
.ui-accordion .ui-accordion-content {
    padding: 1em 2.2em;
    border-top: 0;
    overflow: auto;
}
.ui-autocomplete {
    position: absolute;
    top: 0;
    left: 0;
    cursor: default;
}
.ui-button {
    display: inline-block;
    position: relative;
    padding: 0;
    line-height: normal;
    margin-right: .1em;
    cursor: pointer;
    vertical-align: middle;
    text-align: center;
    overflow: visible; /* removes extra width in IE */
}
.ui-button,
.ui-button:link,
.ui-button:visited,
.ui-button:hover,
.ui-button:active {
    text-decoration: none;
}
/* to make room for the icon, a width needs to be set here */
.ui-button-icon-only {
    width: 2.2em;
}
/* button elements seem to need a little more width */
button.ui-button-icon-only {
    width: 2.4em;
}
.ui-button-icons-only {
    width: 3.4em;
}
button.ui-button-icons-only {
    width: 3.7em;
}
/* button text element */
.ui-button .ui-button-text {
    display: block;
    line-height: normal;
}
.ui-button-text-only .ui-button-text {
    padding: .4em 1em;
}
.ui-button-icon-only .ui-button-text,
.ui-button-icons-only .ui-button-text {
    padding: .4em;
    text-indent: -9999999px;
    width: 1px;
    overflow: hidden;
}
.ui-button-text-icon-primary .ui-button-text,
.ui-button-text-icons .ui-button-text {
    padding: .4em 1em .4em 2.1em;
}
.ui-button-text-icon-secondary .ui-button-text,
.ui-button-text-icons .ui-button-text {
    padding: .4em 2.1em .4em 1em;
}
.ui-button-text-icons .ui-button-text {
    padding-left: 2.1em;
    padding-right: 2.1em;
}
/* no icon support for input elements, provide padding by default */
input.ui-button {
    padding: .4em 1em;
}
/* button icon element(s) */
.ui-button-icon-only .ui-icon,
.ui-button-text-icon-primary .ui-icon,
.ui-button-text-icon-secondary .ui-icon,
.ui-button-text-icons .ui-icon,
.ui-button-icons-only .ui-icon {
    position: absolute;
    top: 50%;
    margin-top: -8px;
}
.ui-button-icon-only .ui-icon {
    left: 50%;
    margin-left: -8px;
}
.ui-button-text-icon-primary .ui-button-icon-primary,
.ui-button-text-icons .ui-button-icon-primary,
.ui-button-icons-only .ui-button-icon-primary {
    left: .5em;
}
.ui-button-text-icon-secondary .ui-button-icon-secondary,
.ui-button-text-icons .ui-button-icon-secondary,
.ui-button-icons-only .ui-button-icon-secondary {
    right: .5em;
}
/* button sets */
.ui-buttonset {
    margin-right: 7px;
}
.ui-buttonset .ui-button {
    margin-left: 0;
    margin-right: -.3em;
}
/* workarounds */
/* reset extra padding in Firefox, see h5bp.com/l */
input.ui-button::-moz-focus-inner,
button.ui-button::-moz-focus-inner {
    border: 0;
    padding: 0;
}
.ui-datepicker {
    width: 17em;
    padding: .2em .2em 0;
    display: none;
}
.ui-datepicker .ui-datepicker-header {
    position: relative;
    padding: .2em 0;
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
    position: absolute;
    top: 2px;
    width: 1.8em;
    height: 1.8em;
}
.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
    top: 1px;
}
.ui-datepicker .ui-datepicker-prev {
    left: 2px;
}
.ui-datepicker .ui-datepicker-next {
    right: 2px;
}
.ui-datepicker .ui-datepicker-prev-hover {
    left: 1px;
}
.ui-datepicker .ui-datepicker-next-hover {
    right: 1px;
}
.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
    display: block;
    position: absolute;
    left: 50%;
    margin-left: -8px;
    top: 50%;
    margin-top: -8px;
}
.ui-datepicker .ui-datepicker-title {
    margin: 0 2.3em;
    line-height: 1.8em;
    text-align: center;
}
.ui-datepicker .ui-datepicker-title select {
    font-size: 1em;
    margin: 1px 0;
}
.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
    width: 49%;
}
.ui-datepicker table {
    width: 100%;
    font-size: .9em;
    border-collapse: collapse;
    margin: 0 0 .4em;
}
.ui-datepicker th {
    padding: .7em .3em;
    text-align: center;
    font-weight: bold;
    border: 0;
}
.ui-datepicker td {
    border: 0;
    padding: 1px;
}
.ui-datepicker td span,
.ui-datepicker td a {
    display: block;
    padding: .2em;
    text-align: right;
    text-decoration: none;
}
.ui-datepicker .ui-datepicker-buttonpane {
    background-image: none;
    margin: .7em 0 0 0;
    padding: 0 .2em;
    border-left: 0;
    border-right: 0;
    border-bottom: 0;
}
.ui-datepicker .ui-datepicker-buttonpane button {
    float: right;
    margin: .5em .2em .4em;
    cursor: pointer;
    padding: .2em .6em .3em .6em;
    width: auto;
    overflow: visible;
}
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
    float: left;
}
/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi {
    width: auto;
}
.ui-datepicker-multi .ui-datepicker-group {
    float: left;
}
.ui-datepicker-multi .ui-datepicker-group table {
    width: 95%;
    margin: 0 auto .4em;
}
.ui-datepicker-multi-2 .ui-datepicker-group {
    width: 50%;
}
.ui-datepicker-multi-3 .ui-datepicker-group {
    width: 33.3%;
}
.ui-datepicker-multi-4 .ui-datepicker-group {
    width: 25%;
}
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
    border-left-width: 0;
}
.ui-datepicker-multi .ui-datepicker-buttonpane {
    clear: left;
}
.ui-datepicker-row-break {
    clear: both;
    width: 100%;
    font-size: 0;
}
/* RTL support */
.ui-datepicker-rtl {
    direction: rtl;
}
.ui-datepicker-rtl .ui-datepicker-prev {
    right: 2px;
    left: auto;
}
.ui-datepicker-rtl .ui-datepicker-next {
    left: 2px;
    right: auto;
}
.ui-datepicker-rtl .ui-datepicker-prev:hover {
    right: 1px;
    left: auto;
}
.ui-datepicker-rtl .ui-datepicker-next:hover {
    left: 1px;
    right: auto;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane {
    clear: right;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane button {
    float: left;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
.ui-datepicker-rtl .ui-datepicker-group {
    float: right;
}
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
    border-right-width: 0;
    border-left-width: 1px;
}
.ui-dialog {
    position: absolute;
    top: 0;
    left: 0;
    padding: 3px;
    background: #fff;
    border-radius: 6px !important;
    border: 0 !important;
    outline: 0;
    -webkit-box-shadow: #666 1px 1px 12px;
       -moz-box-shadow: 1px 1px 12px #666;
            box-shadow: 1px 1px 18px #666;
}
.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;
    white-space: nowrap;
    width: 90%;
    overflow: hidden;
    text-overflow: ellipsis;
}
.ui-dialog .ui-button.ui-dialog-titlebar-close {
    position: absolute;
    right: -15px;
    top: -15px;
    width: 29px;
    height: 29px;
    margin: 0;
    padding: 0;
    z-index: 99999;
    border-radius: 50%;
    border-width: 0 !important;
    background: none !important;
    filter: none !important;
    -webkit-box-shadow: none !important;
       -moz-box-shadow: none !important;
         -o-box-shadow: none !important;
            box-shadow: none !important;
}
.ui-dialog .ui-dialog-titlebar-close.ui-button:focus,
.ui-dialog .ui-dialog-titlebar-close.ui-button.ui-state-focus {
    box-shadow: 0 0 2px 2px rgba(71,135,177, 0.9) !important;
    -webkit-box-shadow: 0 0 2px 2px rgba(71,135,177, 0.9) !important;
}
.ui-dialog .ui-dialog-titlebar-close .ui-icon-closethick {
    top: 0;
    left: -1px;
    margin: 0;
    width: 29px;
    height: 29px;
    border-radius: 50%;
    background: url("images/ui-dialog-close.png") 0 0 no-repeat;
}
.no-close .ui-dialog-titlebar-close {
    display: none !important;
}
.ui-dialog .ui-dialog-content {
    position: relative;
    border: 0;
    padding: 1.5em 1em 0.5em 1em;
    background: none;
    overflow: auto;
}
.ui-dialog .ui-widget-content {
    border: 0;
}
.ui-dialog .ui-dialog-buttonpane {
    text-align: left;
    border-width: 1px 0 0 0;
    background-image: none;
    border-color: #ddd;
    border-style: solid;
    margin: 0;
    padding: .3em 1em .5em .8em;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
    float: left;
}
.ui-dialog .ui-dialog-buttonpane button {
    margin: .5em .4em .5em 0;
    cursor: pointer;
}
.ui-dialog .ui-resizable-se {
    width: 14px;
    height: 14px;
    right: 3px;
    bottom: 3px;
    background-position: -80px -224px;
}
.ui-draggable .ui-dialog-titlebar {
    cursor: move;
}
.ui-menu {
    list-style: none;
    padding: 0;
    margin: 0;
    display: block;
    outline: none;
    background: #444;
    border: 1px solid #999;
    border-radius: 4px !important;
    -webkit-box-shadow: 0 2px 6px 0 #333;
       -moz-box-shadow: 0 2px 6px 0 #333;
         -o-box-shadow: 0 2px 6px 0 #333;
            box-shadow: 0 2px 6px 0 #333;
}
.ui-menu .ui-menu {
    margin-top: -3px;
    position: absolute;
}
.ui-menu .ui-menu-item {
    margin: 0;
    padding: 0;
    width: 100%;
    /* support: IE10, see #8844 */
    list-style-image: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);
    color: #fff;
    white-space: nowrap;
    border-top: 1px solid #5a5a5a;
    border-bottom: 1px solid #333;
}
.ui-menu .ui-menu-item:first-child {
    border-top: 0;
}
.ui-menu .ui-menu-item:last-child {
    border-bottom: 0;
}
.ui-menu .ui-menu-divider {
    margin: 5px -2px 5px -2px;
    height: 0;
    font-size: 0;
    line-height: 0;
    border-width: 1px 0 0 0;
}
.ui-menu .ui-menu-item a {
    text-decoration: none;
    display: block;
    padding: 6px 10px 4px 10px;
    line-height: 1.5;
    min-height: 0; /* support: IE7 */
    font-weight: normal;
    border: 0;
    margin: 0;
    border-radius: 0;
    color: #fff;
    background: #444;
    text-shadow: 0px 1px 1px #333;
}
.ui-menu .ui-menu-item a.ui-state-focus,
.ui-menu .ui-menu-item a.ui-state-active {
    font-weight: normal;
    background: #00aad6;
    background: -moz-linear-gradient(top, #00aad6 0%, #008fc9 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#00aad6), color-stop(100%,#008fc9));
    background: -o-linear-gradient(top, #00aad6 0%, #008fc9 100%);
    background: -ms-linear-gradient(top, #00aad6 0%, #008fc9 100%);
    background: linear-gradient(top, #00aad6 0%, #008fc9 100%);
}
.ui-menu .ui-state-disabled {
    font-weight: normal;
    margin: .4em 0 .2em;
    line-height: 1.5;
}
.ui-menu .ui-state-disabled a {
    cursor: default;
}
/* icon support */
.ui-menu-icons {
    position: relative;
}
.ui-menu-icons .ui-menu-item a {
    position: relative;
    padding-left: 2em;
}
/* left-aligned */
.ui-menu .ui-icon {
    position: absolute;
    top: .2em;
    left: .2em;
}
/* right-aligned */
.ui-menu .ui-menu-icon {
    position: static;
    float: right;
}
.ui-progressbar {
    height: 2em;
    text-align: left;
    overflow: hidden;
}
.ui-progressbar .ui-progressbar-value {
    margin: -1px;
    height: 100%;
}
.ui-progressbar .ui-progressbar-overlay {
    background: url("images/animated-overlay.gif");
    height: 100%;
    filter: alpha(opacity=25);
    opacity: 0.25;
}
.ui-progressbar-indeterminate .ui-progressbar-value {
    background-image: none;
}
.ui-slider {
    position: relative;
    text-align: left;
}
.ui-slider .ui-slider-handle {
    position: absolute;
    z-index: 2;
    width: 1.2em;
    height: 1.2em;
    cursor: default;
}
.ui-slider .ui-slider-range {
    position: absolute;
    z-index: 1;
    font-size: .7em;
    display: block;
    border: 0;
    background: #019bc6;
    background: -moz-linear-gradient(top, #019bc6 0%, #017cb4 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#019bc6), color-stop(100%,#017cb4));
    background: -o-linear-gradient(top, #019bc6 0%, #017cb4 100%);
    background: -ms-linear-gradient(top, #019bc6 0%, #017cb4 100%);
    background: linear-gradient(top, #019bc6 0%, #017cb4 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#019bc6', endColorstr='#017cb4', GradientType=0);
}
/* For IE8 - See #6727 */
.ui-slider.ui-state-disabled .ui-slider-handle,
.ui-slider.ui-state-disabled .ui-slider-range {
    filter: inherit;
}
.ui-slider-horizontal {
    height: .8em;
}
.ui-slider-horizontal .ui-slider-handle {
    top: -.3em;
    margin-left: -.6em;
}
.ui-slider-horizontal .ui-slider-range {
    top: 0;
    height: 100%;
}
.ui-slider-horizontal .ui-slider-range-min {
    left: 0;
}
.ui-slider-horizontal .ui-slider-range-max {
    right: 0;
}
.ui-slider-vertical {
    width: .8em;
    height: 100px;
}
.ui-slider-vertical .ui-slider-handle {
    left: -.3em;
    margin-left: 0;
    margin-bottom: -.6em;
}
.ui-slider-vertical .ui-slider-range {
    left: 0;
    width: 100%;
}
.ui-slider-vertical .ui-slider-range-min {
    bottom: 0;
}
.ui-slider-vertical .ui-slider-range-max {
    top: 0;
}
.ui-spinner {
    position: relative;
    display: inline-block;
    overflow: hidden;
    padding: 0;
    vertical-align: middle;
}
.ui-spinner-input {
    border: none;
    background: none;
    color: inherit;
    padding: 0;
    margin: .2em 0;
    vertical-align: middle;
    margin-left: .4em;
    margin-right: 22px;
}
.ui-spinner-button {
    width: 16px;
    height: 50%;
    font-size: .5em;
    padding: 0;
    margin: 0;
    text-align: center;
    position: absolute;
    cursor: default;
    display: block;
    overflow: hidden;
    right: 0;
}
/* more specificity required here to override default borders */
.ui-spinner a.ui-spinner-button {
    border-top: none;
    border-bottom: none;
    border-right: none;
}
/* vertically center icon */
.ui-spinner .ui-icon {
    position: absolute;
    margin-top: -8px;
    top: 50%;
    left: 0;
}
.ui-spinner-up {
    top: 0;
}
.ui-spinner-down {
    bottom: 0;
}
/* TR overrides */
.ui-spinner .ui-icon-triangle-1-s {
    /* need to fix icons sprite */
    background-position: -65px -16px;
}
.ui-tabs {
    position: relative;/* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
    padding: .2em;
}
.ui-tabs .ui-tabs-nav {
    margin: 0; padding: 0;
    border: 0;
    background: transparent;
    filter: none;
    height: 44px;
}
.ui-tabs .ui-tabs-nav li {
    list-style: none;
    position: relative;
    display: inline-block;
    top: 0;
    margin: 0;
    border: 0 !important;
    padding: 0 1px 0 0;
    white-space: nowrap;
    background: #f8f8f8;
    background: -moz-linear-gradient(top, #f8f8f8 0%, #d3d3d3 50%, #f8f8f8 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f8f8f8), color-stop(50%,#d3d3d3), color-stop(100%,#f8f8f8));
    background: -webkit-linear-gradient(top, #f8f8f8 0%, #d3d3d3 50%, #f8f8f8 100%);
    background: -o-linear-gradient(top, #f8f8f8 0%, #d3d3d3 50%, #f8f8f8 100%);
    background: -ms-linear-gradient(top, #f8f8f8 0%, #d3d3d3 50%, #f8f8f8 100%);
    background: linear-gradient(top, #f8f8f8 0%, #d3d3d3 50%, #f8f8f8 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f8f8f8', endColorstr='#d3d3d3', GradientType=0);
}
.ui-tabs .ui-tabs-nav li:last-child {
    background: none;
}
.ui-tabs .ui-tabs-nav .ui-tabs-anchor {
    display: inline-block;
    padding: 15px;
    text-decoration: none;
    font-size: 12px;
    color: #999;
    background: #fafafa;
    border-right: 1px solid #fafafa;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-active {
    margin-bottom: -1px;
    padding-bottom: 1px;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor {
    cursor: text;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor {
    outline: none;
    color: #004458;
    background: #efefef;
    background: -moz-linear-gradient(top, #fafafa 40%, #e4e4e4 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(40%,#fff), color-stop(100%,#e4e4e4));
    background: -o-linear-gradient(top, #fafafa 40%, #e4e4e4 100%);
    background: -ms-linear-gradient(top, #fafafa 40%, #e4e4e4 100%);
    background: linear-gradient(top, #fafafa 40%, #e4e4e4 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fafafa', endColorstr='#e4e4e4', GradientType=0);
}
.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor {
    cursor: pointer;
}
.ui-tabs .ui-tabs-panel {
    display: block;
    border-width: 0;
    padding: 0.5em 1em;
    margin-top: 0.2em;
    background: #efefef;
}
.ui-tooltip {
    padding: 8px;
    position: absolute;
    z-index: 9999;
    max-width: 300px;
    -webkit-box-shadow: 0 0 5px #aaa;
    box-shadow: 0 0 5px #aaa;
}
body .ui-tooltip {
    border-width: 2px;
}
/* Component containers
----------------------------------*/
.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: 1px solid #aaaaaa;
    background: #fafafa;
    color: #333333;
}
.ui-widget-content a {
    color: #0186ba;
}
.ui-widget-header {
    border: 1px solid #fafafa;
    background: #e4e4e4;
    background: -moz-linear-gradient(top, #f2f2f2 0%, #e4e4e4 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f2f2f2), color-stop(100%,#e4e4e4));
    background: -o-linear-gradient(top, #f2f2f2 0%, #e4e4e4 100%);
    background: -ms-linear-gradient(top, #f2f2f2 0%, #e4e4e4 100%);
    background: linear-gradient(top, #f2f2f2 0%, #e4e4e4 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f2f2f2', endColorstr='#e4e4e4', GradientType=0);
    color: #666666;
    font-weight: bold;
}
.ui-widget-header a {
    color: #666666;
}
/* Interaction states
----------------------------------*/
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
    border: 1px solid #cccccc;
    background: #f8f8f8;
    font-weight: bold;
    color: #666666;
}
.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited {
    color: #666666;
    text-decoration: none;
}
.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus {
    border: 1px solid #aaaaaa;
    background: #eaeaea;
    font-weight: bold;
    color: #333333;
}
.ui-state-hover a,
.ui-state-hover a:hover,
.ui-state-hover a:link,
.ui-state-hover a:visited,
.ui-state-focus a,
.ui-state-focus a:hover,
.ui-state-focus a:link,
.ui-state-focus a:visited {
    color: #333333;
    text-decoration: none;
}
.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active {
    border: 1px solid #aaaaaa;
    background: #ffffff;
    font-weight: bold;
    color: #333333;
}
.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
    color: #333333;
    text-decoration: none;
}
/* Interaction Cues
----------------------------------*/
.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
    border: 1px solid #a3a3a3;
    background: #b0ccd7;
    color: #004458;
}
.ui-state-highlight a,
.ui-widget-content .ui-state-highlight a,
.ui-widget-header .ui-state-highlight a {
    color: #004458;
}
.ui-state-error,
.ui-widget-content .ui-state-error,
.ui-widget-header .ui-state-error {
    border: 1px solid #d7211e;
    background: #fef1ec;
    color: #d64040;
}
.ui-state-error a,
.ui-widget-content .ui-state-error a,
.ui-widget-header .ui-state-error a {
    color: #d64040;
}
.ui-state-error-text,
.ui-widget-content .ui-state-error-text,
.ui-widget-header .ui-state-error-text {
    color: #d64040;
}
.ui-priority-primary,
.ui-widget-content .ui-priority-primary,
.ui-widget-header .ui-priority-primary {
    font-weight: bold;
}
.ui-priority-secondary,
.ui-widget-content .ui-priority-secondary,
.ui-widget-header .ui-priority-secondary {
    opacity: .7;
    filter:Alpha(Opacity=70);
    font-weight: normal;
}
.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
    opacity: .35;
    filter:Alpha(Opacity=35);
    background-image: none;
}
.ui-state-disabled .ui-icon {
    filter:Alpha(Opacity=35); /* For IE8 - See #6059 */
}
/* Icons
----------------------------------*/
/* states and images */
.ui-icon {
    width: 16px;
    height: 16px;
}
.ui-icon,
.ui-widget-content .ui-icon {
    background-image: url("images/ui-icons_004458_256x240.png");
}
.ui-widget-header .ui-icon {
    background-image: url("images/ui-icons_004458_256x240.png");
}
.ui-state-default .ui-icon {
    background-image: url("images/ui-icons_004458_256x240.png");
}
.ui-state-hover .ui-icon,
.ui-state-focus .ui-icon {
    background-image: url("images/ui-icons_004458_256x240.png");
}
.ui-state-active .ui-icon {
    background-image: url("images/ui-icons_004458_256x240.png");
}
.ui-state-highlight .ui-icon {
    background-image: url("images/ui-icons_004458_256x240.png");
}
.ui-state-error .ui-icon,
.ui-state-error-text .ui-icon {
    background-image: url("images/ui-icons_d7211e_256x240.png");
}
/* positioning */
.ui-icon-blank { background-position: 16px 16px; }
.ui-icon-carat-1-n { background-position: 0 0; }
.ui-icon-carat-1-ne { background-position: -16px 0; }
.ui-icon-carat-1-e { background-position: -32px 0; }
.ui-icon-carat-1-se { background-position: -48px 0; }
.ui-icon-carat-1-s { background-position: -64px 0; }
.ui-icon-carat-1-sw { background-position: -80px 0; }
.ui-icon-carat-1-w { background-position: -96px 0; }
.ui-icon-carat-1-nw { background-position: -112px 0; }
.ui-icon-carat-2-n-s { background-position: -128px 0; }
.ui-icon-carat-2-e-w { background-position: -144px 0; }
.ui-icon-triangle-1-n { background-position: 0 -16px; }
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
.ui-icon-triangle-1-e { background-position: -32px -16px; }
.ui-icon-triangle-1-se { background-position: -48px -16px; }
.ui-icon-triangle-1-s { background-position: -64px -16px; }
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
.ui-icon-triangle-1-w { background-position: -96px -16px; }
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
.ui-icon-arrow-1-n { background-position: 0 -32px; }
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
.ui-icon-arrow-1-e { background-position: -32px -32px; }
.ui-icon-arrow-1-se { background-position: -48px -32px; }
.ui-icon-arrow-1-s { background-position: -64px -32px; }
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
.ui-icon-arrow-1-w { background-position: -96px -32px; }
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
.ui-icon-arrowthick-1-n { background-position: 0 -48px; }
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
.ui-icon-arrow-4 { background-position: 0 -80px; }
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
.ui-icon-extlink { background-position: -32px -80px; }
.ui-icon-newwin { background-position: -48px -80px; }
.ui-icon-refresh { background-position: -64px -80px; }
.ui-icon-shuffle { background-position: -80px -80px; }
.ui-icon-transfer-e-w { background-position: -96px -80px; }
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
.ui-icon-folder-collapsed { background-position: 0 -96px; }
.ui-icon-folder-open { background-position: -16px -96px; }
.ui-icon-document { background-position: -32px -96px; }
.ui-icon-document-b { background-position: -48px -96px; }
.ui-icon-note { background-position: -64px -96px; }
.ui-icon-mail-closed { background-position: -80px -96px; }
.ui-icon-mail-open { background-position: -96px -96px; }
.ui-icon-suitcase { background-position: -112px -96px; }
.ui-icon-comment { background-position: -128px -96px; }
.ui-icon-person { background-position: -144px -96px; }
.ui-icon-print { background-position: -160px -96px; }
.ui-icon-trash { background-position: -176px -96px; }
.ui-icon-locked { background-position: -192px -96px; }
.ui-icon-unlocked { background-position: -208px -96px; }
.ui-icon-bookmark { background-position: -224px -96px; }
.ui-icon-tag { background-position: -240px -96px; }
.ui-icon-home { background-position: 0 -112px; }
.ui-icon-flag { background-position: -16px -112px; }
.ui-icon-calendar { background-position: -32px -112px; }
.ui-icon-cart { background-position: -48px -112px; }
.ui-icon-pencil { background-position: -64px -112px; }
.ui-icon-clock { background-position: -80px -112px; }
.ui-icon-disk { background-position: -96px -112px; }
.ui-icon-calculator { background-position: -112px -112px; }
.ui-icon-zoomin { background-position: -128px -112px; }
.ui-icon-zoomout { background-position: -144px -112px; }
.ui-icon-search { background-position: -160px -112px; }
.ui-icon-wrench { background-position: -176px -112px; }
.ui-icon-gear { background-position: -192px -112px; }
.ui-icon-heart { background-position: -208px -112px; }
.ui-icon-star { background-position: -224px -112px; }
.ui-icon-link { background-position: -240px -112px; }
.ui-icon-cancel { background-position: 0 -128px; }
.ui-icon-plus { background-position: -16px -128px; }
.ui-icon-plusthick { background-position: -32px -128px; }
.ui-icon-minus { background-position: -48px -128px; }
.ui-icon-minusthick { background-position: -64px -128px; }
.ui-icon-close { background-position: -80px -128px; }
.ui-icon-closethick { background-position: -96px -128px; }
.ui-icon-key { background-position: -112px -128px; }
.ui-icon-lightbulb { background-position: -128px -128px; }
.ui-icon-scissors { background-position: -144px -128px; }
.ui-icon-clipboard { background-position: -160px -128px; }
.ui-icon-copy { background-position: -176px -128px; }
.ui-icon-contact { background-position: -192px -128px; }
.ui-icon-image { background-position: -208px -128px; }
.ui-icon-video { background-position: -224px -128px; }
.ui-icon-script { background-position: -240px -128px; }
.ui-icon-alert { background-position: 0 -144px; }
.ui-icon-info { background-position: -16px -144px; }
.ui-icon-notice { background-position: -32px -144px; }
.ui-icon-help { background-position: -48px -144px; }
.ui-icon-check { background-position: -64px -144px; }
.ui-icon-bullet { background-position: -80px -144px; }
.ui-icon-radio-on { background-position: -96px -144px; }
.ui-icon-radio-off { background-position: -112px -144px; }
.ui-icon-pin-w { background-position: -128px -144px; }
.ui-icon-pin-s { background-position: -144px -144px; }
.ui-icon-play { background-position: 0 -160px; }
.ui-icon-pause { background-position: -16px -160px; }
.ui-icon-seek-next { background-position: -32px -160px; }
.ui-icon-seek-prev { background-position: -48px -160px; }
.ui-icon-seek-end { background-position: -64px -160px; }
.ui-icon-seek-start { background-position: -80px -160px; }
/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
.ui-icon-seek-first { background-position: -80px -160px; }
.ui-icon-stop { background-position: -96px -160px; }
.ui-icon-eject { background-position: -112px -160px; }
.ui-icon-volume-off { background-position: -128px -160px; }
.ui-icon-volume-on { background-position: -144px -160px; }
.ui-icon-power { background-position: 0 -176px; }
.ui-icon-signal-diag { background-position: -16px -176px; }
.ui-icon-signal { background-position: -32px -176px; }
.ui-icon-battery-0 { background-position: -48px -176px; }
.ui-icon-battery-1 { background-position: -64px -176px; }
.ui-icon-battery-2 { background-position: -80px -176px; }
.ui-icon-battery-3 { background-position: -96px -176px; }
.ui-icon-circle-plus { background-position: 0 -192px; }
.ui-icon-circle-minus { background-position: -16px -192px; }
.ui-icon-circle-close { background-position: -32px -192px; }
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
.ui-icon-circle-zoomin { background-position: -176px -192px; }
.ui-icon-circle-zoomout { background-position: -192px -192px; }
.ui-icon-circle-check { background-position: -208px -192px; }
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
.ui-icon-circlesmall-close { background-position: -32px -208px; }
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
.ui-icon-squaresmall-close { background-position: -80px -208px; }
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
/* Misc visuals
----------------------------------*/
/* Corner radius */
.ui-corner-all,
.ui-corner-top,
.ui-corner-left,
.ui-corner-tl {
    border-top-left-radius: 5px;
}
.ui-corner-all,
.ui-corner-top,
.ui-corner-right,
.ui-corner-tr {
    border-top-right-radius: 5px;
}
.ui-corner-all,
.ui-corner-bottom,
.ui-corner-left,
.ui-corner-bl {
    border-bottom-left-radius: 5px;
}
.ui-corner-all,
.ui-corner-bottom,
.ui-corner-right,
.ui-corner-br {
    border-bottom-right-radius: 5px;
}
/* Overlays */
.ui-widget-overlay {
    background: #333333;
    opacity: .5;
    filter: Alpha(Opacity=50);
}
.ui-widget-shadow {
    margin: -6px 0 0 -6px;
    padding: 6px;
    background: #666666;
    opacity: .2;
    filter: Alpha(Opacity=20);
    border-radius: 8px;
}
/* Roundcube button styling */
.ui-button.ui-state-default {
    display: inline-block;
    margin: 0 2px;
    padding: 1px 2px;
    text-shadow: 0px 1px 1px #fff;
    border: 1px solid #c6c6c6;
    border-radius: 4px;
    background: #f7f7f7;
    background: -moz-linear-gradient(top, #f9f9f9 0%, #e6e6e6 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f9f9f9), color-stop(100%,#e6e6e6));
    background: -o-linear-gradient(top, #f9f9f9 0%, #e6e6e6 100%);
    background: -ms-linear-gradient(top, #f9f9f9 0%, #e6e6e6 100%);
    background: linear-gradient(top, #f9f9f9 0%, #e6e6e6 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f9f9f9', endColorstr='#e6e6e6', GradientType=0);
    -webkit-box-shadow: 0 1px 1px 0 rgba(140, 140, 140, 0.3);
       -moz-box-shadow: 0 1px 1px 0 rgba(140, 140, 140, 0.3);
         -o-box-shadow: 0 1px 1px 0 rgba(140, 140, 140, 0.3);
            box-shadow: 0 1px 1px 0 rgba(140, 140, 140, 0.3);
    text-decoration: none;
    outline: none;
}
.ui-button.mainaction {
    color: #ededed;
    text-shadow: 0px 1px 1px #333;
    border-color: #1f262c;
    background: #505050;
    background: -moz-linear-gradient(top, #505050 0%, #2a2e31 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#505050), color-stop(100%,#2a2e31));
    background: -o-linear-gradient(top, #505050 0%, #2a2e31 100%);
    background: -ms-linear-gradient(top, #505050 0%, #2a2e31 100%);
    background: linear-gradient(top, #505050 0%, #2a2e31 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#505050', endColorstr='#2a2e31', GradientType=0);
    -moz-box-shadow: inset 0 1px 0 0 #777;
    -webkit-box-shadow: inset 0 1px 0 0 #777;
    -o-box-shadow: inset 0 1px 0 0 #777;
    box-shadow: inset 0 1px 0 0 #777;
}
.ui-button.ui-state-focus {
    color: #525252;
    border-color: #4fadd5;
    -moz-box-shadow: 0 0 2px 1px rgba(71,135,177, 0.6);
    -webkit-box-shadow: 0 0 2px 1px rgba(71,135,177, 0.6);
    -o-box-shadow: 0 0 2px 1px rgba(71,135,177, 0.6);
    box-shadow: 0 0 2px 1px rgba(71,135,177, 0.6);
}
.ui-button.ui-state-active {
    color: #525252;
    border-color: #aaa;
    background: #e6e6e6;
    background: -moz-linear-gradient(top, #e6e6e6 0%, #f9f9f9 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#e6e6e6), color-stop(100%,#f9f9f9));
    background: -o-linear-gradient(top, #e6e6e6 0%, #f9f9f9 100%);
    background: -ms-linear-gradient(top, #e6e6e6 0%, #f9f9f9 100%);
    background: linear-gradient(top, #e6e6e6 0%, #f9f9f9 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e6e6e6', endColorstr='#f9f9f9', GradientType=0);
}
.ui-button.ui-state-focus.mainaction,
.ui-button.ui-state-hover.mainaction {
    color: #fff;
}
.ui-button.ui-state-focus.mainaction {
    border-color: #1f262c;
    -moz-box-shadow: 0 0 2px 1px rgba(71,135,177, 0.6), inset 0 1px 0 0 #777;
    -webkit-box-shadow: 0 0 2px 1px rgba(71,135,177, 0.6), inset 0 1px 0 0 #777;
    -o-box-shadow: 0 0 2px 1px rgba(71,135,177, 0.6), inset 0 1px 0 0 #777;
    box-shadow: 0 0 2px 1px rgba(71,135,177, 0.6), inset 0 1px 0 0 #777;
}
.ui-button.ui-state-active.mainaction {
    color: #fff;
    background: #515151;
    background: -moz-linear-gradient(top, #2a2e31 0%, #505050 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#2a2e31), color-stop(100%,#505050));
    background: -o-linear-gradient(top, #2a2e31 0%, #505050 100%);
    background: -ms-linear-gradient(top, #2a2e31 0%, #505050 100%);
    background: linear-gradient(top, #2a2e31 0%, #505050 100%);
}
.ui-button[disabled],
.ui-button[disabled]:hover,
.ui-button.mainaction[disabled] {
    color: #aaa !important;
}
/* Roundcube's specific Datepicker style override */
.ui-datepicker {
    min-width: 20em;
    padding: 0;
    display: none;
    border: 0;
    border-radius: 3px;
    -webkit-box-shadow: #666 1px 1px 10px;
       -moz-box-shadow: 1px 1px 10px #666;
            box-shadow: 1px 1px 16px #666;
}
.ui-datepicker .ui-datepicker-header {
    padding: .3em 0;
    border-radius: 3px 3px 0 0;
    border: 0;
    background: #3a3a3a;
    filter: none;
    color: #fff;
    text-shadow: 0px 1px 1px #000;
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
    border: 0;
    background: none;
}
.ui-datepicker .ui-datepicker-header .ui-icon {
    background: url("images/ui-icons-datepicker.png") 0 0 no-repeat;
}
.ui-datepicker .ui-datepicker-header .ui-icon-circle-triangle-w {
    background-position: 0 2px;
}
.ui-datepicker .ui-datepicker-header .ui-icon-circle-triangle-e {
    background-position: -14px 2px;
}
.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
    top: 2px;
    border: 0;
    background: none;
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-prev-hover {
    left: 2px;
}
.ui-datepicker .ui-datepicker-next,
.ui-datepicker .ui-datepicker-next-hover {
    right: 2px;
}
.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
    border: 0;
    background: #3a3a3a;
    outline: none;
    color: #fff;
    font-weight: bold;
    width: auto;
    margin-right: 4px;
    padding-right: 4px;
}
.ui-datepicker .ui-datepicker-title select::-ms-expand {
    display: none;
}
.ie10 .ui-datepicker .ui-datepicker-title select,
.webkit .ui-datepicker .ui-datepicker-title select,
.mozilla .ui-datepicker .ui-datepicker-title select {
    background-image: url("images/ui-icons-datepicker.png");
    background-position: right -18px;
    background-repeat: no-repeat;
    padding-right: 14px;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}
.mozilla .ui-datepicker .ui-datepicker-title select {
    background-position: right -17px;
    text-indent: 0.01px;
    text-overflow: '';
    padding-right: 0;
}
.ui-datepicker .ui-datepicker-month:focus,
.ui-datepicker .ui-datepicker-year:focus {
    outline: 1px solid #4fadd5;
}
.ui-datepicker table {
    margin: 0;
    border-spacing: 0;
}
.ui-datepicker table:focus {
    outline: 2px solid #4fadd5;
    outline-offset: -2px;
}
.ui-datepicker td {
    border: 1px solid #bbb;
    padding: 0;
}
.ui-datepicker td span, .ui-datepicker td a {
    border: 0;
    padding: .3em;
    text-shadow: 0px 1px 1px #fff;
}
.ui-datepicker td a.ui-state-default {
    border: 0px solid #fff;
    border-top-width: 1px;
    border-left-width: 1px;
    background: #e6e6e6;
    background: -moz-linear-gradient(top, #e6e6e6 0%, #d6d6d6 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#e6e6e6), color-stop(100%,#d6d6d6));
    background: -o-linear-gradient(top, #e6e6e6 0%, #d6d6d6 100%);
    background: -ms-linear-gradient(top, #e6e6e6 0%, #d6d6d6 100%);
    background: linear-gradient(top, #e6e6e6 0%, #d6d6d6 100%);
}
.ui-datepicker td a.ui-priority-secondary {
    background: #eee;
}
.ui-datepicker td a.ui-state-active {
    color: #fff;
    border-color: #0286ac !important;
    text-shadow: 0px 1px 1px #00516e !important;
    background: #00acd4 !important;
    background: -moz-linear-gradient(top, #00acd4 0%, #008fc7 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#00acd4), color-stop(100%,#008fc7));
    background: -o-linear-gradient(top, #00acd4 0%, #008fc7 100%);
    background: -ms-linear-gradient(top, #00acd4 0%, #008fc7 100%);
    background: linear-gradient(top, #00acd4 0%, #008fc7 100%);
}
.ui-datepicker .ui-state-highlight {
    color: #0081c2;
}
.ui-datepicker td.ui-datepicker-days-cell-over a.ui-state-default {
    color: #fff;
    border-color: rgba(73,180,210,0.7);
    background: rgba(73,180,210,0.7);
    text-shadow: 0px 1px 1px #666;
}
plugins/jqueryui/themes/larry/jquery-ui-1.9.2.custom.css
File was deleted
plugins/jqueryui/themes/larry/jquery-ui-css.diff
New file
@@ -0,0 +1,600 @@
--- jquery-ui-1.10.4.custom.orig.css    2014-06-17 00:47:00.000000000 +0200
+++ jquery-ui-1.10.4.custom.css    2014-07-31 08:54:40.000000000 +0200
@@ -238,6 +238,8 @@
 .ui-button-icons-only .ui-button-text {
     padding: .4em;
     text-indent: -9999999px;
+    width: 1px;
+    overflow: hidden;
 }
 .ui-button-text-icon-primary .ui-button-text,
 .ui-button-text-icons .ui-button-text {
@@ -463,20 +465,29 @@
     border-left-width: 1px;
 }
 .ui-dialog {
-    overflow: hidden;
     position: absolute;
     top: 0;
     left: 0;
-    padding: .2em;
+    padding: 3px;
+    background: #fff;
+    border-radius: 6px !important;
+    border: 0 !important;
     outline: 0;
+    -webkit-box-shadow: #666 1px 1px 12px;
+       -moz-box-shadow: 1px 1px 12px #666;
+            box-shadow: 1px 1px 18px #666;
 }
 .ui-dialog .ui-dialog-titlebar {
-    padding: .4em 1em;
+    padding: 15px 1em 8px 1em;
     position: relative;
+    border: 0;
+    border-radius: 5px 5px 0 0;
 }
 .ui-dialog .ui-dialog-title {
     float: left;
-    margin: .1em 0;
+    margin: .1em 16px .1em 0;
+    font-size: 1.3em;
+    text-shadow: 1px 1px 1px #fff;
     white-space: nowrap;
     width: 90%;
     overflow: hidden;
@@ -484,50 +495,84 @@
 }
 .ui-dialog .ui-dialog-titlebar-close {
     position: absolute;
-    right: .3em;
-    top: 50%;
-    width: 20px;
-    margin: -10px 0 0 0;
-    padding: 1px;
-    height: 20px;
+    right: -15px;
+    top: -15px;
+    width: 30px;
+    margin: 0;
+    padding: 0;
+    height: 30px;
+    z-index: 99999;
+    border-width: 0 !important;
+    background: none !important;
+    filter: none !important;
+    -webkit-box-shadow: none !important;
+       -moz-box-shadow: none !important;
+         -o-box-shadow: none !important;
+            box-shadow: none !important;
+}
+.ui-dialog .ui-dialog-titlebar-close.ui-state-focus {
+    outline: 2px solid #4fadd5;
+}
+.ui-dialog .ui-dialog-titlebar-close .ui-icon-closethick {
+    top: 0;
+    left: 0;
+    margin: 0;
+    width: 30px;
+    height: 30px;
+    background: url("images/ui-dialog-close.png") 0 0 no-repeat;
+}
+.no-close .ui-dialog-titlebar-close {
+    display: none !important;
 }
 .ui-dialog .ui-dialog-content {
     position: relative;
     border: 0;
-    padding: .5em 1em;
+    padding: 1.5em 1em 0.5em 1em;
     background: none;
     overflow: auto;
 }
+.ui-dialog .ui-widget-content {
+    border: 0;
+}
 .ui-dialog .ui-dialog-buttonpane {
     text-align: left;
     border-width: 1px 0 0 0;
     background-image: none;
-    margin-top: .5em;
-    padding: .3em 1em .5em .4em;
+    border-color: #ddd;
+    border-style: solid;
+    margin: 0;
+    padding: .3em 1em .5em .8em;
 }
 .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
-    float: right;
+    float: left;
 }
 .ui-dialog .ui-dialog-buttonpane button {
     margin: .5em .4em .5em 0;
     cursor: pointer;
 }
 .ui-dialog .ui-resizable-se {
-    width: 12px;
-    height: 12px;
-    right: -5px;
-    bottom: -5px;
-    background-position: 16px 16px;
+    width: 14px;
+    height: 14px;
+    right: 3px;
+    bottom: 3px;
+    background-position: -80px -224px;
 }
 .ui-draggable .ui-dialog-titlebar {
     cursor: move;
 }
 .ui-menu {
     list-style: none;
-    padding: 2px;
+    padding: 0;
     margin: 0;
     display: block;
     outline: none;
+    background: #444;
+    border: 1px solid #999;
+    border-radius: 4px !important;
+    -webkit-box-shadow: 0 2px 6px 0 #333;
+       -moz-box-shadow: 0 2px 6px 0 #333;
+         -o-box-shadow: 0 2px 6px 0 #333;
+            box-shadow: 0 2px 6px 0 #333;
 }
 .ui-menu .ui-menu {
     margin-top: -3px;
@@ -539,6 +584,16 @@
     width: 100%;
     /* support: IE10, see #8844 */
     list-style-image: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);
+    color: #fff;
+    white-space: nowrap;
+    border-top: 1px solid #5a5a5a;
+    border-bottom: 1px solid #333;
+}
+.ui-menu .ui-menu-item:first-child {
+    border-top: 0;
+}
+.ui-menu .ui-menu-item:last-child {
+    border-bottom: 0;
 }
 .ui-menu .ui-menu-divider {
     margin: 5px -2px 5px -2px;
@@ -550,15 +605,26 @@
 .ui-menu .ui-menu-item a {
     text-decoration: none;
     display: block;
-    padding: 2px .4em;
+    padding: 6px 10px 4px 10px;
     line-height: 1.5;
     min-height: 0; /* support: IE7 */
     font-weight: normal;
+    border: 0;
+    margin: 0;
+    border-radius: 0;
+    color: #fff;
+    background: #444;
+    text-shadow: 0px 1px 1px #333;
 }
 .ui-menu .ui-menu-item a.ui-state-focus,
 .ui-menu .ui-menu-item a.ui-state-active {
     font-weight: normal;
-    margin: -1px;
+    background: #00aad6;
+    background: -moz-linear-gradient(top, #00aad6 0%, #008fc9 100%);
+    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#00aad6), color-stop(100%,#008fc9));
+    background: -o-linear-gradient(top, #00aad6 0%, #008fc9 100%);
+    background: -ms-linear-gradient(top, #00aad6 0%, #008fc9 100%);
+    background: linear-gradient(top, #00aad6 0%, #008fc9 100%);
 }
 .ui-menu .ui-state-disabled {
@@ -626,7 +692,13 @@
     font-size: .7em;
     display: block;
     border: 0;
-    background-position: 0 0;
+    background: #019bc6;
+    background: -moz-linear-gradient(top, #019bc6 0%, #017cb4 100%);
+    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#019bc6), color-stop(100%,#017cb4));
+    background: -o-linear-gradient(top, #019bc6 0%, #017cb4 100%);
+    background: -ms-linear-gradient(top, #019bc6 0%, #017cb4 100%);
+    background: linear-gradient(top, #019bc6 0%, #017cb4 100%);
+    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#019bc6', endColorstr='#017cb4', GradientType=0);
 }
 /* For IE8 - See #6727 */
@@ -732,23 +804,41 @@
     padding: .2em;
 }
 .ui-tabs .ui-tabs-nav {
-    margin: 0;
-    padding: .2em .2em 0;
+    margin: 0; padding: 0;
+    border: 0;
+    background: transparent;
+    filter: none;
+    height: 44px;
 }
 .ui-tabs .ui-tabs-nav li {
     list-style: none;
-    float: left;
     position: relative;
+    display: inline-block;
     top: 0;
-    margin: 1px .2em 0 0;
-    border-bottom-width: 0;
-    padding: 0;
+    margin: 0;
+    border: 0 !important;
+    padding: 0 1px 0 0;
     white-space: nowrap;
+    background: #f8f8f8;
+    background: -moz-linear-gradient(top, #f8f8f8 0%, #d3d3d3 50%, #f8f8f8 100%);
+    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f8f8f8), color-stop(50%,#d3d3d3), color-stop(100%,#f8f8f8));
+    background: -webkit-linear-gradient(top, #f8f8f8 0%, #d3d3d3 50%, #f8f8f8 100%);
+    background: -o-linear-gradient(top, #f8f8f8 0%, #d3d3d3 50%, #f8f8f8 100%);
+    background: -ms-linear-gradient(top, #f8f8f8 0%, #d3d3d3 50%, #f8f8f8 100%);
+    background: linear-gradient(top, #f8f8f8 0%, #d3d3d3 50%, #f8f8f8 100%);
+    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f8f8f8', endColorstr='#d3d3d3', GradientType=0);
+}
+.ui-tabs .ui-tabs-nav li:last-child {
+    background: none;
 }
 .ui-tabs .ui-tabs-nav .ui-tabs-anchor {
-    float: left;
-    padding: .5em 1em;
+    display: inline-block;
+    padding: 15px;
     text-decoration: none;
+    font-size: 12px;
+    color: #999;
+    background: #fafafa;
+    border-right: 1px solid #fafafa;
 }
 .ui-tabs .ui-tabs-nav li.ui-tabs-active {
     margin-bottom: -1px;
@@ -759,14 +849,26 @@
 .ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor {
     cursor: text;
 }
+.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor {
+    outline: none;
+    color: #004458;
+    background: #efefef;
+    background: -moz-linear-gradient(top, #fafafa 40%, #e4e4e4 100%);
+    background: -webkit-gradient(linear, left top, left bottom, color-stop(40%,#fff), color-stop(100%,#e4e4e4));
+    background: -o-linear-gradient(top, #fafafa 40%, #e4e4e4 100%);
+    background: -ms-linear-gradient(top, #fafafa 40%, #e4e4e4 100%);
+    background: linear-gradient(top, #fafafa 40%, #e4e4e4 100%);
+    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fafafa', endColorstr='#e4e4e4', GradientType=0);
+}
 .ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor {
     cursor: pointer;
 }
 .ui-tabs .ui-tabs-panel {
     display: block;
     border-width: 0;
-    padding: 1em 1.4em;
-    background: none;
+    padding: 0.5em 1em;
+    margin-top: 0.2em;
+    background: #efefef;
 }
 .ui-tooltip {
     padding: 8px;
@@ -798,15 +900,21 @@
 }
 .ui-widget-content {
     border: 1px solid #aaaaaa;
-    background: #fafafa url("images/ui-bg_highlight-soft_75_fafafa_1x100.png") 50% top repeat-x;
-    color: 33333;
+    background: #fafafa;
+    color: #333333;
 }
 .ui-widget-content a {
-    color: 33333;
+    color: #0186ba;
 }
 .ui-widget-header {
     border: 1px solid #fafafa;
-    background: #e4e4e4 url("images/ui-bg_highlight-soft_90_e4e4e4_1x100.png") 50% 50% repeat-x;
+    background: #e4e4e4;
+    background: -moz-linear-gradient(top, #f2f2f2 0%, #e4e4e4 100%);
+    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f2f2f2), color-stop(100%,#e4e4e4));
+    background: -o-linear-gradient(top, #f2f2f2 0%, #e4e4e4 100%);
+    background: -ms-linear-gradient(top, #f2f2f2 0%, #e4e4e4 100%);
+    background: linear-gradient(top, #f2f2f2 0%, #e4e4e4 100%);
+    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f2f2f2', endColorstr='#e4e4e4', GradientType=0);
     color: #666666;
     font-weight: bold;
 }
@@ -820,7 +928,7 @@
 .ui-widget-content .ui-state-default,
 .ui-widget-header .ui-state-default {
     border: 1px solid #cccccc;
-    background: #f8f8f8 url("images/ui-bg_highlight-hard_75_f8f8f8_1x100.png") 50% 50% repeat-x;
+    background: #f8f8f8;
     font-weight: bold;
     color: #666666;
 }
@@ -837,7 +945,7 @@
 .ui-widget-content .ui-state-focus,
 .ui-widget-header .ui-state-focus {
     border: 1px solid #aaaaaa;
-    background: #eaeaea url("images/ui-bg_highlight-hard_75_eaeaea_1x100.png") 50% 50% repeat-x;
+    background: #eaeaea;
     font-weight: bold;
     color: #333333;
 }
@@ -856,7 +964,7 @@
 .ui-widget-content .ui-state-active,
 .ui-widget-header .ui-state-active {
     border: 1px solid #aaaaaa;
-    background: #ffffff url("images/ui-bg_highlight-hard_65_ffffff_1x100.png") 50% 50% repeat-x;
+    background: #ffffff;
     font-weight: bold;
     color: #333333;
 }
@@ -873,7 +981,7 @@
 .ui-widget-content .ui-state-highlight,
 .ui-widget-header .ui-state-highlight {
     border: 1px solid #a3a3a3;
-    background: #b0ccd7 url("images/ui-bg_highlight-hard_55_b0ccd7_1x100.png") 50% top repeat-x;
+    background: #b0ccd7;
     color: #004458;
 }
 .ui-state-highlight a,
@@ -885,7 +993,7 @@
 .ui-widget-content .ui-state-error,
 .ui-widget-header .ui-state-error {
     border: 1px solid #d7211e;
-    background: #fef1ec url("images/ui-bg_flat_95_fef1ec_40x100.png") 50% 50% repeat-x;
+    background: #fef1ec;
     color: #d64040;
 }
 .ui-state-error a,
@@ -1164,15 +1272,240 @@
 /* Overlays */
 .ui-widget-overlay {
-    background: #333333 url("images/ui-bg_flat_0_333333_40x100.png") 50% 50% repeat-x;
+    background: #333333;
     opacity: .5;
     filter: Alpha(Opacity=50);
 }
 .ui-widget-shadow {
     margin: -6px 0 0 -6px;
     padding: 6px;
-    background: #666666 url("images/ui-bg_flat_0_666666_40x100.png") 50% 50% repeat-x;
+    background: #666666;
     opacity: .2;
     filter: Alpha(Opacity=20);
     border-radius: 8px;
 }
+
+/* Roundcube button styling */
+.ui-button.ui-state-default {
+    display: inline-block;
+    margin: 0 2px;
+    padding: 1px 2px;
+    text-shadow: 0px 1px 1px #fff;
+    border: 1px solid #c6c6c6;
+    border-radius: 4px;
+    background: #f7f7f7;
+    background: -moz-linear-gradient(top, #f9f9f9 0%, #e6e6e6 100%);
+    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f9f9f9), color-stop(100%,#e6e6e6));
+    background: -o-linear-gradient(top, #f9f9f9 0%, #e6e6e6 100%);
+    background: -ms-linear-gradient(top, #f9f9f9 0%, #e6e6e6 100%);
+    background: linear-gradient(top, #f9f9f9 0%, #e6e6e6 100%);
+    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f9f9f9', endColorstr='#e6e6e6', GradientType=0);
+    -webkit-box-shadow: 0 1px 1px 0 rgba(140, 140, 140, 0.3);
+       -moz-box-shadow: 0 1px 1px 0 rgba(140, 140, 140, 0.3);
+         -o-box-shadow: 0 1px 1px 0 rgba(140, 140, 140, 0.3);
+            box-shadow: 0 1px 1px 0 rgba(140, 140, 140, 0.3);
+    text-decoration: none;
+    outline: none;
+}
+
+.ui-button.mainaction {
+    color: #ededed;
+    text-shadow: 0px 1px 1px #333;
+    border-color: #1f262c;
+    background: #505050;
+    background: -moz-linear-gradient(top, #505050 0%, #2a2e31 100%);
+    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#505050), color-stop(100%,#2a2e31));
+    background: -o-linear-gradient(top, #505050 0%, #2a2e31 100%);
+    background: -ms-linear-gradient(top, #505050 0%, #2a2e31 100%);
+    background: linear-gradient(top, #505050 0%, #2a2e31 100%);
+    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#505050', endColorstr='#2a2e31', GradientType=0);
+    -moz-box-shadow: inset 0 1px 0 0 #777;
+    -webkit-box-shadow: inset 0 1px 0 0 #777;
+    -o-box-shadow: inset 0 1px 0 0 #777;
+    box-shadow: inset 0 1px 0 0 #777;
+}
+
+.ui-button.ui-state-focus {
+    color: #525252;
+    border-color: #4fadd5;
+    -moz-box-shadow: 0 0 2px 1px rgba(71,135,177, 0.6);
+    -webkit-box-shadow: 0 0 2px 1px rgba(71,135,177, 0.6);
+    -o-box-shadow: 0 0 2px 1px rgba(71,135,177, 0.6);
+    box-shadow: 0 0 2px 1px rgba(71,135,177, 0.6);
+}
+
+.ui-button.ui-state-active {
+    color: #525252;
+    border-color: #aaa;
+    background: #e6e6e6;
+    background: -moz-linear-gradient(top, #e6e6e6 0%, #f9f9f9 100%);
+    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#e6e6e6), color-stop(100%,#f9f9f9));
+    background: -o-linear-gradient(top, #e6e6e6 0%, #f9f9f9 100%);
+    background: -ms-linear-gradient(top, #e6e6e6 0%, #f9f9f9 100%);
+    background: linear-gradient(top, #e6e6e6 0%, #f9f9f9 100%);
+    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e6e6e6', endColorstr='#f9f9f9', GradientType=0);
+}
+
+.ui-button.ui-state-focus.mainaction,
+.ui-button.ui-state-hover.mainaction {
+    color: #fff;
+}
+
+.ui-button.ui-state-focus.mainaction {
+    border-color: #1f262c;
+    -moz-box-shadow: 0 0 2px 1px rgba(71,135,177, 0.6), inset 0 1px 0 0 #777;
+    -webkit-box-shadow: 0 0 2px 1px rgba(71,135,177, 0.6), inset 0 1px 0 0 #777;
+    -o-box-shadow: 0 0 2px 1px rgba(71,135,177, 0.6), inset 0 1px 0 0 #777;
+    box-shadow: 0 0 2px 1px rgba(71,135,177, 0.6), inset 0 1px 0 0 #777;
+}
+
+.ui-button.ui-state-active.mainaction {
+    color: #fff;
+    background: #515151;
+    background: -moz-linear-gradient(top, #2a2e31 0%, #505050 100%);
+    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#2a2e31), color-stop(100%,#505050));
+    background: -o-linear-gradient(top, #2a2e31 0%, #505050 100%);
+    background: -ms-linear-gradient(top, #2a2e31 0%, #505050 100%);
+    background: linear-gradient(top, #2a2e31 0%, #505050 100%);
+}
+
+.ui-button[disabled],
+.ui-button[disabled]:hover,
+.ui-button.mainaction[disabled] {
+    color: #aaa !important;
+}
+
+/* Roundcube's specific Datepicker style override */
+.ui-datepicker {
+    min-width: 20em;
+    padding: 0;
+    display: none;
+    border: 0;
+    border-radius: 3px;
+    -webkit-box-shadow: #666 1px 1px 10px;
+       -moz-box-shadow: 1px 1px 10px #666;
+            box-shadow: 1px 1px 16px #666;
+}
+.ui-datepicker .ui-datepicker-header {
+    padding: .3em 0;
+    border-radius: 3px 3px 0 0;
+    border: 0;
+    background: #3a3a3a;
+    filter: none;
+    color: #fff;
+    text-shadow: 0px 1px 1px #000;
+}
+.ui-datepicker .ui-datepicker-prev,
+.ui-datepicker .ui-datepicker-next {
+    border: 0;
+    background: none;
+}
+.ui-datepicker .ui-datepicker-header .ui-icon {
+    background: url("images/ui-icons-datepicker.png") 0 0 no-repeat;
+}
+.ui-datepicker .ui-datepicker-header .ui-icon-circle-triangle-w {
+    background-position: 0 2px;
+}
+.ui-datepicker .ui-datepicker-header .ui-icon-circle-triangle-e {
+    background-position: -14px 2px;
+}
+.ui-datepicker .ui-datepicker-prev-hover,
+.ui-datepicker .ui-datepicker-next-hover {
+    top: 2px;
+    border: 0;
+    background: none;
+}
+.ui-datepicker .ui-datepicker-prev,
+.ui-datepicker .ui-datepicker-prev-hover {
+    left: 2px;
+}
+.ui-datepicker .ui-datepicker-next,
+.ui-datepicker .ui-datepicker-next-hover {
+    right: 2px;
+}
+.ui-datepicker select.ui-datepicker-month,
+.ui-datepicker select.ui-datepicker-year {
+    border: 0;
+    background: #3a3a3a;
+    outline: none;
+    color: #fff;
+    font-weight: bold;
+    width: auto;
+    margin-right: 4px;
+    padding-right: 4px;
+}
+.ui-datepicker .ui-datepicker-title select::-ms-expand {
+    display: none;
+}
+.ie10 .ui-datepicker .ui-datepicker-title select,
+.webkit .ui-datepicker .ui-datepicker-title select,
+.mozilla .ui-datepicker .ui-datepicker-title select {
+    background-image: url("images/ui-icons-datepicker.png");
+    background-position: right -18px;
+    background-repeat: no-repeat;
+    padding-right: 14px;
+    -webkit-appearance: none;
+       -moz-appearance: none;
+            appearance: none;
+}
+.mozilla .ui-datepicker .ui-datepicker-title select {
+    background-position: right -17px;
+    text-indent: 0.01px;
+    text-overflow: '';
+    padding-right: 0;
+}
+.ui-datepicker .ui-datepicker-month:focus,
+.ui-datepicker .ui-datepicker-year:focus {
+    outline: 1px solid #4fadd5;
+}
+.ui-datepicker table {
+    margin: 0;
+    border-spacing: 0;
+}
+.ui-datepicker table:focus {
+    outline: 2px solid #4fadd5;
+    outline-offset: -2px;
+}
+.ui-datepicker td {
+    border: 1px solid #bbb;
+    padding: 0;
+}
+.ui-datepicker td span, .ui-datepicker td a {
+    border: 0;
+    padding: .3em;
+    text-shadow: 0px 1px 1px #fff;
+}
+.ui-datepicker td a.ui-state-default {
+    border: 0px solid #fff;
+    border-top-width: 1px;
+    border-left-width: 1px;
+    background: #e6e6e6;
+    background: -moz-linear-gradient(top, #e6e6e6 0%, #d6d6d6 100%);
+    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#e6e6e6), color-stop(100%,#d6d6d6));
+    background: -o-linear-gradient(top, #e6e6e6 0%, #d6d6d6 100%);
+    background: -ms-linear-gradient(top, #e6e6e6 0%, #d6d6d6 100%);
+    background: linear-gradient(top, #e6e6e6 0%, #d6d6d6 100%);
+}
+.ui-datepicker td a.ui-priority-secondary {
+    background: #eee;
+}
+.ui-datepicker td a.ui-state-active {
+    color: #fff;
+    border-color: #0286ac !important;
+    text-shadow: 0px 1px 1px #00516e !important;
+    background: #00acd4 !important;
+    background: -moz-linear-gradient(top, #00acd4 0%, #008fc7 100%);
+    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#00acd4), color-stop(100%,#008fc7));
+    background: -o-linear-gradient(top, #00acd4 0%, #008fc7 100%);
+    background: -ms-linear-gradient(top, #00acd4 0%, #008fc7 100%);
+    background: linear-gradient(top, #00acd4 0%, #008fc7 100%);
+}
+.ui-datepicker .ui-state-highlight {
+    color: #0081c2;
+}
+.ui-datepicker td.ui-datepicker-days-cell-over a.ui-state-default {
+    color: #fff;
+    border-color: rgba(73,180,210,0.7);
+    background: rgba(73,180,210,0.7);
+    text-shadow: 0px 1px 1px #666;
+}
plugins/jqueryui/themes/redmond/images/animated-overlay.gif
plugins/jqueryui/themes/redmond/jquery-ui-1.10.4.custom.css
New file
@@ -0,0 +1,1178 @@
/*! jQuery UI - v1.10.4 - 2014-06-17
* http://jqueryui.com
* Includes: jquery.ui.core.css, jquery.ui.resizable.css, jquery.ui.selectable.css, jquery.ui.accordion.css, jquery.ui.autocomplete.css, jquery.ui.button.css, jquery.ui.datepicker.css, jquery.ui.dialog.css, jquery.ui.menu.css, jquery.ui.progressbar.css, jquery.ui.slider.css, jquery.ui.spinner.css, jquery.ui.tabs.css, jquery.ui.tooltip.css, jquery.ui.theme.css
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Lucida%20Grande%2CLucida%20Sans%2CArial%2Csans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=5px&bgColorHeader=5c9ccc&bgTextureHeader=gloss_wave&bgImgOpacityHeader=55&borderColorHeader=4297d7&fcHeader=ffffff&iconColorHeader=d8e7f3&bgColorContent=fcfdfd&bgTextureContent=inset_hard&bgImgOpacityContent=100&borderColorContent=a6c9e2&fcContent=222222&iconColorContent=469bdd&bgColorDefault=dfeffc&bgTextureDefault=glass&bgImgOpacityDefault=85&borderColorDefault=c5dbec&fcDefault=2e6e9e&iconColorDefault=6da8d5&bgColorHover=d0e5f5&bgTextureHover=glass&bgImgOpacityHover=75&borderColorHover=79b7e7&fcHover=1d5987&iconColorHover=217bc0&bgColorActive=f5f8f9&bgTextureActive=inset_hard&bgImgOpacityActive=100&borderColorActive=79b7e7&fcActive=e17009&iconColorActive=f9bd01&bgColorHighlight=fbec88&bgTextureHighlight=flat&bgImgOpacityHighlight=55&borderColorHighlight=fad42e&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
* Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */
/* Layout helpers
----------------------------------*/
.ui-helper-hidden {
    display: none;
}
.ui-helper-hidden-accessible {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}
.ui-helper-reset {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    line-height: 1.3;
    text-decoration: none;
    font-size: 100%;
    list-style: none;
}
.ui-helper-clearfix:before,
.ui-helper-clearfix:after {
    content: "";
    display: table;
    border-collapse: collapse;
}
.ui-helper-clearfix:after {
    clear: both;
}
.ui-helper-clearfix {
    min-height: 0; /* support: IE7 */
}
.ui-helper-zfix {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    opacity: 0;
    filter:Alpha(Opacity=0);
}
.ui-front {
    z-index: 100;
}
/* Interaction Cues
----------------------------------*/
.ui-state-disabled {
    cursor: default !important;
}
/* Icons
----------------------------------*/
/* states and images */
.ui-icon {
    display: block;
    text-indent: -99999px;
    overflow: hidden;
    background-repeat: no-repeat;
}
/* Misc visuals
----------------------------------*/
/* Overlays */
.ui-widget-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.ui-resizable {
    position: relative;
}
.ui-resizable-handle {
    position: absolute;
    font-size: 0.1px;
    display: block;
}
.ui-resizable-disabled .ui-resizable-handle,
.ui-resizable-autohide .ui-resizable-handle {
    display: none;
}
.ui-resizable-n {
    cursor: n-resize;
    height: 7px;
    width: 100%;
    top: -5px;
    left: 0;
}
.ui-resizable-s {
    cursor: s-resize;
    height: 7px;
    width: 100%;
    bottom: -5px;
    left: 0;
}
.ui-resizable-e {
    cursor: e-resize;
    width: 7px;
    right: -5px;
    top: 0;
    height: 100%;
}
.ui-resizable-w {
    cursor: w-resize;
    width: 7px;
    left: -5px;
    top: 0;
    height: 100%;
}
.ui-resizable-se {
    cursor: se-resize;
    width: 12px;
    height: 12px;
    right: 1px;
    bottom: 1px;
}
.ui-resizable-sw {
    cursor: sw-resize;
    width: 9px;
    height: 9px;
    left: -5px;
    bottom: -5px;
}
.ui-resizable-nw {
    cursor: nw-resize;
    width: 9px;
    height: 9px;
    left: -5px;
    top: -5px;
}
.ui-resizable-ne {
    cursor: ne-resize;
    width: 9px;
    height: 9px;
    right: -5px;
    top: -5px;
}
.ui-selectable-helper {
    position: absolute;
    z-index: 100;
    border: 1px dotted black;
}
.ui-accordion .ui-accordion-header {
    display: block;
    cursor: pointer;
    position: relative;
    margin-top: 2px;
    padding: .5em .5em .5em .7em;
    min-height: 0; /* support: IE7 */
}
.ui-accordion .ui-accordion-icons {
    padding-left: 2.2em;
}
.ui-accordion .ui-accordion-noicons {
    padding-left: .7em;
}
.ui-accordion .ui-accordion-icons .ui-accordion-icons {
    padding-left: 2.2em;
}
.ui-accordion .ui-accordion-header .ui-accordion-header-icon {
    position: absolute;
    left: .5em;
    top: 50%;
    margin-top: -8px;
}
.ui-accordion .ui-accordion-content {
    padding: 1em 2.2em;
    border-top: 0;
    overflow: auto;
}
.ui-autocomplete {
    position: absolute;
    top: 0;
    left: 0;
    cursor: default;
}
.ui-button {
    display: inline-block;
    position: relative;
    padding: 0;
    line-height: normal;
    margin-right: .1em;
    cursor: pointer;
    vertical-align: middle;
    text-align: center;
    overflow: visible; /* removes extra width in IE */
}
.ui-button,
.ui-button:link,
.ui-button:visited,
.ui-button:hover,
.ui-button:active {
    text-decoration: none;
}
/* to make room for the icon, a width needs to be set here */
.ui-button-icon-only {
    width: 2.2em;
}
/* button elements seem to need a little more width */
button.ui-button-icon-only {
    width: 2.4em;
}
.ui-button-icons-only {
    width: 3.4em;
}
button.ui-button-icons-only {
    width: 3.7em;
}
/* button text element */
.ui-button .ui-button-text {
    display: block;
    line-height: normal;
}
.ui-button-text-only .ui-button-text {
    padding: .4em 1em;
}
.ui-button-icon-only .ui-button-text,
.ui-button-icons-only .ui-button-text {
    padding: .4em;
    text-indent: -9999999px;
}
.ui-button-text-icon-primary .ui-button-text,
.ui-button-text-icons .ui-button-text {
    padding: .4em 1em .4em 2.1em;
}
.ui-button-text-icon-secondary .ui-button-text,
.ui-button-text-icons .ui-button-text {
    padding: .4em 2.1em .4em 1em;
}
.ui-button-text-icons .ui-button-text {
    padding-left: 2.1em;
    padding-right: 2.1em;
}
/* no icon support for input elements, provide padding by default */
input.ui-button {
    padding: .4em 1em;
}
/* button icon element(s) */
.ui-button-icon-only .ui-icon,
.ui-button-text-icon-primary .ui-icon,
.ui-button-text-icon-secondary .ui-icon,
.ui-button-text-icons .ui-icon,
.ui-button-icons-only .ui-icon {
    position: absolute;
    top: 50%;
    margin-top: -8px;
}
.ui-button-icon-only .ui-icon {
    left: 50%;
    margin-left: -8px;
}
.ui-button-text-icon-primary .ui-button-icon-primary,
.ui-button-text-icons .ui-button-icon-primary,
.ui-button-icons-only .ui-button-icon-primary {
    left: .5em;
}
.ui-button-text-icon-secondary .ui-button-icon-secondary,
.ui-button-text-icons .ui-button-icon-secondary,
.ui-button-icons-only .ui-button-icon-secondary {
    right: .5em;
}
/* button sets */
.ui-buttonset {
    margin-right: 7px;
}
.ui-buttonset .ui-button {
    margin-left: 0;
    margin-right: -.3em;
}
/* workarounds */
/* reset extra padding in Firefox, see h5bp.com/l */
input.ui-button::-moz-focus-inner,
button.ui-button::-moz-focus-inner {
    border: 0;
    padding: 0;
}
.ui-datepicker {
    width: 17em;
    padding: .2em .2em 0;
    display: none;
}
.ui-datepicker .ui-datepicker-header {
    position: relative;
    padding: .2em 0;
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
    position: absolute;
    top: 2px;
    width: 1.8em;
    height: 1.8em;
}
.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
    top: 1px;
}
.ui-datepicker .ui-datepicker-prev {
    left: 2px;
}
.ui-datepicker .ui-datepicker-next {
    right: 2px;
}
.ui-datepicker .ui-datepicker-prev-hover {
    left: 1px;
}
.ui-datepicker .ui-datepicker-next-hover {
    right: 1px;
}
.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
    display: block;
    position: absolute;
    left: 50%;
    margin-left: -8px;
    top: 50%;
    margin-top: -8px;
}
.ui-datepicker .ui-datepicker-title {
    margin: 0 2.3em;
    line-height: 1.8em;
    text-align: center;
}
.ui-datepicker .ui-datepicker-title select {
    font-size: 1em;
    margin: 1px 0;
}
.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
    width: 49%;
}
.ui-datepicker table {
    width: 100%;
    font-size: .9em;
    border-collapse: collapse;
    margin: 0 0 .4em;
}
.ui-datepicker th {
    padding: .7em .3em;
    text-align: center;
    font-weight: bold;
    border: 0;
}
.ui-datepicker td {
    border: 0;
    padding: 1px;
}
.ui-datepicker td span,
.ui-datepicker td a {
    display: block;
    padding: .2em;
    text-align: right;
    text-decoration: none;
}
.ui-datepicker .ui-datepicker-buttonpane {
    background-image: none;
    margin: .7em 0 0 0;
    padding: 0 .2em;
    border-left: 0;
    border-right: 0;
    border-bottom: 0;
}
.ui-datepicker .ui-datepicker-buttonpane button {
    float: right;
    margin: .5em .2em .4em;
    cursor: pointer;
    padding: .2em .6em .3em .6em;
    width: auto;
    overflow: visible;
}
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
    float: left;
}
/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi {
    width: auto;
}
.ui-datepicker-multi .ui-datepicker-group {
    float: left;
}
.ui-datepicker-multi .ui-datepicker-group table {
    width: 95%;
    margin: 0 auto .4em;
}
.ui-datepicker-multi-2 .ui-datepicker-group {
    width: 50%;
}
.ui-datepicker-multi-3 .ui-datepicker-group {
    width: 33.3%;
}
.ui-datepicker-multi-4 .ui-datepicker-group {
    width: 25%;
}
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
    border-left-width: 0;
}
.ui-datepicker-multi .ui-datepicker-buttonpane {
    clear: left;
}
.ui-datepicker-row-break {
    clear: both;
    width: 100%;
    font-size: 0;
}
/* RTL support */
.ui-datepicker-rtl {
    direction: rtl;
}
.ui-datepicker-rtl .ui-datepicker-prev {
    right: 2px;
    left: auto;
}
.ui-datepicker-rtl .ui-datepicker-next {
    left: 2px;
    right: auto;
}
.ui-datepicker-rtl .ui-datepicker-prev:hover {
    right: 1px;
    left: auto;
}
.ui-datepicker-rtl .ui-datepicker-next:hover {
    left: 1px;
    right: auto;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane {
    clear: right;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane button {
    float: left;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
.ui-datepicker-rtl .ui-datepicker-group {
    float: right;
}
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
    border-right-width: 0;
    border-left-width: 1px;
}
.ui-dialog {
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    padding: .2em;
    outline: 0;
}
.ui-dialog .ui-dialog-titlebar {
    padding: .4em 1em;
    position: relative;
}
.ui-dialog .ui-dialog-title {
    float: left;
    margin: .1em 0;
    white-space: nowrap;
    width: 90%;
    overflow: hidden;
    text-overflow: ellipsis;
}
.ui-dialog .ui-dialog-titlebar-close {
    position: absolute;
    right: .3em;
    top: 50%;
    width: 20px;
    margin: -10px 0 0 0;
    padding: 1px;
    height: 20px;
}
.ui-dialog .ui-dialog-content {
    position: relative;
    border: 0;
    padding: .5em 1em;
    background: none;
    overflow: auto;
}
.ui-dialog .ui-dialog-buttonpane {
    text-align: left;
    border-width: 1px 0 0 0;
    background-image: none;
    margin-top: .5em;
    padding: .3em 1em .5em .4em;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
    float: right;
}
.ui-dialog .ui-dialog-buttonpane button {
    margin: .5em .4em .5em 0;
    cursor: pointer;
}
.ui-dialog .ui-resizable-se {
    width: 12px;
    height: 12px;
    right: -5px;
    bottom: -5px;
    background-position: 16px 16px;
}
.ui-draggable .ui-dialog-titlebar {
    cursor: move;
}
.ui-menu {
    list-style: none;
    padding: 2px;
    margin: 0;
    display: block;
    outline: none;
}
.ui-menu .ui-menu {
    margin-top: -3px;
    position: absolute;
}
.ui-menu .ui-menu-item {
    margin: 0;
    padding: 0;
    width: 100%;
    /* support: IE10, see #8844 */
    list-style-image: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);
}
.ui-menu .ui-menu-divider {
    margin: 5px -2px 5px -2px;
    height: 0;
    font-size: 0;
    line-height: 0;
    border-width: 1px 0 0 0;
}
.ui-menu .ui-menu-item a {
    text-decoration: none;
    display: block;
    padding: 2px .4em;
    line-height: 1.5;
    min-height: 0; /* support: IE7 */
    font-weight: normal;
}
.ui-menu .ui-menu-item a.ui-state-focus,
.ui-menu .ui-menu-item a.ui-state-active {
    font-weight: normal;
    margin: -1px;
}
.ui-menu .ui-state-disabled {
    font-weight: normal;
    margin: .4em 0 .2em;
    line-height: 1.5;
}
.ui-menu .ui-state-disabled a {
    cursor: default;
}
/* icon support */
.ui-menu-icons {
    position: relative;
}
.ui-menu-icons .ui-menu-item a {
    position: relative;
    padding-left: 2em;
}
/* left-aligned */
.ui-menu .ui-icon {
    position: absolute;
    top: .2em;
    left: .2em;
}
/* right-aligned */
.ui-menu .ui-menu-icon {
    position: static;
    float: right;
}
.ui-progressbar {
    height: 2em;
    text-align: left;
    overflow: hidden;
}
.ui-progressbar .ui-progressbar-value {
    margin: -1px;
    height: 100%;
}
.ui-progressbar .ui-progressbar-overlay {
    background: url("images/animated-overlay.gif");
    height: 100%;
    filter: alpha(opacity=25);
    opacity: 0.25;
}
.ui-progressbar-indeterminate .ui-progressbar-value {
    background-image: none;
}
.ui-slider {
    position: relative;
    text-align: left;
}
.ui-slider .ui-slider-handle {
    position: absolute;
    z-index: 2;
    width: 1.2em;
    height: 1.2em;
    cursor: default;
}
.ui-slider .ui-slider-range {
    position: absolute;
    z-index: 1;
    font-size: .7em;
    display: block;
    border: 0;
    background-position: 0 0;
}
/* For IE8 - See #6727 */
.ui-slider.ui-state-disabled .ui-slider-handle,
.ui-slider.ui-state-disabled .ui-slider-range {
    filter: inherit;
}
.ui-slider-horizontal {
    height: .8em;
}
.ui-slider-horizontal .ui-slider-handle {
    top: -.3em;
    margin-left: -.6em;
}
.ui-slider-horizontal .ui-slider-range {
    top: 0;
    height: 100%;
}
.ui-slider-horizontal .ui-slider-range-min {
    left: 0;
}
.ui-slider-horizontal .ui-slider-range-max {
    right: 0;
}
.ui-slider-vertical {
    width: .8em;
    height: 100px;
}
.ui-slider-vertical .ui-slider-handle {
    left: -.3em;
    margin-left: 0;
    margin-bottom: -.6em;
}
.ui-slider-vertical .ui-slider-range {
    left: 0;
    width: 100%;
}
.ui-slider-vertical .ui-slider-range-min {
    bottom: 0;
}
.ui-slider-vertical .ui-slider-range-max {
    top: 0;
}
.ui-spinner {
    position: relative;
    display: inline-block;
    overflow: hidden;
    padding: 0;
    vertical-align: middle;
}
.ui-spinner-input {
    border: none;
    background: none;
    color: inherit;
    padding: 0;
    margin: .2em 0;
    vertical-align: middle;
    margin-left: .4em;
    margin-right: 22px;
}
.ui-spinner-button {
    width: 16px;
    height: 50%;
    font-size: .5em;
    padding: 0;
    margin: 0;
    text-align: center;
    position: absolute;
    cursor: default;
    display: block;
    overflow: hidden;
    right: 0;
}
/* more specificity required here to override default borders */
.ui-spinner a.ui-spinner-button {
    border-top: none;
    border-bottom: none;
    border-right: none;
}
/* vertically center icon */
.ui-spinner .ui-icon {
    position: absolute;
    margin-top: -8px;
    top: 50%;
    left: 0;
}
.ui-spinner-up {
    top: 0;
}
.ui-spinner-down {
    bottom: 0;
}
/* TR overrides */
.ui-spinner .ui-icon-triangle-1-s {
    /* need to fix icons sprite */
    background-position: -65px -16px;
}
.ui-tabs {
    position: relative;/* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
    padding: .2em;
}
.ui-tabs .ui-tabs-nav {
    margin: 0;
    padding: .2em .2em 0;
}
.ui-tabs .ui-tabs-nav li {
    list-style: none;
    float: left;
    position: relative;
    top: 0;
    margin: 1px .2em 0 0;
    border-bottom-width: 0;
    padding: 0;
    white-space: nowrap;
}
.ui-tabs .ui-tabs-nav .ui-tabs-anchor {
    float: left;
    padding: .5em 1em;
    text-decoration: none;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-active {
    margin-bottom: -1px;
    padding-bottom: 1px;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor {
    cursor: text;
}
.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor {
    cursor: pointer;
}
.ui-tabs .ui-tabs-panel {
    display: block;
    border-width: 0;
    padding: 1em 1.4em;
    background: none;
}
.ui-tooltip {
    padding: 8px;
    position: absolute;
    z-index: 9999;
    max-width: 300px;
    -webkit-box-shadow: 0 0 5px #aaa;
    box-shadow: 0 0 5px #aaa;
}
body .ui-tooltip {
    border-width: 2px;
}
/* Component containers
----------------------------------*/
.ui-widget {
    font-family: Lucida Grande,Lucida Sans,Arial,sans-serif;
    font-size: 1.1em;
}
.ui-widget .ui-widget {
    font-size: 1em;
}
.ui-widget input,
.ui-widget select,
.ui-widget textarea,
.ui-widget button {
    font-family: Lucida Grande,Lucida Sans,Arial,sans-serif;
    font-size: 1em;
}
.ui-widget-content {
    border: 1px solid #a6c9e2;
    background: #fcfdfd url("images/ui-bg_inset-hard_100_fcfdfd_1x100.png") 50% bottom repeat-x;
    color: #222222;
}
.ui-widget-content a {
    color: #222222;
}
.ui-widget-header {
    border: 1px solid #4297d7;
    background: #5c9ccc url("images/ui-bg_gloss-wave_55_5c9ccc_500x100.png") 50% 50% repeat-x;
    color: #ffffff;
    font-weight: bold;
}
.ui-widget-header a {
    color: #ffffff;
}
/* Interaction states
----------------------------------*/
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
    border: 1px solid #c5dbec;
    background: #dfeffc url("images/ui-bg_glass_85_dfeffc_1x400.png") 50% 50% repeat-x;
    font-weight: bold;
    color: #2e6e9e;
}
.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited {
    color: #2e6e9e;
    text-decoration: none;
}
.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus {
    border: 1px solid #79b7e7;
    background: #d0e5f5 url("images/ui-bg_glass_75_d0e5f5_1x400.png") 50% 50% repeat-x;
    font-weight: bold;
    color: #1d5987;
}
.ui-state-hover a,
.ui-state-hover a:hover,
.ui-state-hover a:link,
.ui-state-hover a:visited,
.ui-state-focus a,
.ui-state-focus a:hover,
.ui-state-focus a:link,
.ui-state-focus a:visited {
    color: #1d5987;
    text-decoration: none;
}
.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active {
    border: 1px solid #79b7e7;
    background: #f5f8f9 url("images/ui-bg_inset-hard_100_f5f8f9_1x100.png") 50% 50% repeat-x;
    font-weight: bold;
    color: #e17009;
}
.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
    color: #e17009;
    text-decoration: none;
}
/* Interaction Cues
----------------------------------*/
.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
    border: 1px solid #fad42e;
    background: #fbec88 url("images/ui-bg_flat_55_fbec88_40x100.png") 50% 50% repeat-x;
    color: #363636;
}
.ui-state-highlight a,
.ui-widget-content .ui-state-highlight a,
.ui-widget-header .ui-state-highlight a {
    color: #363636;
}
.ui-state-error,
.ui-widget-content .ui-state-error,
.ui-widget-header .ui-state-error {
    border: 1px solid #cd0a0a;
    background: #fef1ec url("images/ui-bg_glass_95_fef1ec_1x400.png") 50% 50% repeat-x;
    color: #cd0a0a;
}
.ui-state-error a,
.ui-widget-content .ui-state-error a,
.ui-widget-header .ui-state-error a {
    color: #cd0a0a;
}
.ui-state-error-text,
.ui-widget-content .ui-state-error-text,
.ui-widget-header .ui-state-error-text {
    color: #cd0a0a;
}
.ui-priority-primary,
.ui-widget-content .ui-priority-primary,
.ui-widget-header .ui-priority-primary {
    font-weight: bold;
}
.ui-priority-secondary,
.ui-widget-content .ui-priority-secondary,
.ui-widget-header .ui-priority-secondary {
    opacity: .7;
    filter:Alpha(Opacity=70);
    font-weight: normal;
}
.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
    opacity: .35;
    filter:Alpha(Opacity=35);
    background-image: none;
}
.ui-state-disabled .ui-icon {
    filter:Alpha(Opacity=35); /* For IE8 - See #6059 */
}
/* Icons
----------------------------------*/
/* states and images */
.ui-icon {
    width: 16px;
    height: 16px;
}
.ui-icon,
.ui-widget-content .ui-icon {
    background-image: url("images/ui-icons_469bdd_256x240.png");
}
.ui-widget-header .ui-icon {
    background-image: url("images/ui-icons_d8e7f3_256x240.png");
}
.ui-state-default .ui-icon {
    background-image: url("images/ui-icons_6da8d5_256x240.png");
}
.ui-state-hover .ui-icon,
.ui-state-focus .ui-icon {
    background-image: url("images/ui-icons_217bc0_256x240.png");
}
.ui-state-active .ui-icon {
    background-image: url("images/ui-icons_f9bd01_256x240.png");
}
.ui-state-highlight .ui-icon {
    background-image: url("images/ui-icons_2e83ff_256x240.png");
}
.ui-state-error .ui-icon,
.ui-state-error-text .ui-icon {
    background-image: url("images/ui-icons_cd0a0a_256x240.png");
}
/* positioning */
.ui-icon-blank { background-position: 16px 16px; }
.ui-icon-carat-1-n { background-position: 0 0; }
.ui-icon-carat-1-ne { background-position: -16px 0; }
.ui-icon-carat-1-e { background-position: -32px 0; }
.ui-icon-carat-1-se { background-position: -48px 0; }
.ui-icon-carat-1-s { background-position: -64px 0; }
.ui-icon-carat-1-sw { background-position: -80px 0; }
.ui-icon-carat-1-w { background-position: -96px 0; }
.ui-icon-carat-1-nw { background-position: -112px 0; }
.ui-icon-carat-2-n-s { background-position: -128px 0; }
.ui-icon-carat-2-e-w { background-position: -144px 0; }
.ui-icon-triangle-1-n { background-position: 0 -16px; }
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
.ui-icon-triangle-1-e { background-position: -32px -16px; }
.ui-icon-triangle-1-se { background-position: -48px -16px; }
.ui-icon-triangle-1-s { background-position: -64px -16px; }
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
.ui-icon-triangle-1-w { background-position: -96px -16px; }
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
.ui-icon-arrow-1-n { background-position: 0 -32px; }
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
.ui-icon-arrow-1-e { background-position: -32px -32px; }
.ui-icon-arrow-1-se { background-position: -48px -32px; }
.ui-icon-arrow-1-s { background-position: -64px -32px; }
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
.ui-icon-arrow-1-w { background-position: -96px -32px; }
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
.ui-icon-arrowthick-1-n { background-position: 0 -48px; }
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
.ui-icon-arrow-4 { background-position: 0 -80px; }
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
.ui-icon-extlink { background-position: -32px -80px; }
.ui-icon-newwin { background-position: -48px -80px; }
.ui-icon-refresh { background-position: -64px -80px; }
.ui-icon-shuffle { background-position: -80px -80px; }
.ui-icon-transfer-e-w { background-position: -96px -80px; }
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
.ui-icon-folder-collapsed { background-position: 0 -96px; }
.ui-icon-folder-open { background-position: -16px -96px; }
.ui-icon-document { background-position: -32px -96px; }
.ui-icon-document-b { background-position: -48px -96px; }
.ui-icon-note { background-position: -64px -96px; }
.ui-icon-mail-closed { background-position: -80px -96px; }
.ui-icon-mail-open { background-position: -96px -96px; }
.ui-icon-suitcase { background-position: -112px -96px; }
.ui-icon-comment { background-position: -128px -96px; }
.ui-icon-person { background-position: -144px -96px; }
.ui-icon-print { background-position: -160px -96px; }
.ui-icon-trash { background-position: -176px -96px; }
.ui-icon-locked { background-position: -192px -96px; }
.ui-icon-unlocked { background-position: -208px -96px; }
.ui-icon-bookmark { background-position: -224px -96px; }
.ui-icon-tag { background-position: -240px -96px; }
.ui-icon-home { background-position: 0 -112px; }
.ui-icon-flag { background-position: -16px -112px; }
.ui-icon-calendar { background-position: -32px -112px; }
.ui-icon-cart { background-position: -48px -112px; }
.ui-icon-pencil { background-position: -64px -112px; }
.ui-icon-clock { background-position: -80px -112px; }
.ui-icon-disk { background-position: -96px -112px; }
.ui-icon-calculator { background-position: -112px -112px; }
.ui-icon-zoomin { background-position: -128px -112px; }
.ui-icon-zoomout { background-position: -144px -112px; }
.ui-icon-search { background-position: -160px -112px; }
.ui-icon-wrench { background-position: -176px -112px; }
.ui-icon-gear { background-position: -192px -112px; }
.ui-icon-heart { background-position: -208px -112px; }
.ui-icon-star { background-position: -224px -112px; }
.ui-icon-link { background-position: -240px -112px; }
.ui-icon-cancel { background-position: 0 -128px; }
.ui-icon-plus { background-position: -16px -128px; }
.ui-icon-plusthick { background-position: -32px -128px; }
.ui-icon-minus { background-position: -48px -128px; }
.ui-icon-minusthick { background-position: -64px -128px; }
.ui-icon-close { background-position: -80px -128px; }
.ui-icon-closethick { background-position: -96px -128px; }
.ui-icon-key { background-position: -112px -128px; }
.ui-icon-lightbulb { background-position: -128px -128px; }
.ui-icon-scissors { background-position: -144px -128px; }
.ui-icon-clipboard { background-position: -160px -128px; }
.ui-icon-copy { background-position: -176px -128px; }
.ui-icon-contact { background-position: -192px -128px; }
.ui-icon-image { background-position: -208px -128px; }
.ui-icon-video { background-position: -224px -128px; }
.ui-icon-script { background-position: -240px -128px; }
.ui-icon-alert { background-position: 0 -144px; }
.ui-icon-info { background-position: -16px -144px; }
.ui-icon-notice { background-position: -32px -144px; }
.ui-icon-help { background-position: -48px -144px; }
.ui-icon-check { background-position: -64px -144px; }
.ui-icon-bullet { background-position: -80px -144px; }
.ui-icon-radio-on { background-position: -96px -144px; }
.ui-icon-radio-off { background-position: -112px -144px; }
.ui-icon-pin-w { background-position: -128px -144px; }
.ui-icon-pin-s { background-position: -144px -144px; }
.ui-icon-play { background-position: 0 -160px; }
.ui-icon-pause { background-position: -16px -160px; }
.ui-icon-seek-next { background-position: -32px -160px; }
.ui-icon-seek-prev { background-position: -48px -160px; }
.ui-icon-seek-end { background-position: -64px -160px; }
.ui-icon-seek-start { background-position: -80px -160px; }
/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
.ui-icon-seek-first { background-position: -80px -160px; }
.ui-icon-stop { background-position: -96px -160px; }
.ui-icon-eject { background-position: -112px -160px; }
.ui-icon-volume-off { background-position: -128px -160px; }
.ui-icon-volume-on { background-position: -144px -160px; }
.ui-icon-power { background-position: 0 -176px; }
.ui-icon-signal-diag { background-position: -16px -176px; }
.ui-icon-signal { background-position: -32px -176px; }
.ui-icon-battery-0 { background-position: -48px -176px; }
.ui-icon-battery-1 { background-position: -64px -176px; }
.ui-icon-battery-2 { background-position: -80px -176px; }
.ui-icon-battery-3 { background-position: -96px -176px; }
.ui-icon-circle-plus { background-position: 0 -192px; }
.ui-icon-circle-minus { background-position: -16px -192px; }
.ui-icon-circle-close { background-position: -32px -192px; }
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
.ui-icon-circle-zoomin { background-position: -176px -192px; }
.ui-icon-circle-zoomout { background-position: -192px -192px; }
.ui-icon-circle-check { background-position: -208px -192px; }
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
.ui-icon-circlesmall-close { background-position: -32px -208px; }
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
.ui-icon-squaresmall-close { background-position: -80px -208px; }
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
/* Misc visuals
----------------------------------*/
/* Corner radius */
.ui-corner-all,
.ui-corner-top,
.ui-corner-left,
.ui-corner-tl {
    border-top-left-radius: 5px;
}
.ui-corner-all,
.ui-corner-top,
.ui-corner-right,
.ui-corner-tr {
    border-top-right-radius: 5px;
}
.ui-corner-all,
.ui-corner-bottom,
.ui-corner-left,
.ui-corner-bl {
    border-bottom-left-radius: 5px;
}
.ui-corner-all,
.ui-corner-bottom,
.ui-corner-right,
.ui-corner-br {
    border-bottom-right-radius: 5px;
}
/* Overlays */
.ui-widget-overlay {
    background: #aaaaaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x;
    opacity: .3;
    filter: Alpha(Opacity=30);
}
.ui-widget-shadow {
    margin: -8px 0 0 -8px;
    padding: 8px;
    background: #aaaaaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x;
    opacity: .3;
    filter: Alpha(Opacity=30);
    border-radius: 8px;
}
plugins/jqueryui/themes/redmond/jquery-ui-1.9.2.custom.css
File was deleted
plugins/legacy_browser/js/iehacks.js
@@ -96,3 +96,13 @@
  return {start: start, end: end, text: normalizedValue.substr(start, end-start)};
};
// For IE<9 we have to do it this way
// otherwise the form will be posted to a new window
rcube_webmail.prototype.async_upload_form_frame = function(name)
{
  document.body.insertAdjacentHTML('BeforeEnd', '<iframe name="' + name + '"'
    + ' src="program/resources/blank.gif" style="width:0; height:0; visibility:hidden"></iframe>');
  return $('iframe[name="' + name + '"]');
};
plugins/legacy_browser/legacy_browser.php
@@ -1,7 +1,7 @@
<?php
/**
 * Plugin which adds support for legacy browsers (IE 7/8)
 * Plugin which adds support for legacy browsers (IE 7/8, Firefox < 4)
 *
 * @author Aleksander Machniak <alec@alec.pl>
 * @license GNU GPLv3+
@@ -9,12 +9,18 @@
class legacy_browser extends rcube_plugin
{
    public $noajax = true;
    private $rc;
    public function init()
    {
        $rcube = rcube::get_instance();
        $this->rc = $rcube = rcube::get_instance();
        if ($rcube->output->browser->ie && $rcube->output->browser->ver < 9) {
        if (
            // IE < 9
            ($rcube->output->browser->ie && $rcube->output->browser->ver < 9)
            // Firefox < 4 (Firefox 4 is recognized as 2.0)
            || ($rcube->output->browser->mz && $rcube->output->browser->ver < 2)
        ) {
            $this->add_hook('send_page', array($this, 'send_page'));
            $this->add_hook('render_page', array($this, 'render_page'));
        }
@@ -22,19 +28,25 @@
    function send_page($args)
    {
        // replace jQuery 2.x with 1.x
        $ts1 = filemtime($this->home . '/js/jquery.min.js');
        $ts2 = filemtime($this->home . '/js/iehacks.js');
        // put iehacks.js after app.js
        $args['content'] = preg_replace(
            '|(<script src="program/js/app(\.min)?\.js\?s=[0-9]+" type="text/javascript"></script>)|',
            '\\1<script src="plugins/legacy_browser/js/iehacks.js?s=' . $ts2 . '" type="text/javascript"></script>',
            $args['content'], 1, $count);
        if ($this->rc->output->browser->ie) {
            $args['content'] = preg_replace(
                '|(<script src="program/js/app(\.min)?\.js\?s=[0-9]+" type="text/javascript"></script>)|',
                '\\1<script src="plugins/legacy_browser/js/iehacks.js?s=' . $ts2 . '" type="text/javascript"></script>',
                $args['content'], 1, $count);
        }
        else {
            $count = 1;
        }
        // replace jQuery 2.x with 1.x
        $args['content'] = preg_replace(
            '|<script src="program/js/jquery\.min\.js\?s=[0-9]+" type="text/javascript"></script>|',
            '<script src="plugins/legacy_browser/js/jquery.min.js?s=' . $ts1 . '" type="text/javascript"></script>'
            // add iehacks.js if it is IE and it wasn't added yet
            . ($count ? '' : "\n".'<script src="plugins/legacy_browser/js/iehacks.js?s=' . $ts2 . '" type="text/javascript"></script>'),
            $args['content'], 1);
@@ -43,23 +55,26 @@
    function render_page($args)
    {
        $rcube = rcube::get_instance();
        if (!$this->rc->output->browser->ie) {
            return $args;
        }
        $skin  = $this->skin();
        if ($skin == 'classic') {
            $minified = file_exists(INSTALL_PATH . '/plugins/legacy_browser/skins/classic/iehacks.min.css') ? '.min' : '';
            $rcube->output->add_header(
            $this->rc->output->add_header(
                '<link rel="stylesheet" type="text/css" href="plugins/legacy_browser/skins/classic/iehacks' . $minified . '.css" />'
            );
        }
        else if ($skin == 'larry') {
            $minified = file_exists(INSTALL_PATH . '/plugins/legacy_browser/skins/larry/iehacks.min.css') ? '.min' : '';
            $rcube->output->add_header(
            $this->rc->output->add_header(
                '<link rel="stylesheet" type="text/css" href="plugins/legacy_browser/skins/larry/iehacks' . $minified . '.css" />'
            );
            if ($rcube->output->browser->ver < 8) {
                $rcube->output->add_header(
            if ($this->rc->output->browser->ver < 8) {
                $this->rc->output->add_header(
                    '<link rel="stylesheet" type="text/css" href="plugins/legacy_browser/skins/larry/ie7hacks' . $minified . '.css" />'
                );
            }
@@ -68,8 +83,7 @@
    private function skin()
    {
        $rcube = rcube::get_instance();
        $skin  = $rcube->config->get('skin');
        $skin  = $this->rc->config->get('skin');
        // external skin, find if it inherits from other skin
        if ($skin != 'larry' && $skin != 'classic') {
plugins/legacy_browser/package.xml
@@ -5,17 +5,17 @@
    http://pear.php.net/dtd/package-2.0.xsd">
    <name>legacy_browser</name>
    <channel>pear.roundcube.net</channel>
    <summary>Legacy browser (IE 7/8) support</summary>
    <description>This adds support for legacy browsers (IE 7/8).</description>
    <summary>Legacy browser (IE 7/8, Firefox &lt; 4) support</summary>
    <description>This adds support for legacy browsers (IE 7/8, Firefox &lt; 4).</description>
    <lead>
        <name>Aleksander Machniak</name>
        <user>alec</user>
        <email>alec@alec.pl</email>
        <active>yes</active>
    </lead>
    <date>2014-04-12</date>
    <date>2014-06-19</date>
    <version>
        <release>1.0</release>
        <release>1.1</release>
        <api>1.0</api>
    </version>
    <stability>
plugins/legacy_browser/skins/larry/ie7hacks.css
@@ -37,6 +37,7 @@
a.iconbutton,
a.deletebutton,
.boxpagenav a.icon,
a.button span.icon,
.pagenav a.button span.inner,
.boxfooter .listbutton .inner,
.attachmentslist li a.delete,
plugins/legacy_browser/skins/larry/iehacks.css
@@ -169,3 +169,32 @@
    float: left;
    height: 18px;
}
a.button.disabled span.inner,
a.iconbutton.disabled,
.boxfooter .listbutton.disabled .inner,
.boxpagenav a.icon.disabled,
.toolbar a.button.disabled {
    filter: alpha(opacity=40);
}
.dropbutton a.button.disabled + .dropbuttontip {
    filter: alpha(opacity=50);
}
select.decorated {
    filter: alpha(opacity=0);
}
ul.toolbarmenu li span.icon {
    filter: alpha(opacity=20);
}
ul.toolbarmenu li a.active span.icon {
    filter: alpha(opacity=100);
}
.minimal #topline:hover,
#rcmdraglayer {
    filter: alpha(opacity=93);
}
plugins/managesieve/Changelog
@@ -1,6 +1,17 @@
- Added simple API to manage vacation rule
- Fix missing css/js scripts in filter form in mail task
- Fix default vacation status (#1490019)
- Make possible to set vacation start/end date and time
* version 8.0 [2014-07-16]
-----------------------------------------------------------
- Fix bug where non-existing (or unsubscribed) folder wasn't listed in folder selector (#1489956)
- Added optional separate interface for out-of-office management (#1488266)
- Fix disabled "create filter" action
- Fix enotify/notify extension handling
- Improved UI accessibility
- Added option to specify connection socket parameters - managesieve_conn_options
- Support vacation date rules without date extension (#1489978)
* version 7.2 [2014-02-14]
-----------------------------------------------------------
plugins/managesieve/config.inc.php.dist
@@ -28,6 +28,18 @@
// Note: tls:// prefix in managesieve_host is also supported
$config['managesieve_usetls'] = false;
// Connection scket context options
// See http://php.net/manual/en/context.ssl.php
// The example below enables server certificate validation
//$config['imap_conn_options'] = array(
//  'ssl'         => array(
//     'verify_peer'  => true,
//     'verify_depth' => 3,
//     'cafile'       => '/etc/openssl/certs/ca.crt',
//   ),
// );
$config['managesieve_conn_options'] = null;
// default contents of filters script (eg. default spam filter)
$config['managesieve_default'] = '/etc/dovecot/sieve/global';
plugins/managesieve/lib/Roundcube/rcube_sieve.php
@@ -22,17 +22,6 @@
// Managesieve Protocol: RFC5804
define('SIEVE_ERROR_CONNECTION', 1);
define('SIEVE_ERROR_LOGIN', 2);
define('SIEVE_ERROR_NOT_EXISTS', 3);    // script not exists
define('SIEVE_ERROR_INSTALL', 4);       // script installation
define('SIEVE_ERROR_ACTIVATE', 5);      // script activation
define('SIEVE_ERROR_DELETE', 6);        // script deletion
define('SIEVE_ERROR_INTERNAL', 7);      // internal error
define('SIEVE_ERROR_DEACTIVATE', 8);    // script activation
define('SIEVE_ERROR_OTHER', 255);       // other/unknown error
class rcube_sieve
{
    private $sieve;                 // Net_Sieve object
@@ -42,6 +31,16 @@
    public $script;                 // rcube_sieve_script object
    public $current;                // name of currently loaded script
    private $exts;                  // array of supported extensions
    const ERROR_CONNECTION = 1;
    const ERROR_LOGIN      = 2;
    const ERROR_NOT_EXISTS = 3;    // script not exists
    const ERROR_INSTALL    = 4;    // script installation
    const ERROR_ACTIVATE   = 5;    // script activation
    const ERROR_DELETE     = 6;    // script deletion
    const ERROR_INTERNAL   = 7;    // internal error
    const ERROR_DEACTIVATE = 8;    // script activation
    const ERROR_OTHER      = 255;  // other/unknown error
    /**
@@ -57,10 +56,11 @@
     * @param boolean Enable/disable debugging
     * @param string  Proxy authentication identifier
     * @param string  Proxy authentication password
     * @param array   List of options to pass to stream_context_create().
     */
    public function __construct($username, $password='', $host='localhost', $port=2000,
        $auth_type=null, $usetls=true, $disabled=array(), $debug=false,
        $auth_cid=null, $auth_pw=null)
        $auth_cid=null, $auth_pw=null, $options=array())
    {
        $this->sieve = new Net_Sieve();
@@ -68,8 +68,8 @@
            $this->sieve->setDebug(true, array($this, 'debug_handler'));
        }
        if (PEAR::isError($this->sieve->connect($host, $port, null, $usetls))) {
            return $this->_set_error(SIEVE_ERROR_CONNECTION);
        if (PEAR::isError($this->sieve->connect($host, $port, $options, $usetls))) {
            return $this->_set_error(self::ERROR_CONNECTION);
        }
        if (!empty($auth_cid)) {
@@ -81,7 +81,7 @@
        if (PEAR::isError($this->sieve->login($username, $password,
            $auth_type ? strtoupper($auth_type) : null, $authz))
        ) {
            return $this->_set_error(SIEVE_ERROR_LOGIN);
            return $this->_set_error(self::ERROR_LOGIN);
        }
        $this->exts = $this->get_extensions();
@@ -116,10 +116,10 @@
    public function save($name = null)
    {
        if (!$this->sieve)
            return $this->_set_error(SIEVE_ERROR_INTERNAL);
            return $this->_set_error(self::ERROR_INTERNAL);
        if (!$this->script)
            return $this->_set_error(SIEVE_ERROR_INTERNAL);
            return $this->_set_error(self::ERROR_INTERNAL);
        if (!$name)
            $name = $this->current;
@@ -130,7 +130,7 @@
            $script = '/* empty script */';
        if (PEAR::isError($this->sieve->installScript($name, $script)))
            return $this->_set_error(SIEVE_ERROR_INSTALL);
            return $this->_set_error(self::ERROR_INSTALL);
        return true;
    }
@@ -141,13 +141,13 @@
    public function save_script($name, $content = null)
    {
        if (!$this->sieve)
            return $this->_set_error(SIEVE_ERROR_INTERNAL);
            return $this->_set_error(self::ERROR_INTERNAL);
        if (!$content)
            $content = '/* empty script */';
        if (PEAR::isError($this->sieve->installScript($name, $content)))
            return $this->_set_error(SIEVE_ERROR_INSTALL);
            return $this->_set_error(self::ERROR_INSTALL);
        return true;
    }
@@ -158,13 +158,13 @@
    public function activate($name = null)
    {
        if (!$this->sieve)
            return $this->_set_error(SIEVE_ERROR_INTERNAL);
            return $this->_set_error(self::ERROR_INTERNAL);
        if (!$name)
            $name = $this->current;
        if (PEAR::isError($this->sieve->setActive($name)))
            return $this->_set_error(SIEVE_ERROR_ACTIVATE);
            return $this->_set_error(self::ERROR_ACTIVATE);
        return true;
    }
@@ -175,10 +175,10 @@
    public function deactivate()
    {
        if (!$this->sieve)
            return $this->_set_error(SIEVE_ERROR_INTERNAL);
            return $this->_set_error(self::ERROR_INTERNAL);
        if (PEAR::isError($this->sieve->setActive('')))
            return $this->_set_error(SIEVE_ERROR_DEACTIVATE);
            return $this->_set_error(self::ERROR_DEACTIVATE);
        return true;
    }
@@ -189,7 +189,7 @@
    public function remove($name = null)
    {
        if (!$this->sieve)
            return $this->_set_error(SIEVE_ERROR_INTERNAL);
            return $this->_set_error(self::ERROR_INTERNAL);
        if (!$name)
            $name = $this->current;
@@ -197,10 +197,10 @@
        // script must be deactivated first
        if ($name == $this->sieve->getActive())
            if (PEAR::isError($this->sieve->setActive('')))
                return $this->_set_error(SIEVE_ERROR_DELETE);
                return $this->_set_error(self::ERROR_DELETE);
        if (PEAR::isError($this->sieve->removeScript($name)))
            return $this->_set_error(SIEVE_ERROR_DELETE);
            return $this->_set_error(self::ERROR_DELETE);
        if ($name == $this->current)
            $this->current = null;
@@ -217,9 +217,14 @@
            return $this->exts;
        if (!$this->sieve)
            return $this->_set_error(SIEVE_ERROR_INTERNAL);
            return $this->_set_error(self::ERROR_INTERNAL);
        $ext = $this->sieve->getExtensions();
        if (PEAR::isError($ext)) {
            return array();
        }
        // we're working on lower-cased names
        $ext = array_map('strtolower', (array) $ext);
@@ -241,12 +246,12 @@
        if (!$this->list) {
            if (!$this->sieve)
                return $this->_set_error(SIEVE_ERROR_INTERNAL);
                return $this->_set_error(self::ERROR_INTERNAL);
            $list = $this->sieve->listScripts();
            if (PEAR::isError($list))
                return $this->_set_error(SIEVE_ERROR_OTHER);
                return $this->_set_error(self::ERROR_OTHER);
            $this->list = $list;
        }
@@ -260,7 +265,7 @@
    public function get_active()
    {
        if (!$this->sieve)
            return $this->_set_error(SIEVE_ERROR_INTERNAL);
            return $this->_set_error(self::ERROR_INTERNAL);
        return $this->sieve->getActive();
    }
@@ -271,7 +276,7 @@
    public function load($name)
    {
        if (!$this->sieve)
            return $this->_set_error(SIEVE_ERROR_INTERNAL);
            return $this->_set_error(self::ERROR_INTERNAL);
        if ($this->current == $name)
            return true;
@@ -279,7 +284,7 @@
        $script = $this->sieve->getScript($name);
        if (PEAR::isError($script))
            return $this->_set_error(SIEVE_ERROR_OTHER);
            return $this->_set_error(self::ERROR_OTHER);
        // try to parse from Roundcube format
        $this->script = $this->_parse($script);
@@ -295,7 +300,7 @@
    public function load_script($script)
    {
        if (!$this->sieve)
            return $this->_set_error(SIEVE_ERROR_INTERNAL);
            return $this->_set_error(self::ERROR_INTERNAL);
        // try to parse from Roundcube format
        $this->script = $this->_parse($script);
@@ -340,12 +345,12 @@
    public function get_script($name)
    {
        if (!$this->sieve)
            return $this->_set_error(SIEVE_ERROR_INTERNAL);
            return $this->_set_error(self::ERROR_INTERNAL);
        $content = $this->sieve->getScript($name);
        if (PEAR::isError($content))
            return $this->_set_error(SIEVE_ERROR_OTHER);
            return $this->_set_error(self::ERROR_OTHER);
        return $content;
    }
@@ -356,13 +361,13 @@
    public function copy($name, $copy)
    {
        if (!$this->sieve)
            return $this->_set_error(SIEVE_ERROR_INTERNAL);
            return $this->_set_error(self::ERROR_INTERNAL);
        if ($copy) {
            $content = $this->sieve->getScript($copy);
            if (PEAR::isError($content))
                return $this->_set_error(SIEVE_ERROR_OTHER);
                return $this->_set_error(self::ERROR_OTHER);
        }
        return $this->save_script($name, $content);
plugins/managesieve/lib/Roundcube/rcube_sieve_engine.php
@@ -73,7 +73,7 @@
     */
    function __construct($plugin)
    {
        $this->rc     = rcmail::get_instance();
        $this->rc     = rcube::get_instance();
        $this->plugin = $plugin;
    }
@@ -91,54 +91,11 @@
            'filtersetform'  => array($this, 'filterset_form'),
        ));
        // Get connection parameters
        $host = $this->rc->config->get('managesieve_host', 'localhost');
        $port = $this->rc->config->get('managesieve_port');
        $tls  = $this->rc->config->get('managesieve_usetls', false);
        // connect to managesieve server
        $error = $this->connect($_SESSION['username'], $this->rc->decrypt($_SESSION['password']));
        $host = rcube_utils::parse_host($host);
        $host = rcube_utils::idn_to_ascii($host);
        // remove tls:// prefix, set TLS flag
        if (($host = preg_replace('|^tls://|i', '', $host, 1, $cnt)) && $cnt) {
            $tls = true;
        }
        if (empty($port)) {
            $port = getservbyname('sieve', 'tcp');
            if (empty($port)) {
                $port = self::PORT;
            }
        }
        $plugin = $this->rc->plugins->exec_hook('managesieve_connect', array(
            'user'      => $_SESSION['username'],
            'password'  => $this->rc->decrypt($_SESSION['password']),
            'host'      => $host,
            'port'      => $port,
            'usetls'    => $tls,
            'auth_type' => $this->rc->config->get('managesieve_auth_type'),
            'disabled'  => $this->rc->config->get('managesieve_disabled_extensions'),
            'debug'     => $this->rc->config->get('managesieve_debug', false),
            'auth_cid'  => $this->rc->config->get('managesieve_auth_cid'),
            'auth_pw'   => $this->rc->config->get('managesieve_auth_pw'),
        ));
        // try to connect to managesieve server and to fetch the script
        $this->sieve = new rcube_sieve(
            $plugin['user'],
            $plugin['password'],
            $plugin['host'],
            $plugin['port'],
            $plugin['auth_type'],
            $plugin['usetls'],
            $plugin['disabled'],
            $plugin['debug'],
            $plugin['auth_cid'],
            $plugin['auth_pw']
        );
        if (!($error = $this->sieve->error())) {
        // load current/active script
        if (!$error) {
            // Get list of scripts
            $list = $this->list_scripts();
@@ -156,46 +113,14 @@
                }
            }
            if ($script_name === null || $script_name === '') {
                // get (first) active script
                if (!empty($this->active[0])) {
                    $script_name = $this->active[0];
                }
                else if ($list) {
                    $script_name = $list[0];
                }
                // create a new (initial) script
                else {
                    // if script not exists build default script contents
                    $script_file = $this->rc->config->get('managesieve_default');
                    $script_name = $this->rc->config->get('managesieve_script_name');
                    if (empty($script_name))
                        $script_name = 'roundcube';
                    if ($script_file && is_readable($script_file))
                        $content = file_get_contents($script_file);
                    // add script and set it active
                    if ($this->sieve->save_script($script_name, $content)) {
                        $this->activate_script($script_name);
                        $this->list[] = $script_name;
                    }
                }
            }
            if ($script_name) {
                $this->sieve->load($script_name);
            }
            $error = $this->sieve->error();
            $error = $this->load_script($script_name);
        }
        // finally set script objects
        if ($error) {
            switch ($error) {
                case SIEVE_ERROR_CONNECTION:
                case SIEVE_ERROR_LOGIN:
                case rcube_sieve::ERROR_CONNECTION:
                case rcube_sieve::ERROR_LOGIN:
                    $this->rc->output->show_message('managesieve.filterconnerror', 'error');
                    rcube::raise_error(array('code' => 403, 'type' => 'php',
                        'file' => __FILE__, 'line' => __LINE__,
@@ -226,6 +151,120 @@
        return $error;
    }
    /**
     * Connect to configured managesieve server
     *
     * @param string $username User login
     * @param string $password User password
     *
     * @return int Connection status: 0 on success, >0 on failure
     */
    public function connect($username, $password)
    {
        // Get connection parameters
        $host = $this->rc->config->get('managesieve_host', 'localhost');
        $port = $this->rc->config->get('managesieve_port');
        $tls  = $this->rc->config->get('managesieve_usetls', false);
        $host = rcube_utils::parse_host($host);
        $host = rcube_utils::idn_to_ascii($host);
        // remove tls:// prefix, set TLS flag
        if (($host = preg_replace('|^tls://|i', '', $host, 1, $cnt)) && $cnt) {
            $tls = true;
        }
        if (empty($port)) {
            $port = getservbyname('sieve', 'tcp');
            if (empty($port)) {
                $port = self::PORT;
            }
        }
        $plugin = $this->rc->plugins->exec_hook('managesieve_connect', array(
            'user'      => $username,
            'password'  => $password,
            'host'      => $host,
            'port'      => $port,
            'usetls'    => $tls,
            'auth_type' => $this->rc->config->get('managesieve_auth_type'),
            'disabled'  => $this->rc->config->get('managesieve_disabled_extensions'),
            'debug'     => $this->rc->config->get('managesieve_debug', false),
            'auth_cid'  => $this->rc->config->get('managesieve_auth_cid'),
            'auth_pw'   => $this->rc->config->get('managesieve_auth_pw'),
            'socket_options' => $this->rc->config->get('managesieve_conn_options'),
        ));
        // try to connect to managesieve server and to fetch the script
        $this->sieve = new rcube_sieve(
            $plugin['user'],
            $plugin['password'],
            $plugin['host'],
            $plugin['port'],
            $plugin['auth_type'],
            $plugin['usetls'],
            $plugin['disabled'],
            $plugin['debug'],
            $plugin['auth_cid'],
            $plugin['auth_pw'],
            $plugin['socket_options']
        );
        return $this->sieve->error();
    }
    /**
     * Load specified (or active) script
     *
     * @param string $script_name Optional script name
     *
     * @return int Connection status: 0 on success, >0 on failure
     */
    public function load_script($script_name = null)
    {
        // Get list of scripts
        $list = $this->list_scripts();
        if ($script_name === null || $script_name === '') {
            // get (first) active script
            if (!empty($this->active[0])) {
               $script_name = $this->active[0];
            }
            else if ($list) {
                $script_name = $list[0];
            }
            // create a new (initial) script
            else {
                // if script not exists build default script contents
                $script_file = $this->rc->config->get('managesieve_default');
                $script_name = $this->rc->config->get('managesieve_script_name');
                if (empty($script_name)) {
                    $script_name = 'roundcube';
                }
                if ($script_file && is_readable($script_file)) {
                    $content = file_get_contents($script_file);
                }
                // add script and set it active
                if ($this->sieve->save_script($script_name, $content)) {
                    $this->activate_script($script_name);
                    $this->list[] = $script_name;
                }
            }
        }
        if ($script_name) {
            $this->sieve->load($script_name);
        }
        return $this->sieve->error();
    }
    /**
     * User interface actions handler
     */
    function actions()
    {
        $error = $this->start();
@@ -1826,17 +1865,22 @@
        $out .= '</div>';
        // mailbox select
        if ($action['type'] == 'fileinto')
        if ($action['type'] == 'fileinto') {
            $mailbox = $this->mod_mailbox($action['target'], 'out');
        else
            // make sure non-existing (or unsubscribed) mailbox is listed (#1489956)
            $additional = array($mailbox);
        }
        else {
            $mailbox = '';
        }
        $select = $this->rc->folder_selector(array(
            'realnames' => false,
            'maxlength' => 100,
            'id' => 'action_mailbox' . $id,
            'name' => "_action_mailbox[$id]",
            'style' => 'display:'.(empty($action['type']) || $action['type'] == 'fileinto' ? 'inline' : 'none')
            'realnames'  => false,
            'maxlength'  => 100,
            'id'         => 'action_mailbox' . $id,
            'name'       => "_action_mailbox[$id]",
            'style'      => 'display:'.(empty($action['type']) || $action['type'] == 'fileinto' ? 'inline' : 'none'),
            'additional' => $additional,
        ));
        $out .= $select->show($mailbox);
        $out .= '</td>';
plugins/managesieve/lib/Roundcube/rcube_sieve_vacation.php
@@ -23,6 +23,8 @@
class rcube_sieve_vacation extends rcube_sieve_engine
{
    protected $error;
    function actions()
    {
        $error = $this->start('vacation');
@@ -32,7 +34,6 @@
            $this->vacation_rule();
            $this->vacation_post();
        }
        $this->plugin->add_label('vacation.saving');
        $this->rc->output->add_handlers(array(
            'vacationform' => array($this, 'vacation_form'),
@@ -55,11 +56,23 @@
        // find (first) vacation rule
        foreach ($this->script as $idx => $rule) {
            if (empty($this->vacation) && !empty($rule['actions']) && $rule['actions'][0]['type'] == 'vacation') {
                foreach ($rule['actions'] as $act) {
                    if ($act['type'] == 'discard' || $act['type'] == 'keep') {
                        $action = $act['type'];
                    }
                    else if ($act['type'] == 'redirect') {
                        $action = $act['copy'] ? 'copy' : 'redirect';
                        $target = $act['target'];
                    }
                }
                $this->vacation = array_merge($rule['actions'][0], array(
                        'idx'      => $idx,
                        'disabled' => $rule['disabled'],
                        'name'     => $rule['name'],
                        'tests'    => $rule['tests'],
                        'action'   => $action ?: 'keep',
                        'target'   => $target,
                ));
            }
            else {
@@ -76,6 +89,17 @@
            return;
        }
        $date_extension  = in_array('date', $this->exts);
        $regex_extension = in_array('regex', $this->exts);
        // set user's timezone
        try {
            $timezone = new DateTimeZone($this->rc->config->get('timezone', 'GMT'));
        }
        catch (Exception $e) {
            $timezone = new DateTimeZone('GMT');
        }
        $status        = rcube_utils::get_input_value('vacation_status', rcube_utils::INPUT_POST);
        $subject       = rcube_utils::get_input_value('vacation_subject', rcube_utils::INPUT_POST, true);
        $reason        = rcube_utils::get_input_value('vacation_reason', rcube_utils::INPUT_POST, true);
@@ -84,7 +108,12 @@
        $interval_type = rcube_utils::get_input_value('vacation_interval_type', rcube_utils::INPUT_POST);
        $date_from     = rcube_utils::get_input_value('vacation_datefrom', rcube_utils::INPUT_POST);
        $date_to       = rcube_utils::get_input_value('vacation_dateto', rcube_utils::INPUT_POST);
        $time_from     = rcube_utils::get_input_value('vacation_timefrom', rcube_utils::INPUT_POST);
        $time_to       = rcube_utils::get_input_value('vacation_timeto', rcube_utils::INPUT_POST);
        $after         = rcube_utils::get_input_value('vacation_after', rcube_utils::INPUT_POST);
        $action        = rcube_utils::get_input_value('vacation_action', rcube_utils::INPUT_POST);
        $target        = rcube_utils::get_input_value('action_target', rcube_utils::INPUT_POST, true);
        $target_domain = rcube_utils::get_input_value('action_domain', rcube_utils::INPUT_POST);
        $interval_type                   = $interval_type == 'seconds' ? 'seconds' : 'days';
        $vacation_action['type']         = 'vacation';
@@ -107,33 +136,65 @@
        }
        if ($vacation_action['reason'] == '') {
            $error = 'managesieve.cannotbeempty';
            $error = 'managesieve.emptyvacationbody';
        }
        if ($vacation_action[$interval_type] && !preg_match('/^[0-9]+$/', $vacation_action[$interval_type])) {
            $error = 'managesieve.forbiddenchars';
        }
        foreach (array('date_from', 'date_to') as $var) {
            $date = $$var;
        // find and remove existing date/regex/true rules
        foreach ((array) $vacation_tests as $idx => $t) {
            if ($t['test'] == 'currentdate' || $t['test'] == 'true'
                || ($t['test'] == 'header' && $t['type'] == 'regex' && $t['arg1'] == 'received')
            ) {
                unset($vacation_tests[$idx]);
            }
        }
            if ($date && ($dt = rcube_utils::anytodatetime($date))) {
                $type = 'value-' . ($var == 'date_from' ? 'ge' : 'le');
                $test = array(
                    'test' => 'currentdate',
                    'part' => 'date',
                    'type' => $type,
                    'arg'  => $dt->format('Y-m-d'),
                );
        if ($date_extension) {
            foreach (array('date_from', 'date_to') as $var) {
                $time = ${str_replace('date', 'time', $var)};
                $date = trim($$var . ' ' . $time);
                // find existing date rule
                foreach ((array) $vacation_tests as $idx => $t) {
                    if ($t['test'] == 'currentdate' && $t['part'] == 'date' && $t['type'] == $type) {
                        $vacation_tests[$idx] = $test;
                        continue 2;
                if ($date && ($dt = rcube_utils::anytodatetime($date, $timezone))) {
                    if ($time) {
                        $vacation_tests[] = array(
                            'test' => 'currentdate',
                            'part' => 'iso8601',
                            'type' => 'value-' . ($var == 'date_from' ? 'ge' : 'le'),
                            'zone' => $dt->format('O'),
                            'arg'  => str_replace('+00:00', 'Z', strtoupper($dt->format('c'))),
                        );
                    }
                    else {
                        $vacation_tests[] = array(
                            'test' => 'currentdate',
                            'part' => 'date',
                            'type' => 'value-' . ($var == 'date_from' ? 'ge' : 'le'),
                            'zone' => $dt->format('O'),
                            'arg'  => $dt->format('Y-m-d'),
                        );
                    }
                }
            }
        }
        else if ($regex_extension) {
            // Add date range rules if range specified
            if ($date_from && $date_to) {
                if ($tests = self::build_regexp_tests($date_from, $date_to, $error)) {
                    $vacation_tests = array_merge($vacation_tests, $tests);
                }
            }
        }
                $vacation_tests[] = $test;
        if ($action == 'redirect' || $action == 'copy') {
            if ($target_domain) {
                $target .= '@' . $target_domain;
            }
            if (empty($target) || !rcube_utils::check_email($target)) {
                $error = 'noemailwarning';
            }
        }
@@ -148,9 +209,17 @@
            $rule['type']       = 'if';
            $rule['name']       = $rule['name'] ?: $this->plugin->gettext('vacation');
            $rule['disabled']   = $status == 'off';
            $rule['actions'][0] = $vacation_action;
            $rule['tests']      = $vacation_tests;
            $rule['join']       = count($vacation_tests) > 1;
            $rule['join']       = $date_extension ? count($vacation_tests) > 1 : false;
            $rule['actions']    = array($vacation_action);
            if ($action && $action != 'keep') {
                $rule['actions'][] = array(
                    'type'   => $action == 'discard' ? 'discard' : 'redirect',
                    'copy'   => $action == 'copy',
                    'target' => $action != 'discard' ? $target : '',
                );
            }
            // reset original vacation rule
            if (isset($this->vacation['idx'])) {
@@ -202,6 +271,7 @@
    {
        // check supported extensions
        $date_extension    = in_array('date', $this->exts);
        $regex_extension   = in_array('regex', $this->exts);
        $seconds_extension = in_array('vacation-seconds', $this->exts);
        // build FORM tag
@@ -216,18 +286,26 @@
            ) + $attrib);
        // form elements
        $subject   = new html_inputfield(array('name' => 'vacation_subject', 'size' => 50));
        $reason    = new html_textarea(array('name' => 'vacation_reason', 'cols' => 60, 'rows' => 8));
        $interval  = new html_inputfield(array('name' => 'vacation_interval', 'size' => 5));
        $addresses = '<textarea name="vacation_addresses" data-type="list" data-size="30" style="display: none">'
        $subject   = new html_inputfield(array('name' => 'vacation_subject', 'id' => 'vacation_subject', 'size' => 50));
        $reason    = new html_textarea(array('name' => 'vacation_reason', 'id' => 'vacation_reason', 'cols' => 60, 'rows' => 8));
        $interval  = new html_inputfield(array('name' => 'vacation_interval', 'id' => 'vacation_interval', 'size' => 5));
        $addresses = '<textarea name="vacation_addresses" id="vacation_addresses" data-type="list" data-size="30" style="display: none">'
            . rcube::Q(implode("\n", (array) $this->vacation['addresses']), 'strict', false) . '</textarea>';
        $status    = new html_select(array('name' => 'vacation_status'));
        $status    = new html_select(array('name' => 'vacation_status', 'id' => 'vacation_status'));
        $action    = new html_select(array('name' => 'vacation_action', 'id' => 'vacation_action', 'onchange' => 'vacation_action_select()'));
        $status->add($this->plugin->gettext('vacation.on'), 'on');
        $status->add($this->plugin->gettext('vacation.off'), 'off');
        $action->add($this->plugin->gettext('vacation.keep'), 'keep');
        $action->add($this->plugin->gettext('vacation.discard'), 'discard');
        $action->add($this->plugin->gettext('vacation.redirect'), 'redirect');
        if (in_array('copy', $this->exts)) {
            $action->add($this->plugin->gettext('vacation.copy'), 'copy');
        }
        if ($this->rc->config->get('managesieve_vacation') != 2 && count($this->vacation['list'])) {
            $after = new html_select(array('name' => 'vacation_after'));
            $after = new html_select(array('name' => 'vacation_after', 'id' => 'vacation_after'));
            $after->add('', '');
            foreach ($this->vacation['list'] as $idx => $rule) {
@@ -246,18 +324,74 @@
            $interval_txt .= '&nbsp;' . $this->plugin->gettext('days');
        }
        if ($date_extension) {
            $date_from   = new html_inputfield(array('name' => 'vacation_datefrom', 'class' => 'datepicker', 'size' => 12));
            $date_to     = new html_inputfield(array('name' => 'vacation_dateto', 'class' => 'datepicker', 'size' => 12));
        if ($date_extension || $regex_extension) {
            $date_from   = new html_inputfield(array('name' => 'vacation_datefrom', 'id' => 'vacation_datefrom', 'class' => 'datepicker', 'size' => 12));
            $date_to     = new html_inputfield(array('name' => 'vacation_dateto', 'id' => 'vacation_dateto', 'class' => 'datepicker', 'size' => 12));
            $date_format = $this->rc->config->get('date_format', 'Y-m-d');
        }
        if ($date_extension) {
            $time_from   = new html_inputfield(array('name' => 'vacation_timefrom', 'id' => 'vacation_timefrom', 'size' => 6));
            $time_to     = new html_inputfield(array('name' => 'vacation_timeto', 'id' => 'vacation_timeto', 'size' => 6));
            $time_format = $this->rc->config->get('time_format', 'H:i');
            $date_value  = array();
            foreach ((array) $this->vacation['tests'] as $test) {
                if ($test['test'] == 'currentdate' && $test['part'] == 'date') {
                    $date = $this->rc->format_date($test['arg'], $date_format, false);
                    $date_value[$test['type'] == 'value-ge' ? 'from' : 'to'] = $date;
                if ($test['test'] == 'currentdate') {
                    $idx = $test['type'] == 'value-ge' ? 'from' : 'to';
                    if ($test['part'] == 'date') {
                        $date_value[$idx]['date'] = $test['arg'];
                    }
                    else if ($test['part'] == 'iso8601') {
                        $date_value[$idx]['datetime'] = $test['arg'];
                    }
                }
            }
            foreach ($date_value as $idx => $value) {
                $date = $value['datetime'] ?: $value['date'];
                $date_value[$idx] = $this->rc->format_date($date, $date_format, false);
                if (!empty($value['datetime'])) {
                    $date_value['time_' . $idx] = $this->rc->format_date($date, $time_format, true);
                }
            }
        }
        else if ($regex_extension) {
            // Sieve 'date' extension not available, read start/end from RegEx based rules instead
            if ($date_tests = self::parse_regexp_tests($this->vacation['tests'])) {
                $date_value['from'] = $this->rc->format_date($date_tests['from'], $date_format, false);
                $date_value['to']   = $this->rc->format_date($date_tests['to'], $date_format, false);
            }
        }
        // force domain selection in redirect email input
        $domains  = (array) $this->rc->config->get('managesieve_domains');
        $redirect = $this->vacation['action'] == 'redirect' || $this->vacation['action'] == 'copy';
        if (!empty($domains)) {
            sort($domains);
            $domain_select = new html_select(array('name' => 'action_domain', 'id' => 'action_domain'));
            $domain_select->add(array_combine($domains, $domains));
            if ($redirect && $this->vacation['target']) {
                $parts = explode('@', $this->vacation['target']);
                if (!empty($parts)) {
                    $this->vacation['domain'] = array_pop($parts);
                    $this->vacation['target'] = implode('@', $parts);
                }
            }
        }
        // redirect target
        $action_target = ' <span id="action_target_span" style="display:' . ($redirect ? 'inline' : 'none') . '">'
            . '<input type="text" name="action_target" id="action_target"'
            . ' value="' .($redirect ? rcube::Q($this->vacation['target'], 'strict', false) : '') . '"'
            . (!empty($domains) ? ' size="20"' : ' size="35"') . '/>'
            . (!empty($domains) ? ' @ ' . $domain_select->show($this->vacation['domain']) : '')
            . '</span>';
        // Message tab
        $table = new html_table(array('cols' => 2));
@@ -267,30 +401,33 @@
        $table->add('title', html::label('vacation_reason', $this->plugin->gettext('vacation.body')));
        $table->add(null, $reason->show($this->vacation['reason']));
        if ($date_extension) {
            $table->add('title', html::label('vacation_datefrom', $this->plugin->gettext('vacation.dates')));
            $table->add(null,
                $this->plugin->gettext('vacation.from'). ' ' . $date_from->show($date_value['from'])
                . ' ' . $this->plugin->gettext('vacation.to'). ' ' . $date_to->show($date_value['to'])
            );
        if ($date_extension || $regex_extension) {
            $table->add('title', html::label('vacation_datefrom', $this->plugin->gettext('vacation.start')));
            $table->add(null, $date_from->show($date_value['from']) . ($time_from ? ' ' . $time_from->show($date_value['time_from']) : ''));
            $table->add('title', html::label('vacation_dateto', $this->plugin->gettext('vacation.end')));
            $table->add(null, $date_to->show($date_value['to']) . ($time_to ? ' ' . $time_to->show($date_value['time_to']) : ''));
        }
        $table->add('title', html::label('vacation_status', $this->plugin->gettext('vacation.status')));
        $table->add(null, $status->show($this->vacation['disabled'] ? 'off' : 'on'));
        $table->add(null, $status->show(!isset($this->vacation['disabled']) || $this->vacation['disabled'] ? 'off' : 'on'));
        $out .= html::tag('fieldset', $class, html::tag('legend', null, $this->plugin->gettext('vacation.reply')) . $table->show($attrib));
        // Advanced tab
        $table = new html_table(array('cols' => 2));
        $table->add('title', $this->plugin->gettext('vacation.addresses'));
        $table->add('title', html::label('vacation_addresses', $this->plugin->gettext('vacation.addresses')));
        $table->add(null, $addresses);
        $table->add('title', $this->plugin->gettext('vacation.interval'));
        $table->add('title', html::label('vacation_interval', $this->plugin->gettext('vacation.interval')));
        $table->add(null, $interval_txt);
        if ($after) {
            $table->add('title', $this->plugin->gettext('vacation.after'));
            $table->add('title', html::label('vacation_after', $this->plugin->gettext('vacation.after')));
            $table->add(null, $after->show($this->vacation['idx'] - 1));
        }
        $table->add('title', html::label('vacation_action', $this->plugin->gettext('vacation.action')));
        $table->add('vacation', $action->show($this->vacation['action']) . $action_target);
        $out .= html::tag('fieldset', $class, html::tag('legend', null, $this->plugin->gettext('vacation.advanced')) . $table->show($attrib));
@@ -298,6 +435,302 @@
        $this->rc->output->add_gui_object('sieveform', $form_id);
        if ($time_format) {
            $this->rc->output->set_env('time_format', $time_format);
        }
        return $out;
    }
    public static function build_regexp_tests($date_from, $date_to, &$error)
    {
        $tests    = array();
        $dt_from  = rcube_utils::anytodatetime($date_from);
        $dt_to    = rcube_utils::anytodatetime($date_to);
        $interval = $dt_from->diff($dt_to);
        if ($interval->invert || $interval->days > 365) {
            $error = 'managesieve.invaliddateformat';
            return;
        }
        $dt_i     = $dt_from;
        $interval = new DateInterval('P1D');
        $matchexp = '';
        while (!$dt_i->diff($dt_to)->invert) {
            $days     = (int) $dt_i->format('d');
            $matchexp .= $days < 10 ? "[ 0]$days" : $days;
            if ($days == $dt_i->format('t') || $dt_i->diff($dt_to)->days == 0) {
                $test = array(
                    'test' => 'header',
                    'type' => 'regex',
                    'arg1' => 'received',
                    'arg2' => '('.$matchexp.') '.$dt_i->format('M Y')
                );
                $tests[]  = $test;
                $matchexp = '';
            }
            else {
                $matchexp .= '|';
            }
            $dt_i->add($interval);
        }
        return $tests;
    }
    public static function parse_regexp_tests($tests)
    {
        $rx_from = '/^\(([0-9]{2}).*\)\s([A-Za-z]+)\s([0-9]{4})/';
        $rx_to   = '/^\(.*([0-9]{2})\)\s([A-Za-z]+)\s([0-9]{4})/';
        $result  = array();
        foreach ((array) $tests as $test) {
            if ($test['test'] == 'header' && $test['type'] == 'regex' && $test['arg1'] == 'received') {
                $textexp = preg_replace('/\[ ([^\]]*)\]/', '0', $test['arg2']);
                if (!$result['from'] && preg_match($rx_from, $textexp, $matches)) {
                    $result['from'] = $matches[1]." ".$matches[2]." ".$matches[3];
                }
                if (preg_match($rx_to, $textexp, $matches)) {
                    $result['to'] = $matches[1]." ".$matches[2]." ".$matches[3];
                }
            }
        }
        return $result;
    }
    /**
     * API: get vacation rule
     *
     * @return array Vacation rule information
     */
    public function get_vacation()
    {
        $this->exts = $this->sieve->get_extensions();
        $this->init_script();
        $this->vacation_rule();
        // check supported extensions
        $date_extension    = in_array('date', $this->exts);
        $regex_extension   = in_array('regex', $this->exts);
        $seconds_extension = in_array('vacation-seconds', $this->exts);
        // set user's timezone
        try {
            $timezone = new DateTimeZone($this->rc->config->get('timezone', 'GMT'));
        }
        catch (Exception $e) {
            $timezone = new DateTimeZone('GMT');
        }
        if ($date_extension) {
            $date_value = array();
            foreach ((array) $this->vacation['tests'] as $test) {
                if ($test['test'] == 'currentdate') {
                    $idx = $test['type'] == 'value-ge' ? 'start' : 'end';
                    if ($test['part'] == 'date') {
                        $date_value[$idx]['date'] = $test['arg'];
                    }
                    else if ($test['part'] == 'iso8601') {
                        $date_value[$idx]['datetime'] = $test['arg'];
                    }
                }
            }
            foreach ($date_value as $idx => $value) {
                $$idx = new DateTime($value['datetime'] ?: $value['date'], $timezone);
            }
        }
        else if ($regex_extension) {
            // Sieve 'date' extension not available, read start/end from RegEx based rules instead
            if ($date_tests = self::parse_regexp_tests($this->vacation['tests'])) {
                $from = new DateTime($date_tests['from'] . ' ' . '00:00:00', $timezone);
                $to   = new DateTime($date_tests['to'] . ' ' . '23:59:59', $timezone);
            }
        }
        if (isset($this->vacation['seconds'])) {
            $interval = $this->vacation['seconds'] . 's';
        }
        else if (isset($this->vacation['days'])) {
            $interval = $this->vacation['days'] . 'd';
        }
        $vacation = array(
            'supported' => $this->exts,
            'interval'  => $interval,
            'start'     => $start,
            'end'       => $end,
            'enabled'   => $this->vacation['reason'] && empty($this->vacation['disabled']),
            'message'   => $this->vacation['reason'],
            'subject'   => $this->vacation['subject'],
            'action'    => $this->vacation['action'],
            'target'    => $this->vacation['target'],
            'addresses' => $this->vacation['addresses'],
        );
        return $vacation;
    }
    /**
     * API: set vacation rule
     *
     * @param array $vacation Vacation rule information (see self::get_vacation())
     *
     * @return bool True on success, False on failure
     */
    public function set_vacation($data)
    {
        $this->exts  = $this->sieve->get_extensions();
        $this->error = false;
        $this->init_script();
        $this->vacation_rule();
        // check supported extensions
        $date_extension    = in_array('date', $this->exts);
        $regex_extension   = in_array('regex', $this->exts);
        $seconds_extension = in_array('vacation-seconds', $this->exts);
        $vacation['type']      = 'vacation';
        $vacation['reason']    = $this->strip_value(str_replace("\r\n", "\n", $data['message']));
        $vacation['addresses'] = $data['addresses'];
        $vacation['subject']   = $data['subject'];
        $vacation_tests        = (array) $this->vacation['tests'];
        foreach ((array) $vacation['addresses'] as $aidx => $address) {
            $vacation['addresses'][$aidx] = $address = trim($address);
            if (empty($address)) {
                unset($vacation['addresses'][$aidx]);
            }
            else if (!rcube_utils::check_email($address)) {
                $this->error = "Invalid address in vacation addresses: $address";
                return false;
            }
        }
        if ($vacation['reason'] == '') {
            $this->error = "No vacation message specified";
            return false;
        }
        if ($data['interval']) {
            if (!preg_match('/^([0-9]+)\s*([sd])$/', $data['interval'], $m)) {
                $this->error = "Invalid vacation interval value: " . $data['interval'];
                return false;
            }
            else if ($m[1]) {
                $vacation[strtolower($m[2]) == 's' ? 'seconds' : 'days'] = $m[1];
            }
        }
        // find and remove existing date/regex/true rules
        foreach ((array) $vacation_tests as $idx => $t) {
            if ($t['test'] == 'currentdate' || $t['test'] == 'true'
                || ($t['test'] == 'header' && $t['type'] == 'regex' && $t['arg1'] == 'received')
            ) {
                unset($vacation_tests[$idx]);
            }
        }
        if ($date_extension) {
            foreach (array('start', 'end') as $var) {
                if ($dt = $data[$var]) {
                    $vacation_tests[] = array(
                        'test' => 'currentdate',
                        'part' => 'iso8601',
                        'type' => 'value-' . ($var == 'start' ? 'ge' : 'le'),
                        'zone' => $dt->format('O'),
                        'arg'  => str_replace('+00:00', 'Z', strtoupper($dt->format('c'))),
                    );
                }
            }
        }
        else if ($regex_extension) {
            // Add date range rules if range specified
            if ($data['start'] && $data['end']) {
                if ($tests = self::build_regexp_tests($data['start'], $data['end'], $error)) {
                    $vacation_tests = array_merge($vacation_tests, $tests);
                }
                if ($error) {
                    $this->error = "Invalid dates specified or unsupported period length";
                    return false;
                }
            }
        }
        if ($data['action'] == 'redirect' || $data['action'] == 'copy') {
            if (empty($data['target']) || !rcube_utils::check_email($data['target'])) {
                $this->error = "Invalid address in action taget: " . $data['target'];
                return false;
            }
        }
        else if ($data['action'] && $data['action'] != 'keep' && $data['action'] != 'discard') {
            $this->error = "Unsupported vacation action: " . $data['action'];
            return false;
        }
        if (empty($vacation_tests)) {
            $vacation_tests = $this->rc->config->get('managesieve_vacation_test', array(array('test' => 'true')));
        }
        // @TODO: handle situation when there's no active script
        $rule             = $this->vacation;
        $rule['type']     = 'if';
        $rule['name']     = $rule['name'] ?: 'Out-of-Office';
        $rule['disabled'] = isset($data['enabled']) && !$data['enabled'];
        $rule['tests']    = $vacation_tests;
        $rule['join']     = $date_extension ? count($vacation_tests) > 1 : false;
        $rule['actions']  = array($vacation);
        if ($data['action'] && $data['action'] != 'keep') {
            $rule['actions'][] = array(
                'type'   => $data['action'] == 'discard' ? 'discard' : 'redirect',
                'copy'   => $data['action'] == 'copy',
                'target' => $data['action'] != 'discard' ? $data['target'] : '',
            );
        }
        // reset original vacation rule
        if (isset($this->vacation['idx'])) {
            $this->script[$this->vacation['idx']] = null;
        }
        array_unshift($this->script, $rule);
        $this->sieve->script->content = array_values(array_filter($this->script));
        return $this->save_script();
    }
    /**
     * API: connect to managesieve server
     */
    public function connect($username, $password)
    {
        if (!parent::connect($username, $password)) {
            return $this->load_script();
        }
    }
    /**
     * API: Returns last error
     *
     * @return string Error message
     */
    public function get_error()
    {
        return $this->error;
    }
}
plugins/managesieve/localization/ast.inc
New file
@@ -0,0 +1,50 @@
<?php
/*
 +-----------------------------------------------------------------------+
 | plugins/managesieve/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Managesieve plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
 | See the README file for a full license statement.                     |
 |                                                                       |
 +-----------------------------------------------------------------------+
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-managesieve/
*/
$labels['filters'] = 'Filtros';
$labels['managefilters'] = 'Alministrar filtros de corréu entrante';
$labels['filtername'] = 'Nome del filtru';
$labels['newfilter'] = 'Filtru nuevu';
$labels['filteradd'] = 'Amestar filtru';
$labels['filterdel'] = 'Desaniciar filtru';
$labels['moveup'] = 'Mover arriba';
$labels['movedown'] = 'Mover abaxo';
$labels['filterany'] = 'tolos mensaxes';
$labels['filtercontains'] = 'contien';
$labels['filternotcontains'] = 'nun contien';
$labels['filteris'] = 'ye igual a';
$labels['filterisnot'] = 'nun ye igual a';
$labels['filterexists'] = 'esiste';
$labels['filternotexists'] = 'nun esiste';
$labels['filtermatches'] = 'espresiones que concasen';
$labels['filternotmatches'] = 'espresiones que nun concasen';
$labels['addrule'] = 'Amestar regla';
$labels['delrule'] = 'Desaniciar regla';
$labels['messagemoveto'] = 'Mover mensaxe a';
$labels['messageredirect'] = 'Redireicionar mensaxe a';
$labels['messagecopyto'] = 'Copiar mensaxe a';
$labels['messagedelete'] = 'Desaniciar mensaxe';
$labels['messagesrules'] = 'Pa corréu entrante:';
$labels['messagesactions'] = '...executar les aiciones siguientes:';
$labels['add'] = 'Amestar';
$labels['del'] = 'Desaniciar';
$labels['sender'] = 'Remitente';
$labels['enable'] = 'Habilitar/Deshabilitar';
$labels['flagread'] = 'Lleer';
$labels['flagdeleted'] = 'Desaniciáu';
$labels['flaganswered'] = 'Respondíu';
?>
plugins/managesieve/localization/br.inc
New file
@@ -0,0 +1,30 @@
<?php
/*
 +-----------------------------------------------------------------------+
 | plugins/managesieve/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Managesieve plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
 | See the README file for a full license statement.                     |
 |                                                                       |
 +-----------------------------------------------------------------------+
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-managesieve/
*/
$labels['filters'] = 'sil';
$labels['newfilter'] = 'Sil nevez';
$labels['filteradd'] = 'Ouzhpenan ur sil';
$labels['filterdel'] = 'Dilemel ar sil';
$labels['filterany'] = 'An holl postel';
$labels['messagecopyto'] = 'eilan ar postel e';
$labels['messagedelete'] = 'Dilemel ar postel';
$labels['add'] = 'Ouzhpenan';
$labels['del'] = 'Dilemel';
$labels['sender'] = 'Kaser';
$labels['recipient'] = 'Resever';
$labels['vacationsubject'] = 'Sujed';
?>
plugins/managesieve/localization/bs_BA.inc
@@ -57,10 +57,10 @@
$labels['vacationaddr'] = 'Moje dodatne email adrese:';
$labels['vacationdays'] = 'Frekvencija slanja poruka (u danima):';
$labels['vacationinterval'] = 'Frekvencija slanja poruka:';
$labels['days'] = 'dana';
$labels['seconds'] = 'sekundi';
$labels['vacationreason'] = 'Tijelo poruke (razlog za odmor):';
$labels['vacationsubject'] = 'Naslov poruke:';
$labels['days'] = 'dana';
$labels['seconds'] = 'sekundi';
$labels['rulestop'] = 'Prestani procjenjivati pravila';
$labels['enable'] = 'Omogući/Onemogući';
$labels['filterset'] = 'Set filtera';
@@ -108,14 +108,17 @@
$labels['varquotewildcard'] = 'citiraj specijalne znakove';
$labels['varlength'] = 'dužina';
$labels['notify'] = 'Pošalji napomenu';
$labels['notifyaddress'] = 'Na email adresu:';
$labels['notifybody'] = 'Sadržaj napomene:';
$labels['notifysubject'] = 'Naslov napomene:';
$labels['notifyfrom'] = 'Pošiljalac napomene:';
$labels['notifytarget'] = 'Odredište napomene:';
$labels['notifymessage'] = 'Poruka napomene (neobavezno):';
$labels['notifyoptions'] = 'Opcije napomene (neobavezno):';
$labels['notifyfrom'] = 'Pošiljalac napomene (neobavezno):';
$labels['notifyimportance'] = 'Prioritet:';
$labels['notifyimportancelow'] = 'mali';
$labels['notifyimportancenormal'] = 'obični';
$labels['notifyimportancehigh'] = 'veliki';
$labels['notifymethodmailto'] = 'Email';
$labels['notifymethodtel'] = 'Telefon';
$labels['notifymethodsms'] = 'SMS';
$labels['filtercreate'] = 'Kreiraj filter';
$labels['usedata'] = 'Koristite sljedeće podatke u filteru:';
$labels['nextstep'] = 'Sljedeći korak';
@@ -157,6 +160,33 @@
$labels['asciinumeric'] = 'numerički (ascii-numeric)';
$labels['index'] = 'indeks:';
$labels['indexlast'] = 'unazad';
$labels['vacation'] = 'Odmor';
$labels['vacation.reply'] = 'Poruka sa odgovorom';
$labels['vacation.advanced'] = 'Napredmen postavke';
$labels['vacation.subject'] = 'Naslov';
$labels['vacation.body'] = 'Tijelo';
$labels['vacation.dates'] = 'Vrijeme odmora';
$labels['vacation.from'] = 'Od:';
$labels['vacation.to'] = 'Do:';
$labels['vacation.status'] = 'Status';
$labels['vacation.on'] = 'Uključeno';
$labels['vacation.off'] = 'Isključeno';
$labels['vacation.addresses'] = 'Moje dodatne adrese';
$labels['vacation.interval'] = 'Interval odgovora';
$labels['vacation.after'] = 'Pravilo za odmor stavi nakon';
$labels['vacation.saving'] = 'Snimam podatke...';
$labels['vacation.action'] = 'Akcija za dolazne poruke';
$labels['vacation.keep'] = 'Zadrži';
$labels['vacation.discard'] = 'Odbaci';
$labels['vacation.redirect'] = 'Preusmeri ka';
$labels['vacation.copy'] = 'Pošalji kopiju na';
$labels['arialabelfiltersetactions'] = 'Akcije za filterske setove';
$labels['arialabelfilteractions'] = 'Filterske akcije';
$labels['arialabelfilterform'] = 'Svojstva filtera';
$labels['ariasummaryfilterslist'] = 'Lista filtera';
$labels['ariasummaryfiltersetslist'] = 'Lista filterskih setova';
$labels['filterstitle'] = 'Uredi filtere za dolazni email';
$labels['vacationtitle'] = 'Uredi pravila kada nisam na poslu';
$messages['filterunknownerror'] = 'Nepoznata serverska greška.';
$messages['filterconnerror'] = 'Nije se moguće povezati na server.';
$messages['filterdeleteerror'] = 'Nije moguće obrisati filter. Desila se serverska greška.';
@@ -189,4 +219,7 @@
$messages['setexist'] = 'Set već postoji.';
$messages['nodata'] = 'Morate označiti barem jednu poziciju!';
$messages['invaliddateformat'] = 'Netačan datum ili dio formata datuma';
$messages['saveerror'] = 'Nije moguće snimiti podatke. Desila se serverska greška.';
$messages['vacationsaved'] = 'Podaci o odmoru su uspješno snimljeni.';
$messages['emptyvacationbody'] = 'Tijelo poruke za odmor je neophodno!';
?>
plugins/managesieve/localization/en_US.inc
@@ -167,9 +167,8 @@
$labels['vacation.advanced'] = 'Advanced settings';
$labels['vacation.subject'] = 'Subject';
$labels['vacation.body'] = 'Body';
$labels['vacation.dates'] = 'Vacation time';
$labels['vacation.from'] = 'From:';
$labels['vacation.to'] = 'To:';
$labels['vacation.start'] = 'Vacation start';
$labels['vacation.end'] = 'Vacation end';
$labels['vacation.status'] = 'Status';
$labels['vacation.on'] = 'On';
$labels['vacation.off'] = 'Off';
@@ -177,6 +176,18 @@
$labels['vacation.interval'] = 'Reply interval';
$labels['vacation.after'] = 'Put vacation rule after';
$labels['vacation.saving'] = 'Saving data...';
$labels['vacation.action'] = 'Incoming message action';
$labels['vacation.keep'] = 'Keep';
$labels['vacation.discard'] = 'Discard';
$labels['vacation.redirect'] = 'Redirect to';
$labels['vacation.copy'] = 'Send copy to';
$labels['arialabelfiltersetactions'] = 'Filter set actions';
$labels['arialabelfilteractions'] = 'Filter actions';
$labels['arialabelfilterform'] = 'Filter properties';
$labels['ariasummaryfilterslist'] = 'List of filters';
$labels['ariasummaryfiltersetslist'] = 'List of filter sets';
$labels['filterstitle'] = 'Edit incoming mail filters';
$labels['vacationtitle'] = 'Edit out-of-office rule';
$messages = array();
$messages['filterunknownerror'] = 'Unknown server error.';
@@ -213,5 +224,6 @@
$messages['invaliddateformat'] = 'Invalid date or date part format';
$messages['saveerror'] = 'Unable to save data. Server error occurred.';
$messages['vacationsaved'] = 'Vacation data saved successfully.';
$messages['emptyvacationbody'] = 'Body of vacation message is required!';
?>
plugins/managesieve/localization/es_419.inc
@@ -54,17 +54,27 @@
$labels['del'] = 'Eliminar';
$labels['sender'] = 'Remitente';
$labels['recipient'] = 'Destinatario';
$labels['vacationdays'] = '¿Cada cuánto enviar mensajes (en días)?';
$labels['vacationinterval'] = '¿Con que frecuencia enviar mensajes?';
$labels['vacationaddr'] = 'Mis direccion(es) adiconal(es):';
$labels['vacationdays'] = 'Cuan a menudo enviar mensajes (en días):';
$labels['vacationinterval'] = '¿Con qué frecuencia enviar mensajes?:';
$labels['vacationreason'] = 'Cuerpo del mensaje (motivo de las vacaciones):';
$labels['vacationsubject'] = 'Asunto del mensaje:';
$labels['days'] = 'días';
$labels['seconds'] = 'segundos';
$labels['vacationreason'] = 'Cuerpo del mensaje (motivo de las vacaciones):';
$labels['vacationsubject'] = 'Título del mensaje:';
$labels['rulestop'] = 'Detener la evaluación de reglas';
$labels['enable'] = 'Habilitar/Deshabilitar';
$labels['filterset'] = 'Set de filtros';
$labels['filtersets'] = 'Filtro acciona';
$labels['filtersetadd'] = 'Agregar set de filtros';
$labels['filtersetdel'] = 'Eliminar set de filtros actual';
$labels['filtersetact'] = 'Activar set de filtros actual';
$labels['filtersetdeact'] = 'Desactivar set de filtros actual';
$labels['filterdef'] = 'Definición del filtro';
$labels['filtersetname'] = 'Nombre del set de filtros';
$labels['newfilterset'] = 'Nuevo set de filtros';
$labels['active'] = 'activo';
$labels['none'] = 'ninguno';
$labels['fromset'] = 'desde set';
$labels['fromfile'] = 'desde archivo';
$labels['filterdisabled'] = 'filtro deshabilitado';
$labels['countisgreaterthan'] = 'la cuenta es mayor a';
@@ -72,15 +82,22 @@
$labels['countislessthan'] = 'la cuenta es menor que';
$labels['countislessthanequal'] = 'la cuenta es menor o igual que';
$labels['countequals'] = 'la cuenta es igual a ';
$labels['countnotequals'] = 'la cuenta no es menor a';
$labels['valueisgreaterthan'] = 'el valor es mayor que';
$labels['valueisgreaterthanequal'] = 'el balor es mayor o igual que ';
$labels['valueislessthan'] = 'el valor es menor que ';
$labels['valueislessthanequal'] = 'el valor es menor o igual que ';
$labels['valueequals'] = 'el valor es igual a ';
$labels['valuenotequals'] = 'el valor no es igual a';
$labels['setflags'] = 'Colocar etiquetas al mensaje';
$labels['addflags'] = 'Agrega etiquetas al mensaje';
$labels['removeflags'] = 'Eliminar etiquetas al mensaje';
$labels['flagread'] = 'Leido';
$labels['flagdeleted'] = 'Eliminado';
$labels['flaganswered'] = 'Respondido';
$labels['flagflagged'] = 'Etiquetado';
$labels['flagdraft'] = 'Borrador';
$labels['setvariable'] = 'Establecer variable';
$labels['setvarname'] = 'Nombre de la variable:';
$labels['setvarvalue'] = 'Valor de la variable:';
$labels['setvarmodifiers'] = 'Modificadores:';
@@ -91,30 +108,36 @@
$labels['varquotewildcard'] = 'citar carácteres especiales';
$labels['varlength'] = 'largo';
$labels['notify'] = 'Enviar notificación';
$labels['notifyaddress'] = 'A la direccion de correo:';
$labels['notifybody'] = 'Cuerpo de la notificación:';
$labels['notifysubject'] = 'Tema de la notificación:';
$labels['notifyfrom'] = 'Remitente de la notificación: ';
$labels['notifyimportance'] = 'Importantcia:';
$labels['notifytarget'] = 'Destinatario de la notificación:';
$labels['notifymessage'] = 'Mensaje de notificación (opcional):';
$labels['notifyoptions'] = 'Opciones de notificación (opcional):';
$labels['notifyfrom'] = 'Remitente de la notificación (opcional):';
$labels['notifyimportance'] = 'Importancia:';
$labels['notifyimportancelow'] = 'baja';
$labels['notifyimportancenormal'] = 'normal';
$labels['notifyimportancehigh'] = 'alta';
$labels['notifymethodmailto'] = 'Correo electrónico';
$labels['notifymethodtel'] = 'Teléfono';
$labels['notifymethodsms'] = 'Mensaje de texto';
$labels['filtercreate'] = 'Crear filtro';
$labels['usedata'] = 'Usar los datos siguientes en el filtro:';
$labels['nextstep'] = 'Paso siguiente';
$labels['...'] = '...';
$labels['currdate'] = 'Fecha actual';
$labels['datetest'] = 'Fecha';
$labels['year'] = 'Año';
$labels['dateheader'] = 'encabezado:';
$labels['year'] = 'año';
$labels['month'] = 'mes';
$labels['day'] = 'día';
$labels['date'] = 'fecha(aaaa-mm-dd)';
$labels['julian'] = 'fecha (julian)';
$labels['hour'] = 'hora';
$labels['minute'] = 'minuto';
$labels['second'] = 'segundo';
$labels['time'] = 'hora (hh:mm:ss)';
$labels['iso8601'] = 'fecha (ISO8601)';
$labels['std11'] = 'fecha (RFC2822)';
$labels['zone'] = 'zona horaria';
$labels['weekday'] = 'día de la semana (0-6)';
$labels['advancedopts'] = 'Opciones avanzadas';
$labels['body'] = 'Cuerpo';
@@ -132,22 +155,71 @@
$labels['detail'] = 'detalle';
$labels['comparator'] = 'comparador:';
$labels['default'] = 'predeterminado';
$labels['octet'] = 'estricto';
$labels['asciinumeric'] = 'numérico (ascii-numeric)';
$messages['filterunknownerror'] = 'Error del servidor desconocido.';
$messages['filterconnerror'] = 'Incapaz de conectarse al servidor.';
$labels['octet'] = 'estricto (octeto)';
$labels['asciicasemap'] = 'no sensible a mayúsculas y minúsculas (mapero-ascii)';
$labels['asciinumeric'] = 'numérico (ascii-numérico)';
$labels['index'] = 'índice:';
$labels['indexlast'] = 'hacia atrás';
$labels['vacation'] = 'Vacaciones';
$labels['vacation.reply'] = 'Responder mensaje';
$labels['vacation.advanced'] = 'Opciones avanzadas';
$labels['vacation.subject'] = 'Asunto';
$labels['vacation.body'] = 'Cuerpo';
$labels['vacation.dates'] = 'Horario de vacaciones';
$labels['vacation.from'] = 'De:';
$labels['vacation.to'] = 'Para:';
$labels['vacation.status'] = 'Estado';
$labels['vacation.on'] = 'Encendido';
$labels['vacation.off'] = 'Apagado';
$labels['vacation.addresses'] = 'Mis direcciones adicionales';
$labels['vacation.interval'] = 'Intervalo de respuesta';
$labels['vacation.after'] = 'Colocar regla de vacaciones luego';
$labels['vacation.saving'] = 'Guardando información...';
$labels['vacation.action'] = 'Acción para mensaje entrante';
$labels['vacation.keep'] = 'Mantener';
$labels['vacation.discard'] = 'Descartar';
$labels['vacation.redirect'] = 'Redireccionar a';
$labels['vacation.copy'] = 'Enviar una copia a';
$labels['arialabelfiltersetactions'] = 'Acciones del set de filtros';
$labels['arialabelfilteractions'] = 'Acciones de filtros';
$labels['arialabelfilterform'] = 'Propiedades de filtros';
$labels['ariasummaryfilterslist'] = 'Lista de filtros';
$labels['ariasummaryfiltersetslist'] = 'Lista de set de filtros';
$labels['filterstitle'] = 'Administrar filtros de correos entrantes';
$labels['vacationtitle'] = 'Editar regla de fuera de oficina';
$messages['filterunknownerror'] = 'Error de servidor desconocido.';
$messages['filterconnerror'] = 'No se puede conectar al servidor.';
$messages['filterdeleteerror'] = 'No se puede eliminar el filtro. Ocurrió un error de servidor.';
$messages['filterdeleted'] = 'Filtro eliminado exitosamente.';
$messages['filtersaved'] = 'Filtro guardado exitosamente.';
$messages['filtersaveerror'] = 'No es posible guardar el filtro. Ha ocurrido un error de servidor.';
$messages['filterdeleteconfirm'] = '¿Estás seguro que quieres eliminar el filtro seleccionado?';
$messages['ruledeleteconfirm'] = '¿Estás seguro que quieres eliminar la regla seleccionada?';
$messages['actiondeleteconfirm'] = '¿Estás seguro que queires eliminar la acción seleccionada?';
$messages['forbiddenchars'] = 'Carácteres ilegales en el campo.';
$messages['cannotbeempty'] = 'El campo no puede estar vacio.';
$messages['ruleexist'] = 'Ya existe un filtro con el nombre especificado.';
$messages['setactivateerror'] = 'No es posible activar el set de filtros seleccionado. Ha ocurrido un error de servidor.';
$messages['setdeactivateerror'] = 'No es posible desactivar el set de filtros selecciona. Ha ocurrido un error de servidor.';
$messages['setdeleteerror'] = 'No es posible eliminar el set de filtros seleccionado. Ha ocurrido un error de servidor.';
$messages['setactivated'] = 'Set de filtros activado exitosamente.';
$messages['setdeactivated'] = 'Set de filtros desactivado exitosamente.';
$messages['setdeleted'] = 'Set de filtroseliminado exitosamente.';
$messages['setdeleteconfirm'] = '¿Estas seguro que deseas eliminar el set de filtros seleccionado?';
$messages['setcreateerror'] = 'No es posible crear el set de filtros. Ha ocurrido un error de servidor.';
$messages['setcreated'] = 'Set de filtros creado exitosamente.';
$messages['activateerror'] = 'No es posible habilitar los filtros seleccionados. Ha ocurrido un error de servidor.';
$messages['deactivateerror'] = 'No es posible deshabilitar los filtros seleccionados. Ha ocurrido un error de servidor.';
$messages['deactivated'] = 'Filtro(s) deshabilitado(s) exitosamente.';
$messages['activated'] = 'Filtro(s) habilitado(s) exitosamente.';
$messages['moved'] = 'Filtro movido exitosamente.';
$messages['moveerror'] = 'No es posible mover los filtros seleccionados. Ha ocurrido un error de servidor.';
$messages['nametoolong'] = 'Nombre demasiado largo.';
$messages['namereserved'] = 'Nombre reservado.';
$messages['setexist'] = 'Set ya existe.';
$messages['nodata'] = 'Debes seleccionar al menos una posición.';
$messages['invaliddateformat'] = 'Fecha o parte del formato no válido';
$messages['saveerror'] = 'No es posible guardar la información. Ha ocurrido un error de servidor.';
$messages['vacationsaved'] = 'Información de vacaciones guardada exitosamente.';
$messages['emptyvacationbody'] = 'Cuerpo del mensaje de vacaciones es requerido!';
?>
plugins/managesieve/localization/es_AR.inc
@@ -32,6 +32,10 @@
$labels['filterisnot'] = 'no es igual a';
$labels['filterexists'] = 'existe';
$labels['filternotexists'] = 'no existe';
$labels['filtermatches'] = 'coincide con la expresión';
$labels['filternotmatches'] = 'no coindice con la expresión';
$labels['filterregex'] = 'coincide con la expresión regular';
$labels['filternotregex'] = 'no coincide con la expresión regular';
$labels['filterunder'] = 'bajo';
$labels['filterover'] = 'sobre';
$labels['addrule'] = 'Agregar regla';
@@ -43,16 +47,24 @@
$labels['messagereply'] = 'Responder con un mensaje';
$labels['messagedelete'] = 'Eliminar mensaje';
$labels['messagediscard'] = 'Descartar con un mensaje';
$labels['messagekeep'] = 'Mantener mensajes en bandeja de entrada';
$labels['messagesrules'] = 'Para el correo entrante:';
$labels['messagesactions'] = '... ejecutar las siguientes acciones:';
$labels['add'] = 'Agregar';
$labels['del'] = 'Eliminar';
$labels['sender'] = 'Remitente';
$labels['recipient'] = 'Destinatario';
$labels['vacationaddr'] = 'Mi(s) direccion(es) de e-mail adicional(es):';
$labels['vacationdays'] = 'Cada cuanto enviar mensajes (en días):';
$labels['vacationinterval'] = 'Enviar mensajes cada:';
$labels['vacationreason'] = 'Cuerpo del mensaje (razón de vacaciones):';
$labels['vacationsubject'] = 'Asunto del mensaje:';
$labels['days'] = 'dias';
$labels['seconds'] = 'segundos';
$labels['rulestop'] = 'Parar de evaluar reglas';
$labels['enable'] = 'Habilitar/Deshabilitar';
$labels['filterset'] = 'Conjunto de filtros';
$labels['filtersets'] = 'Filtro activa';
$labels['filtersetadd'] = 'Agregar conjunto de filtros';
$labels['filtersetdel'] = 'Eliminar conjunto de filtros';
$labels['filtersetact'] = 'Activar conjunto de filtros';
@@ -65,19 +77,149 @@
$labels['fromset'] = 'desde conjunto';
$labels['fromfile'] = 'desde archivo';
$labels['filterdisabled'] = 'Filtro deshabilitado';
$labels['countisgreaterthan'] = 'la cuenta es mayor a';
$labels['countisgreaterthanequal'] = 'la cuenta es mayor o igual a';
$labels['countislessthan'] = 'la cuenta es menor a';
$labels['countislessthanequal'] = 'la cuenta es menor o igual a';
$labels['countequals'] = 'la cuenta es igual a';
$labels['countnotequals'] = 'la cuenta no es igual a';
$labels['valueisgreaterthan'] = 'el valor es mayor a';
$labels['valueisgreaterthanequal'] = 'el valor es mayor o igual a';
$labels['valueislessthan'] = 'el valor es menor a';
$labels['valueislessthanequal'] = 'el valor es menor o igual a';
$labels['valueequals'] = 'el valor es igual a';
$labels['valuenotequals'] = 'el valor no es igual a';
$labels['setflags'] = 'Configurar marcas del mensaje';
$labels['addflags'] = 'Agregar marcas al mensaje';
$labels['removeflags'] = 'Eliminar marcas del mensaje';
$labels['flagread'] = 'Leer';
$labels['flagdeleted'] = 'Eliminado';
$labels['flaganswered'] = 'Respondido';
$labels['flagflagged'] = 'Marcado';
$labels['flagdraft'] = 'Borrador';
$labels['setvariable'] = 'Setear variable';
$labels['setvarname'] = 'Nombre de variable:';
$labels['setvarvalue'] = 'Valor de variable:';
$labels['setvarmodifiers'] = 'Modificadores:';
$labels['varlower'] = 'minúscula';
$labels['varupper'] = 'mayúscula';
$labels['varlowerfirst'] = 'primer caracter en minúscula';
$labels['varupperfirst'] = 'primer caracter en mayúscula';
$labels['varquotewildcard'] = 'citar caracteres especiales';
$labels['varlength'] = 'longitud';
$labels['notify'] = 'Enviar notificación';
$labels['notifytarget'] = 'Objetivo de la notificación:';
$labels['notifymessage'] = 'Mensaje de notificación (opcional):';
$labels['notifyoptions'] = 'Opciones de notificación (opcional):';
$labels['notifyfrom'] = 'Remitente de la notificación (opcional):';
$labels['notifyimportance'] = 'Importancia:';
$labels['notifyimportancelow'] = 'baja';
$labels['notifyimportancenormal'] = 'normal';
$labels['notifyimportancehigh'] = 'alta';
$labels['notifymethodmailto'] = 'Email';
$labels['notifymethodtel'] = 'Teléfono';
$labels['notifymethodsms'] = 'SMS';
$labels['filtercreate'] = 'Crear filtro';
$labels['usedata'] = 'Usar la siguiente información en el filtro:';
$labels['nextstep'] = 'Siguiente paso';
$labels['...'] = '...';
$labels['currdate'] = 'Fecha actual';
$labels['datetest'] = 'Fecha';
$labels['dateheader'] = 'encabezado:';
$labels['year'] = 'año';
$labels['month'] = 'mes';
$labels['day'] = 'dia';
$labels['date'] = 'fecha (yyyy-mm-dd)';
$labels['julian'] = 'fecha (juliano)';
$labels['hour'] = 'hora';
$labels['minute'] = 'minuto';
$labels['second'] = 'segundo';
$labels['time'] = 'hora (hh:mm:ss)';
$labels['iso8601'] = 'fecha (ISO8601)';
$labels['std11'] = 'fecha (RFC2822)';
$labels['zone'] = 'zona horaria';
$labels['weekday'] = 'día de la semana (0-6)';
$labels['advancedopts'] = 'Opciones avanzadas';
$labels['body'] = 'Cuerpo';
$labels['address'] = 'dirección';
$labels['envelope'] = 'envoltura';
$labels['modifier'] = 'modificador:';
$labels['text'] = 'texto';
$labels['undecoded'] = 'sin decodificar (crudo)';
$labels['contenttype'] = 'tipo de contenido';
$labels['modtype'] = 'tipo:';
$labels['allparts'] = 'todo';
$labels['domain'] = 'dominio';
$labels['localpart'] = 'parte local';
$labels['user'] = 'usuario';
$labels['detail'] = 'detalle';
$labels['comparator'] = 'comparador:';
$labels['default'] = 'por defecto';
$labels['octet'] = 'estricto (octeto)';
$labels['asciicasemap'] = 'no sensible a minúsculas o mayúsculas (ascii-casemap)';
$labels['asciinumeric'] = 'numérico (ascii-numeric)';
$labels['index'] = 'índice:';
$labels['indexlast'] = 'hacia atrás';
$labels['vacation'] = 'Vacaciones';
$labels['vacation.reply'] = 'Responder mensaje';
$labels['vacation.advanced'] = 'Opciones avanzdas';
$labels['vacation.subject'] = 'Asunto';
$labels['vacation.body'] = 'Cuerpo';
$labels['vacation.dates'] = 'Período de vacaciones';
$labels['vacation.from'] = 'De:';
$labels['vacation.to'] = 'Para:';
$labels['vacation.status'] = 'Estado';
$labels['vacation.on'] = 'On';
$labels['vacation.off'] = 'Off';
$labels['vacation.addresses'] = 'Mis direcciones adicionales';
$labels['vacation.interval'] = 'Intervalo de respuesta';
$labels['vacation.after'] = 'Colocar luego regla de vacaciones ';
$labels['vacation.saving'] = 'Guardando información...';
$labels['vacation.action'] = 'Acción para mensaje entrante';
$labels['vacation.keep'] = 'Mantener';
$labels['vacation.discard'] = 'Descartar';
$labels['vacation.redirect'] = 'Reenviar a';
$labels['vacation.copy'] = 'Enviar copia a';
$labels['arialabelfiltersetactions'] = 'Acciones de conjunto de filtros';
$labels['arialabelfilteractions'] = 'Filtrar acciones';
$labels['arialabelfilterform'] = 'Filtrar propiedades';
$labels['ariasummaryfilterslist'] = 'Listado de filtros';
$labels['ariasummaryfiltersetslist'] = 'Listado de conjunto de filtros';
$labels['filterstitle'] = 'Editar filtros para mensajes entrantes';
$labels['vacationtitle'] = 'Editar reglas "fuera de la oficina"';
$messages['filterunknownerror'] = 'Error desconocido de servidor';
$messages['filterconnerror'] = 'Imposible conectar con el servidor managesieve';
$messages['filterdeleteerror'] = 'Imposible borrar filtro. Ha ocurrido un error en el servidor';
$messages['filterdeleted'] = 'Filtro borrado satisfactoriamente';
$messages['filtersaved'] = 'Filtro guardado satisfactoriamente';
$messages['filtersaveerror'] = 'Imposible guardar ell filtro. Ha ocurrido un error en el servidor';
$messages['filterdeleteconfirm'] = '¿Realmente desea borrar el filtro seleccionado?';
$messages['ruledeleteconfirm'] = '¿Está seguro de que desea borrar la regla seleccionada?';
$messages['actiondeleteconfirm'] = '¿Está seguro de que desea borrar la acción seleccionada?';
$messages['forbiddenchars'] = 'Caracteres prohibidos en el campo';
$messages['cannotbeempty'] = 'El campo no puede estar vacío';
$messages['ruleexist'] = 'El filtro con el nombre especificado ya existe.';
$messages['setactivateerror'] = 'Imposible activar el conjunto de filtros. Error en el servidor.';
$messages['setdeactivateerror'] = 'Imposible desactivar el conjunto de filtros. Error en el servidor.';
$messages['setdeleteerror'] = 'Imposible eliminar el conjunto de filtros. Error en el servidor.';
$messages['setactivated'] = 'Conjunto de filtros activados correctamente';
$messages['setdeactivated'] = 'Conjunto de filtros desactivados correctamente';
$messages['setdeleted'] = 'Conjunto de filtros eliminados correctamente';
$messages['setdeleteconfirm'] = '¿Esta seguro, que quiere eliminar el conjunto de filtros seleccionado?';
$messages['setcreateerror'] = 'Imposible crear el conjunto de filtros. Error en el servidor.';
$messages['setcreated'] = 'Conjunto de filtros creados correctamente';
$messages['nametoolong'] = 'Imposible crear el conjunto de filtros. Nombre del conjunto de filtros muy largo';
$messages['activateerror'] = 'Imposible activar el conjunto de filtros. Error en el servidor.';
$messages['deactivateerror'] = 'Imposible desactivar el conjunto de filtros. Error en el servidor.';
$messages['deactivated'] = 'Filtro deshabilitado satisfactoriamente';
$messages['activated'] = 'Filtro habilitado satisfactoriamente';
$messages['moved'] = 'Filtro movido satisfactoriamente';
$messages['moveerror'] = 'Imposible mover el filtro seleccionado. Ha ocurrido un error en el servidor.';
$messages['nametoolong'] = 'El nombre es demasiado largo.';
$messages['namereserved'] = 'Nombre reservado.';
$messages['setexist'] = 'Conjunto ya existe.';
$messages['nodata'] = 'Al menos una posición debe ser seleccionada!';
$messages['invaliddateformat'] = 'Fecha o formato de fecha inválido';
$messages['saveerror'] = 'Imposible guardar la información. Ha ocurrido un error con el servidor.';
$messages['vacationsaved'] = 'Información de vacaciones guardada satisfactoriamente.';
$messages['emptyvacationbody'] = '¡Se requiere un cuerpo para el mensaje por vacaciones!';
?>
plugins/managesieve/localization/fi_FI.inc
@@ -32,13 +32,30 @@
$labels['filterisnot'] = 'ei ole samanlainen kuin';
$labels['filterexists'] = 'on olemassa';
$labels['filternotexists'] = 'ei ole olemassa';
$labels['filtermatches'] = 'vastaa lauseketta';
$labels['filternotmatches'] = 'ei vastaa lauseketta';
$labels['filterregex'] = 'vastaa säännöllistä lauseketta';
$labels['filternotregex'] = 'ei vastaa säännöllistä lauseketta';
$labels['filterunder'] = 'alle';
$labels['filterover'] = 'yli';
$labels['addrule'] = 'Lisää sääntö';
$labels['delrule'] = 'Poista sääntö';
$labels['messagemoveto'] = 'Siirrä viesti';
$labels['messageredirect'] = 'Lähetä viesti edelleen';
$labels['messagecopyto'] = 'Kopioi viesti';
$labels['messagesendcopy'] = 'Lähetä kopio viestistä';
$labels['messagereply'] = 'Vastaa viestillä';
$labels['messagedelete'] = 'Poista viesti';
$labels['messagediscard'] = 'Hylkää viestillä';
$labels['messagekeep'] = 'Säilytä viesti saapuneissa';
$labels['messagesactions'] = '...suorita seuraavat toiminnot:';
$labels['add'] = 'Lisää';
$labels['del'] = 'Poista';
$labels['sender'] = 'Lähettäjä';
$labels['recipient'] = 'Vastaanottaja';
$labels['vacationsubject'] = 'Viestin aihe:';
$labels['days'] = 'päivää';
$labels['seconds'] = 'sekuntia';
$labels['setflags'] = 'Aseta liput viestiin';
$labels['addflags'] = 'Lisää liput viestiin';
$labels['removeflags'] = 'Poista liput viestistä';
@@ -50,14 +67,44 @@
$labels['setvarname'] = 'Muuttujan nimi:';
$labels['setvarvalue'] = 'Muuttujan arvo:';
$labels['notifyimportance'] = 'Tärkeysaste:';
$labels['notifymethodmailto'] = 'Sähköposti';
$labels['notifymethodtel'] = 'Puhelin';
$labels['notifymethodsms'] = 'Tekstiviesti';
$labels['filtercreate'] = 'Luo suodatin';
$labels['...'] = '...';
$labels['year'] = 'vuosi';
$labels['month'] = 'kuukausi';
$labels['day'] = 'päivä';
$labels['hour'] = 'tunti';
$labels['minute'] = 'minuutti';
$labels['second'] = 'sekunti';
$labels['time'] = 'aika (hh:mm:ss)';
$labels['zone'] = 'aikavyöhyke';
$labels['advancedopts'] = 'Lisävalinnat';
$labels['address'] = 'osoite';
$labels['allparts'] = 'kaikki';
$labels['user'] = 'käyttäjä';
$labels['default'] = 'oletus';
$labels['vacation'] = 'Loma';
$labels['vacation.reply'] = 'Vastausviesti';
$labels['vacation.advanced'] = 'Lisäasetukset';
$labels['vacation.subject'] = 'Aihe';
$labels['vacation.body'] = 'Sisältö';
$labels['vacation.dates'] = 'Loma-aika';
$labels['vacation.from'] = 'Lähettäjä:';
$labels['vacation.to'] = 'Vastaanottaja:';
$labels['vacation.status'] = 'Tila';
$labels['vacation.on'] = 'Päällä';
$labels['vacation.off'] = 'Pois';
$labels['vacation.saving'] = 'Tallennetaan tietoja...';
$messages['filterunknownerror'] = 'Tuntematon palvelinvirhe.';
$messages['filterconnerror'] = 'Yhteys palvelimeen epäonnistui.';
$messages['filterdeleted'] = 'Suodatin poistettu onnistuneesti.';
$messages['filterdeleteconfirm'] = 'Haluatko varmasti poistaa valitun suodattimen?';
$messages['cannotbeempty'] = 'Kenttä ei voi olla tyhjä.';
$messages['moved'] = 'Suodatin siirretty onnistuneesti.';
$messages['nametoolong'] = 'Nimi on liian pitkä.';
$messages['saveerror'] = 'Tietojen tallennus epäonnistui palvelinvirheen vuoksi.';
$messages['vacationsaved'] = 'Lomatiedot tallennettu onnistuneesti.';
$messages['emptyvacationbody'] = 'Lomaviestin sisältö vaaditaan!';
?>
plugins/managesieve/localization/id_ID.inc
@@ -47,15 +47,20 @@
$labels['messagereply'] = 'balas dengan pesan';
$labels['messagedelete'] = 'Hapus pesan';
$labels['messagediscard'] = 'Buang dengan pesan';
$labels['messagekeep'] = 'Biarkan pesan tetap didalam kotak surat';
$labels['messagesrules'] = 'Untuk email masuk:';
$labels['messagesactions'] = '...lakukan tindakan berikut';
$labels['add'] = 'Tambah';
$labels['del'] = 'Hapus';
$labels['sender'] = 'Pengirim';
$labels['recipient'] = 'Penerima';
$labels['vacationaddr'] = 'Alamat email tambahan saya:';
$labels['vacationdays'] = 'Seberapa sering mengirim pesan (dalam hari):';
$labels['vacationinterval'] = 'Seberapa sering untuk pengiriman pesan:';
$labels['vacationreason'] = 'Isi pesan (alasan liburan):';
$labels['vacationsubject'] = 'Judul pesan:';
$labels['days'] = 'hari';
$labels['seconds'] = 'detik';
$labels['rulestop'] = 'Berhenti mengevaluasi aturan';
$labels['enable'] = 'Aktifkan/Non-Aktifkan';
$labels['filterset'] = 'Himpunan filter';
@@ -77,11 +82,13 @@
$labels['countislessthan'] = 'penghitungan lebih kecil dari';
$labels['countislessthanequal'] = 'penghitungan lebih kecil dari atau sama dengan';
$labels['countequals'] = 'penghitungan sama dengan';
$labels['countnotequals'] = 'penghitungan tidak sama dengan';
$labels['valueisgreaterthan'] = 'nilai lebih besar dari';
$labels['valueisgreaterthanequal'] = 'nilai lebih besar dari atau sama dengan';
$labels['valueislessthan'] = 'nilai lebih kecil dari';
$labels['valueislessthanequal'] = 'nilai lebih kecil dari atau sama dengan';
$labels['valueequals'] = 'nilai sama dengan';
$labels['valuenotequals'] = 'nilai tidak sadengan';
$labels['setflags'] = 'Atur tanda pada pesan';
$labels['addflags'] = 'Berikan tanda pada pesan';
$labels['removeflags'] = 'Cabut tanda dari pesan';
@@ -101,18 +108,37 @@
$labels['varquotewildcard'] = 'kutip karakter khusus';
$labels['varlength'] = 'panjang';
$labels['notify'] = 'Kirim pemberitahuan';
$labels['notifyaddress'] = 'Ke alamat email:';
$labels['notifybody'] = 'Isi pemberitahuan:';
$labels['notifysubject'] = 'Judul pemberitahuan';
$labels['notifyfrom'] = 'Pengirim pemberitahuan.';
$labels['notifytarget'] = 'Pemberitahuan yang dituju:';
$labels['notifymessage'] = 'Pemberitahuan pesan (pilihan):';
$labels['notifyoptions'] = 'Pemberitahuan untuk beberapa pilihan (pilihan):';
$labels['notifyfrom'] = 'Pemberitahuan ke pengirim (tidak harus):';
$labels['notifyimportance'] = 'Tingkat kepentingan:';
$labels['notifyimportancelow'] = 'rendah';
$labels['notifyimportancenormal'] = 'normal';
$labels['notifyimportancehigh'] = 'tinggi';
$labels['notifymethodmailto'] = 'Surat Elektronik / Email';
$labels['notifymethodtel'] = 'Telepon';
$labels['notifymethodsms'] = 'SMS';
$labels['filtercreate'] = 'Buat filter';
$labels['usedata'] = 'Gunakan data berikut dalam filter:';
$labels['nextstep'] = 'Langkah Selanjutnya';
$labels['...'] = '...';
$labels['currdate'] = 'Tanggal sekarang';
$labels['datetest'] = 'Tanggal';
$labels['dateheader'] = 'header / tajuk:';
$labels['year'] = 'tahun';
$labels['month'] = 'bulan';
$labels['day'] = 'hari';
$labels['date'] = 'tanggal (yyyy-mm-dd)';
$labels['julian'] = 'tanggal (kalender julian)';
$labels['hour'] = 'jam';
$labels['minute'] = 'menit';
$labels['second'] = 'detik';
$labels['time'] = 'waktu :(hh:mm:ss)';
$labels['iso8601'] = 'tanggal (ISO8601)';
$labels['std11'] = 'tanggal (RFC2822)';
$labels['zone'] = 'zona-waktu';
$labels['weekday'] = 'hari kerja (0-6)';
$labels['advancedopts'] = 'Pilihan lanjutan';
$labels['body'] = 'Isi';
$labels['address'] = 'alamat';
@@ -132,26 +158,67 @@
$labels['octet'] = 'ketat (oktet)';
$labels['asciicasemap'] = 'case insensitive (ascii-casemap)';
$labels['asciinumeric'] = 'numeric (ascii-numeric)';
$labels['index'] = 'indeks:';
$labels['indexlast'] = 'mundur:';
$labels['vacation'] = 'Liburan';
$labels['vacation.reply'] = 'Balas pesan';
$labels['vacation.advanced'] = 'Pengaturan Lanjutan';
$labels['vacation.subject'] = 'Judul';
$labels['vacation.body'] = 'Isi';
$labels['vacation.dates'] = 'Waktu Liburan';
$labels['vacation.from'] = 'Pengirim:';
$labels['vacation.to'] = 'Kepada:';
$labels['vacation.status'] = 'Status';
$labels['vacation.on'] = 'Nyala';
$labels['vacation.off'] = 'Mati';
$labels['vacation.addresses'] = 'Alamat email tambahan saya';
$labels['vacation.interval'] = 'Balas secara interval';
$labels['vacation.after'] = 'Atur untuk pengaturan cuti setelah';
$labels['vacation.saving'] = 'Menyimpan data...';
$labels['vacation.action'] = 'Tindakan untuk pesan masuk';
$labels['vacation.keep'] = 'Simpan';
$labels['vacation.discard'] = 'Buang';
$labels['vacation.redirect'] = 'Alihkan ke';
$labels['vacation.copy'] = 'Kirim salinan ke';
$labels['arialabelfiltersetactions'] = 'Tindakan untuk penyaringan';
$labels['arialabelfilteractions'] = 'Tindakan penyaringan';
$labels['arialabelfilterform'] = 'Properti untuk penyaringan';
$labels['ariasummaryfilterslist'] = 'Daftar penyaringan';
$labels['ariasummaryfiltersetslist'] = 'Daftar penyaringan yang telah di set';
$labels['filterstitle'] = 'Ubah penyaringan untuk email masuk';
$labels['vacationtitle'] = 'Ubah aturan untuk sedang-diluar-kantor';
$messages['filterunknownerror'] = 'Error pada server tak dikenali.';
$messages['filterconnerror'] = 'Tidak dapat menyambung ke server.';
$messages['filterdeleteerror'] = 'Tidak dapat menghapus penyaringan. Terjadi kesalahan pada server.';
$messages['filterdeleted'] = 'Penyaringan berhasil dihapus.';
$messages['filtersaved'] = 'Penyaringan berhasil disimpan.';
$messages['filtersaveerror'] = 'Tidak dapat menyimpan penyaringan. Terjadi kesalahan pada server.';
$messages['filterdeleteconfirm'] = 'Yakin untuk menghapus penyaringan terpilih?';
$messages['ruledeleteconfirm'] = 'Yakin untuk menghapus aturan terpilih?';
$messages['actiondeleteconfirm'] = 'Yakin untuk menghapus tindakan terpilih?';
$messages['forbiddenchars'] = 'Karakter terlarang pada isian.';
$messages['cannotbeempty'] = 'Isian tidak bisa kosong.';
$messages['ruleexist'] = 'Penyaringan dengan nama tersebut sudah ada.';
$messages['setactivateerror'] = 'Tidak dapat mengaktivkan kumpulan penyaringan terpilih. Terjadi kesalahan pada server.';
$messages['setdeactivateerror'] = 'Tidak bisa mematikan kumpulan penyaringan terpilih. Terjadi kesalahan pada server.';
$messages['setdeleteerror'] = 'Tidak dapat menghapus kumpulan penyaringan terpilih. Terjadi kesalahan pada server.';
$messages['setactivated'] = 'Kumpulan penyaringan berhasil dihidupkan.';
$messages['setdeactivated'] = 'Kumpulan penyaringan berhasil dimatikan.';
$messages['setdeleted'] = 'Kumpulan penyaringan berhasil dihapus.';
$messages['setdeleteconfirm'] = 'Yakin ingin menghapus kumpulan penyaringan terpilih?';
$messages['setcreateerror'] = 'Tidak bisa membuat kumpulan penyaringan. Terjadi kesalahan pada server';
$messages['setcreated'] = 'Kumpulan penyaringan berhasul dibuat.';
$messages['activateerror'] = 'Tidak dapat mengaktifkan penyaringan terpilih. Terjadi kesalahan pada server';
$messages['deactivateerror'] = 'Tidak dapat mematikan penyaringan terpilih. Terjadi kesalahan pada server';
$messages['deactivated'] = 'Berhasil menghidupkan penyaringan.';
$messages['activated'] = 'Berhasil mematikan penyaringan.';
$messages['moved'] = 'Berhasil memindahkan penyaringan.';
$messages['moveerror'] = 'Tidak bisa memindahkan penyaringan terpilih. Ada kesalahan di server.';
$messages['nametoolong'] = 'Nama terlalu panjang.';
$messages['namereserved'] = 'Nama sudah terpesan.';
$messages['setexist'] = 'Kumpulan sudah ada.';
$messages['nodata'] = 'Setidaknya satu posisi harus dipilih!';
$messages['invaliddateformat'] = 'Format tanggal atau bagian dari tanggal salah';
$messages['saveerror'] = 'Tidak dapat menyimpan data. Terjadi kesalahan pada server.';
$messages['vacationsaved'] = 'Data untuk cuti berhasil disimpan.';
?>
plugins/managesieve/localization/ml_IN.inc
@@ -47,15 +47,20 @@
$labels['messagereply'] = 'സന്ദേശം വെച്ച് മറുപടി അയക്കു';
$labels['messagedelete'] = 'സന്ദേശം മായ്ക്കു';
$labels['messagediscard'] = 'സന്ദേശത്തോടെ നിരാകരിക്കുക';
$labels['messagekeep'] = 'സന്ദേശം ഇൻബോക്സിൽ സൂക്ഷിക്കുക';
$labels['messagesrules'] = 'ആഗമന സന്ദേശങ്ങള്‍ക്ക്:';
$labels['messagesactions'] = '...ഈ പ്രവര്‍ത്തനങ്ങള്‍ ചെയ്യുക:';
$labels['add'] = 'ചേര്‍ക്കു';
$labels['del'] = 'നീക്കം ചെയ്യുക';
$labels['sender'] = 'അയചയാള്‍';
$labels['recipient'] = 'സ്വീകര്‍ത്താവ്';
$labels['vacationaddr'] = 'എന്റെ മറ്റ് ഈമെയിൽ വിലാസങ്ങൾ:';
$labels['vacationdays'] = 'എത്ര ഭിവസം കൂടുമ്പോള്‍ സന്ദേശം അയക്കണം:';
$labels['vacationinterval'] = 'എത്ര സമയം കൂടുമ്പോൾ സന്ദേശങ്ങൾ അയയ്ക്കണം:';
$labels['vacationreason'] = 'സന്ദേശത്തിന്റെ ഉള്ളടക്കം (അവധിയുടെ കാരണം):';
$labels['vacationsubject'] = 'സന്ദേശത്തിന്റെ വിഷയം:';
$labels['days'] = 'ദിവസങ്ങൾ';
$labels['seconds'] = 'സെക്കന്റുകൾ';
$labels['rulestop'] = 'നിയമങ്ങള്‍ വിലയിരുത്തുന്നത് നിര്‍ത്തുക';
$labels['enable'] = 'പ്രവര്‍ത്തനസജ്ജം/രഹിതം';
$labels['filterset'] = 'അരിപ്പകളുടെ കൂട്ടം';
@@ -77,11 +82,13 @@
$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'] = 'സന്ദേശത്തില്‍ നിന്നും അടയാളം മാറ്റുക';
@@ -90,6 +97,9 @@
$labels['flaganswered'] = 'മറുപടി നല്‍കിയവ';
$labels['flagflagged'] = 'അടയാളപ്പെടുത്തിയവ';
$labels['flagdraft'] = 'കരട്';
$labels['setvariable'] = 'വേരിയബിൾ സ്ഥിരപ്പെടുത്തുക';
$labels['setvarname'] = 'വേരിയബിളിന്റെ പേര്';
$labels['setvarvalue'] = 'വേരിയബിളിന്റെ മൂല്യം';
$labels['filtercreate'] = 'അരിപ്പ ഉണ്ടാക്കുക';
$labels['usedata'] = 'ഈ വിവരങ്ങള്‍ അരിപ്പയില്‍ ഉപയോഗിക്കുക:';
$labels['nextstep'] = 'അടുത്ത പടി';
plugins/managesieve/localization/nn_NO.inc
@@ -100,10 +100,6 @@
$labels['varupperfirst'] = 'med stor forbokstav';
$labels['varlength'] = 'lengde';
$labels['notify'] = 'Send varsel';
$labels['notifyaddress'] = 'Til e-postadresse:';
$labels['notifybody'] = 'Varseltekst:';
$labels['notifysubject'] = 'Varselemne:';
$labels['notifyfrom'] = 'Varselavsendar:';
$labels['notifyimportance'] = 'Betyding:';
$labels['notifyimportancelow'] = 'låg';
$labels['notifyimportancenormal'] = 'normal';
plugins/managesieve/localization/ru_RU.inc
@@ -57,10 +57,10 @@
$labels['vacationaddr'] = 'Мой дополнительный адрес(а):';
$labels['vacationdays'] = 'Как часто отправлять сообщения (в днях):';
$labels['vacationinterval'] = 'Как часто отправлять сообщения:';
$labels['days'] = 'дней';
$labels['seconds'] = 'секунд';
$labels['vacationreason'] = 'Текст сообщения (причина отсутствия):';
$labels['vacationsubject'] = 'Тема сообщения:';
$labels['days'] = 'дней';
$labels['seconds'] = 'секунд';
$labels['rulestop'] = 'Закончить выполнение';
$labels['enable'] = 'Включить/Выключить';
$labels['filterset'] = 'Набор фильтров';
@@ -108,14 +108,17 @@
$labels['varquotewildcard'] = 'символ кавычек';
$labels['varlength'] = 'длина';
$labels['notify'] = 'Отправить уведомление';
$labels['notifyaddress'] = 'На адрес электронной почты:';
$labels['notifybody'] = 'Текст уведомления:';
$labels['notifysubject'] = 'Тема уведомления:';
$labels['notifyfrom'] = 'Отправитель уведомления:';
$labels['notifytarget'] = 'Объект уведомления:';
$labels['notifymessage'] = 'Сообщение уведомления (не обязательно):';
$labels['notifyoptions'] = 'Параметры уведомления (не обязательно):';
$labels['notifyfrom'] = 'Отправитель уведомления (не обязательно):';
$labels['notifyimportance'] = 'Важность:';
$labels['notifyimportancelow'] = 'низкая';
$labels['notifyimportancenormal'] = 'нормальная';
$labels['notifyimportancehigh'] = 'высокая';
$labels['notifymethodmailto'] = 'Email';
$labels['notifymethodtel'] = 'Телефон';
$labels['notifymethodsms'] = 'SMS';
$labels['filtercreate'] = 'Создать фильтр';
$labels['usedata'] = 'Использовать следующие данные в фильтре:';
$labels['nextstep'] = 'Далее';
@@ -157,6 +160,33 @@
$labels['asciinumeric'] = 'Числовой (ascii-numeric)';
$labels['index'] = 'индекс:';
$labels['indexlast'] = 'наоборот';
$labels['vacation'] = 'Отпуск';
$labels['vacation.reply'] = 'Ответное сообщение';
$labels['vacation.advanced'] = 'Дополнительные настройки';
$labels['vacation.subject'] = 'Тема';
$labels['vacation.body'] = 'Тело письма';
$labels['vacation.dates'] = 'Время отпуска';
$labels['vacation.from'] = 'От:';
$labels['vacation.to'] = 'Кому:';
$labels['vacation.status'] = 'Состояние';
$labels['vacation.on'] = 'Вкл.';
$labels['vacation.off'] = 'Выкл.';
$labels['vacation.addresses'] = 'Мои дополнительные адреса';
$labels['vacation.interval'] = 'Интервал ответа';
$labels['vacation.after'] = 'Поместить правило отпуска после';
$labels['vacation.saving'] = 'Сохранение данных...';
$labels['vacation.action'] = 'Действия с входящим сообщением';
$labels['vacation.keep'] = 'Оставить';
$labels['vacation.discard'] = 'Отменить';
$labels['vacation.redirect'] = 'Перенаправить на';
$labels['vacation.copy'] = 'Отправить копию на';
$labels['arialabelfiltersetactions'] = 'Действия набора фильтров';
$labels['arialabelfilteractions'] = 'Действия фильтра';
$labels['arialabelfilterform'] = 'Свойства фильтра';
$labels['ariasummaryfilterslist'] = 'Список фильтров';
$labels['ariasummaryfiltersetslist'] = 'Список набора фильтров';
$labels['filterstitle'] = 'Редактировать фильтры для входящей почты';
$labels['vacationtitle'] = 'Изменить правило "Не в офисе"';
$messages['filterunknownerror'] = 'Неизвестная ошибка сервера.';
$messages['filterconnerror'] = 'Невозможно подключиться к серверу.';
$messages['filterdeleteerror'] = 'Невозможно удалить фильтр. Ошибка сервера.';
@@ -189,4 +219,7 @@
$messages['setexist'] = 'Набор уже существует.';
$messages['nodata'] = 'Нужно выбрать хотя бы одну позицию!';
$messages['invaliddateformat'] = 'Неверная дата или формат части даты';
$messages['saveerror'] = 'Невозможно сохранить данные. Ошибка сервера.';
$messages['vacationsaved'] = 'Данные об отпуске успешно сохранены.';
$messages['emptyvacationbody'] = 'Сообщение о причине отсутствия не может быть пустым!';
?>
plugins/managesieve/localization/zh_TW.inc
@@ -102,10 +102,6 @@
$labels['varquotewildcard'] = '跳脫字元';
$labels['varlength'] = '長度';
$labels['notify'] = '寄送通知';
$labels['notifyaddress'] = '寄到電子郵件位址:';
$labels['notifybody'] = '通知內容:';
$labels['notifysubject'] = '通知主旨:';
$labels['notifyfrom'] = '通知寄件者:';
$labels['notifyimportance'] = '重要性:';
$labels['notifyimportancelow'] = '低';
$labels['notifyimportancenormal'] = '一般';
plugins/managesieve/managesieve.js
@@ -48,70 +48,42 @@
    if (rcmail.env.action.startsWith('plugin.managesieve')) {
      if (rcmail.gui_objects.sieveform) {
        rcmail.enable_command('plugin.managesieve-save', true);
        // small resize for header element
        $('select[name="_header[]"]', rcmail.gui_objects.sieveform).each(function() {
          if (this.value == '...') this.style.width = '40px';
        });
        // resize dialog window
        if (rcmail.env.action == 'plugin.managesieve' && rcmail.env.task == 'mail') {
          parent.rcmail.managesieve_dialog_resize(rcmail.gui_objects.sieveform);
        }
        $('input[type="text"]:first', rcmail.gui_objects.sieveform).focus();
        // initialize smart list inputs
        $('textarea[data-type="list"]', rcmail.gui_objects.sieveform).each(function() {
          smart_field_init(this);
        });
        // enable date pickers on date fields
        if ($.datepicker && rcmail.env.date_format) {
          $.datepicker.setDefaults({
            dateFormat: rcmail.env.date_format,
            changeMonth: true,
            showOtherMonths: true,
            selectOtherMonths: true,
            onSelect: function(dateText) { $(this).focus().val(dateText) }
          });
          $('input.datepicker').datepicker();
        }
        sieve_form_init();
      }
      else {
        rcmail.enable_command('plugin.managesieve-add', 'plugin.managesieve-setadd', !rcmail.env.sieveconnerror);
      }
      var i, p = rcmail, setcnt, set = rcmail.env.currentset;
      var setcnt, set = rcmail.env.currentset;
      if (rcmail.gui_objects.filterslist) {
        rcmail.filters_list = new rcube_list_widget(rcmail.gui_objects.filterslist,
          {multiselect:false, draggable:true, keyboard:false});
          {multiselect:false, draggable:true, keyboard:true});
        rcmail.filters_list
          .addEventListener('select', function(e) { p.managesieve_select(e); })
          .addEventListener('dragstart', function(e) { p.managesieve_dragstart(e); })
          .addEventListener('dragend', function(e) { p.managesieve_dragend(e); })
          .addEventListener('select', function(e) { rcmail.managesieve_select(e); })
          .addEventListener('dragstart', function(e) { rcmail.managesieve_dragstart(e); })
          .addEventListener('dragend', function(e) { rcmail.managesieve_dragend(e); })
          .addEventListener('initrow', function(row) {
            row.obj.onmouseover = function() { p.managesieve_focus_filter(row); };
            row.obj.onmouseout = function() { p.managesieve_unfocus_filter(row); };
            row.obj.onmouseover = function() { rcmail.managesieve_focus_filter(row); };
            row.obj.onmouseout = function() { rcmail.managesieve_unfocus_filter(row); };
          })
          .init().focus();
          .init();
      }
      if (rcmail.gui_objects.filtersetslist) {
        rcmail.filtersets_list = new rcube_list_widget(rcmail.gui_objects.filtersetslist,
          {multiselect:false, draggable:false, keyboard:false});
          {multiselect:false, draggable:false, keyboard:true});
        rcmail.filtersets_list
          .addEventListener('select', function(e) { p.managesieve_setselect(e); })
          .init().focus();
        rcmail.filtersets_list.init().focus();
        if (set != null) {
          set = rcmail.managesieve_setid(set);
          rcmail.filtersets_list.shift_start = set;
          rcmail.filtersets_list.highlight_row(set, false);
          rcmail.filtersets_list.select(set);
        }
        // attach select event after initial record was selected
        rcmail.filtersets_list.addEventListener('select', function(e) { rcmail.managesieve_setselect(e); });
        setcnt = rcmail.filtersets_list.rowcount;
        rcmail.enable_command('plugin.managesieve-set', true);
@@ -119,9 +91,10 @@
        rcmail.enable_command('plugin.managesieve-setdel', setcnt > 1);
        // Fix dragging filters over sets list
        $('tr', rcmail.gui_objects.filtersetslist).each(function (i, e) { p.managesieve_fixdragend(e); });
        $('tr', rcmail.gui_objects.filtersetslist).each(function (i, e) { rcmail.managesieve_fixdragend(e); });
      }
    }
    if (rcmail.gui_objects.sieveform && rcmail.env.rule_disabled)
      $('#disabled').attr('checked', true);
  });
@@ -736,6 +709,13 @@
  }
};
function vacation_action_select()
{
  var selected = $('#vacation_action').val();
  $('#action_target_span')[selected == 'discard' || selected == 'keep' ? 'hide' : 'show']();
};
// Inititalizes smart list input
function smart_field_init(field)
{
@@ -778,6 +758,7 @@
  input = $('input', elem).attr(attrs).keydown(function(e) {
    var input = $(this);
    // element creation event (on Enter)
    if (e.which == 13) {
      var name = input.attr('name').replace(/\[\]$/, ''),
@@ -786,6 +767,21 @@
      input.parent().after(elem);
      $('input', elem).focus();
    }
    // backspace or delete: remove input, focus previous one
    else if ((e.which == 8 || e.which == 46) && input.val() == '') {
      var parent = input.parent(), siblings = parent.parent().children();
      if (siblings.length > 1) {
        if (parent.prev().length)
          parent.prev().children('input').focus();
        else
          parent.next().children('input').focus();
        parent.remove();
        return false;
      }
    }
  });
@@ -833,6 +829,101 @@
  }
};
// format time string
function sieve_formattime(hour, minutes)
{
  var i, c, h, time = '', format = rcmail.env.time_format || 'H:i';
  for (i=0; i<format.length; i++) {
    c = format.charAt(i);
    switch (c) {
      case 'a': time += hour > 12 ? 'am' : 'pm'; break;
      case 'A': time += hour > 12 ? 'AM' : 'PM'; break;
      case 'g':
      case 'h':
        h = hour == 0 ? 12 : hour > 12 ? hour - 12 : hour;
        time += (c == 'h' && hour < 10 ? '0' : '') + hour;
        break;
      case 'G': time += hour; break;
      case 'H': time += (hour < 10 ? '0' : '') + hour; break;
      case 'i': time += (minutes < 10 ? '0' : '') + minutes; break;
      case 's': time += '00';
      default: time += c;
    }
  }
  return time;
}
function sieve_form_init()
{
  // small resize for header element
  $('select[name="_header[]"]', rcmail.gui_objects.sieveform).each(function() {
    if (this.value == '...') this.style.width = '40px';
  });
  // resize dialog window
  if (rcmail.env.action == 'plugin.managesieve' && rcmail.env.task == 'mail') {
    parent.rcmail.managesieve_dialog_resize(rcmail.gui_objects.sieveform);
  }
  $('input[type="text"]:first', rcmail.gui_objects.sieveform).focus();
  // initialize smart list inputs
  $('textarea[data-type="list"]', rcmail.gui_objects.sieveform).each(function() {
    smart_field_init(this);
  });
  // enable date pickers on date fields
  if ($.datepicker && rcmail.env.date_format) {
    $.datepicker.setDefaults({
      dateFormat: rcmail.env.date_format,
      changeMonth: true,
      showOtherMonths: true,
      selectOtherMonths: true,
      onSelect: function(dateText) { $(this).focus().val(dateText); }
    });
    $('input.datepicker').datepicker();
  }
  // configure drop-down menu on time input fields based on jquery UI autocomplete
  $('#vacation_timefrom, #vacation_timeto')
    .attr('autocomplete', "off")
    .autocomplete({
      delay: 100,
      minLength: 1,
      source: function(p, callback) {
        var h, result = [];
        for (h = 0; h < 24; h++)
          result.push(sieve_formattime(h, 0));
        result.push(sieve_formattime(23, 59));
        return callback(result);
      },
      open: function(event, ui) {
        // scroll to current time
        var $this = $(this), val = $this.val(),
          widget = $this.autocomplete('widget').css('width', '10em'),
          menu = $this.data('ui-autocomplete').menu;
        if (val && val.length)
          widget.children().each(function() {
            var li = $(this);
            if (li.text().indexOf(val) == 0)
              menu._scrollIntoView(li);
          });
      },
      select: function(event, ui) {
        $(this).val(ui.item.value);
        return false;
      }
    })
    .click(function() {  // show drop-down upon clicks
      $(this).autocomplete('search', $(this).val() || ' ');
    })
}
/*********************************************************/
/*********           Mail UI methods             *********/
/*********************************************************/
plugins/managesieve/managesieve.php
@@ -37,7 +37,7 @@
    function init()
    {
        $this->rc = rcmail::get_instance();
        $this->rc = rcube::get_instance();
        // register actions
        $this->register_action('plugin.managesieve', array($this, 'managesieve_actions'));
@@ -54,7 +54,9 @@
            $this->add_hook('message_headers_output', array($this, 'mail_headers'));
            // inject Create Filter popup stuff
            if (empty($this->rc->action) || $this->rc->action == 'show') {
            if (empty($this->rc->action) || $this->rc->action == 'show'
                || strpos($this->rc->action, 'plugin.managesieve') === 0
            ) {
                $this->mail_task_handler();
            }
        }
@@ -72,13 +74,15 @@
        // load localization
        $this->add_texts('localization/');
        if ($this->rc->task == 'mail' || strpos($this->rc->action, 'plugin.managesieve') === 0) {
        $sieve_action = strpos($this->rc->action, 'plugin.managesieve') === 0;
        if ($this->rc->task == 'mail' || $sieve_action) {
            $this->include_script('managesieve.js');
        }
        // include styles
        $skin_path = $this->local_skin_path();
        if ($this->rc->task == 'settings') {
        if ($this->rc->task == 'settings' || $sieve_action) {
            if (is_file($this->home . "/$skin_path/managesieve.css")) {
                $this->include_stylesheet("$skin_path/managesieve.css");
            }
@@ -88,7 +92,6 @@
                $this->include_stylesheet("$skin_path/managesieve_mail.css");
            }
        }
        $this->ui_initialized = true;
    }
@@ -109,6 +112,7 @@
                'class'  => 'filter',
                'label'  => 'filters',
                'domain' => 'managesieve',
                'title'  => 'filterstitle',
            );
        }
@@ -119,6 +123,7 @@
                'class'  => 'vacation',
                'label'  => 'vacation',
                'domain' => 'managesieve',
                'title'  => 'vacationtitle',
            );
        }
@@ -225,7 +230,7 @@
    /**
     * Initializes engine object
     */
    private function get_engine($type = null)
    public function get_engine($type = null)
    {
        if (!$this->engine) {
            $this->load_config();
plugins/managesieve/skins/classic/templates/vacation.html
@@ -17,7 +17,7 @@
    <roundcube:object name="vacationform" id="vacationform" style="margin: 10px 10px 0 10px" />
    <div id="formfooter" style="padding: 0 10px">
      <div class="footerleft">
        <roundcube:button command="save" type="input" class="button mainaction" label="save" />
        <roundcube:button command="plugin.managesieve-save" type="input" class="button mainaction" label="save" />
      </div>
    </div>
  </div>
plugins/managesieve/skins/larry/managesieve.css
@@ -306,6 +306,7 @@
  font-size: 11px;
  padding: 1px;
  vertical-align: middle;
  max-width: 280px;
}
html.mozilla #filter-form select
@@ -334,9 +335,7 @@
  border: 1px solid #B2B2B2;
  border-radius: 4px;
  box-shadow: inset 0 0 2px 1px rgba(0,0,0, 0.1);
  -moz-box-shadow: inset 0 0 2px 1px rgba(0,0,0, 0.1);
  -webkit-box-shadow: inset 0 0 2px 1px rgba(0,0,0, 0.1);
  -o-box-shadow: inset 0 0 2px 1px rgba(0,0,0, 0.1);
  margin: 0;
  padding: 2px;
  display: inline-block;
@@ -417,11 +416,13 @@
/* vacation form */
#settings-sections span.vacation a {
  background: url(images/vacation_icons.png) no-repeat 7px 1px;
#settings-sections .vacation a {
  background-image: url(images/vacation_icons.png);
    background-repeat: no-repeat;
    background-position: 7px 1px;
}
#settings-sections span.vacation.selected a {
#settings-sections .vacation.selected a {
  background-position: 7px -23px;
}
@@ -452,3 +453,7 @@
  border: 0;
  box-shadow: none;
}
#vacationform td.vacation {
  white-space: nowrap;
}
plugins/managesieve/skins/larry/templates/managesieve.html
@@ -4,39 +4,42 @@
<title><roundcube:object name="pagetitle" /></title>
<roundcube:include file="/includes/links.html" />
</head>
<body class="noscroll">
<roundcube:if condition="env:extwin" /><body class="noscroll extwin"><roundcube:else /><body class="noscroll"><roundcube:endif />
<roundcube:include file="/includes/header.html" />
<h1 class="voice"><roundcube:label name="settings" /> : <roundcube:label name="managesieve.filters" /></h1>
<div id="mainscreen" class="offset">
<roundcube:include file="/includes/settingstabs.html" />
<div id="settings-right">
<div id="filtersetslistbox" class="uibox listbox">
<h2 class="boxtitle"><roundcube:label name="managesieve.filtersets" /></h2>
<div id="settings-right" role="main">
<div id="filtersetslistbox" class="uibox listbox" aria-labelledby="aria-label-filtersets">
<h2 class="boxtitle" id="aria-label-filtersets"><roundcube:label name="managesieve.filtersets" /></h2>
<div class="scroller withfooter">
  <roundcube:object name="filtersetslist" id="filtersetslist" class="listing" cellspacing="0" summary="Filters list" type="list" noheader="true" />
  <roundcube:object name="filtersetslist" id="filtersetslist" class="listing" summary="managesieve.ariasummaryfiltersetslist" type="list" noheader="true" role="listbox" />
</div>
<div class="boxfooter">
  <roundcube:button command="plugin.managesieve-setadd" type="link" title="managesieve.filtersetadd" class="listbutton add disabled" classAct="listbutton add" innerClass="inner" content="+" /><roundcube:button name="filtersetmenulink" id="filtersetmenulink" type="link" title="moreactions" class="listbutton groupactions" onclick="UI.show_popup('filtersetmenu');return false" innerClass="inner" content="&#9881;" />
  <roundcube:button command="plugin.managesieve-setadd" type="link" title="managesieve.filtersetadd" class="listbutton add disabled" classAct="listbutton add" innerClass="inner" content="+" /><roundcube:button name="filtersetmenulink" id="filtersetmenulink" type="link" title="moreactions" class="listbutton groupactions" onclick="return UI.toggle_popup('filtersetmenu', event)" innerClass="inner" content="&#9881;" aria-haspopup="true" aria-expanded="false" aria-owns="filtersetmenu-menu" />
</div>
</div>
<div id="filtersscreen">
<div id="filterslistbox" class="uibox listbox">
<h2 class="boxtitle"><roundcube:label name="managesieve.filters" /></h2>
<div id="filterslistbox" class="uibox listbox" aria-labelledby="aria-label-filters">
<h2 class="boxtitle" id="aria-label-filters"><roundcube:label name="managesieve.filters" /></h2>
<div class="scroller withfooter">
  <roundcube:object name="filterslist" id="filterslist" class="listing" cellspacing="0" summary="Filters list" noheader="true" />
  <roundcube:object name="filterslist" id="filterslist" class="listing" summary="managesieve.ariasummaryfilterslist" noheader="true" role="listbox" />
</div>
<div class="boxfooter">
  <roundcube:button command="plugin.managesieve-add" type="link" title="managesieve.filteradd" class="listbutton add disabled" classAct="listbutton add" innerClass="inner" content="+" /><roundcube:button name="filtermenulink" id="filtermenulink" type="link" title="moreactions" class="listbutton groupactions" onclick="UI.show_popup('filtermenu');return false" innerClass="inner" content="&#9881;" />
  <roundcube:button command="plugin.managesieve-add" type="link" title="managesieve.filteradd" class="listbutton add disabled" classAct="listbutton add" innerClass="inner" content="+" /><roundcube:button name="filtermenulink" id="filtermenulink" type="link" title="moreactions" class="listbutton groupactions" onclick="return UI.toggle_popup('filtermenu', event)" innerClass="inner" content="&#9881;" aria-haspopup="true" aria-expanded="false" aria-owns="filtermenu-menu" />
</div>
</div>
<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 class="iframebox" role="complementary" aria-labelledby="aria-label-filterform">
    <h2 id="aria-label-filterframe" class="voice"><roundcube:label name="managesieve.arialabelfilterform" /></h2>
    <roundcube:object name="filterframe" id="filter-frame" style="width:100%; height:100%" frameborder="0" src="/watermark.html" title="managesieve.arialabelfilterform" />
  </div>
</div>
@@ -44,19 +47,21 @@
</div>
</div>
<div id="filtersetmenu" class="popupmenu">
  <ul class="toolbarmenu">
    <li><roundcube:button command="plugin.managesieve-setact" label="managesieve.enable" classAct="active" /></li>
    <li><roundcube:button command="plugin.managesieve-setdel" label="delete" classAct="active" /></li>
    <li class="separator_above"><roundcube:button command="plugin.managesieve-setget" label="download" classAct="active" /></li>
<div id="filtersetmenu" class="popupmenu" aria-hidden="true">
  <h3 id="aria-label-setactions" class="voice"><roundcube:label name="managesieve.arialabelfiltersetactions" /></h3>
  <ul class="toolbarmenu" id="filtersetmenu-menu" role="menu" aria-labelledby="aria-label-setactions">
    <li role="menuitem"><roundcube:button command="plugin.managesieve-setact" label="managesieve.enable" classAct="active" /></li>
    <li role="menuitem"><roundcube:button command="plugin.managesieve-setdel" label="delete" classAct="active" /></li>
    <li role="menuitem" class="separator_above"><roundcube:button command="plugin.managesieve-setget" label="download" classAct="active" /></li>
    <roundcube:container name="filtersetoptions" id="filtersetmenu" />
  </ul>
</div>
<div id="filtermenu" class="popupmenu">
  <ul class="toolbarmenu">
    <li><roundcube:button command="plugin.managesieve-act" label="managesieve.enable" classAct="active" /></li>
    <li><roundcube:button command="plugin.managesieve-del" label="delete" classAct="active" /></li>
<div id="filtermenu" class="popupmenu" aria-hidden="true">
  <h3 id="aria-label-filteractions" class="voice"><roundcube:label name="managesieve.arialabelfilteractions" /></h3>
  <ul class="toolbarmenu" id="filtermenu-menu" role="menu" aria-labelledby="aria-label-filteractions">
    <li role="menuitem"><roundcube:button command="plugin.managesieve-act" label="managesieve.enable" classAct="active" /></li>
    <li role="menuitem"><roundcube:button command="plugin.managesieve-del" label="delete" classAct="active" /></li>
    <roundcube:container name="filteroptions" id="filtermenu" />
  </ul>
</div>
plugins/managesieve/skins/larry/templates/vacation.html
@@ -10,11 +10,13 @@
<div id="mainscreen" class="offset">
<h1 class="voice"><roundcube:label name="settings" /> : <roundcube:label name="managesieve.vacation" /></h1>
<roundcube:include file="/includes/settingstabs.html" />
<div id="managesieve-vacation" class="uibox contentbox">
<div id="managesieve-vacation" class="uibox contentbox" role="main" aria-labelledby="aria-label-vacationform">
  <div>
    <h2 class="boxtitle"><roundcube:label name="managesieve.vacation" /></h2>
    <h2 class="boxtitle" id="aria-label-vacationform"><roundcube:label name="managesieve.vacation" /></h2>
    <roundcube:object name="vacationform" id="vacationform" class="propform boxcontent tabbed" />
  </div>
  <div class="footerleft formbuttons">
plugins/managesieve/tests/Vacation.php
New file
@@ -0,0 +1,66 @@
<?php
class Managesieve_Vacation extends PHPUnit_Framework_TestCase
{
    function setUp()
    {
        include_once dirname(__FILE__) . '/../lib/Roundcube/rcube_sieve_engine.php';
        include_once dirname(__FILE__) . '/../lib/Roundcube/rcube_sieve_vacation.php';
    }
    /**
     * Plugin object construction test
     */
    function test_constructor()
    {
        $vacation = new rcube_sieve_vacation(true);
        $this->assertInstanceOf('rcube_sieve_vacation', $vacation);
    }
    function test_build_regexp_tests()
    {
        $tests = rcube_sieve_vacation::build_regexp_tests('2014-02-20', '2014-03-05', $error);
        $this->assertCount(2, $tests);
        $this->assertSame('header', $tests[0]['test']);
        $this->assertSame('regex', $tests[0]['type']);
        $this->assertSame('received', $tests[0]['arg1']);
        $this->assertSame('(20|21|22|23|24|25|26|27|28) Feb 2014', $tests[0]['arg2']);
        $this->assertSame('header', $tests[1]['test']);
        $this->assertSame('regex', $tests[1]['type']);
        $this->assertSame('received', $tests[1]['arg1']);
        $this->assertSame('([ 0]1|[ 0]2|[ 0]3|[ 0]4|[ 0]5) Mar 2014', $tests[1]['arg2']);
        $tests = rcube_sieve_vacation::build_regexp_tests('2014-02-20', '2014-01-05', $error);
        $this->assertSame(null, $tests);
        $this->assertSame('managesieve.invaliddateformat', $error);
    }
    function test_parse_regexp_tests()
    {
        $tests = array(
            array(
                'test' => 'header',
                'type' => 'regex',
                'arg1' => 'received',
                'arg2' => '(20|21|22|23|24|25|26|27|28) Feb 2014',
            ),
            array(
                'test' => 'header',
                'type' => 'regex',
                'arg1' => 'received',
                'arg2' => '([ 0]1|[ 0]2|[ 0]3|[ 0]4|[ 0]5) Mar 2014',
            )
        );
        $result = rcube_sieve_vacation::parse_regexp_tests($tests);
        $this->assertCount(2, $result);
        $this->assertSame('20 Feb 2014', $result['from']);
        $this->assertSame('05 Mar 2014', $result['to']);
    }
}
plugins/markasjunk/localization/ar_SA.inc
New file
@@ -0,0 +1,21 @@
<?php
/*
 +-----------------------------------------------------------------------+
 | plugins/markasjunk/localization/<lang>.inc                            |
 |                                                                       |
 | Localization file of the Roundcube Webmail Mark-As-Junk plugin        |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
 | See the README file for a full license statement.                     |
 |                                                                       |
 +-----------------------------------------------------------------------+
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-markasjunk/
*/
$labels['buttontext'] = 'غير المرغوب';
$labels['buttontitle'] = 'وضع علامة كـ غير المرغوب فيه';
$labels['reportedasjunk'] = 'تمت الافادة كـ غير مرغوب فية بنجاح';
?>
plugins/markasjunk/localization/ast.inc
New file
@@ -0,0 +1,21 @@
<?php
/*
 +-----------------------------------------------------------------------+
 | plugins/markasjunk/localization/<lang>.inc                            |
 |                                                                       |
 | Localization file of the Roundcube Webmail Mark-As-Junk plugin        |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
 | See the README file for a full license statement.                     |
 |                                                                       |
 +-----------------------------------------------------------------------+
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-markasjunk/
*/
$labels['buttontext'] = 'Puxarra';
$labels['buttontitle'] = 'Conseñar como puxarra';
$labels['reportedasjunk'] = 'Reportáu con ésitu como Puxarra';
?>
plugins/markasjunk/localization/ko_KR.inc
@@ -15,7 +15,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-markasjunk/
*/
$labels['buttontext'] = '정크메일';
$labels['buttontitle'] = '정크메일로 표시';
$labels['reportedasjunk'] = '성공적으로, 정크메일이라 보고 됨';
$labels['buttontext'] = '스팸';
$labels['buttontitle'] = '스팸으로 표시';
$labels['reportedasjunk'] = '스팸으로 성공적으로 보고함';
?>
plugins/markasjunk/localization/ml_IN.inc
@@ -15,6 +15,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-markasjunk/
*/
$labels['buttontitle'] = 'സ്പാം ആയി അടയാളപ്പെടുത്തുക';
$labels['reportedasjunk'] = 'സ്പാം ആയി അടയാളപ്പെടുത്തി';
$labels['buttontext'] = 'ചവർ';
$labels['buttontitle'] = 'ചവർ ആയി അടയാളപ്പെടുത്തുക';
$labels['reportedasjunk'] = 'ചവർ ആയി അടയാളപ്പെടുത്തി';
?>
plugins/new_user_dialog/localization/ast.inc
@@ -15,6 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-new_user_dialog/
*/
$labels['identitydialogtitle'] = 'Por favor, completa los tos datos personales';
$labels['identitydialoghint'] = 'Esti diálogu namái va apaecer la primer vegada que te coneutes al corréu.';
$labels['identitydialogtitle'] = 'Por favor, completa la to identidá de remitente';
$labels['identitydialoghint'] = 'Esta caxa namái apaecerá una vegada nel primer aniciu de sesión.';
?>
plugins/newmail_notifier/localization/ast.inc
@@ -15,14 +15,14 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-newmail_notifier/
*/
$labels['basic'] = 'Amosar notificaciones del navegador cuando aporte un mensaxe nuevu';
$labels['desktop'] = 'Amosar notificaciones del escritoriu cuando aporte un mensaxe nuevu';
$labels['sound'] = 'Reproducir soníu cuando aporte un mensaxe nuevu';
$labels['basic'] = 'Amosar notificaciones del restolador nun mensaxe nuevu';
$labels['desktop'] = 'Amosar notificaciones d\'escritoriu nun mensaxe nuevu';
$labels['sound'] = 'Reproducir el soníu nun mensaxe nuevu';
$labels['test'] = 'Prueba';
$labels['title'] = '¡Mensaxe nuevu!';
$labels['body'] = 'Recibisti un mensaxe nuevu';
$labels['testbody'] = 'Esta ye una notificación de pruebes';
$labels['desktopdisabled'] = 'Les notificaciones d\'escritoriu tán deshabilitaes nel to navegador.';
$labels['desktopunsupported'] = 'El to navegador nun sofita notificaciones d\'escritoriu.';
$labels['testbody'] = 'Esta ye una notificación de prueba';
$labels['desktopdisabled'] = 'Les notificaciones d\'escritoriu tán deshabilitaes nel to restolador.';
$labels['desktopunsupported'] = 'El to restolador nun sofita notificaciones d\'escritoriu.';
$labels['desktoptimeout'] = 'Zarrar notificación d\'escritoriu';
?>
plugins/newmail_notifier/localization/es_419.inc
New file
@@ -0,0 +1,28 @@
<?php
/*
 +-----------------------------------------------------------------------+
 | plugins/newmail_notifier/localization/<lang>.inc                      |
 |                                                                       |
 | Localization file of the Roundcube Webmail New Mail Notifier plugin   |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
 | See the README file for a full license statement.                     |
 |                                                                       |
 +-----------------------------------------------------------------------+
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-newmail_notifier/
*/
$labels['basic'] = 'Mostrar notificaciones del navegador en nuevos mensajes';
$labels['desktop'] = 'Mostrar notificaciones de escritorio en nuevos mensajes';
$labels['sound'] = 'Ejecutar sonido en nuevos mensajes';
$labels['test'] = 'Probar';
$labels['title'] = '¡Nuevo correo electrónico!';
$labels['body'] = 'Has recibido un nuevo correo electrónico.';
$labels['testbody'] = 'Esta es una notificación de prueba.';
$labels['desktopdisabled'] = 'Notificaciones de escritorio está deshabilitado en tu navegador.';
$labels['desktopunsupported'] = 'Tu navegador no soporta notificaciones de escritorio.';
$labels['desktoptimeout'] = 'Cerrar notificaciones de escritorio';
?>
plugins/newmail_notifier/localization/es_AR.inc
@@ -24,4 +24,5 @@
$labels['testbody'] = 'Esta es una notificación de prueba';
$labels['desktopdisabled'] = 'Las notificaciones en escritorio están deshabilitadas en tu navegador';
$labels['desktopunsupported'] = 'Tu navegador no soporta notificaciones en escritorio';
$labels['desktoptimeout'] = 'Cerrar notificación de escritorio';
?>
plugins/newmail_notifier/localization/et_EE.inc
@@ -24,4 +24,5 @@
$labels['testbody'] = 'See on teavituse proov.';
$labels['desktopdisabled'] = 'Töölaua märguanded on su veebilehitsejas keelatud.';
$labels['desktopunsupported'] = 'Sinu veebilehitseja ei toeta töölaua märguandeid.';
$labels['desktoptimeout'] = 'Sulge töölaua teavitus';
?>
plugins/newmail_notifier/localization/hu_HU.inc
@@ -16,13 +16,13 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-newmail_notifier/
*/
$labels['basic'] = 'Értesítés megjelenítése böngészőben amikor új üzenet érkezik';
$labels['desktop'] = 'Asztali értesítés megjelenítése új üzenet érkezésekor';
$labels['desktop'] = 'Értesítés megjelenítése az asztalon amikor új üzenet érkezik';
$labels['sound'] = 'Hang lejátszása új üzenet érkezésekor';
$labels['test'] = 'Hang lejátszása';
$labels['title'] = 'Ú email!';
$labels['body'] = 'Új üzeneted érkezett.';
$labels['testbody'] = 'Ez egy teszt értesítés.';
$labels['desktopdisabled'] = 'Az asztali értesítés ki van kapcsolva a böngésződben.';
$labels['desktopunsupported'] = 'A böngésződ nem támogatja az asztali értesítéseket.';
$labels['desktoptimeout'] = 'Az asztali értesítés bezárása';
$labels['test'] = 'Próba';
$labels['title'] = 'Új üzenet!';
$labels['body'] = 'Új üzenet érkezett.';
$labels['testbody'] = 'Ez egy értesítési próba.';
$labels['desktopdisabled'] = 'A böngészőben tiltva van az asztali értesítések megjelenítése.';
$labels['desktopunsupported'] = 'A böngésző nem támogatja az asztali értesítések megjelenítését.';
$labels['desktoptimeout'] = 'Az értesítés bezárása';
?>
plugins/newmail_notifier/localization/id_ID.inc
@@ -24,4 +24,5 @@
$labels['testbody'] = 'Ini adalah percobaan pemberitahuan.';
$labels['desktopdisabled'] = 'Pemberitahuan di desktop dimatikan pada peramban Anda.';
$labels['desktopunsupported'] = 'Peramban Anda tidak mendukung pemberitahuan pada desktop';
$labels['desktoptimeout'] = 'Tutup pemberitahuan pada desktop';
?>
plugins/newmail_notifier/localization/ml_IN.inc
@@ -24,4 +24,5 @@
$labels['testbody'] = 'ഇത് ഒരു പരീക്ഷണ അറിയിപ്പാണ്.';
$labels['desktopdisabled'] = 'താങ്കളുടെ ബ്രൌസറില്‍ ഡെസ്ക്ക്ടോപ്പ് നോട്ടിഫിക്കേഷന്‍ പ്രവര്‍ത്തനരഹിതമാണ്.';
$labels['desktopunsupported'] = 'താങ്കളുടെ ബ്രൌസ്സര്‍ ഡെസ്ക്ടോപ്പ് അറിയിപ്പുകള്‍ പിന്‍തുണയ്ക്കുന്നില്ല.';
$labels['desktoptimeout'] = 'ഡെസ്ക്ടോപ്പ് അറിയിപ്പുകൾ അടയ്ക്കുക';
?>
plugins/newmail_notifier/newmail_notifier.php
@@ -52,8 +52,8 @@
            $this->add_hook('preferences_save', array($this, 'prefs_save'));
        }
        else { // if ($this->rc->task == 'mail') {
            // add script when not in ajax and not in frame
            if ($this->rc->output->type == 'html' && empty($_REQUEST['_framed'])) {
            // add script when not in ajax and not in frame and only in main window
            if ($this->rc->output->type == 'html' && empty($_REQUEST['_framed']) && $this->rc->action == '') {
                $this->add_texts('localization/');
                $this->rc->output->add_label('newmail_notifier.title', 'newmail_notifier.body');
                $this->include_script('newmail_notifier.js');
plugins/password/README
@@ -311,6 +311,9 @@
 Set $config['password_vpopmaild_port'] to the port of vpopmaild.
 Set $config['password_vpopmaild_timeout'] to the timeout used for the TCP
 connection to vpopmaild (You may want to set it higher on busy servers).
 2.20. Plesk (Plesk RPC-API)
 ---------------------------
plugins/password/config.inc.php.dist
@@ -35,6 +35,9 @@
// for upgrading the stored passwords after the encryption scheme has changed.
$config['password_force_save'] = false;
// Enables forcing new users to change their password at their first login.
$config['password_force_new_user'] = false;
// SQL Driver options
// ------------------
@@ -256,6 +259,9 @@
// TCP port used for vpopmaild connections
$config['password_vpopmaild_port'] = 89;
// Timout used for the connection to vpopmaild (in seconds)
$config['password_vpopmaild_timeout'] = 10;
// cPanel Driver options
// --------------------------
@@ -362,6 +368,11 @@
// Location of smbpasswd binary
$config['password_smb_cmd'] = '/usr/bin/smbpasswd';
// gearman driver options
// ---------------------
// Gearman host (default: localhost)
$config['password_gearman_host'] = 'localhost';
// Plesk/PPA Driver options
plugins/password/drivers/gearman.php
New file
@@ -0,0 +1,55 @@
<?php
/**
 * Gearman Password Driver
 *
 * Payload is json string containing username, oldPassword and newPassword
 * Return value is a json string saying result: true if success.
 *
 * @version 1.0
 * @author Mohammad Anwari <mdamt@mdamt.net>
 */
class rcube_gearman_password
{
    function save($currpass, $newpass)
    {
        if (extension_loaded('gearman')) {
            $rcmail  = rcmail::get_instance();
            $user    = $_SESSION['username'];
            $payload = array(
                'username'    => $user,
                'oldPassword' => $currpass,
                'newPassword' => $newpass,
            );
            $gmc = new GearmanClient();
            $gmc->addServer($rcmail->config->get('password_gearman_host'));
            $result  = $gmc->doNormal('setPassword', json_encode($payload));
            $success = json_decode($result);
            if ($success && $success->result == 1) {
                return PASSWORD_SUCCESS;
            }
            else {
                rcube::raise_error(array(
                    'code' => 600,
                    'type' => 'php',
                    'file' => __FILE__, 'line' => __LINE__,
                    'message' => "Password plugin: Gearman authentication failed for user $user: $error"
                ), true, false);
            }
        }
        else {
            rcube::raise_error(array(
                'code' => 600,
                'type' => 'php',
                'file' => __FILE__, 'line' => __LINE__,
                'message' => "Password plugin: PECL Gearman module not loaded"
            ), true, false);
        }
        return PASSWORD_ERROR;
    }
}
plugins/password/drivers/ldap.php
@@ -130,9 +130,10 @@
     */
    function search_userdn($rcmail)
    {
        $binddn = $rcmail->config->get('password_ldap_searchDN');
        $bindpw = $rcmail->config->get('password_ldap_searchPW');
        $ldapConfig = array (
            'binddn'    => $rcmail->config->get('password_ldap_searchDN'),
            'bindpw'    => $rcmail->config->get('password_ldap_searchPW'),
            'basedn'    => $rcmail->config->get('password_ldap_basedn'),
            'host'      => $rcmail->config->get('password_ldap_host'),
            'port'      => $rcmail->config->get('password_ldap_port'),
@@ -140,6 +141,12 @@
            'version'   => $rcmail->config->get('password_ldap_version'),
        );
        // allow anonymous searches
        if (!empty($binddn)) {
            $ldapConfig['binddn'] = $binddn;
            $ldapConfig['bindpw'] = $bindpw;
        }
        $ldap = Net_LDAP2::connect($ldapConfig);
        if (PEAR::isError($ldap)) {
plugins/password/drivers/ldap_simple.php
@@ -168,14 +168,16 @@
     */
    function search_userdn($rcmail, $ds)
    {
        $search_user = $rcmail->config->get('password_ldap_searchDN');
        $search_pass = $rcmail->config->get('password_ldap_searchPW');
        $search_user   = $rcmail->config->get('password_ldap_searchDN');
        $search_pass   = $rcmail->config->get('password_ldap_searchPW');
        $search_base   = $rcmail->config->get('password_ldap_search_base');
        $search_filter = $rcmail->config->get('password_ldap_search_filter');
        if (empty($search_user)) {
            return null;
        if (empty($search_filter)) {
            return false;
        }
        $this->_debug("C: Bind $search_user, pass: **** [" . strlen($search_pass) . "]");
        $this->_debug("C: Bind " . ($search_user ? $search_user : '[anonymous]'));
        // Bind
        if (!ldap_bind($ds, $search_user, $search_pass)) {
@@ -184,9 +186,6 @@
        }
        $this->_debug("S: OK");
        $search_base   = $rcmail->config->get('password_ldap_search_base');
        $search_filter = $rcmail->config->get('password_ldap_search_filter');
        $search_base   = rcube_ldap_password::substitute_vars($search_base);
        $search_filter = rcube_ldap_password::substitute_vars($search_filter);
plugins/password/drivers/vpopmaild.php
@@ -22,6 +22,8 @@
            $rcmail->config->get('password_vpopmaild_port'), null))) {
            return PASSWORD_CONNECT_ERROR;
        }
        $vpopmaild->setTimeout($rcmail->config->get('password_vpopmaild_timeout'),0);
        $result = $vpopmaild->readLine();
        if(!preg_match('/^\+OK/', $result)) {
plugins/password/localization/ar.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'تغيير كلمة المرور';
$labels['curpasswd']  = 'كلمة المرور الحالية:';
$labels['newpasswd']  = 'كلمة المرور الجديدة:';
$labels['confpasswd']  = 'تأكيد كلمة المرور الجديدة:';
plugins/password/localization/ast.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Camudar contraseña';
$labels['curpasswd']  = 'Contraseña actual:';
$labels['newpasswd']  = 'Contraseña nueva:';
$labels['confpasswd']  = 'Confirmar contraseña:';
@@ -28,5 +27,6 @@
$messages['internalerror'] = 'Nun pudo guardase la contraseña nueva. ';
$messages['passwordshort'] = 'La contraseña tien de tener polo menos $length caráuteres.';
$messages['passwordweak'] = 'La contraseña tien de tener polo menos un númberu y un signu de puntuación.';
$messages['passwordforbidden'] = 'La contraseña que s\'introduxo contién caráuteres non permitíos.';
$messages['passwordforbidden'] = 'La contraseña contien caráuteres prohibíos.';
$messages['firstloginchange'] = 'Esti ye\'l to primer aniciu sesión. Por favor, camuda la to contraseña.';
?>
plugins/password/localization/az_AZ.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Şifrəni dəyiş';
$labels['curpasswd']  = 'Hal-hazırki şifrə:';
$labels['newpasswd']  = 'Yeni şifrə:';
$labels['confpasswd']  = 'Yeni şifrə: (təkrar)';
plugins/password/localization/be_BE.inc
@@ -29,4 +29,5 @@
$messages['passwordshort'] = 'Пароль мусіць быць мінімум $length знакаў.';
$messages['passwordweak'] = 'Пароль мусіць утрымліваць мінімум адну лічбу і адзін знак пунктуацыі.';
$messages['passwordforbidden'] = 'Пароль утрымлівае забароненыя знакі.';
$messages['firstloginchange'] = 'Гэта ваш першы ўваход. Трэба змяніць пароль.';
?>
plugins/password/localization/bg_BG.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Промяна на парола';
$labels['curpasswd']  = 'Текуща парола:';
$labels['newpasswd']  = 'Нова парола:';
$labels['confpasswd']  = 'Повторно нова парола:';
plugins/password/localization/br.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Kemmañ ar ger-tremen';
$labels['curpasswd']  = 'Ger-tremen bremañ :';
$labels['newpasswd']  = 'Ger-tremen nevez :';
$labels['confpasswd']  = 'Kadarnaat ar ger-tremen :';
plugins/password/localization/bs_BA.inc
@@ -29,4 +29,5 @@
$messages['passwordshort'] = 'Šifra mora sadržavati barem $length znakova.';
$messages['passwordweak'] = 'Šifra mora imati barem jedan broj i jedan interpunkcijski znak.';
$messages['passwordforbidden'] = 'Šifra sadrži nedozvoljene znakove.';
$messages['firstloginchange'] = 'Ovo je vaša prva prijava. Molimo vas da promijenite vašu šifru.';
?>
plugins/password/localization/ca_ES.inc
@@ -29,4 +29,5 @@
$messages['passwordshort'] = 'La nova contrasenya ha de tenir com a mínim $length caràcters.';
$messages['passwordweak'] = 'La nova contrasenya ha d\'incloure com a mínim un nombre i un caràcter de puntuació.';
$messages['passwordforbidden'] = 'La contrasenya conté caràcters no permesos.';
$messages['firstloginchange'] = 'Aquest és el vostre primer accés. Si us plau, canvieu-vos la contrasenya.';
?>
plugins/password/localization/cs_CZ.inc
@@ -29,4 +29,5 @@
$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.';
$messages['firstloginchange'] = 'Vaše první přihlášení, změňte si prosím heslo.';
?>
plugins/password/localization/cy_GB.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Newid Cyfrinair';
$labels['curpasswd']  = 'Cyfrinair Presennol:';
$labels['newpasswd']  = 'Cyfrinair Newydd:';
$labels['confpasswd']  = 'Cadarnhau Cyfrinair Newydd:';
plugins/password/localization/da_DK.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Skift adgangskode';
$labels['curpasswd']  = 'Nuværende adgangskode:';
$labels['newpasswd']  = 'Ny adgangskode:';
$labels['confpasswd']  = 'Bekræft ny adgangskode:';
plugins/password/localization/de_CH.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Passwort ändern';
$labels['curpasswd']  = 'Aktuelles Passwort';
$labels['newpasswd']  = 'Neues Passwort';
$labels['confpasswd']  = 'Passwort Wiederholung';
plugins/password/localization/de_DE.inc
@@ -15,7 +15,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Kennwort ändern';
$labels['changepasswd']  = 'Passwort ändern';
$labels['curpasswd']  = 'Aktuelles Kennwort:';
$labels['newpasswd']  = 'Neues Kennwort:';
$labels['confpasswd']  = 'Neues Kennwort bestätigen:';
@@ -29,4 +29,5 @@
$messages['passwordshort'] = 'Passwort muss mindestens $length Zeichen lang sein.';
$messages['passwordweak'] = 'Passwort muss mindestens eine Zahl und ein Sonderzeichen enthalten.';
$messages['passwordforbidden'] = 'Passwort enthält unzulässige Zeichen.';
$messages['firstloginchange'] = 'Dies ist Ihr erster Login. Bitte ändern Sie ihr Passwort.';
?>
plugins/password/localization/el_GR.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Αλλαγη κωδικου προσβασης';
$labels['curpasswd']  = 'Τρεχων κωδικος προσβασης:';
$labels['newpasswd']  = 'Νεος κωδικος προσβασης:';
$labels['confpasswd']  = 'Επιβεβαιωση κωδικου προσβασης:';
plugins/password/localization/en_CA.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Change Password';
$labels['curpasswd']  = 'Current Password:';
$labels['newpasswd']  = 'New Password:';
$labels['confpasswd']  = 'Confirm New Password:';
plugins/password/localization/en_GB.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Change Password';
$labels['curpasswd']  = 'Current Password:';
$labels['newpasswd']  = 'New Password:';
$labels['confpasswd']  = 'Confirm New Password:';
plugins/password/localization/en_US.inc
@@ -17,7 +17,7 @@
*/
$labels = array();
$labels['changepasswd']  = 'Change Password';
$labels['changepasswd']  = 'Change password';
$labels['curpasswd']  = 'Current Password:';
$labels['newpasswd']  = 'New Password:';
$labels['confpasswd']  = 'Confirm New Password:';
@@ -33,5 +33,6 @@
$messages['passwordshort'] = 'Password must be at least $length characters long.';
$messages['passwordweak'] = 'Password must include at least one number and one punctuation character.';
$messages['passwordforbidden'] = 'Password contains forbidden characters.';
$messages['firstloginchange'] = 'This is your first login. Please change your password.';
?>
plugins/password/localization/eo.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Ŝanĝi pasvorton';
$labels['curpasswd']  = 'Nuna pasvorto:';
$labels['newpasswd']  = 'Nova pasvorto:';
$labels['confpasswd']  = 'Konfirmi novan pasvorton:';
plugins/password/localization/es_419.inc
@@ -29,4 +29,5 @@
$messages['passwordshort'] = 'La contraseña debe tener al menos $length carácteres.';
$messages['passwordweak'] = 'La contraseña debe incluir por lo menos un número y un signo de puntuación.';
$messages['passwordforbidden'] = 'La contraseña contiene carácteres ilegales.';
$messages['firstloginchange'] = 'Esta es la primera vez que ingresas. Por favor cambia tu contraseña.';
?>
plugins/password/localization/es_AR.inc
@@ -15,7 +15,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Cambiar Contraseña';
$labels['changepasswd']  = 'Cambiar contraseña';
$labels['curpasswd']  = 'Contraseña Actual:';
$labels['newpasswd']  = 'Contraseña Nueva:';
$labels['confpasswd']  = 'Confirmar Contraseña:';
@@ -29,4 +29,5 @@
$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.';
$messages['firstloginchange'] = 'Este es tu primer inicio de sesión. Por favor, cambia tu contraseña.';
?>
plugins/password/localization/es_ES.inc
@@ -15,7 +15,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Cambiar contraseña';
$labels['changepasswd']  = 'Cambiar la contraseña';
$labels['curpasswd']  = 'Contraseña actual:';
$labels['newpasswd']  = 'Contraseña nueva:';
$labels['confpasswd']  = 'Confirmar contraseña:';
@@ -29,4 +29,5 @@
$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.';
$messages['firstloginchange'] = 'Este es su primer inicio de sesión. Por favor, cambie su contraseña.';
?>
plugins/password/localization/et_EE.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Muuda parooli';
$labels['curpasswd']  = 'Vana parool:';
$labels['newpasswd']  = 'Uus parool:';
$labels['confpasswd']  = 'Uus parool uuesti:';
plugins/password/localization/eu_ES.inc
@@ -29,4 +29,5 @@
$messages['passwordshort'] = 'Gutxienez $length karakteretakoa izan behar du pasahitzak.';
$messages['passwordweak'] = 'Gutxienez zenbaki bat eta puntuazio karaktere bat izan behar du pasahitzak.';
$messages['passwordforbidden'] = 'Galarazitako karaktereak daude pasahitzean.';
$messages['firstloginchange'] = 'Zure lehenengo sarrera da. Pasahitza aldatu mesedez.';
?>
plugins/password/localization/fa_AF.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'تغییر رمز عبور';
$labels['curpasswd']  = 'رمز عبور کنونی';
$labels['newpasswd']  = 'رمز عبور جدید';
$labels['confpasswd']  = 'تایید رمز عبور جدید';
plugins/password/localization/fi_FI.inc
@@ -29,4 +29,5 @@
$messages['passwordshort'] = 'Salasanassa täytyy olla vähintään $length merkkiä.';
$messages['passwordweak'] = 'Salasanan täytyy sisältää vähintään yksi numero ja yksi välimerkki.';
$messages['passwordforbidden'] = 'Salasana sisältää virheellisiä merkkejä.';
$messages['firstloginchange'] = 'Tämä on ensimmäinen kirjautumiskertasi. Vaihda salasanasi.';
?>
plugins/password/localization/fo_FO.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Broyt loyniorð';
$labels['curpasswd']  = 'Nú verandi loyniorð:';
$labels['newpasswd']  = 'Nýtt loyniorð:';
$labels['confpasswd']  = 'Endurtak nýggja loyniorð:';
plugins/password/localization/gl_ES.inc
@@ -29,4 +29,5 @@
$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.';
$messages['firstloginchange'] = 'É a primeira vez que se conecta. Por favor, troque o seu contrasinal.';
?>
plugins/password/localization/he_IL.inc
@@ -15,7 +15,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'שינוי סיסמה';
$labels['changepasswd']  = 'שנה סיסמה';
$labels['curpasswd']  = 'סיסמה נוכחית:';
$labels['newpasswd']  = 'סיסמה חדשה:';
$labels['confpasswd']  = 'אימות הסיסמה החדשה:';
@@ -29,4 +29,5 @@
$messages['passwordshort'] = 'הסיסמה צריכה להיות לפחות בעלת $length תווים';
$messages['passwordweak'] = 'הסיסמה חייבת לכלול לפחות סיפרה אחת ולפחות סימן פיסוק אחד.';
$messages['passwordforbidden'] = 'הסיסמה מכילה תווים אסורים.';
$messages['firstloginchange'] = 'זוהי כניסתך הראשונה. אנא שנה את סיסמתך.';
?>
plugins/password/localization/hr_HR.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Promijeni zaporku';
$labels['curpasswd']  = 'Važeća zaporka:';
$labels['newpasswd']  = 'Nova zaporka:';
$labels['confpasswd']  = 'Potvrda nove zaporke:';
plugins/password/localization/hu_HU.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Jelszó módosítás';
$labels['curpasswd']  = 'Jelenlegi jelszó:';
$labels['newpasswd']  = 'Új jelszó:';
$labels['confpasswd']  = 'Új jelszó mégegyszer:';
@@ -29,4 +28,5 @@
$messages['passwordshort'] = 'A jelszónak legalább $length karakter hosszunak kell lennie.';
$messages['passwordweak'] = 'A jelszónak mindenképpen kell tartalmaznia egy számot és egy írásjelet.';
$messages['passwordforbidden'] = 'A jelszó tiltott karaktert is tartalmaz.';
$messages['firstloginchange'] = 'Ez az első belépésed. Változtass jelszót.';
?>
plugins/password/localization/hy_AM.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Գաղտնաբառի փոփոխում';
$labels['curpasswd']  = 'Առկա գաղտնաբառը`';
$labels['newpasswd']  = 'Նոր գաղտնաբառը`';
$labels['confpasswd']  = 'Կրկնեք նոր գաղտնաբառը`';
plugins/password/localization/id_ID.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Ubah Sandi';
$labels['curpasswd']  = 'Sandi saat ini:';
$labels['newpasswd']  = 'Sandi Baru:';
$labels['confpasswd']  = 'Konfirmasi Sandi Baru:';
plugins/password/localization/it_IT.inc
@@ -29,4 +29,5 @@
$messages['passwordshort'] = 'La password deve essere lunga almeno $length caratteri.';
$messages['passwordweak'] = 'La password deve includere almeno una cifra decimale e un simbolo di punteggiatura.';
$messages['passwordforbidden'] = 'La password contiene caratteri proibiti.';
$messages['firstloginchange'] = 'Questo è il tuo primo accesso. Si prega di cambiare la propria password.';
?>
plugins/password/localization/ja_JP.inc
@@ -29,4 +29,5 @@
$messages['passwordshort'] = 'パスワードは少なくとも $length 文字の長さが必要です。';
$messages['passwordweak'] = 'パスワードは少なくとも数字の 1 文字と記号の 1 文字を含んでいなければなりません。';
$messages['passwordforbidden'] = 'パスワードに禁止された文字が含まれています。';
$messages['firstloginchange'] = 'これは初めてのログインです。パスワードを変更してください。';
?>
plugins/password/localization/km_KH.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'ប្ដូរ​ពាក្យ​សម្ងាត់';
$labels['curpasswd']  = 'ពាក្យ​សម្ងាត់​បច្ចុប្បន្ន៖';
$labels['newpasswd']  = 'ពាក្យ​សម្ងាត់​ថ្មី៖';
$labels['confpasswd']  = 'បញ្ជាក់​ពាក្យ​សម្ងាត់​ថ្មី៖';
plugins/password/localization/ko_KR.inc
@@ -17,16 +17,17 @@
*/
$labels['changepasswd']  = '암호 변경';
$labels['curpasswd']  = '현재 암호:';
$labels['newpasswd']  = '새 암호:';
$labels['confpasswd']  = '새로운 비밀번호 확인 :';
$messages['nopassword'] = '새 암호를 입력하시오.';
$messages['nocurpassword'] = '현재 사용중인 암호를 입력하세요.';
$messages['passwordincorrect'] = '현재 사용중인 암호가 올바르지 않습니다.';
$messages['passwordinconsistency'] = '암호가 일치하지 않습니다. 다시 시도하기 바랍니다.';
$messages['crypterror'] = '새로운 암호를 저장할 수 없습니다. 암호화 실패.';
$messages['connecterror'] = '새로운 암호를 저장할 수 없습니다. 연결 오류.';
$labels['newpasswd']  = '새로운 암호:';
$labels['confpasswd']  = '새로운 암호 확인:';
$messages['nopassword'] = '새로운 암호를 입력하세요.';
$messages['nocurpassword'] = '현재 사용 중인 암호를 입력하세요.';
$messages['passwordincorrect'] = '현재 사용 중인 암호가 올바르지 않습니다.';
$messages['passwordinconsistency'] = '암호가 일치하지 않습니다. 다시 시도해주세요.';
$messages['crypterror'] = '새로운 암호를 저장할 수 없습니다. 암호화 기능이 누락되었습니다.';
$messages['connecterror'] = '새로운 암호를 저장할 수 없습니다. 연결 오류입니다.';
$messages['internalerror'] = '새로운 암호를 저장할 수 없습니다.';
$messages['passwordshort'] = '암호는 적어도 $length 글자 이상이어야 합니다.';
$messages['passwordweak'] = '암호는 적어도 숫자 하나와 특수 문자 하나를 포함하여야 합니다.';
$messages['passwordforbidden'] = '암호가 허락되지 않은 문자들을 포함하고 있습니다.';
$messages['passwordshort'] = '암호는 문자가 $length개 이상이어야 합니다.';
$messages['passwordweak'] = '암호는 숫자 및 특수문자를 각각 한 개 이상 포함해야 합니다.';
$messages['passwordforbidden'] = '암호가 금지된 문자을 포함하고 있습니다.';
$messages['firstloginchange'] = '처음 로그인하셨습니다. 암호를 변경해주세요.';
?>
plugins/password/localization/ku.inc
File was deleted
plugins/password/localization/lb_LU.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Passwuert änneren';
$labels['curpasswd']  = 'Aktuellt Passwuert:';
$labels['newpasswd']  = 'Neit Passwuert:';
$labels['confpasswd']  = 'Neit Passwuert bestätegen:';
plugins/password/localization/lt_LT.inc
@@ -15,7 +15,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Slaptažodžio keitimas';
$labels['changepasswd']  = 'Keisti slaptažodį';
$labels['curpasswd']  = 'Dabartinis slaptažodis:';
$labels['newpasswd']  = 'Naujasis slaptažodis:';
$labels['confpasswd']  = 'Pakartokite naująjį slaptažodį:';
@@ -29,4 +29,5 @@
$messages['passwordshort'] = 'Slaptažodis turi būti sudarytas bent iš $length simbolių.';
$messages['passwordweak'] = 'Slaptažodyje turi būti bent vienas skaitmuo ir vienas skyrybos ženklas.';
$messages['passwordforbidden'] = 'Slaptažodyje rasta neleistinų simbolių.';
$messages['firstloginchange'] = 'Tai yra pirmasis jūsų prisijungimas. Prašau, pasikeiskite savo slaptažodį.';
?>
plugins/password/localization/lv_LV.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Nomainīt paroli';
$labels['curpasswd']  = 'Pašreizējā parole:';
$labels['newpasswd']  = 'Jaunā parole:';
$labels['confpasswd']  = 'Apstiprināt jauno paroli:';
plugins/password/localization/ml_IN.inc
New file
@@ -0,0 +1,33 @@
<?php
/*
 +-----------------------------------------------------------------------+
 | plugins/password/localization/<lang>.inc                              |
 |                                                                       |
 | Localization file of the Roundcube Webmail Password plugin            |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
 | See the README file for a full license statement.                     |
 |                                                                       |
 +-----------------------------------------------------------------------+
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'രഹസ്യവാക്ക് മാറ്റുക';
$labels['curpasswd']  = 'ഇപ്പോഴത്തെ രഹസ്യവാക്ക്';
$labels['newpasswd']  = 'പുതിയ രഹസ്യവാക്ക്';
$labels['confpasswd']  = 'പുതിയ രഹസ്യവാക്ക് സ്ഥിരീകരിക്കുക';
$messages['nopassword'] = 'ദയവായി പുതിയ രഹസ്യവാക്ക് നൽകുക';
$messages['nocurpassword'] = 'ദയവായി ഇപ്പോഴത്തെ രഹസ്യവാക്ക് നൽകുക';
$messages['passwordincorrect'] = 'ഇപ്പോഴത്തെ രഹസ്യവാക്ക് തെറ്റാണ്.';
$messages['passwordinconsistency'] = 'രഹസ്യവാക്കുകൾ ചേരുന്നില്ല, ദയവായി വീണ്ടും ശ്രമിക്കുക';
$messages['crypterror'] = 'പുതിയ രഹസ്യവാക്ക് സൂക്ഷിക്കാൻ സാധിച്ചില്ല. എൻക്രിപ്ഷൻ ഫങ്ങ്ഷൻ ലഭ്യമല്ല.';
$messages['connecterror'] = 'പുതിയ രഹസ്യവാക്ക് സൂക്ഷിക്കാൻ സാധിച്ചില്ല. ബന്ധം സ്ഥാപിക്കുന്നതിൽ പിഴവ്.';
$messages['internalerror'] = 'പുതിയ രഹസ്യവാക്ക് സൂക്ഷിക്കാൻ സാധിച്ചില്ല.';
$messages['passwordshort'] = 'രഹസ്യവാക്കിനു് കുറഞ്ഞത് $length അക്ഷരങ്ങൾ നീളം വേണം';
$messages['passwordweak'] = 'രഹസ്യവാക്കിൽ കുറഞ്ഞത് ഒരു സംഖ്യയും, ഒരു പ്രത്യേക അക്ഷരവും വേണം';
$messages['passwordforbidden'] = 'രഹസ്യവാക്കിൽ അനുവദനീയമല്ലാത്ത അക്ഷരങ്ങൾ ഉണ്ട്';
$messages['firstloginchange'] = 'ഇത് താങ്കളുടെ ആദ്യത്തെ പ്രവേശനമാണ്. ദയവായി താങ്കളുടെ രഹസ്യവാക്ക് മാറ്റുക.';
?>
plugins/password/localization/nb_NO.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Bytt passord';
$labels['curpasswd']  = 'Nåværende passord:';
$labels['newpasswd']  = 'Nytt passord:';
$labels['confpasswd']  = 'Bekreft nytt passord';
plugins/password/localization/nl_NL.inc
@@ -15,7 +15,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Wachtwoord wijzigen';
$labels['changepasswd']  = 'Wijzig wachtwoord';
$labels['curpasswd']  = 'Huidig wachtwoord:';
$labels['newpasswd']  = 'Nieuw wachtwoord:';
$labels['confpasswd']  = 'Bevestig nieuw wachtwoord:';
@@ -29,4 +29,5 @@
$messages['passwordshort'] = 'Het wachtwoord moet minimaal $length tekens lang zijn.';
$messages['passwordweak'] = 'Het wachtwoord moet minimaal één cijfer en één leesteken bevatten.';
$messages['passwordforbidden'] = 'Het wachtwoord bevat tekens die niet toegestaan zijn.';
$messages['firstloginchange'] = 'Dit is uw eerste aanmelding. Verander uw wachtwoord alstublieft.';
?>
plugins/password/localization/nn_NO.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Bytt passord';
$labels['curpasswd']  = 'Noverande passord:';
$labels['newpasswd']  = 'Nytt passord:';
$labels['confpasswd']  = 'Bekreft nytt passord';
plugins/password/localization/pl_PL.inc
@@ -29,4 +29,5 @@
$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.';
$messages['firstloginchange'] = 'To jest twoje pierwsze logowanie. Proszę zmień hasło.';
?>
plugins/password/localization/pt_BR.inc
@@ -15,7 +15,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Alterar senha';
$labels['changepasswd']  = 'Alterar a senha';
$labels['curpasswd']  = 'Senha atual:';
$labels['newpasswd']  = 'Nova senha:';
$labels['confpasswd']  = 'Confirmar nova senha:';
@@ -29,4 +29,5 @@
$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.';
$messages['firstloginchange'] = 'Este é o seu primeiro acesso. Por favor altere sua senha.';
?>
plugins/password/localization/pt_PT.inc
@@ -15,18 +15,19 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Alterar password';
$labels['curpasswd']  = 'Password atual:';
$labels['newpasswd']  = 'Nova password:';
$labels['confpasswd']  = 'Confirmar password:';
$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['changepasswd']  = 'Alterar palavra-passe';
$labels['curpasswd']  = 'Palavra-passe actual:';
$labels['newpasswd']  = 'Nova palavra-passe:';
$labels['confpasswd']  = 'Confirmar palavra-passe:';
$messages['nopassword'] = 'Introduza a nova palavra-passe.';
$messages['nocurpassword'] = 'Introduza a palavra-passe actual.';
$messages['passwordincorrect'] = 'Palavra-passe actual incorrecta.';
$messages['passwordinconsistency'] = 'As palavras-passe não combinam, tente novamente.';
$messages['crypterror'] = 'Não foi possível gravar a nova palavra-passe. Função de criptografia inexistente.';
$messages['connecterror'] = 'Não foi possível gravar a nova palavra-passe. Erro de ligação.';
$messages['internalerror'] = 'Não foi possível gravar a nova palavra-passe.';
$messages['passwordshort'] = 'A palavra-passe deve ter pelo menos $length caracteres';
$messages['passwordweak'] = 'A palavra-passe deve incluir pelo menos um numero e um sinal de pontuação.';
$messages['passwordforbidden'] = 'A palavra-passe contém caracteres não suportados.';
$messages['firstloginchange'] = 'Este é o seu primeiro acesso. Por favor, altere a sua palavra-passe.';
?>
plugins/password/localization/ro_RO.inc
@@ -15,7 +15,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Schimbați parola';
$labels['changepasswd']  = 'Schimbă parola';
$labels['curpasswd']  = 'Parola curentă:';
$labels['newpasswd']  = 'Parola nouă:';
$labels['confpasswd']  = 'Confirmare parola nouă:';
@@ -29,4 +29,5 @@
$messages['passwordshort'] = 'Parola trebuie să aibă minim $length caractere.';
$messages['passwordweak'] = 'Parola trebuie să conțina cel puțin un număr si un semn de punctuație.';
$messages['passwordforbidden'] = 'Parola conține caractere nepermise.';
$messages['firstloginchange'] = 'Aceasta este prima autentificare. Te rugăm să schimbi parola.';
?>
plugins/password/localization/ru_RU.inc
@@ -29,4 +29,5 @@
$messages['passwordshort'] = 'Длина пароля должна быть как минимум $length символов.';
$messages['passwordweak'] = 'Пароль должен включать в себя как минимум одну цифру и один знак пунктуации.';
$messages['passwordforbidden'] = 'Пароль содержит недопустимые символы.';
$messages['firstloginchange'] = 'Вы выполнили вход впервые. Измените ваш пароль.';
?>
plugins/password/localization/sk_SK.inc
@@ -29,4 +29,5 @@
$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.';
$messages['firstloginchange'] = 'Prihlásili ste sa po prvýkrát. Prosím zmeňte si prístupové heslo.';
?>
plugins/password/localization/sl_SI.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Spremeni geslo';
$labels['curpasswd']  = 'Obstoječe geslo:';
$labels['newpasswd']  = 'Novo geslo:';
$labels['confpasswd']  = 'Potrdi novo geslo:';
plugins/password/localization/sr_CS.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Промијени лозинку';
$labels['curpasswd']  = 'Тренутна лозинка:';
$labels['newpasswd']  = 'Нова лозинка:';
$labels['confpasswd']  = 'Поновите лозинку:';
plugins/password/localization/sv_SE.inc
@@ -29,4 +29,5 @@
$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.';
$messages['firstloginchange'] = 'Du loggar in för första gången. Vänligen ändra ditt lösenord.';
?>
plugins/password/localization/ti.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'መሕለፊ ቃል ይለወጥ';
$labels['curpasswd']  = 'ህልው መሕለፊ ቃል:';
$labels['newpasswd']  = 'ሓዱሽ መሕለፊ ቃል:';
$labels['confpasswd']  = 'መረጋገፂ ሓዱሽ መሕለፊ ቃል :';
plugins/password/localization/tr_TR.inc
@@ -15,7 +15,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Parolayı Değiştir';
$labels['changepasswd']  = 'Parolayı değiştir';
$labels['curpasswd']  = 'Şimdiki Parola:';
$labels['newpasswd']  = 'Yeni Parola:';
$labels['confpasswd']  = 'Yeni Parolayı Onaylayın:';
@@ -29,4 +29,5 @@
$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.';
$messages['firstloginchange'] = 'Bu ilk girişiniz. Lütfen parolanızı değiştirin.';
?>
plugins/password/localization/uk_UA.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Змінити пароль';
$labels['curpasswd']  = 'Поточний пароль:';
$labels['newpasswd']  = 'Новий пароль:';
$labels['confpasswd']  = 'Підтвердіть новий пароль:';
plugins/password/localization/vi_VN.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = 'Thay đổ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']  = 'Xác nhận mật khẩu mới';
plugins/password/localization/zh_CN.inc
@@ -15,7 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-password/
*/
$labels['changepasswd']  = '修改密码';
$labels['curpasswd']  = '当前密码:';
$labels['newpasswd']  = '新密码:';
$labels['confpasswd']  = '确认新密码:';
plugins/password/localization/zh_TW.inc
@@ -29,4 +29,5 @@
$messages['passwordshort'] = '您的密碼至少需 $length 個字元長';
$messages['passwordweak'] = '您的新密碼至少需含有一個數字與一個標點符號';
$messages['passwordforbidden'] = '您的密碼含有禁用字元';
$messages['firstloginchange'] = '這是你第一次登入。請更改你的密碼。';
?>
plugins/password/package.xml
@@ -15,9 +15,9 @@
        <email>alec@alec.pl</email>
        <active>yes</active>
    </lead>
    <date>2013-04-28</date>
    <date>2014-06-10</date>
    <version>
        <release>3.4</release>
        <release>3.5</release>
        <api>2.0</api>
    </version>
    <stability>
@@ -25,9 +25,6 @@
        <api>stable</api>
    </stability>
    <license uri="http://www.gnu.org/licenses/gpl.html">GNU GPLv3+</license>
    <notes>
Added password_force_save option
    </notes>
    <contents>
        <dir baseinstalldir="/" name="/">
            <file name="password.php" role="php">
@@ -114,268 +111,4 @@
        </required>
    </dependencies>
    <phprelease/>
    <changelog>
        <release>
            <date>2010-04-29</date>
            <time>12:00:00</time>
            <version>
                <release>1.4</release>
                <api>1.4</api>
            </version>
            <stability>
                <release>stable</release>
                <api>stable</api>
            </stability>
            <license uri="http://www.gnu.org/licenses/gpl-2.0.html">GNU GPLv2</license>
            <notes>
- Use mail_domain value for domain variables when there is no domain in username:
  sql and ldap drivers (#1486694)
- Created package.xml
            </notes>
        </release>
        <release>
            <date>2010-06-20</date>
            <time>12:00:00</time>
            <version>
                <release>1.5</release>
                <api>1.5</api>
            </version>
            <stability>
                <release>stable</release>
                <api>stable</api>
            </stability>
            <license uri="http://www.gnu.org/licenses/gpl-2.0.html">GNU GPLv2</license>
            <notes>
- Removed user_login/username_local/username_domain methods,
  use rcube_user::get_username instead (#1486707)
            </notes>
        </release>
        <release>
            <date>2010-08-01</date>
            <time>09:00:00</time>
            <version>
                <release>1.6</release>
                <api>1.5</api>
            </version>
            <stability>
                <release>stable</release>
                <api>stable</api>
            </stability>
            <license uri="http://www.gnu.org/licenses/gpl-2.0.html">GNU GPLv2</license>
            <notes>
- Added ldap_simple driver
            </notes>
        </release>
        <release>
            <date>2010-09-10</date>
            <time>09:00:00</time>
            <version>
                <release>1.7</release>
                <api>1.5</api>
            </version>
            <stability>
                <release>stable</release>
                <api>stable</api>
            </stability>
            <license uri="http://www.gnu.org/licenses/gpl-2.0.html">GNU GPLv2</license>
            <notes>
- Added XMail driver
- Improve security of chpasswd driver using popen instead of exec+echo (#1486987)
- Added chpass-wrapper.py script to improve security (#1486987)
            </notes>
        </release>
        <release>
            <date>2010-09-29</date>
            <time>19:00:00</time>
            <version>
                <release>1.8</release>
                <api>1.6</api>
            </version>
            <stability>
                <release>stable</release>
                <api>stable</api>
            </stability>
            <license uri="http://www.gnu.org/licenses/gpl-2.0.html">GNU GPLv2</license>
            <notes>
- Added possibility to display extended error messages (#1486704)
- Added extended error messages in Poppassd driver (#1486704)
            </notes>
        </release>
        <release>
            <version>
                <release>1.9</release>
                <api>1.6</api>
            </version>
            <stability>
                <release>stable</release>
                <api>stable</api>
            </stability>
            <license uri="http://www.gnu.org/licenses/gpl-2.0.html">GNU GPLv2</license>
            <notes>
- Added password_ldap_lchattr option (#1486927)
            </notes>
        </release>
        <release>
            <date>2010-10-07</date>
            <time>09:00:00</time>
            <version>
                <release>2.0</release>
                <api>1.6</api>
            </version>
            <stability>
                <release>stable</release>
                <api>stable</api>
            </stability>
            <license uri="http://www.gnu.org/licenses/gpl-2.0.html">GNU GPLv2</license>
            <notes>
- Fixed SQL Injection in SQL driver when using %p or %o variables in query (#1487034)
            </notes>
        </release>
        <release>
            <date>2010-11-02</date>
            <time>09:00:00</time>
            <version>
                <release>2.1</release>
                <api>1.6</api>
            </version>
            <stability>
                <release>stable</release>
                <api>stable</api>
            </stability>
            <license uri="http://www.gnu.org/licenses/gpl-2.0.html">GNU GPLv2</license>
            <notes>
- hMail driver: Add possibility to connect to remote host
            </notes>
        </release>
        <release>
            <date>2011-02-15</date>
            <time>12:00</time>
            <version>
                <release>2.2</release>
                <api>1.6</api>
            </version>
            <stability>
                <release>stable</release>
                <api>stable</api>
            </stability>
            <license uri="http://www.gnu.org/licenses/gpl-2.0.html">GNU GPLv2</license>
            <notes>
- hMail driver: add username_domain detection (#1487100)
- hMail driver: HTML tags in logged messages should be stripped off (#1487099)
- Chpasswd driver: add newline at end of input to chpasswd binary (#1487141)
- Fix usage of configured temp_dir instead of /tmp (#1487447)
- ldap_simple driver: fix parse error
- ldap/ldap_simple drivers: support %dc variable in config
- ldap/ldap_simple drivers: support Samba password change
- Fix extended error messages handling (#1487676)
- Fix double request when clicking on Password tab in Firefox
- Fix deprecated split() usage in xmail and directadmin drivers (#1487769)
- Added option (password_log) for logging password changes
- Virtualmin driver: Add option for setting username format (#1487781)
            </notes>
        </release>
        <release>
            <date>2011-10-26</date>
            <time>12:00</time>
            <version>
                <release>2.3</release>
                <api>1.6</api>
            </version>
            <stability>
                <release>stable</release>
                <api>stable</api>
            </stability>
            <license uri="http://www.gnu.org/licenses/gpl-2.0.html">GNU GPLv2</license>
            <notes>
- When old and new passwords are the same, do nothing, return success (#1487823)
- Fixed Samba password hashing in 'ldap' driver
- Added 'password_change' hook for plugin actions after successful password change
- Fixed bug where 'doveadm pw' command was used as dovecotpw utility
- Improve generated crypt() passwords (#1488136)
            </notes>
        </release>
        <release>
            <date>2011-11-23</date>
            <version>
                <release>2.4</release>
                <api>1.6</api>
            </version>
            <stability>
                <release>stable</release>
                <api>stable</api>
            </stability>
            <license uri="http://www.gnu.org/licenses/gpl-2.0.html">GNU GPLv2</license>
            <notes>
- Added option to use punycode or unicode for domain names (#1488103)
- Save Samba password hashes in capital letters (#1488197)
            </notes>
        </release>
        <release>
            <date>2011-11-23</date>
            <version>
                <release>3.0</release>
                <api>2.0</api>
            </version>
            <stability>
                <release>stable</release>
                <api>stable</api>
            </stability>
            <license uri="http://www.gnu.org/licenses/gpl-2.0.html">GNU GPLv2</license>
            <notes>
- Fixed drivers namespace issues
            </notes>
        </release>
        <release>
            <date>2012-03-07</date>
            <version>
                <release>3.1</release>
                <api>2.0</api>
            </version>
            <stability>
                <release>stable</release>
                <api>stable</api>
            </stability>
            <license uri="http://www.gnu.org/licenses/gpl-2.0.html">GNU GPLv2</license>
            <notes>
- Added pw_usermod driver (#1487826)
- Added option password_login_exceptions (#1487826)
- Added domainfactory driver (#1487882)
- Added DBMail driver (#1488281)
- Helper files moved to helpers/ directory from drivers/
- Added Expect driver (#1488363)
- Added Samba password (#1488364)
            </notes>
        </release>
        <release>
            <date>2012-11-15</date>
            <version>
                <release>3.2</release>
                <api>2.0</api>
            </version>
            <stability>
                <release>stable</release>
                <api>stable</api>
            </stability>
            <license uri="http://www.gnu.org/licenses/gpl-2.0.html">GNU GPLv2</license>
            <notes>
- Fix wrong (non-specific) error message on crypt or connection error (#1488808)
- Added option to define IMAP hosts that support password changes - password_hosts
            </notes>
        </release>
        <release>
            <date>2013-03-30</date>
            <version>
                <release>3.3</release>
                <api>2.0</api>
            </version>
            <stability>
                <release>stable</release>
                <api>stable</api>
            </stability>
            <license uri="http://www.gnu.org/licenses/gpl-2.0.html">GNU GPLv2</license>
            <notes>
Added new cPanel driver - fixes localization related issues (#1487015)
            </notes>
        </release>
    </changelog>
</package>
plugins/password/password.js
@@ -15,30 +15,33 @@
 * for the JavaScript code in this file.
 */
if (window.rcmail) {
  rcmail.addEventListener('init', function(evt) {
window.rcmail && rcmail.addEventListener('init', function(evt) {
    // register command handler
    rcmail.register_command('plugin.password-save', function() {
      var input_curpasswd = rcube_find_object('_curpasswd'),
        input_newpasswd = rcube_find_object('_newpasswd'),
        input_confpasswd = rcube_find_object('_confpasswd');
    rcmail.register_command('plugin.password-save', function() {
        var input_curpasswd = rcube_find_object('_curpasswd'),
            input_newpasswd = rcube_find_object('_newpasswd'),
            input_confpasswd = rcube_find_object('_confpasswd');
      if (input_curpasswd && input_curpasswd.value == '') {
          alert(rcmail.gettext('nocurpassword', 'password'));
          input_curpasswd.focus();
      } else if (input_newpasswd && input_newpasswd.value == '') {
      }
      else if (input_newpasswd && input_newpasswd.value == '') {
          alert(rcmail.gettext('nopassword', 'password'));
          input_newpasswd.focus();
      } else if (input_confpasswd && input_confpasswd.value == '') {
      }
      else if (input_confpasswd && input_confpasswd.value == '') {
          alert(rcmail.gettext('nopassword', 'password'));
          input_confpasswd.focus();
      } else if (input_newpasswd && input_confpasswd && input_newpasswd.value != input_confpasswd.value) {
      }
      else if (input_newpasswd && input_confpasswd && input_newpasswd.value != input_confpasswd.value) {
          alert(rcmail.gettext('passwordinconsistency', 'password'));
          input_newpasswd.focus();
      } else {
      }
      else {
          rcmail.gui_objects.passform.submit();
      }
    }, true);
  })
}
    $('input:not(:hidden):first').focus();
});
plugins/password/password.php
@@ -40,9 +40,11 @@
 */
class password extends rcube_plugin
{
    public $task    = 'settings';
    public $task    = 'settings|login';
    public $noframe = true;
    public $noajax  = true;
    private $newuser = false;
    function init()
    {
@@ -50,64 +52,66 @@
        $this->load_config();
        // Host exceptions
        $hosts = $rcmail->config->get('password_hosts');
        if (!empty($hosts) && !in_array($_SESSION['storage_host'], $hosts)) {
            return;
        }
        if ($rcmail->task == 'settings') {
            if (!$this->check_host_login_exceptions()) {
                return;
            }
        // Login exceptions
        if ($exceptions = $rcmail->config->get('password_login_exceptions')) {
            $exceptions = array_map('trim', (array) $exceptions);
            $exceptions = array_filter($exceptions);
            $username   = $_SESSION['username'];
            $this->add_texts('localization/');
            foreach ($exceptions as $ec) {
                if ($username === $ec) {
                    return;
                }
            $this->add_hook('settings_actions', array($this, 'settings_actions'));
            $this->register_action('plugin.password', array($this, 'password_init'));
            $this->register_action('plugin.password-save', array($this, 'password_save'));
            if (strpos($rcmail->action, 'plugin.password') === 0) {
                $this->include_script('password.js');
            }
        }
        $this->add_hook('settings_actions', array($this, 'settings_actions'));
        $this->register_action('plugin.password', array($this, 'password_init'));
        $this->register_action('plugin.password-save', array($this, 'password_save'));
        if (strpos($rcmail->action, 'plugin.password') === 0) {
            $this->include_script('password.js');
        else if ($rcmail->config->get('password_force_new_user')) {
            $this->add_hook('user_create', array($this, 'user_create'));
            $this->add_hook('login_after', array($this, 'login_after'));
        }
    }
    function settings_actions($args)
    {
        // register as settings action
        $args['actions'][] = array('action' => 'plugin.password', 'class' => 'password', 'label' => 'password', 'domain' => 'password');
        $args['actions'][] = array(
            'action' => 'plugin.password',
            'class'  => 'password',
            'label'  => 'password',
            'title'  => 'changepasswd',
            'domain' => 'password',
        );
        return $args;
    }
    function password_init()
    {
        $this->add_texts('localization/');
        $this->register_handler('plugin.body', array($this, 'password_form'));
        $rcmail = rcmail::get_instance();
        $rcmail->output->set_pagetitle($this->gettext('changepasswd'));
        if (rcube_utils::get_input_value('_first', rcube_utils::INPUT_GET)) {
            $rcmail->output->command('display_message', $this->gettext('firstloginchange'), 'notice');
        }
        $rcmail->output->send('plugin');
    }
    function password_save()
    {
        $rcmail = rcmail::get_instance();
        $this->add_texts('localization/');
        $this->register_handler('plugin.body', array($this, 'password_form'));
        $rcmail = rcmail::get_instance();
        $rcmail->output->set_pagetitle($this->gettext('changepasswd'));
        $confirm = $rcmail->config->get('password_confirm_current');
        $required_length = intval($rcmail->config->get('password_minimum_length'));
        $check_strength = $rcmail->config->get('password_require_nonalpha');
        $check_strength  = $rcmail->config->get('password_require_nonalpha');
        if (($confirm && !isset($_POST['_curpasswd'])) || !isset($_POST['_newpasswd'])) {
            $rcmail->output->command('display_message', $this->gettext('nopassword'), 'error');
@@ -222,22 +226,41 @@
        $table->add('title', html::label($field_id, rcube::Q($this->gettext('confpasswd'))));
        $table->add(null, $input_confpasswd->show());
        $rules = '';
        $required_length = intval($rcmail->config->get('password_minimum_length'));
        if ($required_length > 0) {
            $rules .= html::tag('li', array('id' => 'required-length'), $this->gettext(array(
                'name' => 'passwordshort',
                'vars' => array('length' => $required_length)
            )));
        }
        if ($rcmail->config->get('password_require_nonalpha')) {
            $rules .= html::tag('li', array('id' => 'require-nonalpha'), $this->gettext('passwordweak'));
        }
        if (!empty($rules)) {
            $rules = html::tag('ul', array('id' => 'ruleslist'), $rules);
        }
        $out = html::div(array('class' => 'box'),
            html::div(array('id' => 'prefs-title', 'class' => 'boxtitle'), $this->gettext('changepasswd')) .
            html::div(array('class' => 'boxcontent'), $table->show() .
            $rules .
            html::p(null,
                $rcmail->output->button(array(
                    'command' => 'plugin.password-save',
                    'type' => 'input',
                    'class' => 'button mainaction',
                    'label' => 'save'
                    'type'    => 'input',
                    'class'   => 'button mainaction',
                    'label'   => 'save'
            )))));
        $rcmail->output->add_gui_object('passform', 'password-form');
        return $rcmail->output->form_tag(array(
            'id' => 'password-form',
            'name' => 'password-form',
            'id'     => 'password-form',
            'name'   => 'password-form',
            'method' => 'post',
            'action' => './?_task=settings&_action=plugin.password-save',
        ), $out);
@@ -300,4 +323,48 @@
        return $reason;
    }
    function user_create($args)
    {
        $this->newuser = true;
        return $args;
    }
    function login_after($args)
    {
        if ($this->newuser && $this->check_host_login_exceptions()) {
            $args['_task']   = 'settings';
            $args['_action'] = 'plugin.password';
            $args['_first']  = 'true';
        }
        return $args;
    }
    // Check if host and login is allowed to change the password, false = not allowed, true = not allowed
    private function check_host_login_exceptions()
    {
        $rcmail = rcmail::get_instance();
        // Host exceptions
        $hosts = $rcmail->config->get('password_hosts');
        if (!empty($hosts) && !in_array($_SESSION['storage_host'], $hosts)) {
            return false;
        }
        // Login exceptions
        if ($exceptions = $rcmail->config->get('password_login_exceptions')) {
            $exceptions = array_map('trim', (array) $exceptions);
            $exceptions = array_filter($exceptions);
            $username   = $_SESSION['username'];
            foreach ($exceptions as $ec) {
                if ($username === $ec) {
                    return false;
                }
            }
        }
        return true;
    }
}
plugins/subscriptions_option/localization/ar_SA.inc
New file
@@ -0,0 +1,19 @@
<?php
/*
 +-----------------------------------------------------------------------+
 | plugins/subscriptions_option/localization/<lang>.inc                  |
 |                                                                       |
 | Localization file of the Roundcube Webmail Subscriptions plugin       |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
 | See the README file for a full license statement.                     |
 |                                                                       |
 +-----------------------------------------------------------------------+
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-subscriptions_option/
*/
$labels['useimapsubscriptions']  = 'استخدم اشتراكات IMAP';
?>
plugins/subscriptions_option/localization/ast.inc
New file
@@ -0,0 +1,19 @@
<?php
/*
 +-----------------------------------------------------------------------+
 | plugins/subscriptions_option/localization/<lang>.inc                  |
 |                                                                       |
 | Localization file of the Roundcube Webmail Subscriptions plugin       |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
 | See the README file for a full license statement.                     |
 |                                                                       |
 +-----------------------------------------------------------------------+
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-subscriptions_option/
*/
$labels['useimapsubscriptions']  = 'Usar soscripciones IMAP';
?>
plugins/subscriptions_option/localization/ml_IN.inc
New file
@@ -0,0 +1,19 @@
<?php
/*
 +-----------------------------------------------------------------------+
 | plugins/subscriptions_option/localization/<lang>.inc                  |
 |                                                                       |
 | Localization file of the Roundcube Webmail Subscriptions plugin       |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
 | See the README file for a full license statement.                     |
 |                                                                       |
 +-----------------------------------------------------------------------+
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-subscriptions_option/
*/
$labels['useimapsubscriptions']  = 'IMAP വരിസംഖ്യകൾ ഉപയോഗിക്കുക';
?>
plugins/subscriptions_option/subscriptions_option.php
@@ -86,7 +86,9 @@
    {
        $rcmail = rcmail::get_instance();
        if (!$rcmail->config->get('use_subscriptions', true)) {
            $args['table']->remove_column('subscribed');
            foreach ($args['list'] as $idx => $data) {
                $args['list'][$idx]['content'] = preg_replace('/<input [^>]+>/', '', $data['content']);
            }
        }
        return $args;
    }
plugins/userinfo/localization/ast.inc
@@ -17,6 +17,6 @@
*/
$labels['userinfo'] = 'Información d\'usuariu';
$labels['created'] = 'Creáu';
$labels['lastlogin'] = 'Cabera conexón';
$labels['defaultidentity'] = 'Identidá predeterminada';
$labels['lastlogin'] = 'Aniciu de sesión caberu';
$labels['defaultidentity'] = 'Identidá por defeutu';
?>
plugins/userinfo/localization/ko_KR.inc
@@ -16,7 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-userinfo/
*/
$labels['userinfo'] = '사용자 정보';
$labels['created'] = '생성됨';
$labels['created'] = '생성함';
$labels['lastlogin'] = '마지막 로그인';
$labels['defaultidentity'] = '기본 신분증';
$labels['defaultidentity'] = '기본 신원';
?>
plugins/vcard_attachments/localization/ast.inc
New file
@@ -0,0 +1,20 @@
<?php
/*
 +-----------------------------------------------------------------------+
 | plugins/vcard_attachments/localization/<lang>.inc                     |
 |                                                                       |
 | Localization file of the Roundcube Webmail Vcard Attachments plugin   |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
 | See the README file for a full license statement.                     |
 |                                                                       |
 +-----------------------------------------------------------------------+
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-vcard_attachments/
*/
$labels['addvcardmsg'] = 'Amestar vCard a la llibreta de direiciones';
$labels['vcardsavefailed'] = 'Nun pue guardase la vCard';
?>
plugins/vcard_attachments/localization/ko_KR.inc
@@ -15,6 +15,6 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-vcard_attachments/
*/
$labels['addvcardmsg'] = '주소록에 vCard를 추가';
$labels['vcardsavefailed'] = 'vCard 저장이 불가능함';
$labels['addvcardmsg'] = '주소록에 vCard 추가';
$labels['vcardsavefailed'] = 'vCard를 저장할 수 없음';
?>
plugins/vcard_attachments/skins/larry/style.css
@@ -4,14 +4,9 @@
    width: auto;
    background: #f9f9f9;
    border: 1px solid #d3d3d3;
    border-radius:4px;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    box-shadow: 0 0 2px #ccc;
    -o-box-shadow: 0 0 2px #ccc;
    -webkit-box-shadow: 0 0 2px #ccc;
    -moz-box-shadow: 0 0 2px #ccc;
}
p.vcardattachment a {
plugins/zipdownload/localization/ar.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,3 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'تنزيل كل المرفقات';
$labels['downloadfolder'] = 'تنزيل المجلد';
?>
plugins/zipdownload/localization/ar_SA.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,3 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'تحميل جميع المرفقات';
$labels['downloadfolder'] = 'تحميل المجلد';
?>
plugins/zipdownload/localization/ast.inc
New file
@@ -0,0 +1,22 @@
<?php
/*
 +-----------------------------------------------------------------------+
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
 | See the README file for a full license statement.                     |
 |                                                                       |
 +-----------------------------------------------------------------------+
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Descargar tolos axuntos';
$labels['download'] = 'Descargar...';
$labels['downloadmbox'] = 'Formatu Mbox (.zip)';
$labels['downloadmaildir'] = 'Formatu Maildir (.zip)';
$labels['downloademl'] = 'Fonte (.eml)';
plugins/zipdownload/localization/az_AZ.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,3 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Bütün qoşmaları endir';
$labels['downloadfolder'] = 'Qovluğu endir';
?>
plugins/zipdownload/localization/be_BE.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Спампаваць усе далучэнні';
$labels['downloadfolder'] = 'Спампаваць папку';
?>
$labels['download'] = 'Сцягнуць...';
$labels['downloadmbox'] = 'Фармат mbox (.zip)';
$labels['downloadmaildir'] = 'Фармат maildir (.zip)';
$labels['downloademl'] = 'Выточны файл (.eml)';
plugins/zipdownload/localization/bg_BG.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Изтегляне на всички прикачени файлове';
$labels['downloadfolder'] = 'Изтегляне на папка';
?>
$labels['download'] = 'Изтегляне...';
$labels['downloadmbox'] = 'Mbox формат (.zip)';
$labels['downloadmaildir'] = 'Maildir формат (.zip)';
$labels['downloademl'] = 'Outlook формат (.eml)';
plugins/zipdownload/localization/br.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,3 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Pellgargañ an holl stagadennoù';
$labels['downloadfolder'] = 'Pellgargañ an teuliad';
?>
plugins/zipdownload/localization/bs_BA.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Preuzmi sve priloge';
$labels['downloadfolder'] = 'Preuzmi folder';
?>
$labels['download'] = 'Preuzmi...';
$labels['downloadmbox'] = 'Mbox format (.zip)';
$labels['downloadmaildir'] = 'Maildir format (.zip)';
$labels['downloademl'] = 'Izvorno (.eml)';
plugins/zipdownload/localization/ca_ES.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Descarrega tots els adjunts';
$labels['downloadfolder'] = 'Descarrega la carpeta';
?>
$labels['download'] = 'Descarrega...';
$labels['downloadmbox'] = 'Format mbox (.zip)';
$labels['downloadmaildir'] = 'Format maildir (.zip)';
$labels['downloademl'] = 'Codi font (.eml)';
plugins/zipdownload/localization/cs_CZ.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Stáhnout všechny přílohy';
$labels['downloadfolder'] = 'Stáhnout složku';
?>
$labels['download'] = 'Stáhnout...';
$labels['downloadmbox'] = 'Formát mbox (.zip)';
$labels['downloadmaildir'] = 'Formát maildir (.zip)';
$labels['downloademl'] = 'Zdroj (.eml)';
plugins/zipdownload/localization/cy_GB.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Llwytho lawr holl atodiadau';
$labels['downloadfolder'] = 'Ffolder llwytho lawr';
?>
$labels['download'] = 'Llwytho lawr...';
$labels['downloadmbox'] = 'Fformat mbox (.zip)';
$labels['downloadmaildir'] = 'Fformat maildir (.zip)';
$labels['downloademl'] = 'Ffynhonnell (.eml)';
plugins/zipdownload/localization/da_DK.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Download alle som .zip-fil';
$labels['downloadfolder'] = 'Download folder som .zip-fil';
?>
$labels['download'] = 'Download...';
$labels['downloadmbox'] = 'Mbox format (.zip)';
$labels['downloadmaildir'] = 'Maildir format (.zip)';
$labels['downloademl'] = 'Kilde (.eml)';
plugins/zipdownload/localization/de_CH.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Alle Anhänge herunterladen';
$labels['downloadfolder'] = 'Ordner herunterladen';
?>
$labels['download'] = 'Download...';
$labels['downloadmbox'] = 'Mbox Format (.zip)';
$labels['downloadmaildir'] = 'Maildir Format (.zip)';
$labels['downloademl'] = 'Source (.eml)';
plugins/zipdownload/localization/de_DE.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Alle Anhänge herunterladen';
$labels['downloadfolder'] = 'Ordner herunterladen';
?>
$labels['download'] = 'Herunterladen...';
$labels['downloadmbox'] = 'Mbox-Format (.zip)';
$labels['downloadmaildir'] = 'Maildir-Format (.zip)';
$labels['downloademl'] = 'Quelltext (.eml)';
plugins/zipdownload/localization/en_CA.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Download all attachments';
$labels['downloadfolder'] = 'Download folder';
?>
$labels['download'] = 'Download...';
$labels['downloadmbox'] = 'Mbox format (.zip)';
$labels['downloadmaildir'] = 'Maildir format (.zip)';
$labels['downloademl'] = 'Source (.eml)';
plugins/zipdownload/localization/en_GB.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Download all attachments';
$labels['downloadfolder'] = 'Download folder';
?>
$labels['download'] = 'Download...';
$labels['downloadmbox'] = 'Mbox format (.zip)';
$labels['downloadmaildir'] = 'Maildir format (.zip)';
$labels['downloademl'] = 'Source (.eml)';
plugins/zipdownload/localization/eo.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,3 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Elŝuti ĉiujn kunsendaĵojn';
$labels['downloadfolder'] = 'Elŝuti dosierujon';
?>
plugins/zipdownload/localization/es_419.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Descargar todos los archivos adjuntos';
$labels['downloadfolder'] = 'Descargar carpeta';
?>
$labels['download'] = 'Descargando...';
$labels['downloadmbox'] = 'Formato mbox (.zip)';
$labels['downloadmaildir'] = 'Formato maildir (.zip)';
$labels['downloademl'] = 'Fuente (.eml)';
plugins/zipdownload/localization/es_AR.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Descargar Todo';
$labels['downloadfolder'] = 'Descargar carpeta';
?>
$labels['download'] = 'Descargar...';
$labels['downloadmbox'] = 'Formato Mbox (.zip)';
$labels['downloadmaildir'] = 'Formato Maildir (.zip)';
$labels['downloademl'] = 'Original (.eml)';
plugins/zipdownload/localization/es_ES.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Descargar todos los adjuntos';
$labels['downloadfolder'] = 'Descargar carpeta';
?>
$labels['download'] = 'Descargar...';
$labels['downloadmbox'] = 'Formato mbox (.zip)';
$labels['downloadmaildir'] = 'Formato maildir (.zip)';
$labels['downloademl'] = 'Fuente (.eml)';
plugins/zipdownload/localization/et_EE.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,3 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Laadi alla kõik manused';
$labels['downloadfolder'] = 'Allalaadimiste kaust';
?>
plugins/zipdownload/localization/eu_ES.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Deskargatu eranskin guztiak';
$labels['downloadfolder'] = 'Deskargatu karpeta';
?>
$labels['download'] = 'Deskargatu...';
$labels['downloadmbox'] = 'Mbox formatua (.zip)';
$labels['downloadmaildir'] = 'Maildir formatua (.zip)';
$labels['downloademl'] = 'Iturburua (.eml)';
plugins/zipdownload/localization/fa_AF.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,3 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'بارگزاری همه ضمیمه ها';
$labels['downloadfolder'] = 'بارگزاری  پوشه';
?>
plugins/zipdownload/localization/fa_IR.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,3 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'بارگیری همه پیوست‌ها';
$labels['downloadfolder'] = 'بارگیری پوشه';
?>
plugins/zipdownload/localization/fi_FI.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Lataa kaikki liitteet';
$labels['downloadfolder'] = 'Lataa kansio';
?>
$labels['download'] = 'Lataa...';
$labels['downloadmbox'] = 'Mbox-muoto (.zip)';
$labels['downloadmaildir'] = 'Maildir-muoto (.zip)';
$labels['downloademl'] = 'Lähde (.eml)';
plugins/zipdownload/localization/gl_ES.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Descargar todos os adxuntos';
$labels['downloadfolder'] = 'Descargar o cartafol';
?>
$labels['download'] = 'Descargar';
$labels['downloadmbox'] = 'En formato mbox (.zip)';
$labels['downloadmaildir'] = 'En formato maildir (.zip)';
$labels['downloademl'] = 'Código fonte (.eml)';
plugins/zipdownload/localization/he_IL.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'להוריד את כל הצרופות';
$labels['downloadfolder'] = 'תיקיית צרופות';
?>
$labels['download'] = 'מוריד כעת...';
$labels['downloadmbox'] = 'פורמט Mbox  &rlm;(zip.)';
$labels['downloadmaildir'] = 'פורמט Maildir  &rlm;(zip.)';
$labels['downloademl'] = 'מקור (eml.)';
plugins/zipdownload/localization/hu_HU.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Összes csatolmány letöltése';
$labels['downloadfolder'] = 'Könyvtár letöltése';
?>
$labels['download'] = 'Letöltés...';
$labels['downloadmbox'] = 'Mbox formátum (.zip)';
$labels['downloadmaildir'] = 'Maildir formátum (.zip)';
$labels['downloademl'] = 'Forrás (.eml)';
plugins/zipdownload/localization/id_ID.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,3 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Unduh semua lampiran';
$labels['downloadfolder'] = 'Folder download';
?>
plugins/zipdownload/localization/it_IT.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Scarica tutti gli allegati';
$labels['downloadfolder'] = 'Scarica cartella';
?>
$labels['download'] = 'Scaricare...';
$labels['downloadmbox'] = 'Formato mbox (.zip)';
$labels['downloadmaildir'] = 'Formato maildir (.zip)';
$labels['downloademl'] = 'Sorgente (.eml)';
plugins/zipdownload/localization/ja_JP.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'すべての添付ファイルをダウンロード';
$labels['downloadfolder'] = 'ダウンロード先のフォルダー';
?>
$labels['download'] = 'ダウンロード...';
$labels['downloadmbox'] = 'mbox形式(.zip)';
$labels['downloadmaildir'] = 'Maildir形式(.zip)';
$labels['downloademl'] = 'ソース(.eml)';
plugins/zipdownload/localization/ko_KR.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = '모든 첨부파일을 다운로드';
$labels['downloadfolder'] = '다운로드 폴더';
?>
$labels['download'] = '다운로드...';
$labels['downloadmbox'] = 'Mbox 형식(.zip)';
$labels['downloadmaildir'] = 'Maildir 형식(.zip)';
$labels['downloademl'] = '소스(.eml)';
plugins/zipdownload/localization/lb_LU.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'All d\'Unhäng eroflueden';
$labels['downloadfolder'] = 'Dossier eroflueden';
?>
$labels['download'] = 'Eroflueden...';
$labels['downloadmbox'] = 'Mbox-Format (.zip)';
$labels['downloadmaildir'] = 'Maildir-Format (.zip)';
$labels['downloademl'] = 'Source (.eml)';
plugins/zipdownload/localization/lt_LT.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Atsisiųsti visus priedus';
$labels['downloadfolder'] = 'Atsisiųsti aplanką';
?>
$labels['download'] = 'Parsisiųsti...';
$labels['downloadmbox'] = 'Mbox formatas (.zip)';
$labels['downloadmaildir'] = 'Maildir formatas (.zip)';
$labels['downloademl'] = 'Kodas (.eml)';
plugins/zipdownload/localization/lv_LV.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,3 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Lejupielādēt visus pielikumus';
$labels['downloadfolder'] = 'Lejupielādēt mapi';
?>
plugins/zipdownload/localization/ml_IN.inc
New file
@@ -0,0 +1,22 @@
<?php
/*
 +-----------------------------------------------------------------------+
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
 | See the README file for a full license statement.                     |
 |                                                                       |
 +-----------------------------------------------------------------------+
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'എല്ലാ അറ്റാച്ച്മെന്റുകളും ഡൗൺലോഡ് ചെയ്യുക';
$labels['download'] = 'ഡൗൺലോഡ്...';
$labels['downloadmbox'] = 'എംബോക്സ് രീതി (.zip)';
$labels['downloadmaildir'] = 'മെയിൽഡിർ രീതി (.zip)';
$labels['downloademl'] = 'സ്രോതസ്സ് (.eml)';
plugins/zipdownload/localization/nb_NO.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Last ned alle vedlegg';
$labels['downloadfolder'] = 'Nedlastningsmappe';
?>
$labels['download'] = 'Nedlaste...';
$labels['downloadmbox'] = 'Mbox format (.zip)';
$labels['downloadmaildir'] = 'Maildir format (.zip)';
$labels['downloademl'] = 'Kildekode (.eml)';
plugins/zipdownload/localization/nl_NL.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Alle bijlagen downloaden';
$labels['downloadfolder'] = 'Map downloaden';
?>
$labels['download'] = 'Download...';
$labels['downloadmbox'] = 'Mbox-formaat (.zip)';
$labels['downloadmaildir'] = 'Maildir-formaat (.zip)';
$labels['downloademl'] = 'Bron (.eml)';
plugins/zipdownload/localization/nn_NO.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,3 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Last ned alle vedlegg';
$labels['downloadfolder'] = 'Nedlastningsmappe';
?>
plugins/zipdownload/localization/pl_PL.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Pobierz wszystkie jako ZIP';
$labels['downloadfolder'] = 'Pobierz folder';
?>
$labels['download'] = 'Pobierz...';
$labels['downloadmbox'] = 'Format mbox (.zip)';
$labels['downloadmaildir'] = 'Format maildir (.zip)';
$labels['downloademl'] = 'Źródło wiadomości (.eml)';
plugins/zipdownload/localization/pt_BR.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Baixar todos os anexos';
$labels['downloadfolder'] = 'Pasta de baixar arquivos';
?>
$labels['download'] = 'Baixar...';
$labels['downloadmbox'] = 'Formato mbox (.zip)';
$labels['downloadmaildir'] = 'Formato maildir (.zip)';
$labels['downloademl'] = 'Original (.eml)';
plugins/zipdownload/localization/pt_PT.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Guardar todos os anexos';
$labels['downloadfolder'] = 'Guardar pasta';
?>
$labels['download'] = 'Descarregar...';
$labels['downloadmbox'] = 'Formato Mbox (.zip)';
$labels['downloadmaildir'] = 'Formato Maildir (.zip)';
$labels['downloademl'] = 'Original (.eml)';
plugins/zipdownload/localization/ro_RO.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,3 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Descarcă toate atașamentele';
$labels['downloadfolder'] = 'Descarcă dosar';
?>
plugins/zipdownload/localization/ru_RU.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Загрузить все вложения';
$labels['downloadfolder'] = 'Загрузить папку';
?>
$labels['download'] = 'Загрузка...';
$labels['downloadmbox'] = 'Формат Mbox (.zip)';
$labels['downloadmaildir'] = 'Формат Maildir (.zip)';
$labels['downloademl'] = 'Исходный формат (.eml)';
plugins/zipdownload/localization/sk_SK.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Stiahnuť všetky prílohy';
$labels['downloadfolder'] = 'Priečinok pre stiahnuté súbory';
?>
$labels['download'] = 'Stiahnuť...';
$labels['downloadmbox'] = 'Formát Mbox (.zip)';
$labels['downloadmaildir'] = 'Formát Maildir (.zip)';
$labels['downloademl'] = 'Zdroj (.eml)';
plugins/zipdownload/localization/sl_SI.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,3 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Prenesi vse priponke';
$labels['downloadfolder'] = 'Prenesi mapo';
?>
plugins/zipdownload/localization/sr_CS.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,3 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Преузми све прилоге';
$labels['downloadfolder'] = 'Фасцикла за преузимање';
?>
plugins/zipdownload/localization/sv_SE.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -15,6 +15,8 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Hämta alla bifogade filer';
$labels['downloadfolder'] = 'Hämta katalog';
?>
$labels['downloadall'] = 'Ladda ner alla bifogade filer';
$labels['download'] = 'Hämta...';
$labels['downloadmbox'] = 'Format Mbox (.zip)';
$labels['downloadmaildir'] = 'Format Maildir (.zip)';
$labels['downloademl'] = 'Källkod (.eml)';
plugins/zipdownload/localization/tr_TR.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Tüm ek dosyaları indir';
$labels['downloadfolder'] = 'klasörü indir';
?>
$labels['download'] = 'İndir...';
$labels['downloadmbox'] = 'Mbox biçimi(.zip)';
$labels['downloadmaildir'] = 'Maildir biçimi (.zip)';
$labels['downloademl'] = 'Kaynak (.eml)';
plugins/zipdownload/localization/uk_UA.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,3 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = 'Завантажити всі вкладення';
$labels['downloadfolder'] = 'Завантажити теку';
?>
plugins/zipdownload/localization/zh_CN.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,3 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = '下载全部附件';
$labels['downloadfolder'] = '下载文件夹';
?>
plugins/zipdownload/localization/zh_TW.inc
@@ -5,7 +5,7 @@
 | plugins/zipdownload/localization/<lang>.inc                           |
 |                                                                       |
 | Localization file of the Roundcube Webmail Zipdownload plugin         |
 | Copyright (C) 2012-2013, The Roundcube Dev Team                       |
 | Copyright (C) 2012-2014, The Roundcube Dev Team                       |
 |                                                                       |
 | Licensed under the GNU General Public License version 3 or            |
 | any later version with exceptions for skins & plugins.                |
@@ -16,5 +16,7 @@
 For translation see https://www.transifex.com/projects/p/roundcube-webmail/resource/plugin-zipdownload/
*/
$labels['downloadall'] = '下載所有附件';
$labels['downloadfolder'] = '下載資料夾';
?>
$labels['download'] = '下載...';
$labels['downloadmbox'] = 'Mbox 格式 (.zip)';
$labels['downloadmaildir'] = 'Maildir 格式 (.zip)';
$labels['downloademl'] = '原始格式 (.eml)';
plugins/zipdownload/zipdownload.js
@@ -43,21 +43,10 @@
            link.html('').append(span);
        }
        span.addClass('folder-selector-link').text(rcmail.gettext('zipdownload.download'));
        span.text(rcmail.gettext('zipdownload.download'));
        rcmail.env.download_link = link;
    });
    // hide menu on click out of menu element
    var fn = function(e) {
        var menu = $('#zipdownload-menu');
        if (e.target != menu.get(0))
            menu.hide();
    };
    $(document.body).on('mouseup', fn);
    $('iframe').contents().on('mouseup', fn)
        .load(function(e) { try { $(this).contents().on('mouseup', fn); } catch(e) {}; });
});
  });
function rcmail_zipdownload(mode)
@@ -100,14 +89,10 @@
}
// display download options menu
function rcmail_zipdownload_menu()
function rcmail_zipdownload_menu(e)
{
    // fix menu style and display menu
    var z_index = rcmail.env.download_link.parents('.popupmenu').css('z-index'),
        menu = $('#zipdownload-menu').css({'max-height': 'none', 'z-index': z_index + 1}).show();
    // position menu on the screen
    rcmail.element_position(menu, rcmail.env.download_link);
    // show (sub)menu for download selection
    rcmail.command('menu-open', 'zipdownload-menu', e && e.target ? e.target : rcmail.env.download_link, e);
    // abort default download action
    return false;
plugins/zipdownload/zipdownload.php
@@ -96,7 +96,10 @@
        $rcmail  = rcmail::get_instance();
        $menu    = array();
        $ul_attr = $rcmail->config->get('skin') == 'classic' ? null : array('class' => 'toolbarmenu');
        $ul_attr = array('role' => 'menu', 'aria-labelledby' => 'aria-label-zipdownloadmenu');
        if ($rcmail->config->get('skin') != 'classic') {
            $ul_attr['class'] = 'toolbarmenu';
        }
        foreach (array('eml', 'mbox', 'maildir') as $type) {
            $menu[] = html::tag('li', null, $rcmail->output->button(array(
@@ -106,7 +109,8 @@
            )));
        }
        $rcmail->output->add_footer(html::div(array('id' => 'zipdownload-menu', 'class' => 'popupmenu'),
        $rcmail->output->add_footer(html::div(array('id' => 'zipdownload-menu', 'class' => 'popupmenu', 'aria-hidden' => 'true'),
            html::tag('h2', array('class' => 'voice', 'id' => 'aria-label-zipdownloadmenu'), "Message Download Options Menu") .
            html::tag('ul', $ul_attr, implode('', $menu))));
    }
program/include/iniset.php
@@ -54,20 +54,25 @@
// (does not work in safe mode)
@set_time_limit(120);
// include composer autoloader (if available)
if (@file_exists(INSTALL_PATH . 'vendor/autoload.php')) {
    require INSTALL_PATH . 'vendor/autoload.php';
}
// include Roundcube Framework
require_once 'Roundcube/bootstrap.php';
// register autoloader for rcmail app classes
spl_autoload_register('rcmail_autoload');
// include composer autoloader (if available)
if (file_exists('vendor/autoload.php')) {
    require 'vendor/autoload.php';
}
// backward compatybility (to be removed)
require_once INSTALL_PATH . 'program/include/bc.php';
// load the UTF-8 portablity layer from Patchwor
if (!function_exists('iconv') || !function_exists('utf8_encode') || !extension_loaded('mbstring')) {
    \Patchwork\Utf8\Bootup::initAll();
}
/**
 * PHP5 autoloader routine for dynamic class loading
program/include/rcmail.php
@@ -147,8 +147,13 @@
        $this->task      = $task;
        $this->comm_path = $this->url(array('task' => $this->task));
        if (!empty($_REQUEST['_framed'])) {
            $this->comm_path .= '&_framed=1';
        }
        if ($this->output) {
            $this->output->set_env('task', $this->task);
            $this->output->set_env('comm_path', $this->comm_path);
        }
    }
@@ -168,7 +173,7 @@
        setlocale(LC_ALL, $lang . '.utf8', $lang . '.UTF-8', 'en_US.utf8', 'en_US.UTF-8');
        // workaround for http://bugs.php.net/bug.php?id=18556
        if (version_compare(PHP_VERSION, '5.5.0', '<') && in_array($lang, array('tr_TR', 'ku', 'az_AZ'))) {
        if (PHP_VERSION_ID < 50500 && in_array($lang, array('tr_TR', 'ku', 'az_AZ'))) {
            setlocale(LC_CTYPE, 'en_US.utf8', 'en_US.UTF-8');
        }
    }
@@ -427,8 +432,12 @@
            $this->output->set_env('user_id', $this->user->get_hash());
        }
        // set compose mode for all tasks (message compose step can be triggered from everywhere)
        $this->output->set_env('compose_extwin', $this->config->get('compose_extwin',false));
        // add some basic labels to client
        $this->output->add_label('loading', 'servererror', 'connerror', 'requesttimedout', 'refreshing');
        $this->output->add_label('loading', 'servererror', 'connerror', 'requesttimedout',
            'refreshing', 'windowopenerror');
        return $this->output;
    }
@@ -729,14 +738,16 @@
     */
    public function logout_actions()
    {
        $config  = $this->config->all();
        $storage = $this->get_storage();
        $storage        = $this->get_storage();
        $logout_expunge = $this->config->get('logout_expunge');
        $logout_purge   = $this->config->get('logout_purge');
        $trash_mbox     = $this->config->get('trash_mbox');
        if ($config['logout_purge'] && !empty($config['trash_mbox'])) {
            $storage->clear_folder($config['trash_mbox']);
        if ($logout_purge && !empty($trash_mbox)) {
            $storage->clear_folder($trash_mbox);
        }
        if ($config['logout_expunge']) {
        if ($logout_expunge) {
            $storage->expunge_folder('INBOX');
        }
@@ -783,11 +794,13 @@
    /**
     * Build a valid URL to this instance of Roundcube
     *
     * @param mixed Either a string with the action or url parameters as key-value pairs
     * @param mixed   Either a string with the action or url parameters as key-value pairs
     * @param boolean Build an URL absolute to document root
     * @param boolean Create fully qualified URL including http(s):// and hostname
     *
     * @return string Valid application URL
     */
    public function url($p)
    public function url($p, $absolute = false, $full = false)
    {
        if (!is_array($p)) {
            if (strpos($p, 'http') === 0) {
@@ -797,14 +810,15 @@
            $p = array('_action' => @func_get_arg(0));
        }
        $task = $p['_task'] ? $p['_task'] : ($p['task'] ? $p['task'] : $this->task);
        $p['_task'] = $task;
        unset($p['task']);
        $pre = array();
        $task = $p['_task'] ?: ($p['task'] ?: $this->task);
        $pre['_task'] = $task;
        unset($p['task'], $p['_task']);
        $url  = './' . $this->filename;
        $url  = $this->filename;
        $delm = '?';
        foreach (array_reverse($p) as $key => $val) {
        foreach (array_merge($pre, $p) as $key => $val) {
            if ($val !== '' && $val !== null) {
                $par  = $key[0] == '_' ? $key : '_'.$key;
                $url .= $delm.urlencode($par).'='.urlencode($val);
@@ -812,7 +826,24 @@
            }
        }
        return $url;
        if ($absolute || $full) {
            // add base path to this Roundcube installation
            $base_path = preg_replace('![^/]+$!', '', strval($_SERVER['SCRIPT_NAME']));
            if ($base_path == '') $base_path = '/';
            $prefix = $base_path;
            // prepend protocol://hostname:port
            if ($full) {
                $prefix = rcube_utils::resolve_url($prefix);
            }
            $prefix = rtrim($prefix, '/') . '/';
        }
        else {
            $prefix = './';
        }
        return $prefix . $url;
    }
    /**
@@ -886,12 +917,15 @@
        $prefix     = $this->storage->get_namespace('prefix');
        $prefix_len = strlen($prefix);
        if (!$prefix_len)
        if (!$prefix_len) {
            return;
        }
        $prefs = $this->config->all();
        if (!empty($prefs['namespace_fixed']))
        if ($this->config->get('namespace_fixed')) {
            return;
        }
        $prefs = array();
        // Build namespace prefix regexp
        $ns     = $this->storage->get_namespace();
@@ -911,16 +945,16 @@
        // Fix preferences
        $opts = array('drafts_mbox', 'junk_mbox', 'sent_mbox', 'trash_mbox', 'archive_mbox');
        foreach ($opts as $opt) {
            if ($value = $prefs[$opt]) {
            if ($value = $this->config->get($opt)) {
                if ($value != 'INBOX' && !preg_match($regexp, $value)) {
                    $prefs[$opt] = $prefix.$value;
                }
            }
        }
        if (!empty($prefs['search_mods'])) {
        if (($search_mods = $this->config->get('search_mods')) && !empty($search_mods)) {
            $folders = array();
            foreach ($prefs['search_mods'] as $idx => $value) {
            foreach ($search_mods as $idx => $value) {
                if ($idx != 'INBOX' && $idx != '*' && !preg_match($regexp, $idx)) {
                    $idx = $prefix.$idx;
                }
@@ -930,9 +964,9 @@
            $prefs['search_mods'] = $folders;
        }
        if (!empty($prefs['message_threading'])) {
        if (($threading = $this->config->get('message_threading')) && !empty($threading)) {
            $folders = array();
            foreach ($prefs['message_threading'] as $idx => $value) {
            foreach ($threading as $idx => $value) {
                if ($idx != 'INBOX' && !preg_match($regexp, $idx)) {
                    $idx = $prefix.$idx;
                }
@@ -942,8 +976,8 @@
            $prefs['message_threading'] = $folders;
        }
        if (!empty($prefs['collapsed_folders'])) {
            $folders     = explode('&&', $prefs['collapsed_folders']);
        if ($collapsed = $this->config->get('collapsed_folders')) {
            $folders     = explode('&&', $collapsed);
            $count       = count($folders);
            $folders_str = '';
@@ -1076,14 +1110,17 @@
        }
        else {
            foreach ($table_data as $row_data) {
                $class = !empty($row_data['class']) ? $row_data['class'] : '';
                $class = !empty($row_data['class']) ? $row_data['class'] : null;
                if (!empty($attrib['rowclass']))
                    $class = trim($class . ' ' . $attrib['rowclass']);
                $rowid = 'rcmrow' . rcube_utils::html_identifier($row_data[$id_col]);
                $table->add_row(array('id' => $rowid, 'class' => $class));
                // format each col
                foreach ($a_show_cols as $col) {
                    $table->add($col, $this->Q(is_array($row_data[$col]) ? $row_data[$col][0] : $row_data[$col]));
                    $val = is_array($row_data[$col]) ? $row_data[$col][0] : $row_data[$col];
                    $table->add($col, empty($attrib['ishtml']) ? $this->Q($val) : $val);
                }
            }
        }
@@ -1321,7 +1358,8 @@
     */
    public function folder_selector($p = array())
    {
        $p += array('maxlength' => 100, 'realnames' => false, 'is_escaped' => true);
        $realnames = $this->config->get('show_real_foldernames');
        $p += array('maxlength' => 100, 'realnames' => $realnames, 'is_escaped' => true);
        $a_mailboxes = array();
        $storage = $this->get_storage();
@@ -1489,7 +1527,7 @@
            $html_name = $this->Q($foldername) . ($unread ? html::span('unreadcount', sprintf($attrib['unreadwrap'], $unread)) : '');
            $link_attrib = $folder['virtual'] ? array() : array(
                'href' => $this->url(array('_mbox' => $folder['id'])),
                'onclick' => sprintf("return %s.command('list','%s',this)", rcmail_output::JS_OBJECT_NAME, $js_name),
                'onclick' => sprintf("return %s.command('list','%s',this,event)", rcmail_output::JS_OBJECT_NAME, $js_name),
                'rel' => $folder['id'],
                'title' => $title,
            );
@@ -1668,13 +1706,14 @@
    }
    public function quota_content($attrib = null)
    public function quota_content($attrib = null, $folder = null)
    {
        $quota = $this->storage->get_quota();
        $quota = $this->storage->get_quota($folder);
        $quota = $this->plugins->exec_hook('quota', $quota);
        $quota_result = (array) $quota;
        $quota_result['type'] = isset($_SESSION['quota_display']) ? $_SESSION['quota_display'] : '';
        $quota_result['type']   = isset($_SESSION['quota_display']) ? $_SESSION['quota_display'] : '';
        $quota_result['folder'] = $folder !== null && $folder !== '' ? $folder : 'INBOX';
        if ($quota['total'] > 0) {
            if (!isset($quota['percent'])) {
@@ -1691,13 +1730,51 @@
                $quota_result['width'] = $attrib['width'];
            }
            if ($attrib['height']) {
                $quota_result['height']    = $attrib['height'];
                $quota_result['height'] = $attrib['height'];
            }
            // build a table of quota types/roots info
            if (($root_cnt = count($quota_result['all'])) > 1 || count($quota_result['all'][key($quota_result['all'])]) > 1) {
                $table = new html_table(array('cols' => 3, 'class' => 'quota-info'));
                $table->add_header(null, self::Q($this->gettext('quotatype')));
                $table->add_header(null, self::Q($this->gettext('quotatotal')));
                $table->add_header(null, self::Q($this->gettext('quotaused')));
                foreach ($quota_result['all'] as $root => $data) {
                    if ($root_cnt > 1 && $root) {
                        $table->add(array('colspan' => 3, 'class' => 'root'), self::Q($root));
                    }
                    if ($storage = $data['storage']) {
                        $percent = min(100, round(($storage['used']/max(1,$storage['total']))*100));
                        $table->add('name', self::Q($this->gettext('quotastorage')));
                        $table->add(null, $this->show_bytes($storage['total'] * 1024));
                        $table->add(null, sprintf('%s (%.0f%%)', $this->show_bytes($storage['used'] * 1024), $percent));
                    }
                    if ($message = $data['message']) {
                        $percent = min(100, round(($message['used']/max(1,$message['total']))*100));
                        $table->add('name', self::Q($this->gettext('quotamessage')));
                        $table->add(null, intval($message['total']));
                        $table->add(null, sprintf('%d (%.0f%%)', $message['used'], $percent));
                    }
                }
                $quota_result['table'] = $table->show();
            }
        }
        else {
            $unlimited               = $this->config->get('quota_zero_as_unlimited');
            $quota_result['title']   = $this->gettext($unlimited ? 'unlimited' : 'unknown');
            $quota_result['percent'] = 0;
        }
        // cleanup
        unset($quota_result['abort']);
        if (empty($quota_result['table'])) {
            unset($quota_result['all']);
        }
        return $quota_result;
@@ -1769,31 +1846,36 @@
            return;
        }
        $lang = strtolower($_SESSION['language']);
        $lang_codes = array($_SESSION['language']);
        // TinyMCE uses two-letter lang codes, with exception of Chinese
        if (strpos($lang, 'zh_') === 0) {
            $lang = str_replace('_', '-', $lang);
        }
        else {
            $lang = substr($lang, 0, 2);
        if ($pos = strpos($_SESSION['language'], '_')) {
            $lang_codes[] = substr($_SESSION['language'], 0, $pos);
        }
        if (!file_exists(INSTALL_PATH . 'program/js/tiny_mce/langs/'.$lang.'.js')) {
        foreach ($lang_codes as $code) {
            if (file_exists(INSTALL_PATH . 'program/js/tinymce/langs/'.$code.'.js')) {
                $lang = $code;
                break;
            }
        }
        if (empty($lang)) {
            $lang = 'en';
        }
        $script = json_encode(array(
        $config = array(
            'mode'       => $mode,
            'lang'       => $lang,
            'skin_path'  => $this->output->get_skin_path(),
            'spellcheck' => intval($this->config->get('enable_spellcheck')),
            'spelldict'  => intval($this->config->get('spellcheck_dictionary'))
        ));
        );
        $this->output->include_script('tiny_mce/tiny_mce.js');
        $this->output->add_label('selectimage', 'addimage', 'selectmedia', 'addmedia');
        $this->output->set_env('editor_config', $config);
        $this->output->include_css('program/js/tinymce/roundcube/browser.css');
        $this->output->include_script('tinymce/tinymce.min.js');
        $this->output->include_script('editor.js');
        $this->output->add_script("rcmail_editor_init($script)", 'docready');
    }
    /**
@@ -1825,8 +1907,8 @@
        );
        foreach ($emoticons as $idx => $file) {
            // <img title="Cry" src="http://.../program/js/tiny_mce/plugins/emotions/img/smiley-cry.gif" border="0" alt="Cry" />
            $search[]  = '/<img title="[a-z ]+" src="https?:\/\/[a-z0-9_.\/-]+\/tiny_mce\/plugins\/emotions\/img\/'.$file.'.gif"[^>]+\/>/i';
            // <img title="Cry" src="http://.../program/js/tinymce/plugins/emoticons/img/smiley-cry.gif" border="0" alt="Cry" />
            $search[]  = '/<img title="[a-z ]+" src="https?:\/\/[a-z0-9_.\/-]+\/tinymce\/plugins\/emoticons\/img\/'.$file.'.gif"[^>]+\/>/i';
            $replace[] = $idx;
        }
@@ -1891,8 +1973,10 @@
    /**
     * Initializes file uploading interface.
     *
     * @param $int Optional maximum file size in bytes
     */
    public function upload_init()
    public function upload_init($max_size = null)
    {
        // Enable upload progress bar
        if ($seconds = $this->config->get('upload_progress')) {
@@ -1920,12 +2004,87 @@
            $max_filesize = $max_postsize;
        }
        if ($max_size && $max_size < $max_filesize) {
            $max_filesize = $max_size;
        }
        $this->output->set_env('max_filesize', $max_filesize);
        $max_filesize = $this->show_bytes($max_filesize);
        $this->output->set_env('filesizeerror', $this->gettext(array(
            'name' => 'filesizeerror', 'vars' => array('size' => $max_filesize))));
        return $max_filesize;
    }
    /**
     * Outputs uploaded file content (with image thumbnails support
     *
     * @param array $file Upload file data
     */
    public function display_uploaded_file($file)
    {
        if (empty($file)) {
            return;
        }
        $file = $this->plugins->exec_hook('attachment_display', $file);
        if ($file['status']) {
            if (empty($file['size'])) {
                $file['size'] = $file['data'] ? strlen($file['data']) : @filesize($file['path']);
            }
            // generate image thumbnail for file browser in HTML editor
            if (!empty($_GET['_thumbnail'])) {
                $temp_dir       = $this->config->get('temp_dir');
                $thumbnail_size = 80;
                list(,$ext)     = explode('/', $file['mimetype']);
                $mimetype       = $file['mimetype'];
                $file_ident     = $file['id'] . ':' . $file['mimetype'] . ':' . $file['size'];
                $cache_basename = $temp_dir . '/' . md5($file_ident . ':' . $this->user->ID . ':' . $thumbnail_size);
                $cache_file     = $cache_basename . '.' . $ext;
                // render thumbnail image if not done yet
                if (!is_file($cache_file)) {
                    if (!$file['path']) {
                        $orig_name = $filename = $cache_basename . '.orig.' . $ext;
                        file_put_contents($orig_name, $file['data']);
                    }
                    else {
                        $filename = $file['path'];
                    }
                    $image = new rcube_image($filename);
                    if ($imgtype = $image->resize($thumbnail_size, $cache_file, true)) {
                        $mimetype = 'image/' . $imgtype;
                        if ($orig_name) {
                            unlink($orig_name);
                        }
                    }
                }
                if (is_file($cache_file)) {
                    // cache for 1h
                    $this->output->future_expire_header(3600);
                    header('Content-Type: ' . $mimetype);
                    header('Content-Length: ' . filesize($cache_file));
                    readfile($cache_file);
                    exit;
                }
            }
            header('Content-Type: ' . $file['mimetype']);
            header('Content-Length: ' . $file['size']);
            if ($file['data']) {
                echo $file['data'];
            }
            else if ($file['path']) {
                readfile($file['path']);
            }
        }
    }
    /**
@@ -2040,11 +2199,13 @@
    /**
     * Returns message UID(s) and IMAP folder(s) from GET/POST data
     *
     * @param  string UID value to decode
     * @param  string Default mailbox value (if not encoded in UIDs)
     * @param string UID value to decode
     * @param string Default mailbox value (if not encoded in UIDs)
     * @param bool   Will be set to True if multi-folder request
     *
     * @return array  List of message UIDs per folder
     */
    public static function get_uids($uids = null, $mbox = null)
    public static function get_uids($uids = null, $mbox = null, &$is_multifolder = false)
    {
        // message UID (or comma-separated list of IDs) is provided in
        // the form of <ID>-<MBOX>[,<ID>-<MBOX>]*
@@ -2061,6 +2222,7 @@
        // special case: *
        if ($_uid == '*' && is_object($_SESSION['search'][1]) && $_SESSION['search'][1]->multi) {
            $is_multifolder = true;
            // extract the full list of UIDs per folder from the search set
            foreach ($_SESSION['search'][1]->sets as $subset) {
                $mbox = $subset->get_parameters('MAILBOX');
@@ -2074,12 +2236,19 @@
            // create a per-folder UIDs array
            foreach ((array)$_uid as $uid) {
                list($uid, $mbox) = explode('-', $uid, 2);
                if (!strlen($mbox))
                if (!strlen($mbox)) {
                    $mbox = $_mbox;
                if ($uid == '*')
                }
                else {
                    $is_multifolder = true;
                }
                if ($uid == '*') {
                    $result[$mbox] = $uid;
                else
                }
                else {
                    $result[$mbox][] = $uid;
                }
            }
        }
program/include/rcmail_install.php
@@ -476,7 +476,7 @@
    $types = array(
      'application/zip'   => 'zip',
      'application/x-tar' => 'tar',
      'application/java-archive' => 'jar',
      'application/pdf'   => 'pdf',
      'image/gif'     => 'gif',
      'image/svg+xml' => 'svg',
    );
@@ -484,7 +484,7 @@
    $errors = array();
    foreach ($types as $mimetype => $expected) {
      $ext = rcube_mime::get_mime_extensions($mimetype);
      if ($ext[0] != $expected) {
      if (!in_array($expected, (array) $ext)) {
        $errors[] = array($mimetype, $ext, $expected);
      }
    }
program/include/rcmail_output_html.php
@@ -30,16 +30,16 @@
{
    public $type = 'html';
    protected $message = null;
    protected $js_env = array();
    protected $js_labels = array();
    protected $js_commands = array();
    protected $skin_paths = array();
    protected $message;
    protected $template_name;
    protected $js_env       = array();
    protected $js_labels    = array();
    protected $js_commands  = array();
    protected $skin_paths   = array();
    protected $scripts_path = '';
    protected $script_files = array();
    protected $css_files = array();
    protected $scripts = array();
    protected $css_files    = array();
    protected $scripts      = array();
    protected $default_template = "<html>\n<head><title></title></head>\n<body></body>\n</html>";
    protected $header = '';
    protected $footer = '';
@@ -58,8 +58,6 @@
    /**
     * Constructor
     *
     * @todo   Replace $this->config with the real rcube_config object
     */
    public function __construct($task = null, $framed = false)
    {
@@ -67,10 +65,10 @@
        $this->devel_mode = $this->config->get('devel_mode');
        //$this->framed = $framed;
        $this->set_env('task', $task);
        $this->set_env('x_frame_options', $this->config->get('x_frame_options', 'sameorigin'));
        $this->set_env('standard_windows', (bool) $this->config->get('standard_windows'));
        $this->set_env('locale', $_SESSION['language']);
        // add cookie info
        $this->set_env('cookie_domain', ini_get('session.cookie_domain'));
@@ -84,7 +82,7 @@
        if (!empty($_REQUEST['_extwin']))
            $this->set_env('extwin', 1);
        if ($this->framed || !empty($_REQUEST['_framed']))
        if ($this->framed || $framed)
            $this->set_env('framed', 1);
        $lic = <<<EOF
@@ -256,8 +254,9 @@
    public function get_skin_file($file, &$skin_path = null, $add_path = null)
    {
        $skin_paths = $this->skin_paths;
        if ($add_path)
        if ($add_path) {
            array_unshift($skin_paths, $add_path);
        }
        foreach ($skin_paths as $skin_path) {
            $path = realpath($skin_path . $file);
@@ -291,9 +290,9 @@
    {
        $cmd = func_get_args();
        if (strpos($cmd[0], 'plugin.') !== false)
          $this->js_commands[] = array('triggerEvent', $cmd[0], $cmd[1]);
            $this->js_commands[] = array('triggerEvent', $cmd[0], $cmd[1]);
        else
          $this->js_commands[] = $cmd;
            $this->js_commands[] = $cmd;
    }
    /**
@@ -303,7 +302,7 @@
    {
        $args = func_get_args();
        if (count($args) == 1 && is_array($args[0]))
          $args = $args[0];
            $args = $args[0];
        foreach ($args as $name) {
            $this->js_labels[$name] = $this->app->gettext($name);
@@ -344,13 +343,13 @@
    public function reset($all = false)
    {
        $framed = $this->framed;
        $env = $all ? null : array_intersect_key($this->env, array('extwin'=>1, 'framed'=>1));
        $env    = $all ? null : array_intersect_key($this->env, array('extwin'=>1, 'framed'=>1));
        parent::reset();
        // let some env variables survive
        $this->env = $this->js_env = $env;
        $this->framed = $framed || $this->env['framed'];
        $this->env          = $this->js_env = $env;
        $this->framed       = $framed || $this->env['framed'];
        $this->js_labels    = array();
        $this->js_commands  = array();
        $this->script_files = array();
@@ -420,29 +419,29 @@
     */
    public function write($template = '')
    {
        // unlock interface after iframe load
        $unlock = preg_replace('/[^a-z0-9]/i', '', $_REQUEST['_unlock']);
        if ($this->framed) {
            array_unshift($this->js_commands, array('iframe_loaded', $unlock));
        }
        else if ($unlock) {
            array_unshift($this->js_commands, array('hide_message', $unlock));
        if (!empty($this->script_files)) {
            $this->set_env('request_token', $this->app->get_request_token());
        }
        if (!empty($this->script_files))
          $this->set_env('request_token', $this->app->get_request_token());
        $commands = $this->get_js_commands($framed);
        // write all env variables to client
        if ($commands = $this->get_js_commands()) {
            $js = $this->framed ? "if (window.parent) {\n" : '';
            $js .= $commands . ($this->framed ? ' }' : '');
            $this->add_script($js, 'head_top');
        // if all js commands go to parent window we can ignore all
        // script files and skip rcube_webmail initialization (#1489792)
        if ($framed) {
            $this->scripts      = array();
            $this->script_files = array();
            $this->header       = '';
            $this->footer       = '';
        }
        // write all javascript commands
        $this->add_script($commands, 'head_top');
        // send clickjacking protection headers
        $iframe = $this->framed || !empty($_REQUEST['_framed']);
        if (!headers_sent() && ($xframe = $this->app->config->get('x_frame_options', 'sameorigin')))
        $iframe = $this->framed || $this->env['framed'];
        if (!headers_sent() && ($xframe = $this->app->config->get('x_frame_options', 'sameorigin'))) {
            header('X-Frame-Options: ' . ($iframe && $xframe == 'deny' ? 'sameorigin' : $xframe));
        }
        // call super method
        $this->_write($template, $this->config->get('skin_path'));
@@ -459,15 +458,15 @@
     */
    function parse($name = 'main', $exit = true, $write = true)
    {
        $plugin    = false;
        $realname  = $name;
        $plugin   = false;
        $realname = $name;
        $this->template_name = $realname;
        $temp = explode('.', $name, 2);
        if (count($temp) > 1) {
            $plugin    = $temp[0];
            $name      = $temp[1];
            $skin_dir  = $plugin . '/skins/' . $this->config->get('skin');
            $plugin   = $temp[0];
            $name     = $temp[1];
            $skin_dir = $plugin . '/skins/' . $this->config->get('skin');
            // apply skin search escalation list to plugin directory
            $plugin_skin_paths = array();
@@ -564,27 +563,60 @@
     *
     * @return string $out
     */
    protected function get_js_commands()
    protected function get_js_commands(&$framed = null)
    {
        $out = '';
        $out             = '';
        $parent_commands = 0;
        $top_commands    = array();
        // these should be always on top,
        // e.g. hide_message() below depends on env.framed
        if (!$this->framed && !empty($this->js_env)) {
            $out .= self::JS_OBJECT_NAME . '.set_env('.self::json_serialize($this->js_env).");\n";
            $top_commands[] = array('set_env', $this->js_env);
        }
        if (!empty($this->js_labels)) {
            $this->command('add_label', $this->js_labels);
            $top_commands[] = array('add_label', $this->js_labels);
        }
        foreach ($this->js_commands as $i => $args) {
        // unlock interface after iframe load
        $unlock = preg_replace('/[^a-z0-9]/i', '', $_REQUEST['_unlock']);
        if ($this->framed) {
            $top_commands[] = array('iframe_loaded', $unlock);
        }
        else if ($unlock) {
            $top_commands[] = array('hide_message', $unlock);
        }
        $commands = array_merge($top_commands, $this->js_commands);
        foreach ($commands as $i => $args) {
            $method = array_shift($args);
            $parent = $this->framed || preg_match('/^parent\./', $method);
            foreach ($args as $i => $arg) {
                $args[$i] = self::json_serialize($arg);
            }
            $parent = $this->framed || preg_match('/^parent\./', $method);
            $out .= sprintf(
                "%s.%s(%s);\n",
                ($parent ? 'if(window.parent && parent.'.self::JS_OBJECT_NAME.') parent.' : '') . self::JS_OBJECT_NAME,
                preg_replace('/^parent\./', '', $method),
                implode(',', $args)
            );
            if ($parent) {
                $parent_commands++;
                $method        = preg_replace('/^parent\./', '', $method);
                $parent_prefix = 'if (window.parent && parent.' . self::JS_OBJECT_NAME . ') parent.';
                $method        = $parent_prefix . self::JS_OBJECT_NAME . '.' . $method;
            }
            else {
                $method = self::JS_OBJECT_NAME . '.' . $method;
            }
            $out .= sprintf("%s(%s);\n", $method, implode(',', $args));
        }
        $framed = $parent_prefix && $parent_commands == count($commands);
        // make the output more compact if all commands go to parent window
        if ($framed) {
            $out = "if (window.parent && parent." . self::JS_OBJECT_NAME . ") {\n"
                . str_replace($parent_prefix, "\tparent.", $out)
                . "}\n";
        }
        return $out;
@@ -600,13 +632,14 @@
    public function abs_url($str, $search_path = false)
    {
        if ($str[0] == '/') {
            if ($search_path && ($file_url = $this->get_skin_file($str, $skin_path)))
            if ($search_path && ($file_url = $this->get_skin_file($str, $skin_path))) {
                return $file_url;
            }
            return $this->base_path . $str;
        }
        else
            return $str;
        return $str;
    }
    /**
@@ -866,6 +899,14 @@
            return '';
        }
        // localize title and summary attributes
        if ($command != 'button' && !empty($attrib['title']) && $this->app->text_exists($attrib['title'])) {
            $attrib['title'] = $this->app->gettext($attrib['title']);
        }
        if ($command != 'button' && !empty($attrib['summary']) && $this->app->text_exists($attrib['summary'])) {
            $attrib['summary'] = $this->app->gettext($attrib['summary']);
        }
        // execute command
        switch ($command) {
            // return a button
@@ -1098,7 +1139,8 @@
     */
    public function button($attrib)
    {
        static $s_button_count = 100;
        static $s_button_count   = 100;
        static $disabled_actions = null;
        // these commands can be called directly via url
        $a_static_commands = array('compose', 'list', 'preferences', 'folders', 'identities');
@@ -1107,9 +1149,14 @@
            return '';
        }
        // try to find out the button type
        if ($attrib['type']) {
            $attrib['type'] = strtolower($attrib['type']);
            if ($pos = strpos($attrib['type'], '-menuitem')) {
                $attrib['type'] = substr($attrib['type'], 0, -9);
                $menuitem = true;
            }
        }
        else {
            $attrib['type'] = ($attrib['image'] || $attrib['imagepas'] || $attrib['imageact']) ? 'image' : 'link';
@@ -1117,8 +1164,21 @@
        $command = $attrib['command'];
        if ($attrib['task'])
          $command = $attrib['task'] . '.' . $command;
        if ($attrib['task']) {
            $element = $command = $attrib['task'] . '.' . $command;
        }
        else {
            $element = ($this->env['task'] ? $this->env['task'] . '.' : '') . $command;
        }
        if ($disabled_actions === null) {
            $disabled_actions = (array) $this->config->get('disabled_actions');
        }
        // remove buttons for disabled actions
        if (in_array($element, $disabled_actions)) {
            return '';
        }
        if (!$attrib['image']) {
            $attrib['image'] = $attrib['imagepas'] ? $attrib['imagepas'] : $attrib['imageact'];
@@ -1136,6 +1196,17 @@
        }
        if ($attrib['alt']) {
            $attrib['alt'] = html::quote($this->app->gettext($attrib['alt'], $attrib['domain']));
        }
        // set accessibility attributes
        if (!$attrib['role']) {
            $attrib['role'] = 'button';
        }
        if (!empty($attrib['class']) && !empty($attrib['classact']) || !empty($attrib['imagepas']) && !empty($attrib['imageact'])) {
            if (array_key_exists('tabindex', $attrib))
                $attrib['data-tabindex'] = $attrib['tabindex'];
            $attrib['tabindex'] = '-1';  // disable button by default
            $attrib['aria-disabled'] = 'true';
        }
        // set title to alt attribute for IE browsers
@@ -1240,6 +1311,11 @@
            $out = html::tag($attrib['wrapper'], null, $out);
        }
        if ($menuitem) {
            $class = $attrib['menuitem-class'] ? ' class="' . $attrib['menuitem-class'] . '"' : '';
            $out   = '<li role="menuitem"' . $class . '>' . $out . '</li>';
        }
        return $out;
    }
@@ -1322,13 +1398,22 @@
        $output = trim($templ);
        if (empty($output)) {
            $output   = $this->default_template;
            $output   = html::doctype('html5') . "\n" . $this->default_template;
            $is_empty = true;
        }
        // set default page title
        if (empty($this->pagetitle)) {
            $this->pagetitle = 'Roundcube Mail';
        }
        // declare page language
        if (!empty($_SESSION['language'])) {
            $lang = substr($_SESSION['language'], 0, 2);
            $output = preg_replace('/<html/', '<html lang="' . html::quote($lang) . '"', $output, 1);
            if (!headers_sent()) {
                header('Content-Language: ' . $lang);
            }
        }
        // replace specialchars in content
@@ -1478,7 +1563,7 @@
     */
    public function form_tag($attrib, $content = null)
    {
      if ($this->framed || !empty($_REQUEST['_framed'])) {
      if ($this->framed || $this->env['framed']) {
        $hiddenfield = new html_hiddenfield(array('name' => '_framed', 'value' => '1'));
        $hidden = $hiddenfield->show();
      }
@@ -1518,7 +1603,7 @@
        // we already have a <form> tag
        if ($attrib['form']) {
            if ($this->framed || !empty($_REQUEST['_framed']))
            if ($this->framed || $this->env['framed'])
                $hidden->add(array('name' => '_framed', 'value' => '1'));
            return $hidden->show() . $content;
        }
program/js/app.js
Diff too large
program/js/common.js
@@ -31,7 +31,6 @@
var SHIFT_KEY = 2;
var CONTROL_SHIFT_KEY = 3;
/**
 * Default browser check class
 * @constructor
@@ -279,6 +278,28 @@
  e.cancelBubble = true;
  return false;
},
/**
 * Determine whether the given event was trigered from keyboard
 */
is_keyboard: function(e)
{
  return e && (
      (e.pointerType !== undefined && e.pointerType !== 'mouse') ||       // IE 11+
      (e.mozInputSource && e.mozInputSource == e.MOZ_SOURCE_KEYBOARD) ||  // Firefox
      (e.offsetX === 0 && e.offsetY === 0) || // Opera
      (!e.pageX && (e.pageY || 0) <= 0 && !e.clientX && (e.clientY || 0) <= 0) ||  // others
      (bw.ie && rcube_event._last_keyboard_event && rcube_event._last_keyboard_event.target == e.target)  // hack for IE <= 10
    );
},
/**
 * Accept event if triggered from keyboard action (e.g. <Enter>)
 */
keyboard_only: function(e)
{
  return rcube_event.is_keyboard(e) ? true : rcube_event.cancel(e);
},
touchevent: function(e)
@@ -593,6 +614,11 @@
  };
}
// array utility function
jQuery.last = function(arr) {
  return arr && arr.length ? arr[arr.length-1] : undefined;
}
// jQuery plugin to emulate HTML5 placeholder attributes on input elements
jQuery.fn.placeholder = function(text) {
  return this.each(function() {
program/js/editor.js
@@ -26,162 +26,738 @@
 * for the JavaScript code in this file.
 *
 * @author Eric Stadtherr <estadtherr@gmail.com>
 * @author Aleksander Machniak <alec@alec.pl>
 */
// Initialize HTML editor
function rcmail_editor_init(config)
/**
 * Roundcube Text Editor Widget class
 * @constructor
 */
function rcube_text_editor(config, id)
{
  var ret, conf = {
      mode: 'textareas',
      editor_selector: 'mce_editor',
      apply_source_formatting: true,
      theme: 'advanced',
  var ref = this,
    conf = {
      selector: '#' + ($('#' + id).is('.mce_editor') ? id : 'fake-editor-id'),
      theme: 'modern',
      language: config.lang,
      content_css: config.skin_path + '/editor_content.css',
      theme_advanced_toolbar_location: 'top',
      theme_advanced_toolbar_align: 'left',
      theme_advanced_buttons3: '',
      theme_advanced_statusbar_location: 'none',
      content_css: 'program/js/tinymce/roundcube/content.css?v1',
      menubar: false,
      statusbar: false,
      toolbar_items_size: 'small',
      extended_valid_elements: 'font[face|size|color|style],span[id|class|align|style]',
      relative_urls: false,
      remove_script_host: false,
      gecko_spellcheck: true,
      convert_urls: false, // #1486944
      external_image_list: window.rcmail_editor_images,
      rc_client: rcmail
      image_description: false,
      paste_webkit_style: "color font-size font-family",
      paste_data_images: true,
      browser_spellcheck: true
    };
  if (config.mode == 'identity')
    $.extend(conf, {
      plugins: 'paste,tabfocus',
      theme_advanced_buttons1: 'bold,italic,underline,strikethrough,justifyleft,justifycenter,justifyright,justifyfull,separator,outdent,indent,charmap,hr,link,unlink,code,forecolor',
      theme_advanced_buttons2: 'fontselect,fontsizeselect'
    });
  else { // mail compose
    $.extend(conf, {
      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&_remote=1',
      spellchecker_enable_learn_rpc: config.spelldict,
      accessibility_focus: false,
      oninit: 'rcmail_editor_callback'
    });
    // add handler for spellcheck button state update
    conf.setup = function(ed) {
      ed.onSetProgressState.add(function(ed, active) {
        if (!active)
          rcmail.spellcheck_state();
      });
      ed.onKeyPress.add(function(ed, e) {
          rcmail.compose_type_activity++;
      });
  // register spellchecker for plain text editor
  this.spellcheck_observer = function() {};
  if (config.spellchecker) {
    this.spellchecker = config.spellchecker;
    if (config.spellcheck_observer) {
      this.spellchecker.spelling_state_observer = this.spellcheck_observer = config.spellcheck_observer;
    }
  }
  // minimal editor
  if (config.mode == 'identity') {
    $.extend(conf, {
      plugins: 'autolink charmap code colorpicker hr image link paste tabfocus textcolor',
      toolbar: 'bold italic underline alignleft aligncenter alignright alignjustify'
        + ' | outdent indent charmap hr link unlink image code forecolor'
        + ' | fontselect fontsizeselect',
      file_browser_callback: function(name, url, type, win) { ref.file_browser_callback(name, url, type); },
      file_browser_callback_types: 'image'
    });
  }
  // full-featured editor
  else {
    $.extend(conf, {
      plugins: 'autolink charmap code colorpicker directionality emoticons link image media nonbreaking'
        + ' paste table tabfocus textcolor searchreplace' + (config.spellcheck ? ' spellchecker' : ''),
      toolbar: 'bold italic underline | alignleft aligncenter alignright alignjustify'
        + ' | bullist numlist outdent indent ltr rtl blockquote | forecolor backcolor | fontselect fontsizeselect'
        + ' | link unlink table | emoticons charmap image media | code searchreplace undo redo',
      spellchecker_rpc_url: '../../../../../?_task=utils&_action=spell_html&_remote=1',
      spellchecker_language: rcmail.env.spell_lang,
      accessibility_focus: false,
      file_browser_callback: function(name, url, type, win) { ref.file_browser_callback(name, url, type); },
      // @todo: support more than image (types: file, image, media)
      file_browser_callback_types: 'image media'
    });
  }
  // support external configuration settings e.g. from skin
  if (window.rcmail_editor_settings)
    $.extend(conf, window.rcmail_editor_settings);
  tinyMCE.init(conf);
}
  conf.setup = function(ed) {
    ed.on('init', function(ed) { ref.init_callback(ed); });
    // add handler for spellcheck button state update
    ed.on('SpellcheckStart SpellcheckEnd', function(args) {
      ref.spellcheck_active = args.type == 'spellcheckstart';
      ref.spellcheck_observer();
    });
    ed.on('keypress', function() {
      rcmail.compose_type_activity++;
    });
    // secure spellchecker requests with Roundcube token
    tinymce.util.XHR.on('beforeSend', function(e) {
      e.xhr.setRequestHeader('X-Roundcube-Request', rcmail.env.request_token);
    });
  };
// react to real individual tinyMCE editor init
function rcmail_editor_callback()
{
  var css = {},
    elem = rcube_find_object('_from'),
    fe = rcmail.env.compose_focus_elem;
  // textarea identifier
  this.id = id;
  // reference to active editor (if in HTML mode)
  this.editor = null;
  if (rcmail.env.default_font)
    css['font-family'] = rcmail.env.default_font;
  tinymce.init(conf);
  if (rcmail.env.default_font_size)
    css['font-size'] = rcmail.env.default_font_size;
  // react to real individual tinyMCE editor init
  this.init_callback = function(event)
  {
    this.editor = event.target;
  if (css['font-family'] || css['font-size'])
    $(tinyMCE.get(rcmail.env.composebody).getBody()).css(css);
  if (elem && elem.type == 'select-one') {
    rcmail.change_identity(elem);
    // Focus previously focused element
    if (fe && fe.id != rcmail.env.composebody) {
      // use setTimeout() for IE9 (#1488541)
      window.setTimeout(function() {
        window.focus(); // for WebKit (#1486674)
        fe.focus();
      }, 10);
    if (rcmail.env.action != 'compose') {
      return;
    }
  }
  // set tabIndex and set focus to element that was focused before
  rcmail_editor_tabindex(fe && fe.id == rcmail.env.composebody);
  // Trigger resize (needed for proper editor resizing in some browsers using default skin)
  $(window).resize();
}
    var css = {},
      elem = rcube_find_object('_from'),
      fe = rcmail.env.compose_focus_elem;
// set tabIndex on tinyMCE editor
function rcmail_editor_tabindex(focus)
{
  if (rcmail.env.task == 'mail') {
    var editor = tinyMCE.get(rcmail.env.composebody);
    if (editor) {
      var textarea = editor.getElement();
      var node = editor.getContentAreaContainer().childNodes[0];
    if (rcmail.env.default_font)
      css['font-family'] = rcmail.env.default_font;
    if (rcmail.env.default_font_size)
      css['font-size'] = rcmail.env.default_font_size;
    if (css['font-family'] || css['font-size'])
      $(this.editor.getBody()).css(css);
    if (elem && elem.type == 'select-one') {
      // insert signature (only for the first time)
      if (!rcmail.env.identities_initialized)
        rcmail.change_identity(elem);
      // Focus previously focused element
      if (fe && fe.id != this.id) {
        // use setTimeout() for IE9 (#1488541)
        window.setTimeout(function() {
          window.focus(); // for WebKit (#1486674)
          fe.focus();
        }, 10);
      }
    }
    // set tabIndex and set focus to element that was focused before
    this.tabindex(fe && fe.id == this.id);
    // Trigger resize (needed for proper editor resizing in some browsers)
    window.setTimeout(function() { $(window).resize(); }, 100);
  };
  // set tabIndex on tinymce editor
  this.tabindex = function(focus)
  {
    if (rcmail.env.task == 'mail' && this.editor) {
      var textarea = this.editor.getElement(),
        node = this.editor.getContentAreaContainer().childNodes[0];
      if (textarea && node)
        node.tabIndex = textarea.tabIndex;
      if (focus)
        editor.getBody().focus();
        this.editor.getBody().focus();
      // find :prev and :next elements to get focus when tabbing away
      if (textarea.tabIndex > 0) {
        var x = null,
          editor = this.editor,
          tabfocus_elements = [':prev',':next'],
          el = tinymce.DOM.select('*[tabindex='+textarea.tabIndex+']:not(iframe)');
        tinymce.each(el, function(e, i) { if (e.id == editor.id) { x = i; return false; } });
        if (x !== null) {
          if (el[x-1] && el[x-1].id) {
            tabfocus_elements[0] = el[x-1].id;
          }
          if (el[x+1] && el[x+1].id) {
            tabfocus_elements[1] = el[x+1].id;
          }
          editor.settings.tabfocus_elements = tabfocus_elements.join(',');
        }
      }
    }
  }
}
  };
// switch html/plain mode
function rcmail_toggle_editor(select, textAreaId, flagElement)
{
  var flag, ishtml;
  // switch html/plain mode
  this.toggle = function(ishtml)
  {
    var curr, content, result,
      // these non-printable chars are not removed on text2html and html2text
      // we can use them as temp signature replacement
      sig_mark = "\u0002\u0003",
      input = $('#' + this.id),
      signature = rcmail.env.identity ? rcmail.env.signatures[rcmail.env.identity] : null,
      is_sig = signature && signature.text && signature.text.length > 1;
  if (select.tagName != 'SELECT')
    ishtml = select.checked;
  else
    ishtml = select.value == 'html';
    // apply spellcheck changes if spell checker is active
    this.spellcheck_stop();
  var res = rcmail.command('toggle-editor', {id:textAreaId, mode:ishtml?'html':'plain'});
    if (ishtml) {
      content = input.val();
  if (ishtml) {
    // #1486593
    setTimeout("rcmail_editor_tabindex(true);", 500);
    if (flagElement && (flag = rcube_find_object(flagElement)))
      flag.value = '1';
  }
  else if (res) {
    if (flagElement && (flag = rcube_find_object(flagElement)))
      flag.value = '0';
      // replace current text signature with temp mark
      if (is_sig)
        content = content.replace(signature.text, sig_mark);
    if (rcmail.env.composebody)
      rcube_find_object(rcmail.env.composebody).focus();
  }
  else { // !res
    if (select.tagName == 'SELECT')
      select.value = 'html';
    else if (select.tagName == 'INPUT')
      select.checked = true;
  }
}
      // convert to html
      result = rcmail.plain2html(content, function(data) {
        // replace signature mark with html version of the signature
        if (is_sig)
          data = data.replace(sig_mark, '<div id="_rc_sig">' + signature.html + '</div>');
// editor callbeck for images listing
function rcmail_editor_images()
{
  var i, files = rcmail.env.attachments, list = [];
        input.val(data);
        tinymce.execCommand('mceAddEditor', false, ref.id);
  for (i in files) {
    att = files[i];
    if (att.complete && att.mimetype.startsWith('image/')) {
      list.push([att.name, rcmail.env.comm_path+'&_id='+rcmail.env.compose_id+'&_action=display-attachment&_file='+i]);
        setTimeout(function() {
          if (ref.editor) {
            if (rcmail.env.default_font)
              $(ref.editor.getBody()).css('font-family', rcmail.env.default_font);
            // #1486593
            ref.tabindex(true);
          }
        }, 500);
      });
    }
  }
    else if (this.editor) {
      if (is_sig) {
        // get current version of signature, we'll need it in
        // case of html2text conversion abort
        if (curr = this.editor.dom.get('_rc_sig'))
          curr = curr.innerHTML;
  return list;
};
        // replace current signature with some non-printable characters
        // we use non-printable characters, because this replacement
        // is visible to the user
        // doing this after getContent() would be hard
        this.editor.dom.setHTML('_rc_sig', sig_mark);
      }
      // get html content
      content = this.editor.getContent();
      // convert html to text
      result = rcmail.html2plain(content, function(data) {
        tinymce.execCommand('mceRemoveEditor', false, ref.id);
        ref.editor = null;
        // replace signture mark with text version of the signature
        if (is_sig)
          data = data.replace(sig_mark, "\n" + signature.text);
        input.val(data).focus();
      });
      // bring back current signature
      if (!result && curr)
        this.editor.dom.setHTML('_rc_sig', curr);
    }
    return result;
  };
  // start spellchecker
  this.spellcheck_start = function()
  {
    if (this.editor) {
      tinymce.execCommand('mceSpellCheck', true);
      this.spellcheck_observer();
    }
    else if (this.spellchecker && this.spellchecker.spellCheck) {
      this.spellchecker.spellCheck();
    }
  };
  // stop spellchecker
  this.spellcheck_stop = function()
  {
    var ed = this.editor;
    if (ed) {
      if (ed.plugins && ed.plugins.spellchecker && this.spellcheck_active) {
        ed.execCommand('mceSpellCheck', false);
        this.spellcheck_observer();
      }
    }
    else if (ed = this.spellchecker) {
      if (ed.state && ed.state != 'ready' && ed.state != 'no_error_found')
        $(ed.spell_span).trigger('click');
    }
  };
  // spellchecker state
  this.spellcheck_state = function()
  {
    var ed;
    if (this.editor)
      return this.spellcheck_active;
    else if ((ed = this.spellchecker) && ed.state)
      return ed.state != 'ready' && ed.state != 'no_error_found';
  };
  // resume spellchecking, highlight provided mispellings without a new ajax request
  this.spellcheck_resume = function(data)
  {
    var ed = this.editor;
    if (ed) {
      ed.plugins.spellchecker.markErrors(data);
    }
    else if (ed = this.spellchecker) {
      ed.prepare(false, true);
      ed.processData(data);
    }
  };
  // get selected (spellcheker) language
  this.get_language = function()
  {
    if (this.editor) {
      return this.editor.settings.spellchecker_language || rcmail.env.spell_lang;
    }
    else if (this.spellchecker) {
      return GOOGIE_CUR_LANG;
    }
  };
  // set language for spellchecking
  this.set_language = function(lang)
  {
    var ed = this.editor;
    if (ed) {
      ed.settings.spellchecker_language = lang;
    }
    if (ed = this.spellchecker) {
      ed.setCurrentLanguage(lang);
    }
  };
  // replace selection with text snippet
  this.replace = function(text)
  {
    var ed = this.editor;
    // insert into tinymce editor
    if (ed) {
      ed.getWin().focus(); // correct focus in IE & Chrome
      ed.selection.setContent(rcmail.quote_html(text).replace(/\r?\n/g, '<br/>'), { format:'text' });
    }
    // replace selection in compose textarea
    else if (ed = rcube_find_object(this.id)) {
      var selection = $(ed).is(':focus') ? rcmail.get_input_selection(ed) : { start:0, end:0 },
        inp_value = ed.value;
        pre = inp_value.substring(0, selection.start),
        end = inp_value.substring(selection.end, inp_value.length);
      // insert response text
      ed.value = pre + text + end;
      // set caret after inserted text
      rcmail.set_caret_pos(ed, selection.start + text.length);
      ed.focus();
    }
  };
  // get selected text (if no selection returns all text) from the editor
  this.get_content = function(selected, plain)
  {
    // apply spellcheck changes if spell checker is active
    this.spellcheck_stop();
    var sigstart, ed = this.editor,
      format = plain ? 'text' : 'html',
      text = '', strip = false;
    // get selected text from tinymce editor
    if (ed) {
      ed.getWin().focus(); // correct focus in IE & Chrome
      if (selected)
        text = ed.selection.getContent({format: format});
      if (!text) {
        text = ed.getContent({format: format});
        strip = true;
      }
    }
    // get selected text from compose textarea
    else if (ed = rcube_find_object(this.id)) {
      if (selected && $(ed).is(':focus')) {
        text = rcmail.get_input_selection(ed).text;
      }
      if (!text) {
        text = ed.value;
        strip = true;
      }
    }
    // strip off signature
    if (strip) {
      sigstart = text.indexOf('-- \n');
      if (sigstart > 0) {
        text = text.substring(0, sigstart);
      }
    }
    return text;
  };
  // change user signature text
  this.change_signature = function(id, show_sig)
  {
    var cursor_pos, p = -1,
      input_message = $('#' + this.id),
      message = input_message.val(),
      sig = rcmail.env.identity;
    if (!this.editor) { // plain text mode
      // remove the 'old' signature
      if (show_sig && sig && rcmail.env.signatures && rcmail.env.signatures[sig]) {
        sig = rcmail.env.signatures[sig].text;
        sig = sig.replace(/\r\n/g, '\n');
        p = rcmail.env.top_posting ? message.indexOf(sig) : message.lastIndexOf(sig);
        if (p >= 0)
          message = message.substring(0, p) + message.substring(p+sig.length, message.length);
      }
      // add the new signature string
      if (show_sig && rcmail.env.signatures && rcmail.env.signatures[id]) {
        sig = rcmail.env.signatures[id].text;
        sig = sig.replace(/\r\n/g, '\n');
        if (rcmail.env.top_posting) {
          if (p >= 0) { // in place of removed signature
            message = message.substring(0, p) + sig + message.substring(p, message.length);
            cursor_pos = p - 1;
          }
          else if (!message) { // empty message
            cursor_pos = 0;
            message = '\n\n' + sig;
          }
          else if (pos = rcmail.get_caret_pos(input_message.get(0))) { // at cursor position
            message = message.substring(0, pos) + '\n' + sig + '\n\n' + message.substring(pos, message.length);
            cursor_pos = pos;
          }
          else { // on top
            cursor_pos = 0;
            message = '\n\n' + sig + '\n\n' + message.replace(/^[\r\n]+/, '');
          }
        }
        else {
          message = message.replace(/[\r\n]+$/, '');
          cursor_pos = !rcmail.env.top_posting && message.length ? message.length+1 : 0;
          message += '\n\n' + sig;
        }
      }
      else
        cursor_pos = rcmail.env.top_posting ? 0 : message.length;
      input_message.val(message);
      // move cursor before the signature
      rcmail.set_caret_pos(input_message.get(0), cursor_pos);
    }
    else if (show_sig && rcmail.env.signatures) {  // html
      var sigElem = this.editor.dom.get('_rc_sig');
      // Append the signature as a div within the body
      if (!sigElem) {
        var body = this.editor.getBody(),
          doc = this.editor.getDoc();
        sigElem = doc.createElement('div');
        sigElem.setAttribute('id', '_rc_sig');
        if (rcmail.env.top_posting) {
          // if no existing sig and top posting then insert at caret pos
          this.editor.getWin().focus(); // correct focus in IE & Chrome
          var node = this.editor.selection.getNode();
          if (node.nodeName == 'BODY') {
            // no real focus, insert at start
            body.insertBefore(sigElem, body.firstChild);
            body.insertBefore(doc.createElement('br'), body.firstChild);
          }
          else {
            body.insertBefore(sigElem, node.nextSibling);
            body.insertBefore(doc.createElement('br'), node.nextSibling);
          }
        }
        else {
          body.appendChild(sigElem);
        }
      }
      if (rcmail.env.signatures[id]) {
        sigElem.innerHTML = rcmail.env.signatures[id].html;
      }
    }
  };
  // trigger content save
  this.save = function()
  {
    if (this.editor) {
      this.editor.save();
    }
  };
  // focus the editing area
  this.focus = function()
  {
    (this.editor || rcube_find_object(this.id)).focus();
  };
  // image selector
  this.file_browser_callback = function(field_name, url, type)
  {
    var i, elem, cancel, dialog, fn, list = [];
    // open image selector dialog
    dialog = this.editor.windowManager.open({
      title: rcmail.gettext('select' + type),
      width: 500,
      height: 300,
      html: '<div id="image-selector-list"><ul></ul></div>'
        + '<div id="image-selector-form"><div id="image-upload-button" class="mce-widget mce-btn" role="button" tabindex="0"></div></div>',
      buttons: [{text: 'Cancel', onclick: function() { ref.file_browser_close(); }}]
    });
    rcmail.env.file_browser_field = field_name;
    rcmail.env.file_browser_type = type;
    // fill images list with available images
    for (i in rcmail.env.attachments) {
      if (elem = ref.file_browser_entry(i, rcmail.env.attachments[i])) {
        list.push(elem);
      }
    }
    if (list.length) {
      $('#image-selector-list > ul').append(list).find('li:first').focus();
    }
    // add hint about max file size (in dialog footer)
    $('div.mce-abs-end', dialog.getEl()).append($('<div class="hint">')
      .text($('div.hint', rcmail.gui_objects.uploadform).text()));
    // init upload button
    elem = $('#image-upload-button').append($('<span>').text(rcmail.gettext('add' + type)));
    cancel = elem.parents('.mce-panel').find('button:last').parent();
    // we need custom Tab key handlers, until we find out why
    // tabindex do not work here as expected
    elem.keydown(function(e) {
      if (e.which == 9) {
        // on Tab + Shift focus first file
        if (rcube_event.get_modifier(e) == SHIFT_KEY)
          $('#image-selector-list li:last').focus();
        // on Tab focus Cancel button
        else
          cancel.focus();
        return false;
      }
    });
    cancel.keydown(function(e) {
      if (e.which == 9) {
        // on Tab + Shift focus upload button
        if (rcube_event.get_modifier(e) == SHIFT_KEY)
          elem.focus();
        else
          $('#image-selector-list li:first').focus();
        return false;
      }
    });
    // enable (smart) upload button
    this.hack_file_input(elem, rcmail.gui_objects.uploadform);
    // enable drag-n-drop area
    if ((window.XMLHttpRequest && XMLHttpRequest.prototype && XMLHttpRequest.prototype.sendAsBinary) || window.FormData) {
      if (!rcmail.env.filedrop) {
        rcmail.env.filedrop = {};
      }
      if (rcmail.gui_objects.filedrop) {
        rcmail.env.old_file_drop = rcmail.gui_objects.filedrop;
      }
      rcmail.gui_objects.filedrop = $('#image-selector-form');
      rcmail.gui_objects.filedrop.addClass('droptarget')
        .bind('dragover dragleave', function(e) {
          e.preventDefault();
          e.stopPropagation();
          $(this)[(e.type == 'dragover' ? 'addClass' : 'removeClass')]('hover');
        })
        .get(0).addEventListener('drop', function(e) { return rcmail.file_dropped(e); }, false);
    }
    // register handler for successful file upload
    if (!rcmail.env.file_dialog_event) {
      rcmail.env.file_dialog_event = true;
      rcmail.addEventListener('fileuploaded', function(attr) {
        var elem;
        if (elem = ref.file_browser_entry(attr.name, attr.attachment)) {
          $('#image-selector-list > ul').prepend(elem);
          elem.focus();
        }
      });
    }
    // @todo: upload progress indicator
  };
  // close file browser window
  this.file_browser_close = function(url)
  {
    var input = $('#' + rcmail.env.file_browser_field);
    if (url)
      input.val(url);
    this.editor.windowManager.close();
    input.focus();
    if (rcmail.env.old_file_drop)
      rcmail.gui_objects.filedrop = rcmail.env.old_file_drop;
  };
  // creates file browser entry
  this.file_browser_entry = function(file_id, file)
  {
    if (!file.complete || !file.mimetype) {
      return;
    }
    if (rcmail.file_upload_id) {
      rcmail.set_busy(false, null, rcmail.file_upload_id);
    }
    var rx, img_src;
    switch (rcmail.env.file_browser_type) {
      case 'image':
        rx = /^image\//i;
        break;
      case 'media':
        rx = /^video\//i;
        img_src = 'program/js/tinymce/roundcube/video.png';
        break;
      default:
        return;
    }
    if (rx.test(file.mimetype)) {
      var path = rcmail.env.comm_path + '&_from=' + rcmail.env.action,
        action = rcmail.env.compose_id ? '&_id=' + rcmail.env.compose_id + '&_action=display-attachment' : '&_action=upload-display',
        href = path + action + '&_file=' + file_id,
        img = $('<img>').attr({title: file.name, src: img_src ? img_src : href + '&_thumbnail=1'});
      return $('<li>').attr({tabindex: 0})
        .data('url', href)
        .append($('<span class="img">').append(img))
        .append($('<span class="name">').text(file.name))
        .click(function() { ref.file_browser_close($(this).data('url')); })
        .keydown(function(e) {
          if (e.which == 13) {
            ref.file_browser_close($(this).data('url'));
          }
          // we need custom Tab key handlers, until we find out why
          // tabindex do not work here as expected
          else if (e.which == 9) {
            if (rcube_event.get_modifier(e) == SHIFT_KEY) {
              if (!$(this).prev().focus().length)
                $('#image-upload-button').parents('.mce-panel').find('button:last').parent().focus();
            }
            else {
              if (!$(this).next().focus().length)
                $('#image-upload-button').focus();
            }
            return false;
          }
        });
    }
  };
  // create smart files upload button
  this.hack_file_input = function(elem, clone_form)
  {
    var link = $(elem),
      file = $('<input>').attr('name', '_file[]'),
      form = $('<form>').attr({method: 'post', enctype: 'multipart/form-data'}),
      offset = link.offset();
    // clone existing upload form
    if (clone_form) {
      file.attr('name', $('input[type="file"]', clone_form).attr('name'));
      form.attr('action', $(clone_form).attr('action'))
        .append($('<input>').attr({type: 'hidden', name: '_token', value: rcmail.env.request_token}));
    }
    function move_file_input(e) {
      file.css({top: (e.pageY - offset.top - 10) + 'px', left: (e.pageX - offset.left - 10) + 'px'});
    }
    file.attr({type: 'file', multiple: 'multiple', size: 5, title: '', tabindex: -1})
      .change(function() { rcmail.upload_file(form, 'upload'); })
      .click(function() { setTimeout(function() { link.mouseleave(); }, 20); })
      // opacity:0 does the trick, display/visibility doesn't work
      .css({opacity: 0, cursor: 'pointer', position: 'relative', outline: 'none'})
      .appendTo(form);
    // In FF and IE we need to move the browser file-input's button under the cursor
    // Thanks to the size attribute above we know the length of the input field
    if (navigator.userAgent.match(/Firefox|MSIE/))
      file.css({marginLeft: '-80px'});
    // Note: now, I observe problem with cursor style on FF < 4 only
    link.css({overflow: 'hidden', cursor: 'pointer'})
      .mouseenter(function() { this.__active = true; })
      // place button under the cursor
      .mousemove(function(e) {
        if (this.__active)
          move_file_input(e);
        // move the input away if button is disabled
        else
          $(this).mouseleave();
      })
      .mouseleave(function() {
        file.css({top: '-10000px', left: '-10000px'});
        this.__active = false;
      })
      .click(function(e) {
        // forward click if mouse-enter event was missed
        if (!this.__active) {
          this.__active = true;
          move_file_input(e);
          file.trigger(e);
        }
      })
      .keydown(function(e) {
        if (e.which == 13) file.trigger('click');
      })
      .mouseleave()
      .append(form);
  };
}
program/js/list.js
@@ -51,7 +51,7 @@
  this.rowcount = 0;
  this.colcount = 0;
  this.subject_col = -1;
  this.subject_col = 0;
  this.modkey = 0;
  this.multiselect = false;
  this.multiexpand = false;
@@ -60,12 +60,14 @@
  this.column_movable = false;
  this.keyboard = false;
  this.toggleselect = false;
  this.aria_listbox = false;
  this.parent_focus = true;
  this.drag_active = false;
  this.col_drag_active = false;
  this.column_fixed = null;
  this.last_selected = 0;
  this.shift_start = 0;
  this.last_selected = null;
  this.shift_start = null;
  this.focused = false;
  this.drag_mouse_start = null;
  this.dblclick_time = 500; // default value on MS Windows is 500
@@ -75,6 +77,9 @@
  if (p && typeof p === 'object')
    for (var n in p)
      this[n] = p[n];
  // register this instance
  rcube_list_widget._instances.push(this);
};
@@ -94,6 +99,14 @@
    this.tbody = this.list;
  }
  if ($(this.list).attr('role') == 'listbox') {
    this.aria_listbox = true;
    if (this.multiselect)
      $(this.list).attr('aria-multiselectable', 'true');
  }
  var me = this;
  if (this.tbody) {
    this.rows = {};
    this.rowcount = 0;
@@ -108,8 +121,17 @@
    this.frame = this.list.parentNode;
    // set body events
    if (this.keyboard)
    if (this.keyboard) {
      rcube_event.add_listener({event:'keydown', object:this, method:'key_press'});
      // allow the table element to receive focus.
      $(this.list).attr('tabindex', '0')
        .on('focus', function(e){ me.focus(e); });
    }
  }
  if (this.parent_focus) {
    this.list.parentNode.onclick = function(e) { me.focus(); };
  }
  return this;
@@ -154,6 +176,15 @@
      }, false);
    }
    // label the list row with the subject col as descriptive label
    if (this.aria_listbox) {
      var lbl_id = 'l:' + row.id;
      $(row)
        .attr('role', 'option')
        .attr('aria-labelledby', lbl_id)
        .find(this.col_tagname()).eq(this.subject_col).attr('id', lbl_id);
    }
    if (document.all)
      row.onselectstart = function() { return false; };
@@ -175,7 +206,7 @@
    if (this.fixed_header) {  // copy (modified) fixed header back to the actual table
      $(this.list.tHead).replaceWith($(this.fixed_header).find('thead').clone());
      $(this.list.tHead).find('tr td').attr('style', '');  // remove fixed widths
      $(this.list.tHead).find('th,td').attr('style', '').find('a').attr('tabindex', '-1');  // remove fixed widths
    }
    else if (!bw.touch && this.list.className.indexOf('fixedheader') >= 0) {
      this.init_fixed_header();
@@ -202,6 +233,7 @@
  if (!this.fixed_header) {
    this.fixed_header = $('<table>')
      .attr('class', this.list.className + ' fixedcopy')
      .attr('role', 'presentation')
      .css({ position:'fixed' })
      .append(clone)
      .append('<tbody></tbody>');
@@ -219,6 +251,12 @@
  else {
    $(this.fixed_header).find('thead').replaceWith(clone);
  }
  // avoid scrolling header links being focused
  $(this.list.tHead).find('a.sortcol').attr('tabindex', '-1');
  // set tabindex to fixed header sort links
  clone.find('a.sortcol').attr('tabindex', '0');
  this.thead = clone.get(0);
  this.resize();
@@ -262,6 +300,7 @@
  this.rows = {};
  this.rowcount = 0;
  this.last_selected = null;
  if (sel)
    this.clear_selection();
@@ -313,7 +352,7 @@
    if (row.id) domrow.id = row.id;
    if (row.className) domrow.className = row.className;
    if (row.style) $.extend(domrow.style, row.style);
    if (row.uid) $(domrow).data('uid', row.uid);
    if (row.uid) $(domrow).data('uid', String(row.uid)); // #1489906
    for (var e, domcell, col, i=0; row.cols && i < row.cols.length; i++) {
      col = row.cols[i];
@@ -370,39 +409,66 @@
 */
focus: function(e)
{
  var n, id;
  if (this.focused)
    return;
  this.focused = true;
  for (n in this.selection) {
    id = this.selection[n];
    if (this.rows[id] && this.rows[id].obj) {
      $(this.rows[id].obj).addClass('selected').removeClass('unfocused');
    }
  if (e)
    rcube_event.cancel(e);
  var focus_elem = null;
  if (this.last_selected && this.rows[this.last_selected]) {
    focus_elem = $(this.rows[this.last_selected].obj).find(this.col_tagname()).eq(this.subject_col).attr('tabindex', '0');
  }
  // Un-focus already focused elements (#1487123, #1487316, #1488600, #1488620)
  // It looks that window.focus() does the job for all browsers, but not Firefox (#1489058)
  $('iframe,:focus:not(body)').blur();
  window.focus();
  if (focus_elem && focus_elem.length) {
    // We now fix this by explicitly assigning focus to a dedicated link element
    this.focus_noscroll(focus_elem);
  }
  else {
    // It looks that window.focus() does the job for all browsers, but not Firefox (#1489058)
    $('iframe,:focus:not(body)').blur();
    window.focus();
  }
  if (e || (e = window.event))
    rcube_event.cancel(e);
  $(this.list).addClass('focus').removeAttr('tabindex');
  // set internal focus pointer to first row
  if (!this.last_selected)
    this.select_first(CONTROL_KEY);
},
/**
 * remove focus from the list
 */
blur: function()
blur: function(e)
{
  var n, id;
  this.focused = false;
  for (n in this.selection) {
    id = this.selection[n];
    if (this.rows[id] && this.rows[id].obj) {
      $(this.rows[id].obj).removeClass('selected focused').addClass('unfocused');
    }
  // avoid the table getting focus right again
  var me = this;
  setTimeout(function(){
    $(me.list).removeClass('focus').attr('tabindex', '0');
  }, 20);
  if (this.last_selected && this.rows[this.last_selected]) {
    $(this.rows[this.last_selected].obj)
      .find(this.col_tagname()).eq(this.subject_col).removeAttr('tabindex');
  }
},
/**
 * Focus the given element without scrolling the list container
 */
focus_noscroll: function(elem)
{
  var y = this.frame.scrollTop || this.frame.scrollY;
  elem.focus();
  this.frame.scrollTop = y;
},
@@ -522,6 +588,8 @@
  }
  this.rows[id].clicked = now;
  this.focus();
  return false;
},
@@ -794,9 +862,9 @@
get_first_row: function()
{
  if (this.rowcount) {
    var i, len, uid, rows = this.tbody.childNodes;
    var i, uid, rows = this.tbody.childNodes;
    for (i=0, len=rows.length-1; i<len; i++)
    for (i=0; i<rows.length; i++)
      if (rows[i].id && (uid = this.get_row_uid(rows[i])))
        return uid;
  }
@@ -839,9 +907,10 @@
 */
select_row: function(id, mod_key, with_mouse)
{
  var select_before = this.selection.join(',');
  var select_before = this.selection.join(','),
    in_selection_before = this.in_selection(id);
  if (!this.multiselect)
  if (!this.multiselect && with_mouse)
    mod_key = 0;
  if (!this.shift_start)
@@ -877,20 +946,26 @@
    this.multi_selecting = true;
  }
  // trigger event if selection changed
  if (this.selection.join(',') != select_before)
    this.triggerEvent('select');
  if (this.last_selected != 0 && this.rows[this.last_selected])
    $(this.rows[this.last_selected].obj).removeClass('focused');
  if (this.last_selected && this.rows[this.last_selected]) {
    $(this.rows[this.last_selected].obj).removeClass('focused')
      .find(this.col_tagname()).eq(this.subject_col).removeAttr('tabindex');
  }
  // unselect if toggleselect is active and the same row was clicked again
  if (this.toggleselect && this.last_selected == id) {
  if (this.toggleselect && in_selection_before && !mod_key) {
    this.clear_selection();
    id = null;
  }
  else
  // trigger event if selection changed
  else if (this.selection.join(',') != select_before) {
    this.triggerEvent('select');
  }
  if (this.rows[id]) {
    $(this.rows[id].obj).addClass('focused');
    // set cursor focus to link inside selected row
    if (this.focused)
      this.focus_noscroll($(this.rows[id].obj).find(this.col_tagname()).eq(this.subject_col).attr('tabindex', '0'));
  }
  if (!this.selection.length)
    this.shift_start = null;
@@ -1038,7 +1113,7 @@
      this.highlight_row(n, true, true);
    }
    else {
      $(this.rows[n].obj).removeClass('selected').removeClass('unfocused');
      $(this.rows[n].obj).removeClass('selected').removeAttr('aria-selected');
    }
  }
@@ -1095,14 +1170,16 @@
  else {
    for (n in this.selection)
      if (this.rows[this.selection[n]]) {
        $(this.rows[this.selection[n]].obj).removeClass('selected').removeClass('unfocused');
        $(this.rows[this.selection[n]].obj).removeClass('selected').removeAttr('aria-selected');
      }
    this.selection = [];
  }
  if (num_select && !this.selection.length && !no_event)
  if (num_select && !this.selection.length && !no_event) {
    this.triggerEvent('select');
    this.last_selected = null;
  }
},
@@ -1156,13 +1233,13 @@
    if (this.selection.length > 1 || !this.in_selection(id)) {
      this.clear_selection(null, true);
      this.selection[0] = id;
      $(this.rows[id].obj).addClass('selected');
      $(this.rows[id].obj).addClass('selected').attr('aria-selected', 'true');
    }
  }
  else {
    if (!this.in_selection(id)) { // select row
      this.selection.push(id);
      $(this.rows[id].obj).addClass('selected');
      $(this.rows[id].obj).addClass('selected').attr('aria-selected', 'true');
      if (!norecur && !this.rows[id].expanded)
        this.highlight_children(id, true);
    }
@@ -1172,7 +1249,7 @@
        a_post = this.selection.slice(p+1, this.selection.length);
      this.selection = a_pre.concat(a_post);
      $(this.rows[id].obj).removeClass('selected').removeClass('unfocused');
      $(this.rows[id].obj).removeClass('selected').removeAttr('aria-selected');
      if (!norecur && !this.rows[id].expanded)
        this.highlight_children(id, false);
    }
@@ -1252,6 +1329,14 @@
      return rcube_event.cancel(e);
    case 9: // Tab
      this.blur();
      break;
    case 13: // Enter
      if (!this.selection.length)
        this.select_row(this.last_selected, mod_key, false);
    default:
      this.key_pressed = keyCode;
      this.modkey = mod_key;
@@ -1311,8 +1396,16 @@
  }
  if (new_row) {
    // simulate ctr-key if no rows are selected
    if (!mod_key && !this.selection.length)
      mod_key = CONTROL_KEY;
    this.select_row(new_row.uid, mod_key, false);
    this.scrollto(new_row.uid);
  }
  else if (!new_row && !selected_row) {
    // select the first row if none selected yet
    this.select_first(CONTROL_KEY);
  }
  return false;
@@ -1324,7 +1417,8 @@
 */
scrollto: function(id)
{
  var row = this.rows[id].obj;
  var row = this.rows[id] ? this.rows[id].obj : null;
  if (row && this.frame) {
    var scroll_to = Number(row.offsetTop),
      head_offset = 0;
@@ -1413,7 +1507,11 @@
      $('> ' + self.col_tagname(), self.rows[uid].obj).each(function(n, cell) {
        if (self.subject_col < 0 || (self.subject_col >= 0 && self.subject_col == n)) {
          var subject = $(cell).text();
          // remove elements marked with "skip-on-drag" class
          cell = $(cell).clone();
          $(cell).find('.skip-on-drag').remove();
          var subject = cell.text();
          if (subject) {
            // remove leading spaces
@@ -1708,3 +1806,6 @@
rcube_list_widget.prototype.addEventListener = rcube_event_engine.prototype.addEventListener;
rcube_list_widget.prototype.removeEventListener = rcube_event_engine.prototype.removeEventListener;
rcube_list_widget.prototype.triggerEvent = rcube_event_engine.prototype.triggerEvent;
// static
rcube_list_widget._instances = [];
program/js/tiny_mce/langs/ar.js
File was deleted
program/js/tiny_mce/langs/az.js
File was deleted
program/js/tiny_mce/langs/bg.js
File was deleted
program/js/tiny_mce/langs/bn.js
File was deleted
program/js/tiny_mce/langs/br.js
File was deleted
program/js/tiny_mce/langs/bs.js
File was deleted
program/js/tiny_mce/langs/ca.js
File was deleted
program/js/tiny_mce/langs/cs.js
File was deleted
program/js/tiny_mce/langs/cy.js
File was deleted
program/js/tiny_mce/langs/da.js
File was deleted
program/js/tiny_mce/langs/de.js
File was deleted
program/js/tiny_mce/langs/el.js
File was deleted
program/js/tiny_mce/langs/en.js
File was deleted
program/js/tiny_mce/langs/eo.js
File was deleted
program/js/tiny_mce/langs/es.js
File was deleted
program/js/tiny_mce/langs/et.js
File was deleted
program/js/tiny_mce/langs/eu.js
File was deleted
program/js/tiny_mce/langs/fa.js
File was deleted
program/js/tiny_mce/langs/fi.js
File was deleted
program/js/tiny_mce/langs/fr.js
File was deleted
program/js/tiny_mce/langs/gl.js
File was deleted
program/js/tiny_mce/langs/he.js
File was deleted
program/js/tiny_mce/langs/hi.js
File was deleted
program/js/tiny_mce/langs/hr.js
File was deleted
program/js/tiny_mce/langs/hu.js
File was deleted
program/js/tiny_mce/langs/hy.js
File was deleted
program/js/tiny_mce/langs/id.js
File was deleted
program/js/tiny_mce/langs/is.js
File was deleted
program/js/tiny_mce/langs/it.js
File was deleted
program/js/tiny_mce/langs/ja.js
File was deleted
program/js/tiny_mce/langs/ka.js
File was deleted
program/js/tiny_mce/langs/ko.js
File was deleted
program/js/tiny_mce/langs/lt.js
File was deleted
program/js/tiny_mce/langs/lv.js
File was deleted
program/js/tiny_mce/langs/mk.js
File was deleted
program/js/tiny_mce/langs/ms.js
File was deleted
program/js/tiny_mce/langs/nb.js
File was deleted
program/js/tiny_mce/langs/nl.js
File was deleted
program/js/tiny_mce/langs/nn.js
File was deleted
program/js/tiny_mce/langs/pl.js
File was deleted
program/js/tiny_mce/langs/ps.js
File was deleted
program/js/tiny_mce/langs/pt.js
File was deleted
program/js/tiny_mce/langs/ro.js
File was deleted
program/js/tiny_mce/langs/ru.js
File was deleted
program/js/tiny_mce/langs/si.js
File was deleted
program/js/tiny_mce/langs/sk.js
File was deleted
program/js/tiny_mce/langs/sl.js
File was deleted
program/js/tiny_mce/langs/sq.js
File was deleted
program/js/tiny_mce/langs/sr.js
File was deleted
program/js/tiny_mce/langs/sv.js
File was deleted
program/js/tiny_mce/langs/ta.js
File was deleted
program/js/tiny_mce/langs/th.js
File was deleted
program/js/tiny_mce/langs/tr.js
File was deleted
program/js/tiny_mce/langs/uk.js
File was deleted
program/js/tiny_mce/langs/vi.js
File was deleted
program/js/tiny_mce/langs/zh-cn.js
File was deleted
program/js/tiny_mce/langs/zh-tw.js
File was deleted
program/js/tiny_mce/license.txt
File was deleted
program/js/tiny_mce/plugins/advhr/css/advhr.css
File was deleted
program/js/tiny_mce/plugins/advhr/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/advhr/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/advhr/js/rule.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/ar_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/az_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/bg_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/bn_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/br_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/bs_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/ca_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/cs_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/cy_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/da_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/de_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/el_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/en_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/eo_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/es_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/et_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/eu_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/fa_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/fi_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/fr_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/gl_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/he_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/hi_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/hr_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/hu_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/hy_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/id_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/is_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/it_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/ja_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/ka_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/ko_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/lt_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/lv_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/mk_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/ms_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/nb_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/nl_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/nn_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/pl_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/ps_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/pt_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/ro_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/ru_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/si_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/sk_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/sl_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/sq_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/sr_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/sv_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/ta_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/th_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/tr_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/uk_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/vi_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/zh-cn_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/langs/zh-tw_dlg.js
File was deleted
program/js/tiny_mce/plugins/advhr/rule.htm
File was deleted
program/js/tiny_mce/plugins/advimage/css/advimage.css
File was deleted
program/js/tiny_mce/plugins/advimage/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/advimage/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/advimage/image.htm
File was deleted
program/js/tiny_mce/plugins/advimage/img/sample.gif
Binary files differ
program/js/tiny_mce/plugins/advimage/js/image.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/ar_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/az_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/bg_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/bn_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/br_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/bs_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/ca_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/cs_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/cy_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/da_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/de_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/el_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/en_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/eo_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/es_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/et_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/eu_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/fa_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/fi_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/fr_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/gl_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/he_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/hi_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/hr_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/hu_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/hy_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/id_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/is_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/it_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/ja_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/ka_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/ko_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/lt_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/lv_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/mk_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/ms_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/nb_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/nl_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/nn_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/pl_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/ps_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/pt_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/ro_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/ru_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/si_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/sk_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/sl_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/sq_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/sr_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/sv_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/ta_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/th_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/tr_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/uk_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/vi_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/zh-cn_dlg.js
File was deleted
program/js/tiny_mce/plugins/advimage/langs/zh-tw_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/css/advlink.css
File was deleted
program/js/tiny_mce/plugins/advlink/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/advlink/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/advlink/js/advlink.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/ar_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/az_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/bg_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/bn_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/br_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/bs_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/ca_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/cs_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/cy_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/da_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/de_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/el_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/en_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/eo_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/es_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/et_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/eu_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/fa_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/fi_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/fr_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/gl_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/he_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/hi_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/hr_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/hu_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/hy_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/id_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/is_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/it_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/ja_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/ka_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/ko_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/lt_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/lv_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/mk_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/ms_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/nb_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/nl_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/nn_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/pl_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/ps_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/pt_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/ro_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/ru_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/si_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/sk_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/sl_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/sq_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/sr_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/sv_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/ta_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/th_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/tr_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/uk_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/vi_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/zh-cn_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/langs/zh-tw_dlg.js
File was deleted
program/js/tiny_mce/plugins/advlink/link.htm
File was deleted
program/js/tiny_mce/plugins/advlist/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/advlist/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/autolink/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/autolink/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/autoresize/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/autoresize/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/autosave/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/autosave/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/autosave/langs/en.js
File was deleted
program/js/tiny_mce/plugins/bbcode/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/bbcode/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/contextmenu/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/contextmenu/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/directionality/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/directionality/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/emotions/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/emotions/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/emotions/emotions.htm
File was deleted
program/js/tiny_mce/plugins/emotions/js/emotions.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/ar_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/az_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/bg_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/bn_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/br_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/bs_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/ca_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/cs_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/cy_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/da_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/de_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/el_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/en_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/eo_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/es_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/et_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/eu_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/fa_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/fi_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/fr_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/gl_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/he_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/hi_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/hr_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/hu_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/hy_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/id_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/is_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/it_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/ja_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/ka_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/ko_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/lt_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/lv_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/mk_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/ms_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/nb_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/nl_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/nn_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/pl_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/ps_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/pt_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/ro_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/ru_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/si_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/sk_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/sl_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/sq_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/sr_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/sv_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/ta_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/th_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/tr_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/uk_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/vi_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/zh-cn_dlg.js
File was deleted
program/js/tiny_mce/plugins/emotions/langs/zh-tw_dlg.js
File was deleted
program/js/tiny_mce/plugins/example/dialog.htm
File was deleted
program/js/tiny_mce/plugins/example/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/example/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/example/img/example.gif
Binary files differ
program/js/tiny_mce/plugins/example/js/dialog.js
File was deleted
program/js/tiny_mce/plugins/example/langs/en.js
File was deleted
program/js/tiny_mce/plugins/example/langs/en_dlg.js
File was deleted
program/js/tiny_mce/plugins/example_dependency/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/example_dependency/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/fullpage/css/fullpage.css
File was deleted
program/js/tiny_mce/plugins/fullpage/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/fullpage/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/fullpage/fullpage.htm
File was deleted
program/js/tiny_mce/plugins/fullpage/js/fullpage.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/ar_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/az_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/bg_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/bn_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/br_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/bs_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/ca_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/cs_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/cy_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/da_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/de_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/el_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/en_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/eo_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/es_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/et_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/eu_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/fa_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/fi_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/fr_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/gl_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/he_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/hi_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/hr_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/hu_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/hy_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/id_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/is_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/it_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/ja_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/ka_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/ko_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/lt_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/lv_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/mk_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/ms_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/nb_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/nl_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/nn_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/pl_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/ps_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/pt_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/ro_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/ru_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/si_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/sk_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/sl_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/sq_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/sr_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/sv_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/ta_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/th_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/tr_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/uk_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/vi_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/zh-cn_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullpage/langs/zh-tw_dlg.js
File was deleted
program/js/tiny_mce/plugins/fullscreen/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/fullscreen/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/fullscreen/fullscreen.htm
File was deleted
program/js/tiny_mce/plugins/iespell/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/iespell/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/inlinepopups/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/inlinepopups/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/alert.gif
Binary files differ
program/js/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/button.gif
Binary files differ
program/js/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif
Binary files differ
program/js/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/confirm.gif
Binary files differ
program/js/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/corners.gif
Binary files differ
program/js/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/horizontal.gif
Binary files differ
program/js/tiny_mce/plugins/inlinepopups/skins/clearlooks2/img/vertical.gif
Binary files differ
program/js/tiny_mce/plugins/inlinepopups/skins/clearlooks2/window.css
File was deleted
program/js/tiny_mce/plugins/inlinepopups/template.htm
File was deleted
program/js/tiny_mce/plugins/insertdatetime/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/insertdatetime/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/layer/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/layer/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/legacyoutput/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/legacyoutput/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/lists/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/lists/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/media/css/media.css
File was deleted
program/js/tiny_mce/plugins/media/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/media/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/media/js/embed.js
File was deleted
program/js/tiny_mce/plugins/media/js/media.js
File was deleted
program/js/tiny_mce/plugins/media/langs/ar_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/az_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/bg_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/bn_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/br_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/bs_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/ca_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/cs_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/cy_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/da_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/de_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/el_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/en_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/eo_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/es_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/et_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/eu_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/fa_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/fi_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/fr_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/gl_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/he_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/hi_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/hr_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/hu_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/hy_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/id_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/is_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/it_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/ja_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/ka_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/ko_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/lt_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/lv_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/mk_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/ms_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/nb_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/nl_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/nn_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/pl_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/ps_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/pt_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/ro_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/ru_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/si_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/sk_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/sl_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/sq_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/sr_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/sv_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/ta_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/th_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/tr_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/uk_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/vi_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/zh-cn_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/langs/zh-tw_dlg.js
File was deleted
program/js/tiny_mce/plugins/media/media.htm
File was deleted
program/js/tiny_mce/plugins/media/moxieplayer.swf
Binary files differ
program/js/tiny_mce/plugins/nonbreaking/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/nonbreaking/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/noneditable/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/noneditable/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/pagebreak/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/pagebreak/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/paste/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/paste/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/paste/js/pastetext.js
File was deleted
program/js/tiny_mce/plugins/paste/js/pasteword.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/ar_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/az_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/bg_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/bn_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/br_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/bs_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/ca_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/cs_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/cy_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/da_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/de_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/el_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/en_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/eo_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/es_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/et_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/eu_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/fa_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/fi_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/fr_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/gl_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/he_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/hi_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/hr_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/hu_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/hy_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/id_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/is_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/it_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/ja_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/ka_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/ko_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/lt_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/lv_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/mk_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/ms_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/nb_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/nl_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/nn_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/pl_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/ps_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/pt_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/ro_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/ru_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/si_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/sk_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/sl_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/sq_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/sr_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/sv_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/ta_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/th_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/tr_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/uk_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/vi_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/zh-cn_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/langs/zh-tw_dlg.js
File was deleted
program/js/tiny_mce/plugins/paste/pastetext.htm
File was deleted
program/js/tiny_mce/plugins/paste/pasteword.htm
File was deleted
program/js/tiny_mce/plugins/preview/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/preview/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/preview/example.html
File was deleted
program/js/tiny_mce/plugins/preview/jscripts/embed.js
File was deleted
program/js/tiny_mce/plugins/preview/preview.html
File was deleted
program/js/tiny_mce/plugins/print/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/print/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/save/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/save/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/css/searchreplace.css
File was deleted
program/js/tiny_mce/plugins/searchreplace/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/js/searchreplace.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/ar_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/az_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/bg_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/bn_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/br_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/bs_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/ca_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/cs_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/cy_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/da_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/de_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/el_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/en_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/eo_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/es_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/et_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/eu_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/fa_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/fi_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/fr_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/gl_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/he_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/hi_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/hr_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/hu_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/hy_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/id_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/is_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/it_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/ja_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/ka_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/ko_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/lt_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/lv_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/mk_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/ms_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/nb_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/nl_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/nn_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/pl_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/ps_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/pt_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/ro_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/ru_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/si_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/sk_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/sl_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/sq_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/sr_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/sv_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/ta_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/th_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/tr_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/uk_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/vi_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/zh-cn_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/langs/zh-tw_dlg.js
File was deleted
program/js/tiny_mce/plugins/searchreplace/searchreplace.htm
File was deleted
program/js/tiny_mce/plugins/spellchecker/css/content.css
File was deleted
program/js/tiny_mce/plugins/spellchecker/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/spellchecker/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/spellchecker/img/wline.gif
Binary files differ
program/js/tiny_mce/plugins/style/css/props.css
File was deleted
program/js/tiny_mce/plugins/style/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/style/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/style/js/props.js
File was deleted
program/js/tiny_mce/plugins/style/langs/ar_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/az_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/bg_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/bn_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/br_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/bs_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/ca_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/cs_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/cy_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/da_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/de_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/el_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/en_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/eo_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/es_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/et_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/eu_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/fa_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/fi_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/fr_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/gl_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/he_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/hi_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/hr_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/hu_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/hy_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/id_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/is_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/it_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/ja_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/ka_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/ko_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/lt_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/lv_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/mk_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/ms_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/nb_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/nl_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/nn_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/pl_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/ps_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/pt_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/ro_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/ru_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/si_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/sk_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/sl_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/sq_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/sr_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/sv_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/ta_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/th_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/tr_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/uk_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/vi_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/zh-cn_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/langs/zh-tw_dlg.js
File was deleted
program/js/tiny_mce/plugins/style/props.htm
File was deleted
program/js/tiny_mce/plugins/style/readme.txt
File was deleted
program/js/tiny_mce/plugins/tabfocus/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/tabfocus/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/table/cell.htm
File was deleted
program/js/tiny_mce/plugins/table/css/cell.css
File was deleted
program/js/tiny_mce/plugins/table/css/row.css
File was deleted
program/js/tiny_mce/plugins/table/css/table.css
File was deleted
program/js/tiny_mce/plugins/table/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/table/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/table/js/cell.js
File was deleted
program/js/tiny_mce/plugins/table/js/merge_cells.js
File was deleted
program/js/tiny_mce/plugins/table/js/row.js
File was deleted
program/js/tiny_mce/plugins/table/js/table.js
File was deleted
program/js/tiny_mce/plugins/table/langs/ar_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/az_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/bg_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/bn_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/br_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/bs_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/ca_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/cs_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/cy_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/da_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/de_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/el_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/en_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/eo_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/es_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/et_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/eu_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/fa_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/fi_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/fr_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/gl_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/he_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/hi_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/hr_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/hu_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/hy_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/id_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/is_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/it_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/ja_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/ka_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/ko_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/lt_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/lv_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/mk_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/ms_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/nb_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/nl_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/nn_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/pl_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/ps_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/pt_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/ro_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/ru_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/si_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/sk_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/sl_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/sq_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/sr_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/sv_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/ta_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/th_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/tr_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/uk_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/vi_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/zh-cn_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/langs/zh-tw_dlg.js
File was deleted
program/js/tiny_mce/plugins/table/merge_cells.htm
File was deleted
program/js/tiny_mce/plugins/table/row.htm
File was deleted
program/js/tiny_mce/plugins/table/table.htm
File was deleted
program/js/tiny_mce/plugins/template/blank.htm
File was deleted
program/js/tiny_mce/plugins/template/css/template.css
File was deleted
program/js/tiny_mce/plugins/template/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/template/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/template/js/template.js
File was deleted
program/js/tiny_mce/plugins/template/langs/ar_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/az_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/bg_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/bn_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/br_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/bs_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/ca_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/cs_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/cy_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/da_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/de_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/el_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/en_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/eo_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/es_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/et_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/eu_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/fa_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/fi_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/fr_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/gl_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/he_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/hi_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/hr_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/hu_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/hy_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/id_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/is_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/it_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/ja_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/ka_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/ko_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/lt_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/lv_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/mk_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/ms_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/nb_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/nl_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/nn_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/pl_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/ps_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/pt_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/ro_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/ru_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/si_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/sk_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/sl_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/sq_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/sr_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/sv_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/ta_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/th_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/tr_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/uk_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/vi_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/zh-cn_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/langs/zh-tw_dlg.js
File was deleted
program/js/tiny_mce/plugins/template/template.htm
File was deleted
program/js/tiny_mce/plugins/visualblocks/css/visualblocks.css
File was deleted
program/js/tiny_mce/plugins/visualblocks/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/visualblocks/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/visualchars/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/visualchars/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/wordcount/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/wordcount/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/abbr.htm
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/acronym.htm
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/attributes.htm
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/cite.htm
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/css/attributes.css
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/css/popup.css
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/del.htm
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/editor_plugin.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/editor_plugin_src.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/ins.htm
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/js/abbr.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/js/acronym.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/js/attributes.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/js/cite.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/js/del.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/js/element_common.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/js/ins.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/ar_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/az_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/bg_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/bn_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/br_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/bs_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/ca_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/cs_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/cy_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/da_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/de_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/el_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/en_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/eo_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/es_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/et_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/eu_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/fa_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/fi_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/fr_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/gl_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/he_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/hi_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/hr_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/hu_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/hy_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/id_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/is_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/it_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/ja_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/ka_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/ko_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/lt_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/lv_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/mk_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/ms_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/nb_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/nl_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/nn_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/pl_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/ps_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/pt_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/ro_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/ru_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/si_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/sk_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/sl_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/sq_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/sr_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/sv_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/ta_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/th_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/tr_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/uk_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/vi_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/zh-cn_dlg.js
File was deleted
program/js/tiny_mce/plugins/xhtmlxtras/langs/zh-tw_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/about.htm
File was deleted
program/js/tiny_mce/themes/advanced/anchor.htm
File was deleted
program/js/tiny_mce/themes/advanced/charmap.htm
File was deleted
program/js/tiny_mce/themes/advanced/color_picker.htm
File was deleted
program/js/tiny_mce/themes/advanced/editor_template.js
File was deleted
program/js/tiny_mce/themes/advanced/editor_template_src.js
File was deleted
program/js/tiny_mce/themes/advanced/image.htm
File was deleted
program/js/tiny_mce/themes/advanced/img/colorpicker.jpg
Binary files differ
program/js/tiny_mce/themes/advanced/img/flash.gif
Binary files differ
program/js/tiny_mce/themes/advanced/img/icons.gif
Binary files differ
program/js/tiny_mce/themes/advanced/img/iframe.gif
Binary files differ
program/js/tiny_mce/themes/advanced/img/pagebreak.gif
Binary files differ
program/js/tiny_mce/themes/advanced/img/quicktime.gif
Binary files differ
program/js/tiny_mce/themes/advanced/img/realmedia.gif
Binary files differ
program/js/tiny_mce/themes/advanced/img/shockwave.gif
Binary files differ
program/js/tiny_mce/themes/advanced/img/video.gif
Binary files differ
program/js/tiny_mce/themes/advanced/img/windowsmedia.gif
Binary files differ
program/js/tiny_mce/themes/advanced/js/about.js
File was deleted
program/js/tiny_mce/themes/advanced/js/anchor.js
File was deleted
program/js/tiny_mce/themes/advanced/js/charmap.js
File was deleted
program/js/tiny_mce/themes/advanced/js/color_picker.js
File was deleted
program/js/tiny_mce/themes/advanced/js/image.js
File was deleted
program/js/tiny_mce/themes/advanced/js/link.js
File was deleted
program/js/tiny_mce/themes/advanced/js/source_editor.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/ar.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/ar_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/az.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/az_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/bg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/bg_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/bn.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/bn_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/br.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/br_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/bs.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/bs_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/ca.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/ca_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/cs.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/cs_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/cy.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/cy_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/da.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/da_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/de.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/de_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/el.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/el_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/en.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/en_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/eo.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/eo_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/es.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/es_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/et.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/et_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/eu.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/eu_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/fa.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/fa_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/fi.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/fi_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/fr.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/fr_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/gl.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/gl_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/he.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/he_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/hi.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/hi_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/hr.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/hr_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/hu.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/hu_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/hy.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/hy_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/id.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/id_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/is.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/is_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/it.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/it_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/ja.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/ja_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/ka.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/ka_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/ko.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/ko_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/lt.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/lt_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/lv.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/lv_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/mk.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/mk_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/ms.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/ms_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/nb.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/nb_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/nl.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/nl_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/nn.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/nn_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/pl.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/pl_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/ps.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/ps_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/pt.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/pt_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/ro.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/ro_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/ru.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/ru_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/si.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/si_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/sk.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/sk_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/sl.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/sl_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/sq.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/sq_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/sr.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/sr_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/sv.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/sv_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/ta.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/ta_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/th.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/th_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/tr.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/tr_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/uk.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/uk_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/vi.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/vi_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/zh-cn.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/zh-cn_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/zh-tw.js
File was deleted
program/js/tiny_mce/themes/advanced/langs/zh-tw_dlg.js
File was deleted
program/js/tiny_mce/themes/advanced/link.htm
File was deleted
program/js/tiny_mce/themes/advanced/shortcuts.htm
File was deleted
program/js/tiny_mce/themes/advanced/skins/default/content.css
File was deleted
program/js/tiny_mce/themes/advanced/skins/default/dialog.css
File was deleted
program/js/tiny_mce/themes/advanced/skins/default/img/buttons.png
Binary files differ
program/js/tiny_mce/themes/advanced/skins/default/img/items.gif
Binary files differ
program/js/tiny_mce/themes/advanced/skins/default/img/menu_arrow.gif
Binary files differ
program/js/tiny_mce/themes/advanced/skins/default/img/menu_check.gif
Binary files differ
program/js/tiny_mce/themes/advanced/skins/default/img/progress.gif
Binary files differ
program/js/tiny_mce/themes/advanced/skins/default/img/tabs.gif
Binary files differ
program/js/tiny_mce/themes/advanced/skins/default/ui.css
File was deleted
program/js/tiny_mce/themes/advanced/skins/highcontrast/content.css
File was deleted
program/js/tiny_mce/themes/advanced/skins/highcontrast/dialog.css
File was deleted
program/js/tiny_mce/themes/advanced/skins/highcontrast/ui.css
File was deleted
program/js/tiny_mce/themes/advanced/skins/o2k7/content.css
File was deleted
program/js/tiny_mce/themes/advanced/skins/o2k7/dialog.css
File was deleted
program/js/tiny_mce/themes/advanced/skins/o2k7/img/button_bg.png
Binary files differ
program/js/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_black.png
Binary files differ
program/js/tiny_mce/themes/advanced/skins/o2k7/img/button_bg_silver.png
Binary files differ
program/js/tiny_mce/themes/advanced/skins/o2k7/ui.css
File was deleted
program/js/tiny_mce/themes/advanced/skins/o2k7/ui_black.css
File was deleted
program/js/tiny_mce/themes/advanced/skins/o2k7/ui_silver.css
File was deleted
program/js/tiny_mce/themes/advanced/source_editor.htm
File was deleted
program/js/tiny_mce/themes/simple/editor_template.js
File was deleted
program/js/tiny_mce/themes/simple/editor_template_src.js
File was deleted
program/js/tiny_mce/themes/simple/img/icons.gif
Binary files differ
program/js/tiny_mce/themes/simple/langs/ar.js
File was deleted
program/js/tiny_mce/themes/simple/langs/az.js
File was deleted
program/js/tiny_mce/themes/simple/langs/bg.js
File was deleted
program/js/tiny_mce/themes/simple/langs/bn.js
File was deleted
program/js/tiny_mce/themes/simple/langs/br.js
File was deleted
program/js/tiny_mce/themes/simple/langs/bs.js
File was deleted
program/js/tiny_mce/themes/simple/langs/ca.js
File was deleted
program/js/tiny_mce/themes/simple/langs/cs.js
File was deleted
program/js/tiny_mce/themes/simple/langs/cy.js
File was deleted
program/js/tiny_mce/themes/simple/langs/da.js
File was deleted
program/js/tiny_mce/themes/simple/langs/de.js
File was deleted
program/js/tiny_mce/themes/simple/langs/el.js
File was deleted
program/js/tiny_mce/themes/simple/langs/en.js
File was deleted
program/js/tiny_mce/themes/simple/langs/eo.js
File was deleted
program/js/tiny_mce/themes/simple/langs/es.js
File was deleted
program/js/tiny_mce/themes/simple/langs/et.js
File was deleted
program/js/tiny_mce/themes/simple/langs/eu.js
File was deleted
program/js/tiny_mce/themes/simple/langs/fa.js
File was deleted
program/js/tiny_mce/themes/simple/langs/fi.js
File was deleted
program/js/tiny_mce/themes/simple/langs/fr.js
File was deleted
program/js/tiny_mce/themes/simple/langs/gl.js
File was deleted
program/js/tiny_mce/themes/simple/langs/he.js
File was deleted
program/js/tiny_mce/themes/simple/langs/hi.js
File was deleted
program/js/tiny_mce/themes/simple/langs/hr.js
File was deleted
program/js/tiny_mce/themes/simple/langs/hu.js
File was deleted
program/js/tiny_mce/themes/simple/langs/hy.js
File was deleted
program/js/tiny_mce/themes/simple/langs/id.js
File was deleted
program/js/tiny_mce/themes/simple/langs/is.js
File was deleted
program/js/tiny_mce/themes/simple/langs/it.js
File was deleted
program/js/tiny_mce/themes/simple/langs/ja.js
File was deleted
program/js/tiny_mce/themes/simple/langs/ka.js
File was deleted
program/js/tiny_mce/themes/simple/langs/ko.js
File was deleted
program/js/tiny_mce/themes/simple/langs/lt.js
File was deleted
program/js/tiny_mce/themes/simple/langs/lv.js
File was deleted
program/js/tiny_mce/themes/simple/langs/mk.js
File was deleted
program/js/tiny_mce/themes/simple/langs/ms.js
File was deleted
program/js/tiny_mce/themes/simple/langs/nb.js
File was deleted
program/js/tiny_mce/themes/simple/langs/nl.js
File was deleted
program/js/tiny_mce/themes/simple/langs/nn.js
File was deleted
program/js/tiny_mce/themes/simple/langs/pl.js
File was deleted
program/js/tiny_mce/themes/simple/langs/ps.js
File was deleted
program/js/tiny_mce/themes/simple/langs/pt.js
File was deleted
program/js/tiny_mce/themes/simple/langs/ro.js
File was deleted
program/js/tiny_mce/themes/simple/langs/ru.js
File was deleted
program/js/tiny_mce/themes/simple/langs/si.js
File was deleted
program/js/tiny_mce/themes/simple/langs/sk.js
File was deleted
program/js/tiny_mce/themes/simple/langs/sl.js
File was deleted
program/js/tiny_mce/themes/simple/langs/sq.js
File was deleted
program/js/tiny_mce/themes/simple/langs/sr.js
File was deleted
program/js/tiny_mce/themes/simple/langs/sv.js
File was deleted
program/js/tiny_mce/themes/simple/langs/ta.js
File was deleted
program/js/tiny_mce/themes/simple/langs/th.js
File was deleted
program/js/tiny_mce/themes/simple/langs/tr.js
File was deleted
program/js/tiny_mce/themes/simple/langs/uk.js
File was deleted
program/js/tiny_mce/themes/simple/langs/vi.js
File was deleted
program/js/tiny_mce/themes/simple/langs/zh-cn.js
File was deleted
program/js/tiny_mce/themes/simple/langs/zh-tw.js
File was deleted
program/js/tiny_mce/themes/simple/skins/default/content.css
File was deleted
program/js/tiny_mce/themes/simple/skins/default/ui.css
File was deleted
program/js/tiny_mce/themes/simple/skins/o2k7/content.css
File was deleted
program/js/tiny_mce/themes/simple/skins/o2k7/img/button_bg.png
Binary files differ
program/js/tiny_mce/themes/simple/skins/o2k7/ui.css
File was deleted
program/js/tiny_mce/tiny_mce.js
File was deleted
program/js/tiny_mce/tiny_mce_popup.js
File was deleted
program/js/tiny_mce/tiny_mce_src.js
File was deleted
program/js/tiny_mce/utils/editable_selects.js
File was deleted
program/js/tiny_mce/utils/form_utils.js
File was deleted
program/js/tiny_mce/utils/mctabs.js
File was deleted
program/js/tiny_mce/utils/validate.js
File was deleted
program/js/tinymce/langs/ar.js
New file
@@ -0,0 +1,180 @@
tinymce.addI18n('ar',{
"Cut": "\u0642\u0635",
"Header 2": "\u0627\u0644\u0639\u0646\u0627\u0648\u064a\u0646 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "\u0645\u062a\u0635\u0641\u062d\u0643 \u0644\u0627 \u064a\u062f\u0639\u0645 \u0627\u0644\u0648\u0635\u0648\u0644 \u0627\u0644\u0645\u0628\u0627\u0634\u0631 \u0625\u0644\u0649 \u0627\u0644\u062d\u0627\u0641\u0638\u0629. \u0627\u0644\u0631\u062c\u0627\u0621 \u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u0627\u062e\u062a\u0635\u0627\u0631\u0627\u062a \u0644\u0648\u062d\u0629 \u0627\u0644\u0645\u0641\u0627\u062a\u064a\u062d Ctrl+X\/C\/V \u0628\u062f\u0644\u0627 \u0645\u0646 \u0630\u0644\u0643.",
"Div": "Div",
"Paste": "\u0644\u0635\u0642",
"Close": "\u0625\u063a\u0644\u0627\u0642",
"Font Family": "\u0639\u0627\u0626\u0644\u0629 \u0627\u0644\u062e\u0637",
"Pre": "\u0628\u0627\u062f\u0626\u0629",
"Align right": "\u0645\u062d\u0627\u0630\u0627\u0629 \u0627\u0644\u0646\u0635 \u0644\u0644\u064a\u0645\u064a\u0646",
"New document": "\u0645\u0633\u062a\u0646\u062f \u062c\u062f\u064a\u062f",
"Blockquote": "\u0639\u0644\u0627\u0645\u0627\u062a \u0627\u0644\u0627\u0642\u062a\u0628\u0627\u0633",
"Numbered list": "\u062a\u0631\u0642\u064a\u0645",
"Increase indent": "\u0632\u064a\u0627\u062f\u0629 \u0627\u0644\u0645\u0633\u0627\u0641\u0629 \u0627\u0644\u0628\u0627\u062f\u0626\u0629",
"Formats": "\u0627\u0644\u062a\u0646\u0633\u064a\u0642\u0627\u062a",
"Headers": "\u0627\u0644\u0639\u0646\u0627\u0648\u064a\u0646",
"Select all": "\u062a\u062d\u062f\u064a\u062f \u0627\u0644\u0643\u0644",
"Header 3": "\u0627\u0644\u0639\u0646\u0627\u0648\u064a\u0646 3",
"Blocks": "\u0627\u0644\u0623\u0642\u0633\u0627\u0645",
"Undo": "\u062a\u0631\u0627\u062c\u0639",
"Strikethrough": "\u064a\u062a\u0648\u0633\u0637 \u062e\u0637",
"Bullet list": "\u062a\u0639\u062f\u0627\u062f \u0646\u0642\u0637\u064a",
"Header 1": "\u0627\u0644\u0639\u0646\u0627\u0648\u064a\u0646 1",
"Superscript": "\u0645\u0631\u062a\u0641\u0639",
"Clear formatting": "\u0645\u0633\u062d \u0627\u0644\u062a\u0646\u0633\u064a\u0642",
"Font Sizes": "\u062d\u062c\u0645 \u0627\u0644\u062e\u0637",
"Subscript": "\u0645\u0646\u062e\u0641\u0636",
"Header 6": "\u0627\u0644\u0639\u0646\u0627\u0648\u064a\u0646 6",
"Redo": "\u0625\u0639\u0627\u062f\u0629",
"Paragraph": "\u0641\u0642\u0631\u0629",
"Ok": "\u0645\u0648\u0627\u0641\u0642",
"Bold": "\u063a\u0627\u0645\u0642",
"Code": "\u0643\u0648\u062f",
"Italic": "\u0645\u0627\u0626\u0644",
"Align center": "\u062a\u0648\u0633\u064a\u0637",
"Header 5": "\u0627\u0644\u0639\u0646\u0627\u0648\u064a\u0646 5",
"Decrease indent": "\u0625\u0646\u0642\u0627\u0635 \u0627\u0644\u0645\u0633\u0627\u0641\u0629 \u0627\u0644\u0628\u0627\u062f\u0626\u0629",
"Header 4": "\u0627\u0644\u0639\u0646\u0627\u0648\u064a\u0646 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "\u0639\u0645\u0644\u064a\u0629 \u0627\u0644\u0644\u0635\u0642 \u0645\u0646 \u062d\u0627\u0644\u064a\u0627 \u0628\u0637\u0631\u064a\u0642\u0629 \u0627\u0644\u0646\u0635 \u0627\u0644\u0639\u0627\u062f\u064a. \u0633\u064a\u062a\u0645\u0643\u0646 \u0627\u0644\u0622\u0646 \u0645\u0646 \u0644\u0635\u0642 \u0643\u0644 \u0627\u0644\u0645\u062d\u062a\u0648\u064a\u0627\u062a \u0643\u0646\u0635 \u0639\u0627\u062f\u064a \u062d\u062a\u0649 \u062a\u0642\u0648\u0645 \u0628\u062a\u0639\u0637\u064a\u0644 \u0647\u0630\u0627 \u0627\u0644\u062e\u064a\u0627\u0631.",
"Underline": "\u062a\u0633\u0637\u064a\u0631",
"Cancel": "\u0625\u0644\u063a\u0627\u0621",
"Justify": "\u0636\u0628\u0637",
"Inline": "\u062e\u0644\u0627\u0644",
"Copy": "\u0646\u0633\u062e",
"Align left": "\u0645\u062d\u0627\u0630\u0627\u0629 \u0627\u0644\u0646\u0635 \u0644\u0644\u064a\u0633\u0627\u0631",
"Visual aids": "\u0627\u0644\u0645\u0639\u064a\u0646\u0627\u062a \u0627\u0644\u0628\u0635\u0631\u064a\u0629",
"Lower Greek": "\u062a\u0631\u0642\u064a\u0645 \u064a\u0648\u0646\u0627\u0646\u064a \u0635\u063a\u064a\u0631",
"Square": "\u0645\u0631\u0628\u0639",
"Default": "\u0627\u0644\u0627\u0641\u062a\u0631\u0627\u0636\u064a",
"Lower Alpha": "\u062a\u0631\u0642\u064a\u0645 \u0623\u062e\u0631\u0641 \u0635\u063a\u064a\u0631\u0629",
"Circle": "\u062f\u0627\u0626\u0631\u0629",
"Disc": "\u0642\u0631\u0635",
"Upper Alpha": "\u062a\u0631\u0642\u064a\u0645 \u0623\u062d\u0631\u0641 \u0643\u0628\u064a\u0631\u0629",
"Upper Roman": "\u062a\u0631\u0642\u064a\u0645 \u0631\u0648\u0645\u0627\u0646\u064a \u0643\u0628\u064a\u0631",
"Lower Roman": "\u062a\u0631\u0642\u064a\u0645 \u0631\u0648\u0645\u0627\u0646\u064a \u0635\u063a\u064a\u0631",
"Name": "\u0627\u0644\u0627\u0633\u0645",
"Anchor": "\u0645\u0631\u0633\u0627\u0629",
"You have unsaved changes are you sure you want to navigate away?": "\u0644\u062f\u064a\u0643 \u062a\u063a\u064a\u064a\u0631\u0627\u062a \u0644\u0645 \u064a\u062a\u0645 \u062d\u0641\u0638\u0647\u0627 \u0647\u0644 \u0623\u0646\u062a \u0645\u062a\u0623\u0643\u062f \u0623\u0646\u0643 \u062a\u0631\u063a\u0628 \u0641\u064a \u0627\u0644\u0627\u0646\u062a\u0642\u0627\u0644 \u0628\u0639\u064a\u062f\u0627\u061f",
"Restore last draft": "\u0627\u0633\u062a\u0639\u0627\u062f\u0629 \u0623\u062e\u0631 \u0645\u0633\u0648\u062f\u0629",
"Special character": "\u0631\u0645\u0632",
"Source code": "\u0634\u0641\u0631\u0629 \u0627\u0644\u0645\u0635\u062f\u0631",
"Right to left": "\u0645\u0646 \u0627\u0644\u064a\u0645\u064a\u0646 \u0644\u0644\u064a\u0633\u0627\u0631",
"Left to right": "\u0645\u0646 \u0627\u0644\u064a\u0633\u0627\u0631 \u0644\u0644\u064a\u0645\u064a\u0646",
"Emoticons": "\u0627\u0644\u0631\u0645\u0648\u0632",
"Robots": "\u0627\u0644\u0631\u0648\u0628\u0648\u062a\u0627\u062a",
"Document properties": "\u062e\u0635\u0627\u0626\u0635 \u0627\u0644\u0645\u0633\u062a\u0646\u062f",
"Title": "\u0627\u0644\u0639\u0646\u0648\u0627\u0646",
"Keywords": "\u0643\u0644\u0645\u0627\u062a \u0627\u0644\u0628\u062d\u062b",
"Encoding": "\u0627\u0644\u062a\u0631\u0645\u064a\u0632",
"Description": "\u0627\u0644\u0648\u0635\u0641",
"Author": "\u0627\u0644\u0643\u0627\u062a\u0628",
"Fullscreen": "\u0645\u0644\u0621 \u0627\u0644\u0634\u0627\u0634\u0629",
"Horizontal line": "\u062e\u0637 \u0623\u0641\u0642\u064a",
"Horizontal space": "\u0645\u0633\u0627\u0641\u0629 \u0623\u0641\u0642\u064a\u0629",
"Insert\/edit image": "\u0625\u062f\u0631\u0627\u062c\/\u062a\u062d\u0631\u064a\u0631 \u0635\u0648\u0631\u0629",
"General": "\u0639\u0627\u0645",
"Advanced": "\u062e\u0635\u0627\u0626\u0635 \u0645\u062a\u0642\u062f\u0645\u0647",
"Source": "\u0627\u0644\u0645\u0635\u062f\u0631",
"Border": "\u062d\u062f\u0648\u062f",
"Constrain proportions": "\u0627\u0644\u062a\u0646\u0627\u0633\u0628",
"Vertical space": "\u0645\u0633\u0627\u0641\u0629 \u0639\u0645\u0648\u062f\u064a\u0629",
"Image description": "\u0648\u0635\u0641 \u0627\u0644\u0635\u0648\u0631\u0629",
"Style": "\u0627\u0644\u0646\u0645\u0637 \/ \u0627\u0644\u0634\u0643\u0644",
"Dimensions": "\u0627\u0644\u0623\u0628\u0639\u0627\u062f",
"Insert image": "\u0625\u062f\u0631\u0627\u062c \u0635\u0648\u0631\u0629",
"Insert date\/time": "\u0625\u062f\u0631\u0627\u062c \u062a\u0627\u0631\u064a\u062e\/\u0648\u0642\u062a",
"Remove link": "\u062d\u0630\u0641 \u0627\u0644\u0631\u0627\u0628\u0637",
"Url": "\u0627\u0644\u0639\u0646\u0648\u0627\u0646",
"Text to display": "\u0627\u0644\u0646\u0635 \u0627\u0644\u0645\u0637\u0644\u0648\u0628 \u0639\u0631\u0636\u0647",
"Anchors": "\u0645\u0631\u0633\u0627\u0629",
"Insert link": "\u0625\u062f\u0631\u0627\u062c \u0631\u0627\u0628\u0637",
"New window": "\u0646\u0627\u0641\u0630\u0629 \u062c\u062f\u064a\u062f\u0629",
"None": "\u0628\u0644\u0627",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "\u0646\u062a\u0648\u0642\u0639 \u0627\u0646\u0643 \u0642\u0645\u062a \u0628\u0625\u062f\u0631\u0627\u062c \u0631\u0627\u0628\u0637 \u0644\u0645\u0648\u0642\u0639 \u062e\u0627\u0631\u062c\u064a. \u0647\u0644 \u062a\u0631\u064a\u062f \u0627\u0646 \u0646\u0636\u064a\u0641 \u0627\u0644\u0644\u0627\u062d\u0642\u0629 http:\/\/ \u0644\u0644\u0631\u0627\u0628\u0637 \u0627\u0644\u0630\u064a \u0627\u062f\u062e\u0644\u062a\u0647\u061f",
"Target": "\u0627\u0644\u0625\u0637\u0627\u0631 \u0627\u0644\u0647\u062f\u0641",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "\u0627\u0644\u0631\u0627\u0628\u0637 \u0627\u0644\u0630\u064a \u0642\u0645\u062a \u0628\u0625\u062f\u0631\u0627\u062c\u0647 \u064a\u0634\u0627\u0628\u0647 \u0627\u0644\u0628\u0631\u064a\u062f \u0627\u0644\u0627\u0644\u0643\u062a\u0631\u0648\u0646\u064a. \u0647\u0644 \u062a\u0631\u064a\u062f \u0627\u0646 \u062a\u0636\u064a\u0641 \u0627\u0644\u0644\u0627\u062d\u0642\u0629 mailto: \u0645\u0639\u062a\u0628\u0631\u0627\u064b \u0647\u0630\u0627 \u0627\u0644\u0631\u0627\u0628\u0637 \u0628\u0631\u064a\u062f\u0627 \u0627\u0644\u0643\u062a\u0631\u0648\u0646\u064a\u0627\u064b\u061f",
"Insert\/edit link": "\u0625\u062f\u0631\u0627\u062c\/\u062a\u062d\u0631\u064a\u0631 \u0631\u0627\u0628\u0637",
"Insert\/edit video": "\u0625\u062f\u0631\u0627\u062c\/\u062a\u062d\u0631\u064a\u0631 \u0641\u064a\u062f\u064a\u0648",
"Poster": "\u0645\u0644\u0635\u0642",
"Alternative source": "\u0645\u0635\u062f\u0631 \u0628\u062f\u064a\u0644",
"Paste your embed code below:": "\u0644\u0635\u0642 \u0643\u0648\u062f \u0627\u0644\u062a\u0636\u0645\u064a\u0646 \u0647\u0646\u0627:",
"Insert video": "\u0625\u062f\u0631\u0627\u062c \u0641\u064a\u062f\u064a\u0648",
"Embed": "\u062a\u0636\u0645\u064a\u0646",
"Nonbreaking space": "\u0645\u0633\u0627\u0641\u0629 \u063a\u064a\u0631 \u0645\u0646\u0642\u0633\u0645\u0629",
"Page break": "\u0641\u0627\u0635\u0644 \u0644\u0644\u0635\u0641\u062d\u0629",
"Paste as text": "\u0644\u0635\u0642 \u0643\u0646\u0635",
"Preview": "\u0645\u0639\u0627\u064a\u0646\u0629",
"Print": "\u0637\u0628\u0627\u0639\u0629",
"Save": "\u062d\u0641\u0638",
"Could not find the specified string.": "\u062a\u0639\u0630\u0631 \u0627\u0644\u0639\u062b\u0648\u0631 \u0639\u0644\u0649 \u0627\u0644\u0643\u0644\u0645\u0629 \u0627\u0644\u0645\u062d\u062f\u062f\u0629",
"Replace": "\u0627\u0633\u062a\u0628\u062f\u0627\u0644",
"Next": "\u0627\u0644\u062a\u0627\u0644\u064a",
"Whole words": "\u0645\u0637\u0627\u0628\u0642\u0629 \u0627\u0644\u0643\u0644\u0645\u0627\u062a \u0628\u0627\u0644\u0643\u0627\u0645\u0644",
"Find and replace": "\u0628\u062d\u062b \u0648\u0627\u0633\u062a\u0628\u062f\u0627\u0644",
"Replace with": "\u0627\u0633\u062a\u0628\u062f\u0627\u0644 \u0628\u0640",
"Find": "\u0628\u062d\u062b",
"Replace all": "\u0627\u0633\u062a\u0628\u062f\u0627\u0644 \u0627\u0644\u0643\u0644",
"Match case": "\u0645\u0637\u0627\u0628\u0642\u0629 \u062d\u0627\u0644\u0629 \u0627\u0644\u0623\u062d\u0631\u0641",
"Prev": "\u0627\u0644\u0633\u0627\u0628\u0642",
"Spellcheck": "\u062a\u062f\u0642\u064a\u0642 \u0625\u0645\u0644\u0627\u0626\u064a",
"Finish": "\u0627\u0646\u062a\u0647\u064a",
"Ignore all": "\u062a\u062c\u0627\u0647\u0644 \u0627\u0644\u0643\u0644",
"Ignore": "\u062a\u062c\u0627\u0647\u0644",
"Insert row before": "\u0625\u062f\u0631\u0627\u062c \u0635\u0641 \u0644\u0644\u0623\u0639\u0644\u0649",
"Rows": "\u0639\u062f\u062f \u0627\u0644\u0635\u0641\u0648\u0641",
"Height": "\u0627\u0631\u062a\u0641\u0627\u0639",
"Paste row after": "\u0644\u0635\u0642 \u0627\u0644\u0635\u0641 \u0644\u0644\u0623\u0633\u0641\u0644",
"Alignment": "\u0645\u062d\u0627\u0630\u0627\u0629",
"Column group": "\u0645\u062c\u0645\u0648\u0639\u0629 \u0639\u0645\u0648\u062f",
"Row": "\u0635\u0641",
"Insert column before": "\u0625\u062f\u0631\u0627\u062c \u0639\u0645\u0648\u062f \u0644\u0644\u064a\u0633\u0627\u0631",
"Split cell": "\u062a\u0642\u0633\u064a\u0645 \u0627\u0644\u062e\u0644\u0627\u064a\u0627",
"Cell padding": "\u062a\u0628\u0627\u0639\u062f \u0627\u0644\u062e\u0644\u064a\u0629",
"Cell spacing": "\u0627\u0644\u0645\u0633\u0627\u0641\u0629 \u0628\u064a\u0646 \u0627\u0644\u062e\u0644\u0627\u064a\u0627",
"Row type": "\u0646\u0648\u0639 \u0627\u0644\u0635\u0641",
"Insert table": "\u0625\u062f\u0631\u0627\u062c \u062c\u062f\u0648\u0644",
"Body": "\u0647\u064a\u0643\u0644",
"Caption": "\u0634\u0631\u062d",
"Footer": "\u062a\u0630\u064a\u064a\u0644",
"Delete row": "\u062d\u0630\u0641 \u0635\u0641",
"Paste row before": "\u0644\u0635\u0642 \u0627\u0644\u0635\u0641 \u0644\u0644\u0623\u0639\u0644\u0649",
"Scope": "\u0627\u0644\u0645\u062c\u0627\u0644",
"Delete table": "\u062d\u0630\u0641 \u062c\u062f\u0648\u0644",
"Header cell": "\u0631\u0623\u0633 \u0627\u0644\u062e\u0644\u064a\u0629",
"Column": "\u0639\u0645\u0648\u062f",
"Cell": "\u062e\u0644\u064a\u0629",
"Header": "\u0627\u0644\u0631\u0623\u0633",
"Cell type": "\u0646\u0648\u0639 \u0627\u0644\u062e\u0644\u064a\u0629",
"Copy row": "\u0646\u0633\u062e \u0627\u0644\u0635\u0641",
"Row properties": "\u062e\u0635\u0627\u0626\u0635 \u0627\u0644\u0635\u0641",
"Table properties": "\u062e\u0635\u0627\u0626\u0635 \u0627\u0644\u062c\u062f\u0648\u0644",
"Row group": "\u0645\u062c\u0645\u0648\u0639\u0629 \u0635\u0641",
"Right": "\u064a\u0645\u064a\u0646",
"Insert column after": "\u0625\u062f\u0631\u0627\u062c \u0639\u0645\u0648\u062f \u0644\u0644\u064a\u0645\u064a\u0646",
"Cols": "\u0639\u062f\u062f \u0627\u0644\u0623\u0639\u0645\u062f\u0629",
"Insert row after": "\u0625\u062f\u0631\u0627\u062c \u0635\u0641 \u0644\u0644\u0623\u0633\u0641\u0644",
"Width": "\u0639\u0631\u0636",
"Cell properties": "\u062e\u0635\u0627\u0626\u0635 \u0627\u0644\u062e\u0644\u064a\u0629",
"Left": "\u064a\u0633\u0627\u0631",
"Cut row": "\u0642\u0635 \u0627\u0644\u0635\u0641",
"Delete column": "\u062d\u0630\u0641 \u0639\u0645\u0648\u062f",
"Center": "\u062a\u0648\u0633\u064a\u0637",
"Merge cells": "\u062f\u0645\u062c \u062e\u0644\u0627\u064a\u0627",
"Insert template": "\u0625\u062f\u0631\u0627\u062c \u0642\u0627\u0644\u0628",
"Templates": "\u0642\u0648\u0627\u0644\u0628",
"Background color": "\u0644\u0648\u0646 \u0627\u0644\u062e\u0644\u0641\u064a\u0629",
"Text color": "\u0644\u0648\u0646 \u0627\u0644\u0646\u0635",
"Show blocks": "\u0645\u0634\u0627\u0647\u062f\u0629 \u0627\u0644\u0643\u062a\u0644",
"Show invisible characters": "\u0623\u0638\u0647\u0631 \u0627\u0644\u0623\u062d\u0631\u0641 \u0627\u0644\u063a\u064a\u0631 \u0645\u0631\u0626\u064a\u0629",
"Words: {0}": "\u0627\u0644\u0643\u0644\u0645\u0627\u062a:{0}",
"Insert": "\u0625\u062f\u0631\u0627\u062c",
"File": "\u0645\u0644\u0641",
"Edit": "\u062a\u062d\u0631\u064a\u0631",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "\u0645\u0646\u0637\u0642\u0629 \u0646\u0635 \u0645\u0646\u0633\u0642. \u0627\u0636\u063a\u0637 ALT-F9 \u0644\u0644\u0642\u0627\u0626\u0645\u0629. \u0627\u0636\u063a\u0637 ALT-F10 \u0644\u0634\u0631\u064a\u0637 \u0627\u0644\u0623\u062f\u0648\u0627\u062a. \u0627\u0636\u063a\u0637 ALT-0 \u0644\u0644\u062d\u0635\u0648\u0644 \u0639\u0644\u0649 \u0645\u0633\u0627\u0639\u062f\u0629",
"Tools": "\u0623\u062f\u0627\u0648\u0627\u062a",
"View": "\u0639\u0631\u0636",
"Table": "\u062c\u062f\u0648\u0644",
"Format": "\u062a\u0646\u0633\u064a\u0642",
"_dir": "rtl"
});
program/js/tinymce/langs/ar_SA.js
New file
@@ -0,0 +1,180 @@
tinymce.addI18n('ar_SA',{
"Cut": "\u0642\u0635",
"Header 2": "Header 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "\u0645\u062a\u0635\u0641\u062d\u0643 \u0644\u0627 \u064a\u062f\u0639\u0645 \u0627\u0644\u0648\u0635\u0648\u0644 \u0627\u0644\u0645\u0628\u0627\u0634\u0631 \u0625\u0644\u0649 \u0627\u0644\u062d\u0627\u0641\u0638\u0629. \u0627\u0644\u0631\u062c\u0627\u0621 \u0627\u0633\u062a\u062e\u062f\u0627\u0645 \u0627\u062e\u062a\u0635\u0627\u0631\u0627\u062a \u0644\u0648\u062d\u0629 \u0627\u0644\u0645\u0641\u0627\u062a\u064a\u062d Ctrl+X\/C\/V \u0628\u062f\u0644\u0627 \u0645\u0646 \u0630\u0644\u0643.",
"Div": "Div",
"Paste": "\u0644\u0635\u0642",
"Close": "\u0623\u063a\u0644\u0642",
"Font Family": "Font Family",
"Pre": "Pre",
"Align right": "Align right",
"New document": "\u0645\u0644\u0641 \u062c\u062f\u064a\u062f",
"Blockquote": "Blockquote",
"Numbered list": "Numbered list",
"Increase indent": "Increase indent",
"Formats": "Formats",
"Headers": "Headers",
"Select all": "\u0623\u062e\u062a\u0631 \u0627\u0644\u0643\u0644",
"Header 3": "Header 3",
"Blocks": "Blocks",
"Undo": "\u062a\u0631\u0627\u062c\u0639",
"Strikethrough": "Strikethrough",
"Bullet list": "Bullet list",
"Header 1": "Header 1",
"Superscript": "Superscript",
"Clear formatting": "Clear formatting",
"Font Sizes": "Font Sizes",
"Subscript": "Subscript",
"Header 6": "Header 6",
"Redo": "Redo",
"Paragraph": "Paragraph",
"Ok": "Ok",
"Bold": "Bold",
"Code": "Code",
"Italic": "Italic",
"Align center": "Align center",
"Header 5": "Header 5",
"Decrease indent": "Decrease indent",
"Header 4": "Header 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.",
"Underline": "Underline",
"Cancel": "\u0625\u0644\u063a\u0627\u0621",
"Justify": "Justify",
"Inline": "Inline",
"Copy": "\u0646\u0633\u062e",
"Align left": "Align left",
"Visual aids": "Visual aids",
"Lower Greek": "Lower Greek",
"Square": "Square",
"Default": "Default",
"Lower Alpha": "Lower Alpha",
"Circle": "Circle",
"Disc": "Disc",
"Upper Alpha": "Upper Alpha",
"Upper Roman": "Upper Roman",
"Lower Roman": "Lower Roman",
"Name": "Name",
"Anchor": "Anchor",
"You have unsaved changes are you sure you want to navigate away?": "\u0644\u062f\u064a\u0643 \u062a\u063a\u064a\u064a\u0631\u0627\u062a \u0644\u0645 \u064a\u062a\u0645 \u062d\u0641\u0638\u0647\u0627 \u0647\u0644 \u0623\u0646\u062a \u0645\u062a\u0623\u0643\u062f \u0623\u0646\u0643 \u062a\u0631\u063a\u0628 \u0641\u064a \u0627\u0644\u0627\u0646\u062a\u0642\u0627\u0644 \u061f",
"Restore last draft": "\u0627\u0633\u062a\u0639\u0627\u062f\u0629 \u0623\u062e\u0631 \u0645\u0633\u0648\u062f\u0629",
"Special character": "Special character",
"Source code": "Source code",
"Right to left": "\u0645\u0646 \u0627\u0644\u064a\u0645\u064a\u0646 \u0625\u0644\u064a \u0627\u0644\u064a\u0633\u0627\u0631",
"Left to right": "\u0645\u0646 \u0627\u0644\u064a\u0633\u0627\u0631 \u0625\u0644\u064a \u0627\u0644\u064a\u0645\u064a\u0646",
"Emoticons": "\u0627\u0644\u0631\u0645\u0648\u0632",
"Robots": "Robots",
"Document properties": "\u062e\u0635\u0627\u0626\u0635 \u0627\u0644\u0645\u0633\u062a\u0646\u062f",
"Title": "\u0639\u0646\u0648\u0627\u0646",
"Keywords": "Keywords",
"Encoding": "\u062a\u0631\u0645\u064a\u0632",
"Description": "Description",
"Author": "\u0627\u0644\u0643\u0627\u062a\u0628",
"Fullscreen": "Fullscreen",
"Horizontal line": "\u062e\u0637 \u0623\u0641\u0642\u064a",
"Horizontal space": "Horizontal space",
"Insert\/edit image": "Insert\/edit image",
"General": "General",
"Advanced": "Advanced",
"Source": "Source",
"Border": "Border",
"Constrain proportions": "Constrain proportions",
"Vertical space": "Vertical space",
"Image description": "Image description",
"Style": "Style",
"Dimensions": "Dimensions",
"Insert image": "Insert image",
"Insert date\/time": "Insert date\/time",
"Remove link": "Remove link",
"Url": "Url",
"Text to display": "Text to display",
"Anchors": "Anchors",
"Insert link": "Insert link",
"New window": "New window",
"None": "None",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?",
"Target": "Target",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?",
"Insert\/edit link": "Insert\/edit link",
"Insert\/edit video": "Insert\/edit video",
"Poster": "Poster",
"Alternative source": "Alternative source",
"Paste your embed code below:": "Paste your embed code below:",
"Insert video": "Insert video",
"Embed": "Embed",
"Nonbreaking space": "Nonbreaking space",
"Page break": "Page break",
"Paste as text": "Paste as text",
"Preview": "\u0639\u0631\u0636",
"Print": "\u0637\u0628\u0627\u0639\u0629",
"Save": "\u062d\u0641\u0638",
"Could not find the specified string.": "Could not find the specified string.",
"Replace": "Replace",
"Next": "Next",
"Whole words": "Whole words",
"Find and replace": "Find and replace",
"Replace with": "Replace with",
"Find": "Find",
"Replace all": "Replace all",
"Match case": "Match case",
"Prev": "Prev",
"Spellcheck": "Spellcheck",
"Finish": "Finish",
"Ignore all": "Ignore all",
"Ignore": "Ignore",
"Insert row before": "Insert row before",
"Rows": "Rows",
"Height": "Height",
"Paste row after": "Paste row after",
"Alignment": "Alignment",
"Column group": "Column group",
"Row": "Row",
"Insert column before": "Insert column before",
"Split cell": "Split cell",
"Cell padding": "Cell padding",
"Cell spacing": "Cell spacing",
"Row type": "Row type",
"Insert table": "Insert table",
"Body": "Body",
"Caption": "Caption",
"Footer": "Footer",
"Delete row": "Delete row",
"Paste row before": "Paste row before",
"Scope": "Scope",
"Delete table": "Delete table",
"Header cell": "Header cell",
"Column": "Column",
"Cell": "Cell",
"Header": "Header",
"Cell type": "Cell type",
"Copy row": "Copy row",
"Row properties": "Row properties",
"Table properties": "Table properties",
"Row group": "Row group",
"Right": "Right",
"Insert column after": "Insert column after",
"Cols": "Cols",
"Insert row after": "Insert row after",
"Width": "Width",
"Cell properties": "Cell properties",
"Left": "Left",
"Cut row": "Cut row",
"Delete column": "Delete column",
"Center": "Center",
"Merge cells": "Merge cells",
"Insert template": "Insert template",
"Templates": "Templates",
"Background color": "Background color",
"Text color": "Text color",
"Show blocks": "Show blocks",
"Show invisible characters": "Show invisible characters",
"Words: {0}": "Words: {0}",
"Insert": "Insert",
"File": "File",
"Edit": "Edit",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help",
"Tools": "Tools",
"View": "View",
"Table": "Table",
"Format": "Format",
"_dir": "rtl"
});
program/js/tinymce/langs/az.js
New file
@@ -0,0 +1,194 @@
tinymce.addI18n('az',{
"Cut": "K\u0259s",
"Heading 5": "Ba\u015fl\u0131q 5",
"Header 2": "Ba\u015fl\u0131q 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "Sizin brauzeriniz m\u00fcbadil\u0259 buferin\u0259 birba\u015fa yolu d\u0259st\u0259kl\u0259mir. Z\u0259hm\u0259t olmasa, bunun yerin\u0259 klaviaturan\u0131n Ctrl+X\/C\/V d\u00fcym\u0259l\u0259rind\u0259n istifad\u0259 edin.",
"Heading 4": "Ba\u015fl\u0131q 4",
"Div": "Div",
"Heading 2": "Ba\u015fl\u0131q 2",
"Paste": "\u018flav\u0259 et",
"Close": "Ba\u011fla",
"Font Family": "Font stili",
"Pre": "Pre",
"Align right": "Sa\u011f t\u0259r\u0259f \u00fczr\u0259",
"New document": "Yeni s\u0259n\u0259d",
"Blockquote": "Sitat",
"Numbered list": "N\u00f6mr\u0259l\u0259nmi\u015f siyah\u0131",
"Heading 1": "Ba\u015fl\u0131q 1",
"Headings": "Ba\u015fl\u0131qlar",
"Increase indent": "Bo\u015flu\u011fu art\u0131r",
"Formats": "Formatlar",
"Headers": "Ba\u015fl\u0131qlar",
"Select all": "Ham\u0131s\u0131n\u0131 se\u00e7",
"Header 3": "Ba\u015fl\u0131q 3",
"Blocks": "Bloklar",
"Undo": "Geriy\u0259",
"Strikethrough": "Silinmi\u015f",
"Bullet list": "S\u0131ras\u0131z siyah\u0131",
"Header 1": "Ba\u015fl\u0131q 1",
"Superscript": "Yuxar\u0131 indeks",
"Clear formatting": "Format\u0131 t\u0259mizl\u0259",
"Font Sizes": "Font \u00f6l\u00e7\u00fcl\u0259ri",
"Subscript": "A\u015fa\u011f\u0131 indeks",
"Header 6": "Ba\u015fl\u0131q 6",
"Redo": "\u0130r\u0259li",
"Paragraph": "Paraqraf",
"Ok": "Oldu",
"Bold": "Qal\u0131n",
"Code": "Kod",
"Italic": "Maili",
"Align center": "M\u0259rk\u0259z \u00fczr\u0259",
"Header 5": "Ba\u015fl\u0131q 5",
"Heading 6": "Ba\u015fl\u0131q 6",
"Heading 3": "Ba\u015fl\u0131q 3",
"Decrease indent": "Bo\u015flu\u011fu azalt",
"Header 4": "Ba\u015fl\u0131q 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Hal-haz\u0131rda adi m\u0259tn rejimind\u0259 yerl\u0259\u015fdirilir. M\u0259zmun sad\u0259 m\u0259tn \u015f\u0259klind\u0259 yerl\u0259\u015fdiril\u0259c\u0259k, h\u0259l\u0259 bu se\u00e7imi d\u0259yi\u015fdirm\u0259.",
"Underline": "Alt x\u0259ttli",
"Cancel": "L\u0259\u011fv et",
"Justify": "H\u0259r iki t\u0259r\u0259f \u00fczr\u0259",
"Inline": "S\u0259tir i\u00e7i",
"Copy": "K\u00f6\u00e7\u00fcr",
"Align left": "Sol t\u0259r\u0259f \u00fczr\u0259",
"Visual aids": "Konturlar\u0131 g\u00f6st\u0259r",
"Lower Greek": "Ki\u00e7ik Yunan \u0259lifbas\u0131",
"Square": "Sah\u0259",
"Default": "\u018fvv\u0259ld\u0259n qurulmu\u015f",
"Lower Alpha": "Ki\u00e7ik Alfa \u0259lifbas\u0131",
"Circle": "Dair\u0259",
"Disc": "Disk",
"Upper Alpha": "B\u00f6y\u00fck Alfa \u0259lifbas\u0131",
"Upper Roman": "B\u00f6y\u00fck Roma \u0259lifbas\u0131",
"Lower Roman": "Ki\u00e7ik Roma \u0259lifbas\u0131",
"Name": "Ad",
"Anchor": "L\u00f6vb\u0259r",
"You have unsaved changes are you sure you want to navigate away?": "Sizd\u0259 yadda saxlan\u0131lmayan d\u0259yi\u015fiklikl\u0259r var \u0259minsiniz ki, getm\u0259k ist\u0259yirsiniz?",
"Restore last draft": "Son layih\u0259nin b\u0259rpas\u0131",
"Special character": "X\u00fcsusi simvollar",
"Source code": "M\u0259nb\u0259 kodu",
"Right to left": "Sa\u011fdan sola",
"Left to right": "Soldan sa\u011fa",
"Emoticons": "T\u0259b\u0259ss\u00fcml\u0259r",
"Robots": "Robotlar",
"Document properties": "S\u0259n\u0259din x\u00fcsusiyy\u0259tl\u0259ri",
"Title": "Ba\u015fl\u0131q",
"Keywords": "A\u00e7ar s\u00f6zl\u0259r",
"Encoding": "Kodla\u015fd\u0131rma",
"Description": "T\u0259sviri",
"Author": "M\u00fc\u0259llif",
"Fullscreen": "Tam ekran rejimi",
"Horizontal line": "Horizontal x\u0259tt",
"Horizontal space": "Horizontal sah\u0259",
"Insert\/edit image": "\u015e\u0259kilin \u0259lav\u0259\/redakt\u0259 edilm\u0259si",
"General": "\u00dcmumi",
"Advanced": "Geni\u015fl\u0259nmi\u015f",
"Source": "M\u0259nb\u0259",
"Border": "\u00c7\u0259r\u00e7iv\u0259",
"Constrain proportions": "Nisb\u0259tl\u0259rin saxlan\u0131lmas\u0131",
"Vertical space": "Vertikal sah\u0259",
"Image description": "\u015e\u0259kilin t\u0259sviri",
"Style": "Stil",
"Dimensions": "\u00d6l\u00e7\u00fcl\u0259r",
"Insert image": "\u015e\u0259kilin redakt\u0259 edilm\u0259si",
"Insert date\/time": "G\u00fcn\/tarix \u0259lav\u0259 et",
"Remove link": "Linki sil",
"Url": "Linkin \u00fcnvan\u0131",
"Text to display": "G\u00f6r\u00fcn\u0259n yaz\u0131n\u0131n t\u0259sviri",
"Anchors": "L\u00f6vb\u0259rl\u0259r",
"Insert link": "Linkin \u0259lav\u0259 edilm\u0259si",
"New window": "Yeni p\u0259nc\u0259r\u0259d\u0259 a\u00e7\u0131ls\u0131n",
"None": "Yoxdur",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "Daxil etdiyiniz URL bir e-mail kimi g\u00f6r\u00fcn\u00fcr. \u018fg\u0259r t\u0259l\u0259b olunan mailto: prefix \u0259lav\u0259 etm\u0259k ist\u0259yirsiniz?",
"Target": "H\u0259d\u0259f",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "Daxil etdiyiniz URL bir e-mail kimi g\u00f6r\u00fcn\u00fcr. \u018fg\u0259r t\u0259l\u0259b olunan mailto: prefix \u0259lav\u0259 etm\u0259k ist\u0259yirsiniz?",
"Insert\/edit link": "Linkin \u0259lav\u0259\/redakt\u0259 edilm\u0259si",
"Insert\/edit video": "Videonun \u0259lav\u0259\/redakt\u0259 edilm\u0259si",
"Poster": "Poster",
"Alternative source": "Alternativ m\u0259nb\u0259",
"Paste your embed code below:": "\u00d6z kodunuzu a\u015fa\u011f\u0131 \u0259lav\u0259 edin:",
"Insert video": "Videonun \u0259lav\u0259 edilm\u0259si",
"Embed": "\u018flav\u0259 etm\u0259k \u00fc\u00e7\u00fcn kod",
"Nonbreaking space": "Q\u0131r\u0131lmaz sah\u0259",
"Page break": "S\u0259hif\u0259nin q\u0131r\u0131lmas\u0131",
"Paste as text": "M\u0259tn kimi \u0259lav\u0259 et",
"Preview": "\u0130lkinbax\u0131\u015f",
"Print": "\u00c7ap et",
"Save": "Yadda saxla",
"Could not find the specified string.": "G\u00f6st\u0259ril\u0259n s\u0259tiri tapmaq olmur",
"Replace": "D\u0259yi\u015fdir",
"Next": "N\u00f6vb\u0259ti",
"Whole words": "Tam s\u00f6zl\u0259r",
"Find and replace": "Tap v\u0259 d\u0259yi\u015fdir",
"Replace with": "Bununla d\u0259yi\u015fdir",
"Find": "Tap",
"Replace all": "Ham\u0131s\u0131n\u0131 d\u0259yi\u015fdir",
"Match case": "Registri n\u0259z\u0259r\u0259 al",
"Prev": "\u018fvv\u0259lki",
"Spellcheck": "Orfoqrafiyan\u0131 yoxla",
"Finish": "Bitir",
"Ignore all": "Ham\u0131s\u0131n\u0131 iqnorla",
"Ignore": "\u0130qnorla",
"Insert row before": "\u018fvv\u0259lin\u0259 s\u0259tir \u0259lav\u0259 et",
"Rows": "S\u0259tirl\u0259r",
"Height": "H\u00fcnd\u00fcrl\u00fcy\u00fc",
"Paste row after": "Sonras\u0131na s\u0259tir \u0259lav\u0259 et",
"Alignment": "D\u00fczl\u0259ndirm\u0259",
"Column group": "S\u00fctunun qrupu",
"Row": "S\u0259tir",
"Insert column before": "\u018fvv\u0259lin\u0259 s\u0259tir \u0259lav\u0259 et",
"Split cell": "H\u00fccr\u0259l\u0259rin say\u0131",
"Cell padding": "H\u00fccr\u0259l\u0259rin sah\u0259l\u0259ri",
"Cell spacing": "H\u00fccr\u0259l\u0259rin aras\u0131nda m\u0259saf\u0259",
"Row type": "S\u0259tirin tipi",
"Insert table": "S\u0259tir \u0259lav\u0259 et",
"Body": "K\u00fctl\u0259",
"Caption": "Ba\u015flan\u011f\u0131c",
"Footer": "Son",
"Delete row": "S\u0259tiri sil",
"Paste row before": "\u018fvv\u0259lin\u0259 s\u0259tir \u0259lav\u0259 et",
"Scope": "Sfera",
"Delete table": "C\u0259dv\u0259li sil",
"H Align": "H D\u00fczl\u0259ndir",
"Top": "Yuxar\u0131",
"Header cell": "H\u00fccr\u0259nin ba\u015fl\u0131\u011f\u0131",
"Column": "S\u00fctun",
"Row group": "S\u0259tirin qrupu",
"Cell": "H\u00fccr\u0259",
"Middle": "Orta",
"Cell type": "H\u00fccr\u0259nin tipi",
"Copy row": "S\u0259tiri k\u00f6\u00e7\u00fcr",
"Row properties": "S\u0259tirin x\u00fcsusiyy\u0259tl\u0259ri",
"Table properties": "C\u0259dv\u0259lin x\u00fcsusiyy\u0259tl\u0259ri",
"Bottom": "A\u015fa\u011f\u0131",
"V Align": "V D\u00fczl\u0259ndir",
"Header": "Ba\u015fl\u0131q",
"Right": "Sa\u011f t\u0259r\u0259f \u00fczr\u0259",
"Insert column after": "\u018fvv\u0259lin\u0259 s\u00fctun \u0259lav\u0259 et",
"Cols": "S\u00fctunlar",
"Insert row after": "Sonras\u0131na s\u0259tir \u0259lav\u0259 et",
"Width": "Eni",
"Cell properties": "H\u00fccr\u0259nin x\u00fcsusiyy\u0259tl\u0259ri",
"Left": "Sol t\u0259r\u0259f \u00fczr\u0259",
"Cut row": "S\u0259tiri k\u0259s",
"Delete column": "S\u00fctunu sil",
"Center": "M\u0259rk\u0259z \u00fczr\u0259",
"Merge cells": "H\u00fccr\u0259l\u0259ri birl\u0259\u015ftir",
"Insert template": "\u015eablon \u0259lav\u0259 et",
"Templates": "\u015eablonlar",
"Background color": "Arxafon r\u0259ngi",
"Custom...": "\u00c7\u0259kilm\u0259...",
"Custom color": "\u00c7\u0259kilm\u0259 r\u0259ng",
"No color": "R\u0259ngsiz",
"Text color": "M\u0259tnin r\u0259ngi",
"Show blocks": "Bloklar\u0131 g\u00f6st\u0259r",
"Show invisible characters": "G\u00f6r\u00fcnm\u0259y\u0259n simvollar\u0131 g\u00f6st\u0259r",
"Words: {0}": "S\u00f6zl\u0259r: {0}",
"Insert": "\u018flav\u0259 et",
"File": "Fayl",
"Edit": "Redakt\u0259 et",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "B\u00f6y\u00fck m\u0259tn sah\u0259si \u0259lav\u0259 edilib. Menyu \u00fc\u00e7\u00fcn ALT-F9 d\u00fcym\u0259sini bas\u0131n. Al\u0259tl\u0259r paneli \u00fc\u00e7\u00fcn ALT-F10 d\u00fcym\u0259sini bas\u0131n. K\u00f6m\u0259k \u00fc\u00e7\u00fcn ALT-0 d\u00fcym\u0259l\u0259rin bas\u0131n.",
"Tools": "Al\u0259tl\u0259r",
"View": "G\u00f6r\u00fcn\u00fc\u015f",
"Table": "C\u0259dv\u0259l",
"Format": "Format"
});
program/js/tinymce/langs/be.js
New file
@@ -0,0 +1,197 @@
tinymce.addI18n('be',{
"Cut": "\u0412\u044b\u0440\u0430\u0437\u0430\u0446\u044c",
"Heading 5": "\u0417\u0430\u0433\u0430\u043b\u043e\u0432\u0430\u043a 5",
"Header 2": "\u0417\u0430\u0433\u0430\u043b\u043e\u0432\u0430\u043a 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "\u0412\u0430\u0448 \u0431\u0440\u0430\u045e\u0437\u044d\u0440 \u043d\u0435 \u043f\u0430\u0434\u0442\u0440\u044b\u043c\u043b\u0456\u0432\u0430\u0435 \u043f\u0440\u0430\u043c\u044b \u0434\u043e\u0441\u0442\u0443\u043f \u0434\u0430 \u0431\u0443\u0444\u0435\u0440\u0430 \u0430\u0431\u043c\u0435\u043d\u0443. \u041a\u0430\u043b\u0456 \u043b\u0430\u0441\u043a\u0430, \u0432\u044b\u043a\u0430\u0440\u044b\u0441\u0442\u043e\u045e\u0432\u0430\u0439\u0446\u0435 \u043d\u0430\u0441\u0442\u0443\u043f\u043d\u044b\u044f \u0441\u043f\u0430\u043b\u0443\u0447\u044d\u043d\u043d\u044f \u043a\u043b\u0430\u0432\u0456\u0448: Ctrl + X\/C\/V.",
"Heading 4": "\u0417\u0430\u0433\u0430\u043b\u043e\u0432\u0430\u043a 4",
"Div": "\u0411\u043b\u043e\u043a",
"Heading 2": "\u0417\u0430\u0433\u0430\u043b\u043e\u0432\u0430\u043a 2",
"Paste": "\u0423\u0441\u0442\u0430\u0432\u0456\u0446\u044c",
"Close": "\u0417\u0430\u0447\u044b\u043d\u0456\u0446\u044c",
"Font Family": "\u0428\u0440\u044b\u0444\u0442",
"Pre": "\u041f\u0440\u0430\u0434\u0444\u0430\u0440\u043c\u0430\u0442\u0430\u0432\u0430\u043d\u043d\u0435",
"Align right": "\u041f\u0430 \u043f\u0440\u0430\u0432\u044b\u043c \u043a\u0440\u0430\u0456",
"New document": "\u041d\u043e\u0432\u044b \u0434\u0430\u043a\u0443\u043c\u0435\u043d\u0442",
"Blockquote": "\u0426\u044b\u0442\u0430\u0442\u0430",
"Numbered list": "\u041d\u0443\u043c\u0430\u0440\u0430\u0432\u0430\u043d\u044b \u0441\u043f\u0456\u0441",
"Heading 1": "\u0417\u0430\u0433\u0430\u043b\u043e\u0432\u0430\u043a 1",
"Headings": "\u0417\u0430\u0433\u0430\u043b\u043e\u045e\u043a\u0456",
"Increase indent": "\u041f\u0430\u0432\u044f\u043b\u0456\u0447\u044b\u0446\u044c \u0432\u043e\u0434\u0441\u0442\u0443\u043f",
"Formats": "\u0424\u0430\u0440\u043c\u0430\u0442",
"Headers": "\u0417\u0430\u0433\u0430\u043b\u043e\u045e\u043a\u0456",
"Select all": "\u0412\u044b\u043b\u0443\u0447\u044b\u0446\u044c \u0443\u0441\u0451",
"Header 3": "\u0417\u0430\u0433\u0430\u043b\u043e\u0432\u0430\u043a 3",
"Blocks": "\u0411\u043b\u043e\u043a\u0456",
"Undo": "\u0412\u044f\u0440\u043d\u0443\u0446\u044c",
"Strikethrough": "\u0417\u0430\u043a\u0440\u044d\u0441\u043b\u0435\u043d\u044b",
"Bullet list": "\u041c\u0430\u0440\u043a\u0456\u0440\u0430\u0432\u0430\u043d\u044b \u0441\u043f\u0456\u0441",
"Header 1": "\u0417\u0430\u0433\u0430\u043b\u043e\u0432\u0430\u043a 1",
"Superscript": "\u0412\u0435\u0440\u0445\u043d\u0456 \u0456\u043d\u0434\u044d\u043a\u0441",
"Clear formatting": "\u0410\u0447\u044b\u0441\u0446\u0456\u0446\u044c \u0444\u0430\u0440\u043c\u0430\u0442",
"Font Sizes": "\u041f\u0430\u043c\u0435\u0440 \u0448\u0440\u044b\u0444\u0442\u0430",
"Subscript": "\u041d\u0456\u0436\u043d\u0456 \u0456\u043d\u0434\u044d\u043a\u0441",
"Header 6": "\u0417\u0430\u0433\u0430\u043b\u043e\u0432\u0430\u043a 6",
"Redo": "\u0410\u0434\u043c\u044f\u043d\u0456\u0446\u044c",
"Paragraph": "\u041f\u0430\u0440\u0430\u0433\u0440\u0430\u0444",
"Ok": "Ok",
"Bold": "\u0422\u043b\u0443\u0441\u0442\u044b",
"Code": "\u041a\u043e\u0434",
"Italic": "\u041a\u0443\u0440\u0441\u0456\u045e",
"Align center": "\u041f\u0430 \u0446\u044d\u043d\u0442\u0440\u044b",
"Header 5": "\u0417\u0430\u0433\u0430\u043b\u043e\u0432\u0430\u043a 5",
"Heading 6": "\u0417\u0430\u0433\u0430\u043b\u043e\u0432\u0430\u043a 6",
"Heading 3": "\u0417\u0430\u0433\u0430\u043b\u043e\u0432\u0430\u043a 3",
"Decrease indent": "\u041f\u0430\u043c\u0435\u043d\u0448\u044b\u0446\u044c \u0432\u043e\u0434\u0441\u0442\u0443\u043f",
"Header 4": "\u0417\u0430\u0433\u0430\u043b\u043e\u0432\u0430\u043a 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "\u0423\u0441\u0442\u0430\u045e\u043a\u0430 \u0437\u0434\u0437\u044f\u0439\u0441\u043d\u044f\u0435\u0446\u0446\u0430 \u045e \u0432\u044b\u0433\u043b\u044f\u0434\u0437\u0435 \u043f\u0440\u043e\u0441\u0442\u0430\u0433\u0430 \u0442\u044d\u043a\u0441\u0442\u0443, \u043f\u0430\u043a\u0443\u043b\u044c \u043d\u0435 \u0430\u0434\u043a\u043b\u044e\u0447\u044b\u0446\u044c \u0434\u0430\u0434\u0437\u0435\u043d\u0443\u044e \u043e\u043f\u0446\u044b\u044e.",
"Underline": "\u041f\u0430\u0434\u043a\u0440\u044d\u0441\u043b\u0435\u043d\u044b",
"Cancel": "\u0410\u0434\u043c\u044f\u043d\u0456\u0446\u044c",
"Justify": "\u041f\u0430 \u0448\u044b\u0440\u044b\u043d\u0456",
"Inline": "\u0420\u0430\u0434\u043a\u043e\u0432\u044b",
"Copy": "\u041a\u0430\u043f\u0456\u0440\u0430\u0432\u0430\u0446\u044c",
"Align left": "\u041f\u0430 \u043b\u0435\u0432\u044b\u043c \u043a\u0440\u0430\u0456",
"Visual aids": "\u041f\u0430\u043a\u0430\u0437\u0432\u0430\u0446\u044c \u043a\u043e\u043d\u0442\u0443\u0440\u044b",
"Lower Greek": "\u041c\u0430\u043b\u044b\u044f \u0433\u0440\u044d\u0447\u0430\u0441\u043a\u0456\u044f \u043b\u0456\u0442\u0430\u0440\u044b",
"Square": "\u041a\u0432\u0430\u0434\u0440\u0430\u0442\u044b",
"Default": "\u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b",
"Lower Alpha": "\u041c\u0430\u043b\u044b\u044f \u043b\u0430\u0446\u0456\u043d\u0441\u043a\u0456\u044f \u043b\u0456\u0442\u0430\u0440\u044b",
"Circle": "\u0410\u043a\u0440\u0443\u0436\u043d\u0430\u0441\u0446\u0456",
"Disc": "\u041a\u0440\u0443\u0433\u0456",
"Upper Alpha": "\u0417\u0430\u0433\u0430\u043b\u043e\u045e\u043d\u044b\u044f \u043b\u0430\u0446\u0456\u043d\u0441\u043a\u0456\u044f \u043b\u0456\u0442\u0430\u0440\u044b",
"Upper Roman": "\u0417\u0430\u0433\u0430\u043b\u043e\u045e\u043d\u044b\u044f \u0440\u044b\u043c\u0441\u043a\u0456\u044f \u043b\u0456\u0447\u0431\u044b",
"Lower Roman": "\u041c\u0430\u043b\u044b\u044f \u0440\u044b\u043c\u0441\u043a\u0456\u044f \u043b\u0456\u0447\u0431\u044b",
"Name": "\u0406\u043c\u044f",
"Anchor": "\u042f\u043a\u0430\u0440",
"You have unsaved changes are you sure you want to navigate away?": "\u0423 \u0432\u0430\u0441 \u0451\u0441\u0446\u044c \u043d\u0435\u0437\u0430\u0445\u0430\u0432\u0430\u043d\u044b\u044f \u0437\u043c\u0435\u043d\u044b. \u0412\u044b \u045e\u043f\u044d\u045e\u043d\u0435\u043d\u044b\u044f, \u0448\u0442\u043e \u0445\u043e\u0447\u0430\u0446\u0435 \u0432\u044b\u0439\u0441\u0446\u0456?",
"Restore last draft": "\u0410\u0434\u043d\u0430\u045e\u043b\u0435\u043d\u043d\u0435 \u0430\u043f\u043e\u0448\u043d\u044f\u0433\u0430 \u043f\u0440\u0430\u0435\u043a\u0442\u0430",
"Special character": "\u0421\u043f\u0435\u0446\u044b\u044f\u043b\u044c\u043d\u044b\u044f \u0441\u0456\u043c\u0432\u0430\u043b\u044b",
"Source code": "\u0417\u044b\u0445\u043e\u0434\u043d\u044b \u043a\u043e\u0434",
"Color": "\u041a\u043e\u043b\u0435\u0440",
"Right to left": "\u0421\u043f\u0440\u0430\u0432\u0430 \u043d\u0430\u043b\u0435\u0432\u0430",
"Left to right": "\u0417\u043b\u0435\u0432\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u0430",
"Emoticons": "\u0414\u0430\u0434\u0430\u0446\u044c \u0441\u043c\u0430\u0439\u043b",
"Robots": "\u0420\u043e\u0431\u0430\u0442\u044b",
"Document properties": "\u0423\u043b\u0430\u0441\u0446\u0456\u0432\u0430\u0441\u0446\u0456 \u0434\u0430\u043a\u0443\u043c\u0435\u043d\u0442\u0430",
"Title": "\u0417\u0430\u0433\u0430\u043b\u043e\u0432\u0430\u043a",
"Keywords": "\u041a\u043b\u044e\u0447\u0430\u0432\u044b\u044f \u0441\u043b\u043e\u0432\u044b",
"Encoding": "\u041a\u0430\u0434\u044b\u0440\u043e\u045e\u043a\u0430",
"Description": "\u0410\u043f\u0456\u0441\u0430\u043d\u043d\u0435",
"Author": "\u0410\u045e\u0442\u0430\u0440",
"Fullscreen": "\u041f\u043e\u045e\u043d\u0430\u044d\u043a\u0440\u0430\u043d\u043d\u044b \u0440\u044d\u0436\u044b\u043c",
"Horizontal line": "\u0413\u0430\u0440\u044b\u0437\u0430\u043d\u0442\u0430\u043b\u044c\u043d\u0430\u044f \u043b\u0456\u043d\u0456\u044f",
"Horizontal space": "\u0413\u0430\u0440\u044b\u0437\u0430\u043d\u0442\u0430\u043b\u044c\u043d\u044b \u0456\u043d\u0442\u044d\u0440\u0432\u0430\u043b",
"Insert\/edit image": "\u0423\u0441\u0442\u0430\u0432\u0456\u0446\u044c\/\u0440\u044d\u0434\u0430\u0433\u0430\u0432\u0430\u0446\u044c \u0432\u044b\u044f\u0432\u0443",
"General": "\u0410\u0433\u0443\u043b\u044c\u043d\u0430\u0435",
"Advanced": "\u041f\u0430\u0448\u044b\u0440\u0430\u043d\u0430\u0435",
"Source": "\u041a\u0440\u044b\u043d\u0456\u0446\u0430",
"Border": "\u041c\u044f\u0436\u0430",
"Constrain proportions": "\u0417\u0430\u0445\u0430\u0432\u0430\u0446\u044c \u043f\u0440\u0430\u043f\u043e\u0440\u0446\u044b\u0456",
"Vertical space": "\u0412\u0435\u0440\u0442\u044b\u043a\u0430\u043b\u044c\u043d\u044b \u0456\u043d\u0442\u044d\u0440\u0432\u0430\u043b",
"Image description": "\u0410\u043f\u0456\u0441\u0430\u043d\u043d\u0435 \u0432\u044b\u044f\u0432\u044b",
"Style": "\u0421\u0442\u044b\u043b\u044c",
"Dimensions": "\u041f\u0430\u043c\u0435\u0440",
"Insert image": "\u0423\u0441\u0442\u0430\u0432\u0456\u0446\u044c \u0432\u044b\u044f\u0432\u0443",
"Insert date\/time": "\u0423\u0441\u0442\u0430\u0432\u0456\u0446\u044c \u0434\u0430\u0442\u0443\/\u0447\u0430\u0441",
"Remove link": "\u0412\u044b\u0434\u0430\u043b\u0456\u0446\u044c \u0441\u043f\u0430\u0441\u044b\u043b\u043a\u0443",
"Url": "\u0410\u0434\u0440\u0430\u0441 \u0441\u043f\u0430\u0441\u044b\u043b\u043a\u0456",
"Text to display": "\u0422\u044d\u043a\u0441\u0442 \u0441\u043f\u0430\u0441\u044b\u043b\u043a\u0456",
"Anchors": "\u042f\u043a\u0430\u0440\u044b",
"Insert link": "\u0423\u0441\u0442\u0430\u0432\u0456\u0446\u044c \u0441\u043f\u0430\u0441\u044b\u043b\u043a\u0443",
"New window": "\u0423 \u043d\u043e\u0432\u044b\u043c \u0430\u043a\u043d\u0435",
"None": "\u041d\u044f\u043c\u0430",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "\u0423\u0432\u0435\u0434\u0437\u0435\u043d\u044b \u0430\u0434\u0440\u0430\u0441 \u043f\u0430\u0434\u043e\u0431\u043d\u044b \u043d\u0430 \u0437\u043d\u0435\u0448\u043d\u044e\u044e \u0441\u043f\u0430\u0441\u044b\u043b\u043a\u0443. \u0416\u0430\u0434\u0430\u0435\u0446\u0435 \u0434\u0430\u0434\u0430\u0446\u044c \u043d\u0435\u0430\u0431\u0445\u043e\u0434\u043d\u044b http:\/\/ \u043f\u0440\u044d\u0444\u0456\u043a\u0441?",
"Target": "\u0410\u0434\u043a\u0440\u044b\u0432\u0430\u0446\u044c \u0441\u043f\u0430\u0441\u044b\u043b\u043a\u0443",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "\u0423\u0432\u0435\u0434\u0437\u0435\u043d\u044b \u0430\u0434\u0440\u0430\u0441 \u043f\u0430\u0434\u043e\u0431\u043d\u044b \u043d\u0430 \u0430\u0434\u0440\u0430\u0441 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u0430\u0439 \u043f\u043e\u0448\u0442\u044b. \u0416\u0430\u0434\u0430\u0435\u0446\u0435 \u0434\u0430\u0434\u0430\u0446\u044c \u043d\u0435\u0430\u0431\u0445\u043e\u0434\u043d\u044b mailto: \u043f\u0440\u044d\u0444\u0456\u043a\u0441?",
"Insert\/edit link": "\u0423\u0441\u0442\u0430\u0432\u0456\u0446\u044c\/\u0440\u044d\u0434\u0430\u0433\u0430\u0432\u0430\u0446\u044c \u0441\u043f\u0430\u0441\u044b\u043b\u043a\u0443",
"Insert\/edit video": "\u0423\u0441\u0442\u0430\u0432\u0456\u0446\u044c\/\u0440\u044d\u0434\u0430\u0433\u0430\u0432\u0430\u0446\u044c \u0432\u0456\u0434\u044d\u0430",
"Poster": "\u0412\u044b\u044f\u0432\u0430",
"Alternative source": "\u0410\u043b\u044c\u0442\u044d\u0440\u043d\u0430\u0442\u044b\u045e\u043d\u0430\u044f \u043a\u0440\u044b\u043d\u0456\u0446\u0430",
"Paste your embed code below:": "\u0423\u0441\u0442\u0430\u045e\u0446\u0435 \u0432\u0430\u0448 \u043a\u043e\u0434 \u043d\u0456\u0436\u044d\u0439:",
"Insert video": "\u0423\u0441\u0442\u0430\u0432\u0456\u0446\u044c \u0432\u0456\u0434\u044d\u0430",
"Embed": "\u041a\u043e\u0434 \u0434\u043b\u044f \u045e\u0441\u0442\u0430\u045e\u043a\u0456",
"Nonbreaking space": "\u041d\u0435\u043f\u0430\u0440\u044b\u045e\u043d\u044b \u043f\u0440\u0430\u0431\u0435\u043b",
"Page break": "\u0420\u0430\u0437\u0440\u044b\u045e \u0441\u0442\u0430\u0440\u043e\u043d\u043a\u0456",
"Paste as text": "\u0423\u0441\u0442\u0430\u0432\u0456\u0446\u044c \u044f\u043a \u0442\u044d\u043a\u0441\u0442",
"Preview": "\u041f\u0440\u0430\u0434\u043f\u0440\u0430\u0433\u043b\u044f\u0434",
"Print": "\u0414\u0440\u0443\u043a",
"Save": "\u0417\u0430\u0445\u0430\u0432\u0430\u0446\u044c",
"Could not find the specified string.": "\u0417\u0430\u0434\u0430\u0434\u0437\u0435\u043d\u044b \u0440\u0430\u0434\u043e\u043a \u043d\u0435 \u0437\u043d\u043e\u0439\u0434\u0437\u0435\u043d\u044b",
"Replace": "\u0417\u043c\u044f\u043d\u0456\u0446\u044c",
"Next": "\u0423\u043d\u0456\u0437",
"Whole words": "\u0421\u043b\u043e\u0432\u044b \u0446\u0430\u043b\u043a\u0430\u043c",
"Find and replace": "\u041f\u043e\u0448\u0443\u043a \u0456 \u0437\u0430\u043c\u0435\u043d\u0430",
"Replace with": "\u0417\u043c\u044f\u043d\u0456\u0446\u044c \u043d\u0430",
"Find": "\u0417\u043d\u0430\u0439\u0441\u0446\u0456",
"Replace all": "\u0417\u043c\u044f\u043d\u0456\u0446\u044c \u0443\u0441\u0435",
"Match case": "\u0423\u043b\u0456\u0447\u0432\u0430\u0446\u044c \u0440\u044d\u0433\u0456\u0441\u0442\u0440",
"Prev": "\u0423\u0432\u0435\u0440\u0445",
"Spellcheck": "\u041f\u0440\u0430\u0432\u0435\u0440\u043a\u0430 \u043f\u0440\u0430\u0432\u0430\u043f\u0456\u0441\u0443",
"Finish": "\u0421\u043a\u043e\u043d\u0447\u044b\u0446\u044c",
"Ignore all": "\u0406\u0433\u043d\u0430\u0440\u0430\u0432\u0430\u0446\u044c \u0443\u0441\u0435",
"Ignore": "\u0406\u0433\u043d\u0430\u0440\u0430\u0432\u0430\u0446\u044c",
"Add to Dictionary": "\u0414\u0430\u0434\u0430\u0446\u044c \u0443 \u0441\u043b\u043e\u045e\u043d\u0456\u043a",
"Insert row before": "\u0423\u0441\u0442\u0430\u0432\u0456\u0446\u044c \u0440\u0430\u0434\u043e\u043a \u0437\u0432\u0435\u0440\u0445\u0443",
"Rows": "\u0420\u0430\u0434\u043a\u0456",
"Height": "\u0412\u044b\u0448\u044b\u043d\u044f",
"Paste row after": "\u0423\u0441\u0442\u0430\u0432\u0456\u0446\u044c \u0440\u0430\u0434\u043e\u043a \u0437\u043d\u0456\u0437\u0443",
"Alignment": "\u0412\u044b\u0440\u0430\u045e\u043d\u043e\u045e\u0432\u0430\u043d\u043d\u0435",
"Border color": "\u041a\u043e\u043b\u0435\u0440 \u043c\u044f\u0436\u044b",
"Column group": "\u0413\u0440\u0443\u043f\u0430 \u0441\u043b\u0443\u043f\u043a\u043e\u045e",
"Row": "\u0420\u0430\u0434\u043e\u043a",
"Insert column before": "\u0414\u0430\u0434\u0430\u0446\u044c \u0441\u043b\u0443\u043f\u043e\u043a \u0437\u043b\u0435\u0432\u0430",
"Split cell": "\u0420\u0430\u0437\u0431\u0456\u0446\u044c \u044f\u0447\u044d\u0439\u043a\u0443",
"Cell padding": "\u0423\u043d\u0443\u0442\u0440\u0430\u043d\u044b \u0432\u043e\u0434\u0441\u0442\u0443\u043f",
"Cell spacing": "\u0417\u043d\u0435\u0448\u043d\u0456 \u0432\u043e\u0434\u0441\u0442\u0443\u043f",
"Row type": "\u0422\u044b\u043f \u0440\u0430\u0434\u043a\u0430",
"Insert table": "\u0423\u0441\u0442\u0430\u0432\u0456\u0446\u044c \u0442\u0430\u0431\u043b\u0456\u0446\u0443",
"Body": "\u0426\u0435\u043b\u0430",
"Caption": "\u0417\u0430\u0433\u0430\u043b\u043e\u0432\u0430\u043a",
"Footer": "\u041d\u0456\u0437",
"Delete row": "\u0412\u044b\u0434\u0430\u043b\u0456\u0446\u044c \u0440\u0430\u0434\u043e\u043a",
"Paste row before": "\u0423\u0441\u0442\u0430\u0432\u0456\u0446\u044c \u0440\u0430\u0434\u043e\u043a \u0437\u0432\u0435\u0440\u0445\u0443",
"Scope": "\u0421\u0444\u0435\u0440\u0430",
"Delete table": "\u0412\u044b\u0434\u0430\u043b\u0456\u0446\u044c \u0442\u0430\u0431\u043b\u0456\u0446\u0443",
"H Align": "\u0413\u0430\u0440. \u0432\u044b\u0440\u0430\u045e\u043d\u043e\u045e\u0432\u0430\u043d\u043d\u0435",
"Top": "\u0412\u0435\u0440\u0445",
"Header cell": "\u0417\u0430\u0433\u0430\u043b\u043e\u0432\u0430\u043a",
"Column": "\u0421\u043b\u0443\u043f\u043e\u043a",
"Row group": "\u0413\u0440\u0443\u043f\u0430 \u0440\u0430\u0434\u043a\u043e\u045e",
"Cell": "\u042f\u0447\u044d\u0439\u043a\u0430",
"Middle": "\u0421\u044f\u0440\u044d\u0434\u0437\u0456\u043d\u0430",
"Cell type": "\u0422\u044b\u043f \u044f\u0447\u044d\u0439\u043a\u0456",
"Copy row": "\u041a\u0430\u043f\u0456\u044f\u0432\u0430\u0446\u044c \u0440\u0430\u0434\u043e\u043a",
"Row properties": "\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0440\u0430\u0434\u043a\u0430",
"Table properties": "\u0423\u043b\u0430\u0441\u0446\u0456\u0432\u0430\u0441\u0446\u0456 \u0442\u0430\u0431\u043b\u0456\u0446\u044b",
"Bottom": "\u041d\u0456\u0437",
"V Align": "\u0412\u0435\u0440. \u0432\u044b\u0440\u0430\u045e\u043d\u043e\u045e\u0432\u0430\u043d\u043d\u0435",
"Header": "\u0428\u0430\u043f\u043a\u0430",
"Right": "\u041f\u0430 \u043f\u0440\u0430\u0432\u044b\u043c \u043a\u0440\u0430\u0456",
"Insert column after": "\u0414\u0430\u0434\u0430\u0446\u044c \u0441\u043b\u0443\u043f\u043e\u043a \u0441\u043f\u0440\u0430\u0432\u0430",
"Cols": "\u0421\u043b\u0443\u043f\u043a\u0456",
"Insert row after": "\u0423\u0441\u0442\u0430\u0432\u0456\u0446\u044c \u0440\u0430\u0434\u043e\u043a \u0437\u043d\u0456\u0437\u0443",
"Width": "\u0428\u044b\u0440\u044b\u043d\u044f",
"Cell properties": "\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u044f\u0447\u044d\u0439\u043a\u0456",
"Left": "\u041f\u0430 \u043b\u0435\u0432\u044b\u043c \u043a\u0440\u0430\u0456",
"Cut row": "\u0412\u044b\u0440\u0430\u0437\u0430\u0446\u044c \u0440\u0430\u0434\u043e\u043a",
"Delete column": "\u0412\u044b\u0434\u0430\u043b\u0456\u0446\u044c \u0441\u043b\u0443\u043f\u043e\u043a",
"Center": "\u041f\u0430 \u0446\u044d\u043d\u0442\u0440\u044b",
"Merge cells": "\u0410\u0431'\u044f\u0434\u043d\u0430\u0446\u044c \u044f\u0447\u044d\u0439\u043a\u0456",
"Insert template": "\u0423\u0441\u0442\u0430\u0432\u0456\u0446\u044c \u0448\u0430\u0431\u043b\u043e\u043d",
"Templates": "\u0428\u0430\u0431\u043b\u043e\u043d\u044b",
"Background color": "\u041a\u043e\u043b\u0435\u0440 \u0444\u043e\u043d\u0443",
"Custom...": "\u041a\u0430\u0440\u044b\u0441\u0442\u0430\u0446\u043a\u0456...",
"Custom color": "\u041a\u0430\u0440\u044b\u0441\u0442\u0430\u0446\u043a\u0456 \u043a\u043e\u043b\u0435\u0440",
"No color": "\u0411\u0435\u0437 \u043a\u043e\u043b\u0435\u0440\u0443",
"Text color": "\u041a\u043e\u043b\u0435\u0440 \u0442\u044d\u043a\u0441\u0442\u0443",
"Show blocks": "\u041f\u0430\u043a\u0430\u0437\u0432\u0430\u0446\u044c \u0431\u043b\u043e\u043a\u0456",
"Show invisible characters": "\u041f\u0430\u043a\u0430\u0437\u0432\u0430\u0446\u044c \u043d\u044f\u0431\u0430\u0447\u043d\u044b\u044f \u0441\u0456\u043c\u0432\u0430\u043b\u044b",
"Words: {0}": "\u041a\u043e\u043b\u044c\u043a\u0430\u0441\u0446\u044c \u0441\u043b\u043e\u045e: {0}",
"Insert": "\u0423\u0441\u0442\u0430\u0432\u0456\u0446\u044c",
"File": "\u0424\u0430\u0439\u043b",
"Edit": "\u0417\u043c\u044f\u043d\u0456\u0446\u044c",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "\u0422\u044d\u043a\u0441\u0442\u0430\u0432\u0430\u0435 \u043f\u043e\u043b\u0435. \u041d\u0430\u0446\u0456\u0441\u043d\u0456\u0446\u0435 ALT-F9, \u043a\u0430\u0431 \u0432\u044b\u043a\u043b\u0456\u043a\u0430\u0446\u044c \u043c\u0435\u043d\u044e, ALT-F10 - \u043f\u0430\u043d\u044d\u043b\u044c \u043f\u0440\u044b\u043b\u0430\u0434\u0430\u045e, ALT-0 - \u0434\u043b\u044f \u0432\u044b\u043a\u043b\u0456\u043a\u0443 \u0434\u0430\u043f\u0430\u043c\u043e\u0433\u0456.",
"Tools": "\u041f\u0440\u044b\u043b\u0430\u0434\u044b",
"View": "\u0412\u044b\u0433\u043b\u044f\u0434",
"Table": "\u0422\u0430\u0431\u043b\u0456\u0446\u0430",
"Format": "\u0424\u0430\u0440\u043c\u0430\u0442"
});
program/js/tinymce/langs/bg_BG.js
New file
@@ -0,0 +1,179 @@
tinymce.addI18n('bg_BG',{
"Cut": "\u0418\u0437\u0440\u044f\u0437\u0432\u0430\u043d\u0435",
"Header 2": "\u0417\u0430\u0433\u043b\u0430\u0432\u0438\u0435 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "\u0412\u0430\u0448\u0438\u044f\u0442 \u0431\u0440\u0430\u0443\u0437\u044a\u0440 \u043d\u0435 \u043f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u0435\u043d \u0434\u043e\u0441\u0442\u044a\u043f \u0434\u043e \u043a\u043b\u0438\u043f\u0431\u043e\u0440\u0434\u0430. \u0412\u043c\u0435\u0441\u0442\u043e \u0442\u043e\u0432\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0439\u0442\u0435 \u043a\u043b\u0430\u0432\u0438\u0448\u043d\u0438\u0442\u0435 \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u0438 Ctrl+X (\u0437\u0430 \u0438\u0437\u0440\u044f\u0437\u0432\u0430\u043d\u0435), Ctrl+C (\u0437\u0430 \u043a\u043e\u043f\u0438\u0440\u0430\u043d\u0435) \u0438 Ctrl+V (\u0437\u0430 \u043f\u043e\u0441\u0442\u0430\u0432\u044f\u043d\u0435).",
"Div": "\u0411\u043b\u043e\u043a",
"Paste": "\u041f\u043e\u0441\u0442\u0430\u0432\u044f\u043d\u0435",
"Close": "\u0417\u0430\u0442\u0432\u0430\u0440\u044f\u043d\u0435",
"Font Family": "\u0428\u0440\u0438\u0444\u0442",
"Pre": "\u041f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u043d\u043e \u043e\u0444\u043e\u0440\u043c\u0435\u043d \u0442\u0435\u043a\u0441\u0442",
"Align right": "\u041f\u043e\u0434\u0440\u0430\u0432\u043d\u044f\u0432\u0430\u043d\u0435 \u043e\u0442\u0434\u044f\u0441\u043d\u043e",
"New document": "\u041d\u043e\u0432 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442",
"Blockquote": "\u0426\u0438\u0442\u0430\u0442",
"Numbered list": "\u041d\u043e\u043c\u0435\u0440\u0438\u0440\u0430\u043d \u0441\u043f\u0438\u0441\u044a\u043a",
"Increase indent": "\u0423\u0432\u0435\u043b\u0438\u0447\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 \u043e\u0442\u0441\u0442\u044a\u043f\u0430",
"Formats": "\u0424\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u0430\u043d\u0435",
"Headers": "\u0417\u0430\u0433\u043b\u0430\u0432\u0438\u044f",
"Select all": "\u041c\u0430\u0440\u043a\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0446\u044f\u043b\u043e\u0442\u043e \u0441\u044a\u0434\u044a\u0440\u0436\u0430\u043d\u0438\u0435",
"Header 3": "\u0417\u0430\u0433\u043b\u0430\u0432\u0438\u0435 3",
"Blocks": "\u0411\u043b\u043e\u043a\u043e\u0432\u0435",
"Undo": "\u0412\u044a\u0440\u043d\u0438",
"Strikethrough": "\u0417\u0430\u0447\u0435\u0440\u0442\u0430\u0432\u0430\u043d\u0435",
"Bullet list": "\u0421\u043f\u0438\u0441\u044a\u043a \u0441 \u0432\u043e\u0434\u0430\u0447\u0438",
"Header 1": "\u0417\u0430\u0433\u043b\u0430\u0432\u0438\u0435 1",
"Superscript": "\u0413\u043e\u0440\u0435\u043d \u0438\u043d\u0434\u0435\u043a\u0441",
"Clear formatting": "\u0418\u0437\u0447\u0438\u0441\u0442\u0438 \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u0430\u043d\u0435\u0442\u043e",
"Font Sizes": "\u0420\u0430\u0437\u043c\u0435\u0440 \u043d\u0430 \u0448\u0440\u0438\u0444\u0442\u0430",
"Subscript": "\u0414\u043e\u043b\u0435\u043d \u0438\u043d\u0434\u0435\u043a\u0441",
"Header 6": "\u0417\u0430\u0433\u043b\u0430\u0432\u0438\u0435 6",
"Redo": "\u041e\u0442\u043c\u0435\u043d\u0438",
"Paragraph": "\u041f\u0430\u0440\u0430\u0433\u0440\u0430\u0444",
"Ok": "\u0414\u043e\u0431\u0440\u0435",
"Bold": "\u0423\u0434\u0435\u0431\u0435\u043b\u0435\u043d (\u043f\u043e\u043b\u0443\u0447\u0435\u0440)",
"Code": "\u041a\u043e\u0434",
"Italic": "\u041d\u0430\u043a\u043b\u043e\u043d\u0435\u043d (\u043a\u0443\u0440\u0441\u0438\u0432)",
"Align center": "\u0426\u0435\u043d\u0442\u0440\u0438\u0440\u0430\u043d\u043e",
"Header 5": "\u0417\u0430\u0433\u043b\u0430\u0432\u0438\u0435 5",
"Decrease indent": "\u041d\u0430\u043c\u0430\u043b\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u043e\u0442\u0441\u0442\u044a\u043f\u0430",
"Header 4": "\u0417\u0430\u0433\u043b\u0430\u0432\u0438\u0435 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "\u041f\u043e\u0441\u0442\u0430\u0432\u044f\u043d\u0435\u0442\u043e \u0432 \u043c\u043e\u043c\u0435\u043d\u0442\u0430 \u0435 \u0432 \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d \u0440\u0435\u0436\u0438\u043c. \u0421\u044a\u0434\u044a\u0440\u0436\u0430\u043d\u0438\u0435\u0442\u043e \u0449\u0435 \u0431\u044a\u0434\u0435 \u043f\u043e\u0441\u0442\u0430\u0432\u0435\u043d\u043e \u043a\u0430\u0442\u043e \u043d\u0435\u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u0430\u043d \u0442\u0435\u043a\u0441\u0442, \u0434\u043e\u043a\u0430\u0442\u043e \u0438\u0437\u043a\u043b\u044e\u0447\u0438\u0442\u0435 \u0442\u0430\u0437\u0438 \u043e\u043f\u0446\u0438\u044f.",
"Underline": "\u041f\u043e\u0434\u0447\u0435\u0440\u0442\u0430\u043d",
"Cancel": "\u041e\u0442\u043a\u0430\u0437",
"Justify": "\u0414\u0432\u0443\u0441\u0442\u0440\u0430\u043d\u043d\u043e \u043f\u043e\u0434\u0440\u0430\u0432\u043d\u044f\u0432\u0430\u043d\u0435",
"Inline": "\u041d\u0430 \u0435\u0434\u0438\u043d \u0440\u0435\u0434",
"Copy": "\u041a\u043e\u043f\u0438\u0440\u0430\u043d\u0435",
"Align left": "\u041f\u043e\u0434\u0440\u0430\u0432\u043d\u044f\u0432\u0430\u043d\u0435 \u043e\u0442\u043b\u044f\u0432\u043e",
"Visual aids": "\u0412\u0438\u0437\u0443\u0430\u043b\u043d\u043e \u043e\u0442\u043a\u0440\u043e\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u0438 \u0431\u0435\u0437 \u043a\u0430\u043d\u0442\u043e\u0432\u0435 (\u0440\u0430\u043c\u043a\u0438)",
"Lower Greek": "\u041c\u0430\u043b\u043a\u0438 \u0433\u0440\u044a\u0446\u043a\u0438 \u0431\u0443\u043a\u0432\u0438",
"Square": "\u0417\u0430\u043f\u044a\u043b\u043d\u0435\u043d\u0438 \u043a\u0432\u0430\u0434\u0440\u0430\u0442\u0438",
"Default": "\u041f\u043e \u043f\u043e\u0434\u0440\u0430\u0437\u0431\u0438\u0440\u0430\u043d\u0435",
"Lower Alpha": "\u041c\u0430\u043b\u043a\u0438 \u0431\u0443\u043a\u0432\u0438",
"Circle": "\u041e\u043a\u0440\u044a\u0436\u043d\u043e\u0441\u0442\u0438",
"Disc": "\u041a\u0440\u044a\u0433\u0447\u0435\u0442\u0430",
"Upper Alpha": "\u0413\u043b\u0430\u0432\u043d\u0438 \u0431\u0443\u043a\u0432\u0438",
"Upper Roman": "\u0420\u0438\u043c\u0441\u043a\u0438 \u0447\u0438\u0441\u043b\u0430 \u0441 \u0433\u043b\u0430\u0432\u043d\u0438 \u0431\u0443\u043a\u0432\u0438",
"Lower Roman": "\u0420\u0438\u043c\u0441\u043a\u0438 \u0447\u0438\u0441\u043b\u0430 \u0441 \u043c\u0430\u043b\u043a\u0438 \u0431\u0443\u043a\u0432\u0438",
"Name": "\u041d\u0430\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043d\u0438\u0435",
"Anchor": "\u041a\u043e\u0442\u0432\u0430 (\u0432\u0440\u044a\u0437\u043a\u0430 \u0432 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430)",
"You have unsaved changes are you sure you want to navigate away?": "\u0412 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0438\u043c\u0430 \u043d\u0435\u0437\u0430\u043f\u0430\u0437\u0435\u043d\u0438 \u043f\u0440\u043e\u043c\u0435\u043d\u0438. \u0429\u0435 \u043f\u0440\u043e\u0434\u044a\u043b\u0436\u0438\u0442\u0435 \u043b\u0438?",
"Restore last draft": "\u0412\u044a\u0437\u0441\u0442\u0430\u043d\u043e\u0432\u044f\u0432\u0430\u043d\u0435 \u043d\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0430\u0442\u0430 \u0447\u0435\u0440\u043d\u043e\u0432\u0430",
"Special character": "\u0421\u043f\u0435\u0446\u0438\u0430\u043b\u0435\u043d \u0437\u043d\u0430\u043a",
"Source code": "\u0418\u0437\u0445\u043e\u0434\u0435\u043d \u043a\u043e\u0434 \u043d\u0430 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430 \u0432 HTML",
"Right to left": "\u041e\u0442\u0434\u044f\u0441\u043d\u043e \u043d\u0430\u043b\u044f\u0432\u043e",
"Left to right": "\u041e\u0442\u043b\u044f\u0432\u043e \u043d\u0430\u0434\u044f\u0441\u043d\u043e",
"Emoticons": "\u0415\u043c\u043e\u0442\u0438\u043a\u043e\u043d\u0438",
"Robots": "\u0420\u043e\u0431\u043e\u0442\u0438 \u043d\u0430 \u0443\u0435\u0431 \u0442\u044a\u0440\u0441\u0430\u0447\u043a\u0438",
"Document properties": "\u0421\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u043d\u0430 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430",
"Title": "\u041d\u0430\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043d\u0438\u0435",
"Keywords": "\u041a\u043b\u044e\u0447\u043e\u0432\u0438 \u0434\u0443\u043c\u0438",
"Encoding": "\u041a\u043e\u0434\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0437\u043d\u0430\u0446\u0438\u0442\u0435",
"Description": "\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435",
"Author": "\u0410\u0432\u0442\u043e\u0440",
"Fullscreen": "\u041d\u0430 \u0446\u044f\u043b \u0435\u043a\u0440\u0430\u043d",
"Horizontal line": "\u0425\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u043d\u0430 \u0447\u0435\u0440\u0442\u0430",
"Horizontal space": "\u0425\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e",
"Insert\/edit image": "\u0414\u043e\u0431\u0430\u0432\u044f\u043d\u0435\/\u043a\u043e\u0440\u0435\u043a\u0446\u0438\u044f \u043d\u0430 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430",
"General": "\u041e\u0431\u0449\u043e",
"Advanced": "\u041f\u043e\u0434\u0440\u043e\u0431\u043d\u043e",
"Source": "\u0410\u0434\u0440\u0435\u0441",
"Border": "\u041a\u0430\u043d\u0442 (\u0440\u0430\u043c\u043a\u0430)",
"Constrain proportions": "\u0417\u0430\u0432\u0430\u0437\u043d\u0430\u0432\u0435 \u043d\u0430 \u043f\u0440\u043e\u043f\u043e\u0440\u0446\u0438\u0438\u0442\u0435",
"Vertical space": "\u0412\u0435\u0440\u0442\u0438\u043a\u0430\u043b\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u043e",
"Image description": "\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043d\u0430 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430\u0442\u0430",
"Style": "\u0421\u0442\u0438\u043b",
"Dimensions": "\u0420\u0430\u0437\u043c\u0435\u0440",
"Insert image": "\u0414\u043e\u0431\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435",
"Insert date\/time": "\u0414\u043e\u0431\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 \u0434\u0430\u0442\u0430\/\u0447\u0430\u0441",
"Remove link": "\u041f\u0440\u0435\u043c\u0430\u0445\u0432\u0430\u043d\u0435 \u043d\u0430 \u0445\u0438\u043f\u0435\u0440\u0432\u0440\u044a\u0437\u043a\u0430",
"Url": "\u0410\u0434\u0440\u0435\u0441 (URL)",
"Text to display": "\u0422\u0435\u043a\u0441\u0442",
"Anchors": "\u041a\u043e\u0442\u0432\u0438",
"Insert link": "\u0414\u043e\u0431\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 \u0445\u0438\u043f\u0435\u0440\u0432\u0440\u044a\u0437\u043a\u0430 (\u043b\u0438\u043d\u043a)",
"New window": "\u0412 \u043d\u043e\u0432 \u043f\u0440\u043e\u0437\u043e\u0440\u0435\u0446 (\u043f\u043e\u0434\u043f\u0440\u043e\u0437\u043e\u0440\u0435\u0446)",
"None": "\u0411\u0435\u0437",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?",
"Target": "\u0426\u0435\u043b \u0432 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?",
"Insert\/edit link": "\u0414\u043e\u0431\u0430\u0432\u044f\u043d\u0435\/\u043a\u043e\u0440\u0435\u043a\u0446\u0438\u044f \u043d\u0430 \u0445\u0438\u043f\u0435\u0440\u0432\u0440\u044a\u0437\u043a\u0430 (\u043b\u0438\u043d\u043a)",
"Insert\/edit video": "\u0414\u043e\u0431\u0430\u0432\u044f\u043d\u0435\/\u043a\u043e\u0440\u0435\u043a\u0446\u0438\u044f \u043d\u0430 \u0432\u0438\u0434\u0435\u043e",
"Poster": "\u041f\u043e\u0441\u0442\u0435\u0440",
"Alternative source": "\u0410\u043b\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u0435\u043d \u0430\u0434\u0440\u0435\u0441",
"Paste your embed code below:": "\u041f\u043e\u0441\u0442\u0430\u0432\u0435\u0442\u0435 \u043a\u043e\u0434\u0430 \u0437\u0430 \u0432\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435 \u0432 \u043f\u043e\u043b\u0435\u0442\u043e \u043f\u043e-\u0434\u043e\u043b\u0443:",
"Insert video": "\u0414\u043e\u0431\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 \u0432\u0438\u0434\u0435\u043e",
"Embed": "\u0412\u0433\u0440\u0430\u0436\u0434\u0430\u043d\u0435",
"Nonbreaking space": "\u0418\u043d\u0442\u0435\u0440\u0432\u0430\u043b",
"Page break": "\u041d\u043e\u0432\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430",
"Paste as text": "\u041f\u043e\u0441\u0442\u0430\u0432\u0438 \u043a\u0430\u0442\u043e \u0442\u0435\u043a\u0441\u0442",
"Preview": "\u041f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u0435\u043d \u0438\u0437\u0433\u043b\u0435\u0434",
"Print": "\u041f\u0435\u0447\u0430\u0442",
"Save": "\u0421\u044a\u0445\u0440\u0430\u043d\u044f\u0432\u0430\u043d\u0435",
"Could not find the specified string.": "\u0422\u044a\u0440\u0441\u0435\u043d\u0438\u044f\u0442 \u0442\u0435\u043a\u0441\u0442 \u043d\u0435 \u0435 \u043d\u0430\u043c\u0435\u0440\u0435\u043d.",
"Replace": "\u0417\u0430\u043c\u044f\u043d\u0430",
"Next": "\u0421\u043b\u0435\u0434\u0432\u0430\u0449",
"Whole words": "\u0421\u0430\u043c\u043e \u0446\u0435\u043b\u0438 \u0434\u0443\u043c\u0438",
"Find and replace": "\u0422\u044a\u0440\u0441\u0435\u043d\u0435 \u0438 \u0437\u0430\u043c\u044f\u043d\u0430",
"Replace with": "\u0417\u0430\u043c\u044f\u043d\u0430 \u0441",
"Find": "\u0422\u044a\u0440\u0441\u0435\u043d\u0435 \u0437\u0430",
"Replace all": "\u0417\u0430\u043c\u044f\u043d\u0430 \u043d\u0430 \u0432\u0441\u0438\u0447\u043a\u0438 \u0441\u0440\u0435\u0449\u0430\u043d\u0438\u044f",
"Match case": "\u0421\u044a\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u0435 \u043d\u0430 \u0440\u0435\u0433\u0438\u0441\u0442\u044a\u0440\u0430 (\u043c\u0430\u043b\u043a\u0438\/\u0433\u043b\u0430\u0432\u043d\u0438 \u0431\u0443\u043a\u0432\u0438)",
"Prev": "\u041f\u0440\u0435\u0434\u0438\u0448\u0435\u043d",
"Spellcheck": "\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430 \u043f\u0440\u0430\u0432\u043e\u043f\u0438\u0441\u0430",
"Finish": "\u041a\u0440\u0430\u0439",
"Ignore all": "\u0418\u0433\u043d\u043e\u0440\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0432\u0441\u0438\u0447\u043a\u043e",
"Ignore": "\u0418\u0433\u043d\u043e\u0440\u0438\u0440\u0430\u043d\u0435",
"Insert row before": "\u0412\u043c\u044a\u043a\u0432\u0430\u043d\u0435 \u043d\u0430 \u0440\u0435\u0434 \u043f\u0440\u0435\u0434\u0438",
"Rows": "\u0420\u0435\u0434\u043e\u0432\u0435",
"Height": "\u0412\u0438\u0441\u043e\u0447\u0438\u043d\u0430",
"Paste row after": "\u041f\u043e\u0441\u0442\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 \u0440\u0435\u0434 \u0441\u043b\u0435\u0434",
"Alignment": "\u041f\u043e\u0434\u0440\u0430\u0432\u043d\u044f\u0432\u0430\u043d\u0435",
"Column group": "Column group",
"Row": "\u0420\u0435\u0434",
"Insert column before": "\u0412\u043c\u044a\u043a\u0432\u0430\u043d\u0435 \u043d\u0430 \u043a\u043e\u043b\u043e\u043d\u0430 \u043f\u0440\u0435\u0434\u0438",
"Split cell": "\u0420\u0430\u0437\u0434\u0435\u043b\u044f\u043d\u0435 \u043d\u0430 \u043a\u043b\u0435\u0442\u043a\u0430",
"Cell padding": "\u0420\u0430\u0437\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0434\u043e \u0441\u044a\u0434\u044a\u0440\u0436\u0430\u043d\u0438\u0435\u0442\u043e",
"Cell spacing": "\u0420\u0430\u0437\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 \u043a\u043b\u0435\u0442\u043a\u0438\u0442\u0435",
"Row type": "\u0422\u0438\u043f \u043d\u0430 \u0440\u0435\u0434\u0430",
"Insert table": "\u0414\u043e\u0431\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u0430",
"Body": "\u0421\u044a\u0434\u044a\u0440\u0436\u0430\u043d\u0438\u0435 (body)",
"Caption": "\u0414\u043e\u0431\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 \u0437\u0430\u0433\u043b\u0430\u0432\u0438\u0435 \u043f\u0440\u0435\u0434\u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u0430\u0442\u0430",
"Footer": "\u0414\u043e\u043b\u0435\u043d \u043a\u043e\u043b\u043e\u043d\u0442\u0438\u0442\u0443\u043b (footer)",
"Delete row": "\u0418\u0437\u0442\u0440\u0438\u0432\u0430\u043d\u0435 \u043d\u0430 \u0440\u0435\u0434\u0430",
"Paste row before": "\u041f\u043e\u0441\u0442\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 \u0440\u0435\u0434 \u043f\u0440\u0435\u0434\u0438",
"Scope": "\u041e\u0431\u0445\u0432\u0430\u0442",
"Delete table": "\u0418\u0437\u0442\u0440\u0438\u0432\u0430\u043d\u0435 \u043d\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u0430\u0442\u0430",
"Header cell": "\u0417\u0430\u0433\u043b\u0430\u0432\u043d\u0430 \u043a\u043b\u0435\u0442\u043a\u0430 (\u0430\u043d\u0442\u0435\u0442\u043a\u0430)",
"Column": "\u041a\u043e\u043b\u043e\u043d\u0430",
"Cell": "\u041a\u043b\u0435\u0442\u043a\u0430",
"Header": "\u0413\u043e\u0440\u0435\u043d \u043a\u043e\u043b\u043e\u043d\u0442\u0438\u0442\u0443\u043b (header)",
"Cell type": "\u0422\u0438\u043f \u043d\u0430 \u043a\u043b\u0435\u0442\u043a\u0430\u0442\u0430",
"Copy row": "\u041a\u043e\u043f\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0440\u0435\u0434",
"Row properties": "\u0421\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u043d\u0430 \u0440\u0435\u0434\u0430",
"Table properties": "\u0421\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u043d\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u0430\u0442\u0430",
"Row group": "Row group",
"Right": "\u0414\u044f\u0441\u043d\u043e",
"Insert column after": "\u0412\u043c\u044a\u043a\u0432\u0430\u043d\u0435 \u043d\u0430 \u043a\u043e\u043b\u043e\u043d\u0430 \u0441\u043b\u0435\u0434",
"Cols": "\u041a\u043e\u043b\u043e\u043d\u0438",
"Insert row after": "\u0412\u043c\u044a\u043a\u0432\u0430\u043d\u0435 \u043d\u0430 \u0440\u0435\u0434 \u0441\u043b\u0435\u0434",
"Width": "\u0428\u0438\u0440\u0438\u043d\u0430",
"Cell properties": "\u0421\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u043d\u0430 \u043a\u043b\u0435\u0442\u043a\u0430\u0442\u0430",
"Left": "\u041b\u044f\u0432\u043e",
"Cut row": "\u0418\u0437\u0440\u044f\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 \u0440\u0435\u0434",
"Delete column": "\u0418\u0437\u0442\u0440\u0438\u0432\u0430\u043d\u0435 \u043d\u0430 \u043a\u043e\u043b\u043e\u043d\u0430\u0442\u0430",
"Center": "\u0426\u0435\u043d\u0442\u0440\u0438\u0440\u0430\u043d\u043e",
"Merge cells": "\u0421\u043b\u0438\u0432\u0430\u043d\u0435 \u043d\u0430 \u043a\u043b\u0435\u0442\u043a\u0438\u0442\u0435",
"Insert template": "\u0414\u043e\u0431\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 \u0448\u0430\u0431\u043b\u043e\u043d",
"Templates": "\u0428\u0430\u0431\u043b\u043e\u043d\u0438",
"Background color": "\u0424\u043e\u043d\u043e\u0432 \u0446\u0432\u044f\u0442",
"Text color": "\u0426\u0432\u044f\u0442 \u043d\u0430 \u0448\u0440\u0438\u0444\u0442\u0430",
"Show blocks": "\u041f\u043e\u043a\u0430\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 \u0431\u043b\u043e\u043a\u043e\u0432\u0435\u0442\u0435",
"Show invisible characters": "\u041f\u043e\u043a\u0430\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 \u043d\u0435\u043f\u0435\u0447\u0430\u0442\u0430\u0435\u043c\u0438 \u0437\u043d\u0430\u0446\u0438",
"Words: {0}": "\u0411\u0440\u043e\u0439 \u0434\u0443\u043c\u0438: {0}",
"Insert": "\u0412\u043c\u044a\u043a\u0432\u0430\u043d\u0435",
"File": "\u0424\u0430\u0439\u043b",
"Edit": "\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u0430\u043d\u0435",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "\u041f\u043e\u043b\u0435 \u0437\u0430 \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u0430\u043d \u0442\u0435\u043a\u0441\u0442. \u041d\u0430\u0442\u0438\u0441\u043d\u0435\u0442\u0435 Alt+F9 \u0437\u0430 \u043c\u0435\u043d\u044e; Alt+F10 \u0437\u0430 \u043b\u0435\u043d\u0442\u0430 \u0441 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0438; Alt+0 \u0437\u0430 \u043f\u043e\u043c\u043e\u0449.",
"Tools": "\u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0438",
"View": "\u0418\u0437\u0433\u043b\u0435\u0434",
"Table": "\u0422\u0430\u0431\u043b\u0438\u0446\u0430",
"Format": "\u0424\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u0430\u043d\u0435"
});
program/js/tinymce/langs/bn_BD.js
New file
@@ -0,0 +1,179 @@
tinymce.addI18n('bn_BD',{
"Cut": "\u0995\u09b0\u09cd\u09a4\u09a8",
"Header 2": "\u09b9\u09c7\u09a1\u09be\u09b0 \u09e8",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.",
"Div": "\u09a1\u09bf\u09ad",
"Paste": "\u0986\u099f\u0995\u09c7 \u09a6\u09bf\u09a8",
"Close": "\u09ac\u09a8\u09cd\u09a7",
"Font Family": "Font Family",
"Pre": "Pre",
"Align right": "Align right",
"New document": "\u09a8\u09a4\u09c1\u09a8 \u09a6\u09b8\u09cd\u09a4\u09be\u09ac\u09c7\u099c",
"Blockquote": "Blockquote",
"Numbered list": "Numbered list",
"Increase indent": "Increase indent",
"Formats": "Formats",
"Headers": "\u09b9\u09c7\u09a1\u09be\u09b0 \u09b8\u09ae\u09c1\u09b9",
"Select all": "\u09b8\u09ac \u09a8\u09bf\u09b0\u09cd\u09ac\u09be\u099a\u09a8 \u0995\u09b0\u09c1\u09a8",
"Header 3": "\u09b9\u09c7\u09a1\u09be\u09b0 \u09e9",
"Blocks": "Blocks",
"Undo": "\u09aa\u09c2\u09b0\u09cd\u09ac\u09be\u09ac\u09b8\u09cd\u09a5\u09be\u09af\u09bc \u09ab\u09bf\u09b0\u09c1\u09a8",
"Strikethrough": "\u09b8\u09cd\u099f\u09cd\u09b0\u09be\u0987\u0995\u09a5\u09cd\u09b0\u09c1",
"Bullet list": "Bullet list",
"Header 1": "\u09b9\u09c7\u09a1\u09be\u09b0 \u09e7",
"Superscript": "\u098a\u09b0\u09cd\u09a7\u09cd\u09ac\u09b2\u09bf\u09aa\u09bf",
"Clear formatting": "Clear formatting",
"Font Sizes": "Font Sizes",
"Subscript": "\u09a8\u09bf\u09ae\u09cd\u09a8\u09b2\u09bf\u09aa\u09bf",
"Header 6": "\u09b9\u09c7\u09a1\u09be\u09b0 \u09ec",
"Redo": "\u09aa\u09c1\u09a8\u09b0\u09be\u09af\u09bc \u0995\u09b0\u09c1\u09a8",
"Paragraph": "Paragraph",
"Ok": "\u09a0\u09bf\u0995 \u0986\u099b\u09c7",
"Bold": "Bold",
"Code": "Code",
"Italic": "\u09a4\u09bf\u09b0\u09cd\u09af\u0995",
"Align center": "Align center",
"Header 5": "\u09b9\u09c7\u09a1\u09be\u09b0 \u09eb",
"Decrease indent": "Decrease indent",
"Header 4": "\u09b9\u09c7\u09a1\u09be\u09b0 \u09ea",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.",
"Underline": "\u09a8\u09bf\u09ae\u09cd\u09a8\u09b0\u09c7\u0996\u09be",
"Cancel": "\u09ac\u09be\u09a4\u09bf\u09b2",
"Justify": "Justify",
"Inline": "Inline",
"Copy": "\u0985\u09a8\u09c1\u0995\u09b0\u09a3",
"Align left": "Align left",
"Visual aids": "Visual aids",
"Lower Greek": "Lower Greek",
"Square": "Square",
"Default": "Default",
"Lower Alpha": "Lower Alpha",
"Circle": "Circle",
"Disc": "Disc",
"Upper Alpha": "Upper Alpha",
"Upper Roman": "Upper Roman",
"Lower Roman": "Lower Roman",
"Name": "Name",
"Anchor": "Anchor",
"You have unsaved changes are you sure you want to navigate away?": "You have unsaved changes are you sure you want to navigate away?",
"Restore last draft": "Restore last draft",
"Special character": "Special character",
"Source code": "Source code",
"Right to left": "Right to left",
"Left to right": "Left to right",
"Emoticons": "Emoticons",
"Robots": "Robots",
"Document properties": "Document properties",
"Title": "Title",
"Keywords": "Keywords",
"Encoding": "Encoding",
"Description": "Description",
"Author": "Author",
"Fullscreen": "Fullscreen",
"Horizontal line": "Horizontal line",
"Horizontal space": "Horizontal space",
"Insert\/edit image": "Insert\/edit image",
"General": "General",
"Advanced": "Advanced",
"Source": "Source",
"Border": "Border",
"Constrain proportions": "Constrain proportions",
"Vertical space": "Vertical space",
"Image description": "Image description",
"Style": "Style",
"Dimensions": "Dimensions",
"Insert image": "Insert image",
"Insert date\/time": "Insert date\/time",
"Remove link": "Remove link",
"Url": "Url",
"Text to display": "Text to display",
"Anchors": "Anchors",
"Insert link": "Insert link",
"New window": "New window",
"None": "None",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?",
"Target": "Target",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?",
"Insert\/edit link": "Insert\/edit link",
"Insert\/edit video": "Insert\/edit video",
"Poster": "Poster",
"Alternative source": "Alternative source",
"Paste your embed code below:": "Paste your embed code below:",
"Insert video": "Insert video",
"Embed": "Embed",
"Nonbreaking space": "Nonbreaking space",
"Page break": "Page break",
"Paste as text": "Paste as text",
"Preview": "Preview",
"Print": "Print",
"Save": "Save",
"Could not find the specified string.": "Could not find the specified string.",
"Replace": "Replace",
"Next": "Next",
"Whole words": "Whole words",
"Find and replace": "Find and replace",
"Replace with": "Replace with",
"Find": "Find",
"Replace all": "Replace all",
"Match case": "Match case",
"Prev": "Prev",
"Spellcheck": "Spellcheck",
"Finish": "Finish",
"Ignore all": "Ignore all",
"Ignore": "Ignore",
"Insert row before": "Insert row before",
"Rows": "Rows",
"Height": "Height",
"Paste row after": "Paste row after",
"Alignment": "Alignment",
"Column group": "Column group",
"Row": "Row",
"Insert column before": "Insert column before",
"Split cell": "Split cell",
"Cell padding": "Cell padding",
"Cell spacing": "Cell spacing",
"Row type": "Row type",
"Insert table": "Insert table",
"Body": "Body",
"Caption": "Caption",
"Footer": "Footer",
"Delete row": "Delete row",
"Paste row before": "Paste row before",
"Scope": "Scope",
"Delete table": "Delete table",
"Header cell": "Header cell",
"Column": "Column",
"Cell": "Cell",
"Header": "Header",
"Cell type": "Cell type",
"Copy row": "Copy row",
"Row properties": "Row properties",
"Table properties": "Table properties",
"Row group": "Row group",
"Right": "Right",
"Insert column after": "Insert column after",
"Cols": "Cols",
"Insert row after": "Insert row after",
"Width": "Width",
"Cell properties": "Cell properties",
"Left": "Left",
"Cut row": "Cut row",
"Delete column": "Delete column",
"Center": "Center",
"Merge cells": "Merge cells",
"Insert template": "Insert template",
"Templates": "Templates",
"Background color": "Background color",
"Text color": "Text color",
"Show blocks": "Show blocks",
"Show invisible characters": "Show invisible characters",
"Words: {0}": "Words: {0}",
"Insert": "Insert",
"File": "File",
"Edit": "Edit",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help",
"Tools": "Tools",
"View": "View",
"Table": "Table",
"Format": "Format"
});
program/js/tinymce/langs/bs.js
New file
@@ -0,0 +1,186 @@
tinymce.addI18n('bs',{
"Cut": "Izre\u017ei",
"Heading 5": "Naslov 5",
"Header 2": "Zaglavlje 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "Va\u0161 browser ne podr\u017eava direktan pristup me\u0111umemoriji. Molimo vas da koristite pre\u010dice Ctrl+X\/C\/V na tastaturi.",
"Heading 4": "Naslov 4",
"Div": "Div",
"Heading 2": "Naslov 2",
"Paste": "Zalijepi",
"Close": "Zatvori",
"Font Family": "Familija fonta",
"Pre": "Pre",
"Align right": "Poravnaj desno",
"New document": "Novi dokument",
"Blockquote": "Blok citat",
"Numbered list": "Numerisana lista",
"Heading 1": "Naslov 1",
"Headings": "Naslovi",
"Increase indent": "Pove\u0107aj uvlaku",
"Formats": "Formati",
"Headers": "Zaglavlja",
"Select all": "Ozna\u010di sve",
"Header 3": "Zaglavlje 3",
"Blocks": "Blokovi",
"Undo": "Nazad",
"Strikethrough": "Precrtano",
"Bullet list": "Bullet lista",
"Header 1": "Zaglavlje 1",
"Superscript": "Eksponent",
"Clear formatting": "Poni\u0161ti formatiranje",
"Font Sizes": "Veli\u010dine fonta",
"Subscript": "Indeks",
"Header 6": "Zaglavlje 6",
"Redo": "Naprijed",
"Paragraph": "Paragraf",
"Ok": "U redu",
"Bold": "Podebljano",
"Code": "Kod",
"Italic": "Nakrivljen",
"Align center": "Centriraj",
"Header 5": "Zaglavlje 5",
"Heading 6": "Naslov 6",
"Heading 3": "Naslov 3",
"Decrease indent": "Smanji uvlaku",
"Header 4": "Zaglavlje 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Lijepljenje je sada u modu obi\u010dnog teksta. Sadr\u017eaj \u0107e sada biti zalijepljen kao obi\u010dni tekst sve dok ovu opciju ne ugasite.",
"Underline": "Podvu\u010deno",
"Cancel": "Otka\u017ei",
"Justify": "Obostrano poravnanje",
"Inline": "U liniji",
"Copy": "Kopiraj",
"Align left": "Poravnaj lijevo",
"Visual aids": "Vizualna pomo\u0107",
"Lower Greek": "Mala gr\u010dka slova",
"Square": "Kvadrat",
"Default": "Po\u010detno",
"Lower Alpha": "Mala slova",
"Circle": "Krug",
"Disc": "Disk",
"Upper Alpha": "Velika slova",
"Upper Roman": "Velika rimska slova",
"Lower Roman": "Mala rimska slova",
"Name": "Ime",
"Anchor": "Anchor",
"You have unsaved changes are you sure you want to navigate away?": "Niste sa\u010duvali izmjene. Jeste li sigurni da \u017eelite napustiti stranicu?",
"Restore last draft": "Vrati posljednju skicu",
"Special character": "Specijalni znak",
"Source code": "Izvorni kod",
"Right to left": "S desna na lijevo",
"Left to right": "S lijeva na desno",
"Emoticons": "Smajliji",
"Robots": "Roboti",
"Document properties": "Svojstva dokumenta",
"Title": "Naslov",
"Keywords": "Klju\u010dne rije\u010di",
"Encoding": "Kodiranje",
"Description": "Opis",
"Author": "Autor",
"Fullscreen": "Cijeli ekran",
"Horizontal line": "Vodoravna linija",
"Horizontal space": "Horizontalni razmak",
"Insert\/edit image": "Umetni\/uredi sliku",
"General": "Op\u0107enito",
"Advanced": "Napredno",
"Source": "Izvor",
"Border": "Okvir",
"Constrain proportions": "Ograni\u010di proporcije",
"Vertical space": "Vertikalni razmak",
"Image description": "Opis slike",
"Style": "Stil",
"Dimensions": "Dimenzije",
"Insert image": "Umetni sliku",
"Insert date\/time": "Umetni datum\/vrijeme",
"Remove link": "Ukloni link",
"Url": "URL",
"Text to display": "Tekst za prikaz",
"Anchors": "Anchori",
"Insert link": "Umetni link",
"New window": "Novi prozor",
"None": "Ni\u0161ta",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "Izgleda je URL koji ste upisali vanjski link. \u017delite li da dodate obavezni http:\/\/ prefiks?",
"Target": "Odredi\u0161te",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "Izgleda da je URL koji ste upisali ustvari email adresa. \u017delite li da dodate obavezni mailto: prefiks?",
"Insert\/edit link": "Umetni\/uredi link",
"Insert\/edit video": "Umetni\/uredi video",
"Poster": "Objavio",
"Alternative source": "Alternativni izvor",
"Paste your embed code below:": "Zalijepite va\u0161 ugradbeni kod ispod:",
"Insert video": "Umetni video",
"Embed": "Ugradi",
"Nonbreaking space": "Neprijelomni razmak",
"Page break": "Prijelom stranice",
"Paste as text": "Zalijepi kao tekst",
"Preview": "Pregled",
"Print": "\u0160tampaj",
"Save": "Sa\u010duvaj",
"Could not find the specified string.": "Tra\u017eeni string nije prona\u0111en.",
"Replace": "Zamijeni",
"Next": "Sljede\u0107e",
"Whole words": "Cijele rije\u010di",
"Find and replace": "Prona\u0111i i zamijeni",
"Replace with": "Zamijena sa",
"Find": "Prona\u0111i",
"Replace all": "Zamijeni sve",
"Match case": "Razlikuj mala i velika slova",
"Prev": "Prethodno",
"Spellcheck": "Provjera pravopisa",
"Finish": "Zavr\u0161i",
"Ignore all": "Zanemari sve",
"Ignore": "Zanemari",
"Insert row before": "Umetni red iznad",
"Rows": "Redovi",
"Height": "Visina",
"Paste row after": "Zalijepi red iznad",
"Alignment": "Poravnanje",
"Column group": "Grupa kolone",
"Row": "Red",
"Insert column before": "Umetni kolonu iznad",
"Split cell": "Podijeli \u0107eliju",
"Cell padding": "Ispunjenje \u0107elije",
"Cell spacing": "Razmak \u0107elija",
"Row type": "Vrsta reda",
"Insert table": "Umetni tabelu",
"Body": "Tijelo",
"Caption": "Natpis",
"Footer": "Podno\u017eje",
"Delete row": "Obri\u0161i red",
"Paste row before": "Zalijepi red ispod",
"Scope": "Opseg",
"Delete table": "Obri\u0161i tabelu",
"Header cell": "\u0106elija zaglavlja",
"Column": "Kolona",
"Cell": "\u0106elija",
"Header": "Zaglavlje",
"Cell type": "Vrsta \u0107elije",
"Copy row": "Kopiraj red",
"Row properties": "Svojstva reda",
"Table properties": "Svojstva tabele",
"Row group": "Grupa reda",
"Right": "Desno",
"Insert column after": "Umetni kolonu ispod",
"Cols": "Kolone",
"Insert row after": "Umetni red ispod",
"Width": "\u0160irina",
"Cell properties": "Svojstva \u0107elije",
"Left": "Lijevo",
"Cut row": "Izre\u017ei red",
"Delete column": "Obri\u0161i kolonu",
"Center": "Centrirano",
"Merge cells": "Spoji \u0107elije",
"Insert template": "Umetni predlo\u017eak",
"Templates": "Predlo\u0161ci",
"Background color": "Boja pozadine",
"Text color": "Boja tekst",
"Show blocks": "Prika\u017ei blokove",
"Show invisible characters": "Prika\u017ei nevidljive znakove",
"Words: {0}": "Rije\u010di: {0}",
"Insert": "Umetni",
"File": "Datoteka",
"Edit": "Uredi",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "Oblast za ure\u0111ivanje teksta. Pritisnite ALT-F9 za meni. Pritisnite ALT-F10 za prikaz alatne trake. Pritisnite ALT-0 za pomo\u0107.",
"Tools": "Alati",
"View": "Pregled",
"Table": "Tabela",
"Format": "Formatiranje"
});
program/js/tinymce/langs/ca.js
New file
@@ -0,0 +1,197 @@
tinymce.addI18n('ca',{
"Cut": "Retalla",
"Heading 5": "Encap\u00e7alament 5",
"Header 2": "Cap\u00e7alera 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "El vostre navegador no suporta l'acc\u00e9s directe al portaobjectes. Si us plau, feu servir les dreceres de teclat Ctrl+X\/C\/V.",
"Heading 4": "Encap\u00e7alament 4",
"Div": "Div",
"Heading 2": "Encap\u00e7alament 2",
"Paste": "Enganxa",
"Close": "Tanca",
"Font Family": "Fam\u00edlia de la font",
"Pre": "Pre",
"Align right": "Aliniat a la dreta",
"New document": "Nou document",
"Blockquote": "Cita",
"Numbered list": "Llista enumerada",
"Heading 1": "Encap\u00e7alament 1",
"Headings": "Encap\u00e7alaments",
"Increase indent": "Augmentar sagnat",
"Formats": "Formats",
"Headers": "Cap\u00e7aleres",
"Select all": "Seleccionar-ho tot",
"Header 3": "Cap\u00e7alera 3",
"Blocks": "Blocs",
"Undo": "Desfer",
"Strikethrough": "Ratllat",
"Bullet list": "Llista no ordenada",
"Header 1": "Cap\u00e7alera 1",
"Superscript": "Super\u00edndex",
"Clear formatting": "Eliminar format",
"Font Sizes": "Mides de la font",
"Subscript": "Sub\u00edndex",
"Header 6": "Cap\u00e7alera 6",
"Redo": "Refer",
"Paragraph": "Par\u00e0graf",
"Ok": "Acceptar",
"Bold": "Negreta",
"Code": "Codi",
"Italic": "Cursiva",
"Align center": "Centrat",
"Header 5": "Cap\u00e7alera 5",
"Heading 6": "Encap\u00e7alament 6",
"Heading 3": "Encap\u00e7alament 3",
"Decrease indent": "Disminuir sagnat",
"Header 4": "Cap\u00e7alera 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Enganxar ara est\u00e0 en mode text pla. Els continguts s'enganxaran com a text pla fins que desactivis aquesta opci\u00f3. ",
"Underline": "Subratllat",
"Cancel": "Cancel\u00b7la",
"Justify": "Justificat",
"Inline": "En l\u00ednia",
"Copy": "Copia",
"Align left": "Aliniat a l'esquerra",
"Visual aids": "Assist\u00e8ncia visual",
"Lower Greek": "Grec menor",
"Square": "Quadrat",
"Default": "Per defecte",
"Lower Alpha": "Alfa menor",
"Circle": "Cercle",
"Disc": "Disc",
"Upper Alpha": "Alfa major",
"Upper Roman": "Roman major",
"Lower Roman": "Roman menor",
"Name": "Nom",
"Anchor": "\u00c0ncora",
"You have unsaved changes are you sure you want to navigate away?": "Teniu canvis sense desar, esteu segur que voleu deixar-ho ara?",
"Restore last draft": "Restaurar l'\u00faltim esborrany",
"Special character": "Car\u00e0cter especial",
"Source code": "Codi font",
"Color": "Color",
"Right to left": "De dreta a esquerra",
"Left to right": "D'esquerra a dreta",
"Emoticons": "Emoticones",
"Robots": "Robots",
"Document properties": "Propietats del document",
"Title": "T\u00edtol",
"Keywords": "Paraules clau",
"Encoding": "Codificaci\u00f3",
"Description": "Descripci\u00f3",
"Author": "Autor",
"Fullscreen": "Pantalla completa",
"Horizontal line": "L\u00ednia horitzontal",
"Horizontal space": "Espai horitzontal",
"Insert\/edit image": "Inserir\/editar imatge",
"General": "General",
"Advanced": "Avan\u00e7at",
"Source": "Font",
"Border": "Vora",
"Constrain proportions": "Mantenir proporcions",
"Vertical space": "Espai vertical",
"Image description": "Descripci\u00f3 de la imatge",
"Style": "Estil",
"Dimensions": "Dimensions",
"Insert image": "Inserir imatge",
"Insert date\/time": "Inserir data\/hora",
"Remove link": "Treure enlla\u00e7",
"Url": "URL",
"Text to display": "Text per mostrar",
"Anchors": "\u00c0ncores",
"Insert link": "Inserir enlla\u00e7",
"New window": "Finestra nova",
"None": "Cap",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "L'URL que has escrit sembla un enlla\u00e7 extern. Vols afegir-li el prefix obligatori http:\/\/ ?",
"Target": "Dest\u00ed",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "L'URL que has escrit sembla una adre\u00e7a de correu electr\u00f2nic. Vols afegir-li el prefix obligatori mailto: ?",
"Insert\/edit link": "Inserir\/editar enlla\u00e7",
"Insert\/edit video": "Inserir\/editar v\u00eddeo",
"Poster": "P\u00f3ster",
"Alternative source": "Font alternativa",
"Paste your embed code below:": "Enganxau el codi a sota:",
"Insert video": "Inserir v\u00eddeo",
"Embed": "Incloure",
"Nonbreaking space": "Espai fixe",
"Page break": "Salt de p\u00e0gina",
"Paste as text": "Enganxar com a text",
"Preview": "Previsualitzaci\u00f3",
"Print": "Imprimir",
"Save": "Desa",
"Could not find the specified string.": "No es pot trobar el text especificat.",
"Replace": "Rempla\u00e7ar",
"Next": "Seg\u00fcent",
"Whole words": "Paraules senceres",
"Find and replace": "Buscar i rempla\u00e7ar",
"Replace with": "Rempla\u00e7ar amb",
"Find": "Buscar",
"Replace all": "Rempla\u00e7ar-ho tot",
"Match case": "Coincidir maj\u00fascules",
"Prev": "Anterior",
"Spellcheck": "Comprovar ortrografia",
"Finish": "Finalitzar",
"Ignore all": "Ignorar tots",
"Ignore": "Ignorar",
"Add to Dictionary": "Afegir al diccionari",
"Insert row before": "Inserir fila a sobre",
"Rows": "Files",
"Height": "Al\u00e7ada",
"Paste row after": "Enganxar fila a sota",
"Alignment": "Aliniament",
"Border color": "Color de vora",
"Column group": "Grup de columna",
"Row": "Fila",
"Insert column before": "Inserir columna abans",
"Split cell": "Dividir cel\u00b7les",
"Cell padding": "Marge intern",
"Cell spacing": "Espai entre cel\u00b7les",
"Row type": "Tipus de fila",
"Insert table": "Inserir taula",
"Body": "Cos",
"Caption": "Encap\u00e7alament",
"Footer": "Peu",
"Delete row": "Esborrar fila",
"Paste row before": "Enganxar fila a sobre",
"Scope": "\u00c0mbit",
"Delete table": "Esborrar taula",
"H Align": "Al\u00edniament H",
"Top": "Superior",
"Header cell": "Cel\u00b7la de cap\u00e7alera",
"Column": "Columna",
"Row group": "Grup de fila",
"Cell": "Cel\u00b7la",
"Middle": "Mitj\u00e0",
"Cell type": "Tipus de cel\u00b7la",
"Copy row": "Copiar fila",
"Row properties": "Propietats de fila",
"Table properties": "Propietats de taula",
"Bottom": "Inferior",
"V Align": "Al\u00edniament V",
"Header": "Cap\u00e7alera",
"Right": "A la dreta",
"Insert column after": "Inserir columna despr\u00e9s",
"Cols": "Cols",
"Insert row after": "Inserir fila a sota",
"Width": "Amplada",
"Cell properties": "Propietats de cel\u00b7la",
"Left": "A l'esquerra",
"Cut row": "Retallar fila",
"Delete column": "Esborrar columna",
"Center": "Centrat",
"Merge cells": "Fusionar cel\u00b7les",
"Insert template": "Inserir plantilla",
"Templates": "Plantilles",
"Background color": "Color del fons",
"Custom...": "Personalitzar...",
"Custom color": "Personalitzar el color",
"No color": "Sense color",
"Text color": "Color del text",
"Show blocks": "Mostrar blocs",
"Show invisible characters": "Mostrar car\u00e0cters invisibles",
"Words: {0}": "Paraules: {0}",
"Insert": "Inserir",
"File": "Arxiu",
"Edit": "Edici\u00f3",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "\u00c0rea de text amb format. Premeu ALT-F9 per mostrar el men\u00fa, ALT F10 per la barra d'eines i ALT-0 per ajuda.",
"Tools": "Eines",
"View": "Veure",
"Table": "Taula",
"Format": "Format"
});
program/js/tinymce/langs/cs.js
New file
@@ -0,0 +1,196 @@
tinymce.addI18n('cs',{
"Cut": "Vyjmout",
"Heading 5": "Nadpis 5",
"Header 2": "Nadpis 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "V\u00e1\u0161 prohl\u00ed\u017ee\u010d nepodporuje p\u0159\u00edm\u00fd p\u0159\u00edstup do schr\u00e1nky. Pou\u017eijte pros\u00edm kl\u00e1vesov\u00e9 zkratky Ctrl+X\/C\/V.",
"Heading 4": "Nadpis 4",
"Div": "Div (blok)",
"Heading 2": "Nadpis 2",
"Paste": "Vlo\u017eit",
"Close": "Zav\u0159\u00edt",
"Font Family": "Typ p\u00edsma",
"Pre": "Pre (p\u0159edform\u00e1tov\u00e1no)",
"Align right": "Zarovnat vpravo",
"New document": "Nov\u00fd dokument",
"Blockquote": "Citace",
"Numbered list": "\u010c\u00edslov\u00e1n\u00ed",
"Heading 1": "Nadpis 1",
"Headings": "Nadpisy",
"Increase indent": "Zv\u011bt\u0161it odsazen\u00ed",
"Formats": "Form\u00e1ty",
"Headers": "Nadpisy",
"Select all": "Vybrat v\u0161e",
"Header 3": "Nadpis 3",
"Blocks": "Blokov\u00e9 zobrazen\u00ed (block)",
"Undo": "Zp\u011bt",
"Strikethrough": "P\u0159e\u0161rktnut\u00e9",
"Bullet list": "Odr\u00e1\u017eky",
"Header 1": "Nadpis 1",
"Superscript": "Horn\u00ed index",
"Clear formatting": "Vymazat form\u00e1tov\u00e1n\u00ed",
"Font Sizes": "Velikost p\u00edsma",
"Subscript": "Doln\u00ed index",
"Header 6": "Nadpis 6",
"Redo": "Znovu",
"Paragraph": "Odstavec",
"Ok": "OK",
"Bold": "Tu\u010dn\u00e9",
"Code": "Code (k\u00f3d)",
"Italic": "Kurz\u00edva",
"Align center": "Zarovnat na st\u0159ed",
"Header 5": "Nadpis 5",
"Heading 6": "Nadpis 6",
"Heading 3": "Nadpis 3",
"Decrease indent": "Zmen\u0161it odsazen\u00ed",
"Header 4": "Nadpis 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Je zapnuto vkl\u00e1d\u00e1n\u00ed \u010dist\u00e9ho textu. Dokud nebude tato volba vypnuta, bude ve\u0161ker\u00fd obsah vlo\u017een jako \u010dist\u00fd text.",
"Underline": "Podtr\u017een\u00e9",
"Cancel": "Zru\u0161it",
"Justify": "Zarovnat do bloku",
"Inline": "\u0158\u00e1dkov\u00e9 zobrazen\u00ed (inline)",
"Copy": "Kop\u00edrovat",
"Align left": "Zarovnat vlevo",
"Visual aids": "Vizu\u00e1ln\u00ed pom\u016fcky",
"Lower Greek": "Mal\u00e9 p\u00edsmenkov\u00e1n\u00ed",
"Square": "\u010ctvere\u010dek",
"Default": "V\u00fdchoz\u00ed",
"Lower Alpha": "Norm\u00e1ln\u00ed \u010d\u00edslov\u00e1n\u00ed",
"Circle": "Kole\u010dko",
"Disc": "Punt\u00edk",
"Upper Alpha": "velk\u00e9 p\u00edsmenkov\u00e1n\u00ed",
"Upper Roman": "\u0158\u00edmsk\u00e9 \u010d\u00edslice",
"Lower Roman": "Mal\u00e9 \u0159\u00edmsk\u00e9 \u010d\u00edslice",
"Name": "N\u00e1zev",
"Anchor": "Kotva",
"You have unsaved changes are you sure you want to navigate away?": "M\u00e1te neulo\u017een\u00e9 zm\u011bny. Opravdu chcete opustit str\u00e1nku?",
"Restore last draft": "Obnovit posledn\u00ed koncept",
"Special character": "Speci\u00e1ln\u00ed znak",
"Source code": "Zdrojov\u00fd k\u00f3d",
"Color": "Barva",
"Right to left": "Zprava doleva",
"Left to right": "Zleva doprava",
"Emoticons": "Emotikony",
"Robots": "Roboti",
"Document properties": "Vlastnosti dokumentu",
"Title": "Titulek",
"Keywords": "Kl\u00ed\u010dov\u00e1 slova",
"Encoding": "K\u00f3dov\u00e1n\u00ed",
"Description": "Popis",
"Author": "Autor",
"Fullscreen": "Na celou obrazovku",
"Horizontal line": "Vodorovn\u00e1 \u010d\u00e1ra",
"Horizontal space": "Horizont\u00e1ln\u00ed mezera",
"Insert\/edit image": "Vlo\u017eit \/ upravit obr\u00e1zek",
"General": "Obecn\u00e9",
"Advanced": "Pokro\u010dil\u00e9",
"Source": "Url",
"Border": "R\u00e1me\u010dek",
"Constrain proportions": "Zachovat proporce",
"Vertical space": "Vertik\u00e1ln\u00ed mezera",
"Image description": "Popis obr\u00e1zku",
"Style": "Styl",
"Dimensions": "Rozm\u011bry",
"Insert image": "Vlo\u017eit obr\u00e1zek",
"Insert date\/time": "Vlo\u017eit datum \/ \u010das",
"Remove link": "Odstranit odkaz",
"Url": "Odkaz",
"Text to display": "Text k zobrazen\u00ed",
"Anchors": "Kotvy",
"Insert link": "Vlo\u017eit odkaz",
"New window": "Nov\u00e9 okno",
"None": "\u017d\u00e1dn\u00e9",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "Zadan\u00e9 URL vypad\u00e1 jako odkaz na jin\u00fd web. Chcete doplnit povinn\u00fd prefix http:\/\/?",
"Target": "C\u00edl",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "Zadan\u00e9 URL vypad\u00e1 jako e-mailov\u00e1 adresa. Chcete doplnit povinn\u00fd prefix mailto:?",
"Insert\/edit link": "Vlo\u017eit \/ upravit odkaz",
"Insert\/edit video": "Vlo\u017eit \/ upravit video",
"Poster": "N\u00e1hled",
"Alternative source": "Alternativn\u00ed zdroj",
"Paste your embed code below:": "Vlo\u017ete k\u00f3d pro vlo\u017een\u00ed n\u00ed\u017ee:",
"Insert video": "Vlo\u017eit video",
"Embed": "Vlo\u017eit",
"Nonbreaking space": "Pevn\u00e1 mezera",
"Page break": "Konec str\u00e1nky",
"Paste as text": "Vlo\u017eit jako \u010dist\u00fd text",
"Preview": "N\u00e1hled",
"Print": "Tisk",
"Save": "Ulo\u017eit",
"Could not find the specified string.": "Zadan\u00fd \u0159et\u011bzec nebyl nalezen.",
"Replace": "Nahradit",
"Next": "Dal\u0161\u00ed",
"Whole words": "Pouze cel\u00e1 slova",
"Find and replace": "Naj\u00edt a nahradit",
"Replace with": "Nahradit za",
"Find": "Naj\u00edt",
"Replace all": "Nahradit v\u0161e",
"Match case": "Rozli\u0161ovat mal\u00e1 a velk\u00e1 p\u00edsmena",
"Prev": "P\u0159edchoz\u00ed",
"Spellcheck": "Kontrola pravopisu",
"Finish": "Ukon\u010dit",
"Ignore all": "Ignorovat v\u0161e",
"Ignore": "Ignorovat",
"Add to Dictionary": "P\u0159idat do slovn\u00edku",
"Insert row before": "Vlo\u017eit \u0159\u00e1dek nad",
"Rows": "\u0158\u00e1dek",
"Height": "V\u00fd\u0161ka",
"Paste row after": "Vlo\u017eit \u0159\u00e1dek pod",
"Alignment": "Zarovn\u00e1n\u00ed",
"Column group": "Skupina sloupc\u016f",
"Row": "\u0158\u00e1dek",
"Insert column before": "Vlo\u017eit sloupec vlevo",
"Split cell": "Rozd\u011blit bu\u0148ky",
"Cell padding": "Vnit\u0159n\u00ed okraj bun\u011bk",
"Cell spacing": "Vn\u011bj\u0161\u00ed okraj bun\u011bk",
"Row type": "Typ \u0159\u00e1dku",
"Insert table": "Vlo\u017eit tabulku",
"Body": "T\u011blo",
"Caption": "Nadpis",
"Footer": "Pati\u010dka",
"Delete row": "Smazat \u0159\u00e1dek",
"Paste row before": "Vlo\u017eit \u0159\u00e1dek nad",
"Scope": "Rozsah",
"Delete table": "Smazat tabulku",
"H Align": "Horizont\u00e1ln\u00ed zarovn\u00e1n\u00ed",
"Top": "Nahoru",
"Header cell": "Hlavi\u010dkov\u00e1 bu\u0148ka",
"Column": "Sloupec",
"Row group": "Skupina \u0159\u00e1dk\u016f",
"Cell": "Bu\u0148ka",
"Middle": "Uprost\u0159ed",
"Cell type": "Typ bu\u0148ky",
"Copy row": "Kop\u00edrovat \u0159\u00e1dek",
"Row properties": "Vlastnosti \u0159\u00e1dku",
"Table properties": "Vlastnosti tabulky",
"Bottom": "Dol\u016f",
"V Align": "Vertik\u00e1ln\u00ed zarovn\u00e1n\u00ed",
"Header": "Hlavi\u010dka",
"Right": "Vpravo",
"Insert column after": "Vlo\u017eit sloupec vpravo",
"Cols": "Sloupc\u016f",
"Insert row after": "Vlo\u017eit \u0159\u00e1dek pod",
"Width": "\u0160\u00ed\u0159ka",
"Cell properties": "Vlastnosti bu\u0148ky",
"Left": "Vlevo",
"Cut row": "Vyjmout \u0159\u00e1dek",
"Delete column": "Smazat sloupec",
"Center": "Na st\u0159ed",
"Merge cells": "Slou\u010dit bu\u0148ky",
"Insert template": "Vlo\u017eit \u0161ablonu",
"Templates": "\u0160ablony",
"Background color": "Barva pozad\u00ed",
"Custom...": "Vlastn\u00ed...",
"Custom color": "Vlastn\u00ed barva",
"No color": "Bez barvy",
"Text color": "Barva p\u00edsma",
"Show blocks": "Uk\u00e1zat bloky",
"Show invisible characters": "Zobrazit speci\u00e1ln\u00ed znaky",
"Words: {0}": "Po\u010det slov: {0}",
"Insert": "Vlo\u017eit",
"File": "Soubor",
"Edit": "\u00dapravy",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "Editor. Stiskn\u011bte ALT-F9 pro menu, ALT-F10 pro n\u00e1strojovou li\u0161tu a ALT-0 pro n\u00e1pov\u011bdu.",
"Tools": "N\u00e1stroje",
"View": "Zobrazit",
"Table": "Tabulka",
"Format": "Form\u00e1t"
});
program/js/tinymce/langs/cy.js
New file
@@ -0,0 +1,179 @@
tinymce.addI18n('cy',{
"Cut": "Torri",
"Header 2": "Pennawd 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "Dyw eich porwr ddim yn cynnal mynediad uniongyrchol i'r clipfwrdd. Defnyddiwch yr allweddau llwybr brys Ctrl+X\/C\/V yn lle 'ny.",
"Div": "Div",
"Paste": "Gludo",
"Close": "Cau",
"Font Family": "Teulu Ffont",
"Pre": "Pre",
"Align right": "Aliniad dde",
"New document": "Dogfen newydd",
"Blockquote": "Dyfyniad bloc",
"Numbered list": "Rhestr rifol",
"Increase indent": "Cynyddu mewnoliad",
"Formats": "Fformatiau",
"Headers": "Penawdau",
"Select all": "Dewis popeth",
"Header 3": "Pennawd 3",
"Blocks": "Blociau",
"Undo": "Dadwneud",
"Strikethrough": "Llinell drwodd",
"Bullet list": "Rhestr fwled",
"Header 1": "Pennawd 1",
"Superscript": "Uwchsgript",
"Clear formatting": "Clirio fformatio",
"Font Sizes": "Meintiau Ffont",
"Subscript": "Is-sgript",
"Header 6": "Pennawd 6",
"Redo": "AIlwneud",
"Paragraph": "Paragraff",
"Ok": "Iawn",
"Bold": "Bras",
"Code": "Cod",
"Italic": "Italig",
"Align center": "Aliniad canol",
"Header 5": "Pennawd 5",
"Decrease indent": "Lleinhau mewnoliad",
"Header 4": "Pennawd 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Mae gludo o fewn modd testun plaen. Caiff y cynnwys ei ludo ar ffurf destun plaen tan gaiff yr opsiwn ei doglo bant.",
"Underline": "Tanlinellu",
"Cancel": "Canslo",
"Justify": "Unioni",
"Inline": "Mewn llinell",
"Copy": "Cop\u00efo",
"Align left": "Aliniad chwith",
"Visual aids": "Cymorth gweledol",
"Lower Greek": "Groeg Is",
"Square": "Sgw\u00e2r",
"Default": "Diofyn",
"Lower Alpha": "Alffa Is",
"Circle": "Cylch",
"Disc": "Disg",
"Upper Alpha": "Alffa Uwch",
"Upper Roman": "Rhufeinig Uwch",
"Lower Roman": "Rhufeinig Is",
"Name": "Enw",
"Anchor": "Angor",
"You have unsaved changes are you sure you want to navigate away?": "Mae newidiadau heb eu cadw - ydych chi wir am symud i ffwrdd?",
"Restore last draft": "Adfer y drafft olaf",
"Special character": "Nod arbennig",
"Source code": "Cod gwreiddiol",
"Right to left": "Dde i'r chwith",
"Left to right": "Chwith i'r dde",
"Emoticons": "Gwenogluniau",
"Robots": "Robotiaid",
"Document properties": "Priodweddau'r ddogfen",
"Title": "Teitl",
"Keywords": "Allweddeiriau",
"Encoding": "Amgodiad",
"Description": "Disgrifiad",
"Author": "Awdur",
"Fullscreen": "Sgrin llawn",
"Horizontal line": "Llinell lorweddol",
"Horizontal space": "Gofod llorweddol",
"Insert\/edit image": "Mewnosod\/golygu delwedd",
"General": "Cyffredinol",
"Advanced": "Uwch",
"Source": "Ffynhonnell",
"Border": "Ymyl",
"Constrain proportions": "Gorfodi cyfrannedd",
"Vertical space": "Gofod fertigol",
"Image description": "Disgrifiad y ddelwedd",
"Style": "Arddull",
"Dimensions": "Dimensiynau",
"Insert image": "Mewnosod delwedd",
"Insert date\/time": "Mewnosod dyddiad\/amser",
"Remove link": "Tynnu dolen",
"Url": "Url",
"Text to display": "Testun i'w ddangos",
"Anchors": "Angorau",
"Insert link": "Mewnosod dolen",
"New window": "Ffenest newydd",
"None": "Dim",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "Mae'n debyg taw dolen allanol yw'r URL hwn. Ydych chi am ychwanegu'r rhagosodiad http:\/\/ ?",
"Target": "Targed",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "Mae'n debyg taw cyfeiriad ebost yw'r URL hwn. Ydych chi am ychwanegu'r rhagosodiad mailto:?",
"Insert\/edit link": "Mewnosod\/golygu dolen",
"Insert\/edit video": "Mewnosod\/golygu fideo",
"Poster": "Poster",
"Alternative source": "Ffynhonnell amgen",
"Paste your embed code below:": "Gludwch eich cod mewnosod isod:",
"Insert video": "Mewnosod fideo",
"Embed": "Mewnosod",
"Nonbreaking space": "Bwlch heb dorri",
"Page break": "Toriad tudalen",
"Paste as text": "Gludo fel testun",
"Preview": "Rhagolwg",
"Print": "Argraffu",
"Save": "Cadw",
"Could not find the specified string.": "Methu ffeindio'r llinyn hwnnw.",
"Replace": "Amnewid",
"Next": "Nesaf",
"Whole words": "Geiriau cyfan",
"Find and replace": "Chwilio ac amnewid",
"Replace with": "Amnewid gyda",
"Find": "Chwilio",
"Replace all": "Amnewid pob",
"Match case": "Cydweddu'r un c\u00eas",
"Prev": "Cynt",
"Spellcheck": "Sillafydd",
"Finish": "Gorffen",
"Ignore all": "Amwybyddu pob",
"Ignore": "Anwybyddu",
"Insert row before": "Mewnosod rhes cyn",
"Rows": "Rhesi",
"Height": "Uchder",
"Paste row after": "Gludo rhes ar \u00f4l",
"Alignment": "Aliniad",
"Column group": "Gr\u0175p colofn",
"Row": "Rhes",
"Insert column before": "Mewnosod colofn cyn",
"Split cell": "Hollti celloedd",
"Cell padding": "Padio cell",
"Cell spacing": "Bylchiau cell",
"Row type": "Math y rhes",
"Insert table": "Mewnosod tabl",
"Body": "Corff",
"Caption": "Pennawd",
"Footer": "Troedyn",
"Delete row": "Dileu rhes",
"Paste row before": "Gludo rhes cyn",
"Scope": "Sgop",
"Delete table": "Dileu'r tabl",
"Header cell": "Cell bennawd",
"Column": "Colofn",
"Cell": "Cell",
"Header": "Pennyn",
"Cell type": "Math y gell",
"Copy row": "Cop\u00efo rhes",
"Row properties": "Priodweddau rhes",
"Table properties": "Priodweddau tabl",
"Row group": "Gr\u0175p rhes",
"Right": "Dde",
"Insert column after": "Mewnosod colofn ar \u00f4l",
"Cols": "Col'u",
"Insert row after": "Mewnosod rhes ar \u00f4l",
"Width": "Lled",
"Cell properties": "Priodweddau'r gell",
"Left": "Chwith",
"Cut row": "Torri rhes",
"Delete column": "Dileu colofn",
"Center": "Canol",
"Merge cells": "Cyfuno celloedd",
"Insert template": "Mewnosod templed",
"Templates": "Templedi",
"Background color": "Lliw cefndir",
"Text color": "Lliw testun",
"Show blocks": "Dangos blociau",
"Show invisible characters": "Dangos nodau anweledig",
"Words: {0}": "Geiriau: {0}",
"Insert": "Mewnosod",
"File": "Ffeil",
"Edit": "Golygu",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "Ardal Testun Uwch. Pwyswch ALT-F9 ar gyfer y ddewislen, Pwyswch ALT-F10 ar gyfer y bar offer. Pwyswch ALT-0 am gymorth",
"Tools": "Offer",
"View": "Dangos",
"Table": "Tabl",
"Format": "Fformat"
});
program/js/tinymce/langs/da.js
New file
@@ -0,0 +1,197 @@
tinymce.addI18n('da',{
"Cut": "Klip",
"Heading 5": "Overskrift 5",
"Header 2": "Overskrift 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "Din browser underst\u00f8tter ikke direkte adgang til clipboard. Benyt Ctrl+X\/C\/ keybord shortcuts i stedet for.",
"Heading 4": "Overskrift 4",
"Div": "Div",
"Heading 2": "Overskrift 2",
"Paste": "Inds\u00e6t",
"Close": "Luk",
"Font Family": "Skrifttype",
"Pre": "Pre",
"Align right": "H\u00f8jrejusteret",
"New document": "Nyt dokument",
"Blockquote": "Indrykning",
"Numbered list": "Nummerering",
"Heading 1": "Overskrift 1",
"Headings": "Overskrifter",
"Increase indent": "For\u00f8g indrykning",
"Formats": "Formater",
"Headers": "Overskrifter",
"Select all": "V\u00e6lg alle",
"Header 3": "Overskrift 3",
"Blocks": "Blokke",
"Undo": "Fortryd",
"Strikethrough": "Gennemstreg",
"Bullet list": "Punkt tegn",
"Header 1": "Overskrift 1",
"Superscript": "H\u00e6vet",
"Clear formatting": "Nulstil formattering",
"Font Sizes": "Skriftst\u00f8rrelse",
"Subscript": "S\u00e6nket",
"Header 6": "Overskrift 6",
"Redo": "Genopret",
"Paragraph": "S\u00e6tning",
"Ok": "Ok",
"Bold": "Fed",
"Code": "Code",
"Italic": "Kursiv",
"Align center": "Centreret",
"Header 5": "Overskrift 5",
"Heading 6": "Overskrift 6",
"Heading 3": "Overskrift 3",
"Decrease indent": "Formindsk indrykning",
"Header 4": "Overskrift 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "S\u00e6t ind er indstillet til at inds\u00e6tte som ren tekst. Indhold bliver nu indsat uden formatering indtil du \u00e6ndrer indstillingen.",
"Underline": "Understreg",
"Cancel": "Fortryd",
"Justify": "Justering",
"Inline": "Inline",
"Copy": "Kopier",
"Align left": "Venstrejusteret",
"Visual aids": "Visuel hj\u00e6lp",
"Lower Greek": "Lower Gr\u00e6sk",
"Square": "Kvadrat",
"Default": "Standard",
"Lower Alpha": "Lower Alpha",
"Circle": "Cirkel",
"Disc": "Disk",
"Upper Alpha": "Upper Alpha",
"Upper Roman": "Upper Roman",
"Lower Roman": "Lower Roman",
"Name": "Navn",
"Anchor": "Anchor",
"You have unsaved changes are you sure you want to navigate away?": "Du har ikke gemte \u00e6ndringer. Er du sikker p\u00e5 at du vil forts\u00e6tte?",
"Restore last draft": "Genopret sidste kladde",
"Special character": "Specielle tegn",
"Source code": "Kildekode",
"Color": "Farve",
"Right to left": "H\u00f8jre til venstre",
"Left to right": "Venstre til h\u00f8jre",
"Emoticons": "Emot-ikoner",
"Robots": "Robotter",
"Document properties": "Dokument egenskaber",
"Title": "Titel",
"Keywords": "S\u00f8geord",
"Encoding": "Kodning",
"Description": "Beskrivelse",
"Author": "Forfatter",
"Fullscreen": "Fuldsk\u00e6rm",
"Horizontal line": "Vandret linie",
"Horizontal space": "Vandret afstand",
"Insert\/edit image": "Inds\u00e6t\/ret billede",
"General": "Generet",
"Advanced": "Avanceret",
"Source": "Kilde",
"Border": "Kant",
"Constrain proportions": "Behold propertioner",
"Vertical space": "Lodret afstand",
"Image description": "Billede beskrivelse",
"Style": "Stil",
"Dimensions": "Dimensioner",
"Insert image": "Inds\u00e6t billede",
"Insert date\/time": "Inds\u00e6t dato\/klokkeslet",
"Remove link": "Fjern link",
"Url": "Url",
"Text to display": "Vis tekst",
"Anchors": "Ankre",
"Insert link": "Inds\u00e6t link",
"New window": "Nyt vindue",
"None": "Ingen",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "URLen som du angav ser ud til at v\u00e6re et eksternt link. \u00d8nsker du at tilf\u00f8je det kr\u00e6vede prefiks http:\/\/ ?",
"Target": "Target",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "URLen som du angav ser ud til at v\u00e6re en email adresse. \u00d8nsker du at tilf\u00f8je det kr\u00e6vede prefiks  mailto:",
"Insert\/edit link": "Inds\u00e6t\/ret link",
"Insert\/edit video": "Inds\u00e6t\/ret video",
"Poster": "Poster",
"Alternative source": "Alternativ kilde",
"Paste your embed code below:": "Inds\u00e6t din embed kode herunder:",
"Insert video": "Inds\u00e6t video",
"Embed": "Integrer",
"Nonbreaking space": "H\u00e5rdt mellemrum",
"Page break": "Sideskift",
"Paste as text": "Inds\u00e6t som ren tekst",
"Preview": "Forh\u00e5ndsvisning",
"Print": "Udskriv",
"Save": "Gem",
"Could not find the specified string.": "Kunne ikke finde s\u00f8getekst",
"Replace": "Erstat",
"Next": "N\u00e6ste",
"Whole words": "Hele ord",
"Find and replace": "Find og erstat",
"Replace with": "Erstat med",
"Find": "Find",
"Replace all": "Erstat alt",
"Match case": "STORE og sm\u00e5 bogstaver",
"Prev": "Forrige",
"Spellcheck": "Stavekontrol",
"Finish": "F\u00e6rdig",
"Ignore all": "Ignorer alt",
"Ignore": "Ignorer",
"Add to Dictionary": "Tilf\u00f8j til ordbog",
"Insert row before": "Inds\u00e6t r\u00e6kke f\u00f8r",
"Rows": "R\u00e6kker",
"Height": "H\u00f8jde",
"Paste row after": "Inds\u00e6t r\u00e6kke efter",
"Alignment": "Tilpasning",
"Border color": "Kant farve",
"Column group": "Kolonne gruppe",
"Row": "R\u00e6kke",
"Insert column before": "Inds\u00e6t kolonne f\u00f8r",
"Split cell": "Split celle",
"Cell padding": "Celle padding",
"Cell spacing": "Celle afstand",
"Row type": "R\u00e6kke type",
"Insert table": "Inds\u00e6t tabel",
"Body": "Krop",
"Caption": "Tekst",
"Footer": "Sidefod",
"Delete row": "Slet r\u00e6kke",
"Paste row before": "Inds\u00e6t r\u00e6kke f\u00f8r",
"Scope": "Anvendelsesomr\u00e5de",
"Delete table": "Slet tabel",
"H Align": "H juster",
"Top": "Top",
"Header cell": "Sidehoved celle",
"Column": "Kolonne",
"Row group": "R\u00e6kke gruppe",
"Cell": "Celle",
"Middle": "Midt",
"Cell type": "Celle type",
"Copy row": "Kopier r\u00e6kke",
"Row properties": "R\u00e6kke egenskaber",
"Table properties": "Tabel egenskaber",
"Bottom": "Bund",
"V Align": "V juster",
"Header": "Sidehoved",
"Right": "H\u00f8jre",
"Insert column after": "Inds\u00e6t kolonne efter",
"Cols": "Kolonne",
"Insert row after": "Inds\u00e6t r\u00e6kke efter",
"Width": "Bredde",
"Cell properties": "Celle egenskaber",
"Left": "Venstre",
"Cut row": "Klip r\u00e6kke",
"Delete column": "Slet kolonne",
"Center": "Centrering",
"Merge cells": "Flet celler",
"Insert template": "Inds\u00e6t skabelon",
"Templates": "Skabeloner",
"Background color": "Baggrunds farve",
"Custom...": "Brugerdefineret...",
"Custom color": "Brugerdefineret farve",
"No color": "Ingen farve",
"Text color": "Tekst farve",
"Show blocks": "Vis klokke",
"Show invisible characters": "Vis usynlige tegn",
"Words: {0}": "Ord: {0}",
"Insert": "Inds\u00e6t",
"File": "Fil",
"Edit": "Rediger",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "Rich Text omr\u00e5de. Tryk ALT-F9 for menu. Tryk ALT-F10 for toolbar. Tryk ALT-0 for hj\u00e6lp",
"Tools": "V\u00e6rkt\u00f8j",
"View": "Vis",
"Table": "Tabel",
"Format": "Format"
});
program/js/tinymce/langs/de.js
New file
@@ -0,0 +1,197 @@
tinymce.addI18n('de',{
"Cut": "Ausschneiden",
"Heading 5": "\u00dcberschrift 5",
"Header 2": "\u00dcberschrift 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "Ihr Browser unterst\u00fctzt leider keinen direkten Zugriff auf die Zwischenablage. Bitte benutzen Sie die Strg + X \/ C \/ V Tastenkombinationen.",
"Heading 4": "\u00dcberschrift 4",
"Div": "Textblock",
"Heading 2": "\u00dcberschrift 2",
"Paste": "Einf\u00fcgen",
"Close": "Schlie\u00dfen",
"Font Family": "Schriftart",
"Pre": "Vorformatierter Text",
"Align right": "Rechtsb\u00fcndig ausrichten",
"New document": "Neues Dokument",
"Blockquote": "Zitat",
"Numbered list": "Nummerierte Liste",
"Heading 1": "\u00dcberschrift 1",
"Headings": "\u00dcberschriften",
"Increase indent": "Einzug vergr\u00f6\u00dfern",
"Formats": "Formate",
"Headers": "\u00dcberschriften",
"Select all": "Alles ausw\u00e4hlen",
"Header 3": "\u00dcberschrift 3",
"Blocks": "Absatzformate",
"Undo": "R\u00fcckg\u00e4ngig",
"Strikethrough": "Durchgestrichen",
"Bullet list": "Aufz\u00e4hlung",
"Header 1": "\u00dcberschrift 1",
"Superscript": "Hochgestellt",
"Clear formatting": "Formatierung entfernen",
"Font Sizes": "Schriftgr\u00f6\u00dfe",
"Subscript": "Tiefgestellt",
"Header 6": "\u00dcberschrift 6",
"Redo": "Wiederholen",
"Paragraph": "Absatz",
"Ok": "Ok",
"Bold": "Fett",
"Code": "Quelltext",
"Italic": "Kursiv",
"Align center": "Zentriert ausrichten",
"Header 5": "\u00dcberschrift 5",
"Heading 6": "\u00dcberschrift 6",
"Heading 3": "\u00dcberschrift 3",
"Decrease indent": "Einzug verkleinern",
"Header 4": "\u00dcberschrift 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Einf\u00fcgen ist nun im einfachen Textmodus. Inhalte werden ab jetzt als unformatierter Text eingef\u00fcgt, bis Sie diese Einstellung wieder ausschalten!",
"Underline": "Unterstrichen",
"Cancel": "Abbrechen",
"Justify": "Blocksatz",
"Inline": "Zeichenformate",
"Copy": "Kopieren",
"Align left": "Linksb\u00fcndig ausrichten",
"Visual aids": "Visuelle Hilfen",
"Lower Greek": "Griechische Kleinbuchstaben",
"Square": "Quadrat",
"Default": "Standard",
"Lower Alpha": "Kleinbuchstaben",
"Circle": "Kreis",
"Disc": "Punkt",
"Upper Alpha": "Gro\u00dfbuchstaben",
"Upper Roman": "R\u00f6mische Zahlen (Gro\u00dfbuchstaben)",
"Lower Roman": "R\u00f6mische Zahlen (Kleinbuchstaben)",
"Name": "Name",
"Anchor": "Textmarke",
"You have unsaved changes are you sure you want to navigate away?": "Die \u00c4nderungen wurden noch nicht gespeichert, sind Sie sicher, dass Sie diese Seite verlassen wollen?",
"Restore last draft": "Letzten Entwurf wiederherstellen",
"Special character": "Sonderzeichen",
"Source code": "Quelltext",
"Color": "Farbe",
"Right to left": "Von rechts nach links",
"Left to right": "Von links nach rechts",
"Emoticons": "Emoticons",
"Robots": "Robots",
"Document properties": "Dokumenteigenschaften",
"Title": "Titel",
"Keywords": "Sch\u00fcsselw\u00f6rter",
"Encoding": "Zeichenkodierung",
"Description": "Beschreibung",
"Author": "Verfasser",
"Fullscreen": "Vollbild",
"Horizontal line": "Horizontale Linie",
"Horizontal space": "Horizontaler Abstand",
"Insert\/edit image": "Bild einf\u00fcgen\/bearbeiten",
"General": "Allgemein",
"Advanced": "Erweitert",
"Source": "Quelle",
"Border": "Rahmen",
"Constrain proportions": "Seitenverh\u00e4ltnis beibehalten",
"Vertical space": "Vertikaler Abstand",
"Image description": "Bildbeschreibung",
"Style": "Stil",
"Dimensions": "Abmessungen",
"Insert image": "Bild einf\u00fcgen",
"Insert date\/time": "Datum\/Uhrzeit einf\u00fcgen ",
"Remove link": "Link entfernen",
"Url": "URL",
"Text to display": "Anzuzeigender Text",
"Anchors": "Textmarken",
"Insert link": "Link einf\u00fcgen",
"New window": "Neues Fenster",
"None": "Keine",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "Diese Adresse scheint ein externer Link zu sein. M\u00f6chten Sie das dazu ben\u00f6tigte \"http:\/\/\" voranstellen?",
"Target": "Ziel",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "Diese Adresse scheint eine E-Mail-Adresse zu sein. M\u00f6chten Sie das dazu ben\u00f6tigte \"mailto:\" voranstellen?",
"Insert\/edit link": "Link einf\u00fcgen\/bearbeiten",
"Insert\/edit video": "Video einf\u00fcgen\/bearbeiten",
"Poster": "Poster",
"Alternative source": "Alternative Quelle",
"Paste your embed code below:": "F\u00fcgen Sie Ihren Einbettungscode hier ein:",
"Insert video": "Video einf\u00fcgen",
"Embed": "Einbetten",
"Nonbreaking space": "Gesch\u00fctztes Leerzeichen",
"Page break": "Seitenumbruch",
"Paste as text": "Als Text einf\u00fcgen",
"Preview": "Vorschau",
"Print": "Drucken",
"Save": "Speichern",
"Could not find the specified string.": "Die Zeichenfolge wurde nicht gefunden.",
"Replace": "Ersetzen",
"Next": "Weiter",
"Whole words": "Nur ganze W\u00f6rter",
"Find and replace": "Suchen und ersetzen",
"Replace with": "Ersetzen durch",
"Find": "Suchen",
"Replace all": "Alles ersetzen",
"Match case": "Gro\u00df-\/Kleinschreibung beachten",
"Prev": "Zur\u00fcck",
"Spellcheck": "Rechtschreibpr\u00fcfung",
"Finish": "Ende",
"Ignore all": "Alles Ignorieren",
"Ignore": "Ignorieren",
"Add to Dictionary": "Zum W\u00f6rterbuch hinzuf\u00fcgen",
"Insert row before": "Neue Zeile davor einf\u00fcgen ",
"Rows": "Zeilen",
"Height": "H\u00f6he",
"Paste row after": "Zeile danach einf\u00fcgen",
"Alignment": "Ausrichtung",
"Border color": "Rahmenfarbe",
"Column group": "Spaltengruppe",
"Row": "Zeile",
"Insert column before": "Neue Spalte davor einf\u00fcgen",
"Split cell": "Zelle aufteilen",
"Cell padding": "Zelleninnenabstand",
"Cell spacing": "Zellenabstand",
"Row type": "Zeilentyp",
"Insert table": "Tabelle einf\u00fcgen",
"Body": "Inhalt",
"Caption": "Beschriftung",
"Footer": "Fu\u00dfzeile",
"Delete row": "Zeile l\u00f6schen",
"Paste row before": "Zeile davor einf\u00fcgen",
"Scope": "G\u00fcltigkeitsbereich",
"Delete table": "Tabelle l\u00f6schen",
"H Align": "Horizontale Ausrichtung",
"Top": "Oben",
"Header cell": "Kopfzelle",
"Column": "Spalte",
"Row group": "Zeilengruppe",
"Cell": "Zelle",
"Middle": "Mitte",
"Cell type": "Zellentyp",
"Copy row": "Zeile kopieren",
"Row properties": "Zeileneigenschaften",
"Table properties": "Tabelleneigenschaften",
"Bottom": "Unten",
"V Align": "Vertikale Ausrichtung",
"Header": "Kopfzeile",
"Right": "Rechtsb\u00fcndig",
"Insert column after": "Neue Spalte danach einf\u00fcgen",
"Cols": "Spalten",
"Insert row after": "Neue Zeile danach einf\u00fcgen",
"Width": "Breite",
"Cell properties": "Zelleneigenschaften",
"Left": "Linksb\u00fcndig",
"Cut row": "Zeile ausschneiden",
"Delete column": "Spalte l\u00f6schen",
"Center": "Zentriert",
"Merge cells": "Zellen verbinden",
"Insert template": "Vorlage einf\u00fcgen ",
"Templates": "Vorlagen",
"Background color": "Hintergrundfarbe",
"Custom...": "Benutzerdefiniert...",
"Custom color": "Benutzerdefinierte Farbe",
"No color": "Keine Farbe",
"Text color": "Textfarbe",
"Show blocks": " Bl\u00f6cke anzeigen",
"Show invisible characters": "Unsichtbare Zeichen anzeigen",
"Words: {0}": "W\u00f6rter: {0}",
"Insert": "Einf\u00fcgen",
"File": "Datei",
"Edit": "Bearbeiten",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "Rich-Text- Area. Dr\u00fccken Sie ALT-F9 f\u00fcr das Men\u00fc. Dr\u00fccken Sie ALT-F10 f\u00fcr Symbolleiste. Dr\u00fccken Sie ALT-0 f\u00fcr Hilfe",
"Tools": "Werkzeuge",
"View": "Ansicht",
"Table": "Tabelle",
"Format": "Format"
});
program/js/tinymce/langs/de_AT.js
New file
@@ -0,0 +1,197 @@
tinymce.addI18n('de_AT',{
"Cut": "Ausschneiden",
"Heading 5": "\u00dcberschrift 5",
"Header 2": "\u00dcberschrift 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "Ihr Browser unterst\u00fctzt keinen direkten Zugriff auf die Zwischenablage. Bitte nutzen Sie die Tastaturk\u00fcrzel Strg+X\/C\/V stattdessen.",
"Heading 4": "\u00dcberschrift 4",
"Div": "Block (div)",
"Heading 2": "\u00dcberschrift 2",
"Paste": "Einf\u00fcgen",
"Close": "Schlie\u00dfen",
"Font Family": "Schriftart",
"Pre": "Vorformatierter Text (pre)",
"Align right": "Rechtsb\u00fcndig",
"New document": "Neues Dokument",
"Blockquote": "Zitat (blockquote)",
"Numbered list": "Sortierte Liste",
"Heading 1": "\u00dcberschrift 1",
"Headings": "\u00dcberschriften",
"Increase indent": "Einr\u00fccken",
"Formats": "Formate",
"Headers": "\u00dcberschriften",
"Select all": "Alles ausw\u00e4hlen",
"Header 3": "\u00dcberschrift 3",
"Blocks": "Bl\u00f6cke",
"Undo": "R\u00fcckg\u00e4ngig",
"Strikethrough": "Durchgestrichen",
"Bullet list": "Unsortierte Liste",
"Header 1": "\u00dcberschrift 1",
"Superscript": "Hochgestellt",
"Clear formatting": "Formatierungen zur\u00fccksetzen",
"Font Sizes": "Schriftgr\u00f6\u00dfen",
"Subscript": "Tiefgestellt",
"Header 6": "\u00dcberschrift 6",
"Redo": "Wiederholen",
"Paragraph": "Absatz (p)",
"Ok": "Ok",
"Bold": "Fett",
"Code": "Code (code)",
"Italic": "Kursiv",
"Align center": "Zentriert",
"Header 5": "\u00dcberschrift 5",
"Heading 6": "\u00dcberschrift 6",
"Heading 3": "\u00dcberschrift 3",
"Decrease indent": "Ausr\u00fccken",
"Header 4": "\u00dcberschrift 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Alle Texte werden nun ohne Formatierung eingef\u00fcgt, bis diese Einstellung wieder ge\u00e4ndert wird.",
"Underline": "Unterstrichen",
"Cancel": "Abbrechen",
"Justify": "Blocksatz",
"Inline": "Inline",
"Copy": "Kopieren",
"Align left": "Linksb\u00fcndig",
"Visual aids": "Hilfslinien und unsichtbare Elemente einblenden",
"Lower Greek": "Griechische Kleinbuchstaben",
"Square": "Quadrat",
"Default": "Standard",
"Lower Alpha": "Kleinbuchstaben",
"Circle": "Kreis",
"Disc": "Gef\u00fcllter Kreis",
"Upper Alpha": "Gro\u00dfbuchstaben",
"Upper Roman": "R\u00f6mische Zahlen (Gro\u00dfbuchstaben)",
"Lower Roman": "R\u00f6mische Zahlen (Kleinbuchstaben)",
"Name": "Name",
"Anchor": "Anker",
"You have unsaved changes are you sure you want to navigate away?": "Sie haben ungespeicherte \u00c4nderungen. Sind Sie sicher, dass Sie die Seite verlassen wollen?",
"Restore last draft": "Letzten Entwurf wiederherstellen.",
"Special character": "Sonderzeichen",
"Source code": "Quelltext",
"Color": "Farbe",
"Right to left": "Rechts nach links",
"Left to right": "Links nach rechts",
"Emoticons": "Emoticons",
"Robots": "Suchmaschinen",
"Document properties": "Dokumenteigenschaften",
"Title": "Titel",
"Keywords": "Schl\u00fcsselw\u00f6rter",
"Encoding": "Enkodierung",
"Description": "Beschreibung",
"Author": "Autor",
"Fullscreen": "Vollbild",
"Horizontal line": "Horizontale Trennlinie",
"Horizontal space": "Horizontaler Abstand",
"Insert\/edit image": "Bild einf\u00fcgen\/bearbeiten",
"General": "Allgemein",
"Advanced": "Erweitert",
"Source": "Adresse",
"Border": "Rahmen",
"Constrain proportions": "Seitenverh\u00e4ltnis beibehalten",
"Vertical space": "Vertikaler Abstand",
"Image description": "Bildbeschreibung",
"Style": "Format",
"Dimensions": "Ausma\u00dfe",
"Insert image": "Bild einf\u00fcgen",
"Insert date\/time": "Zeit\/Datum einf\u00fcgen",
"Remove link": "Link entfernen",
"Url": "Url",
"Text to display": "Angezeigter Text",
"Anchors": "Anker",
"Insert link": "Link einf\u00fcgen",
"New window": "Neues Fenster",
"None": "Keine",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "Die eingegebene URL scheint eine externe Web-Adresse zu sein. Soll das notwendige \"http:\/\/\"-Pr\u00e4fix hinzugef\u00fcgt werden?",
"Target": "Ziel",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "Die eingegebene URL scheint eine E-Mail-Adresse zu sein. Soll das notwendige \"mailto:\"-Pr\u00e4fix hinzugef\u00fcgt werden?",
"Insert\/edit link": "Link einf\u00fcgen\/bearbeiten",
"Insert\/edit video": "Video einf\u00fcgen\/bearbeiten",
"Poster": "Poster",
"Alternative source": "Alternative Quelle",
"Paste your embed code below:": "F\u00fcgen unten Sie Ihren Quellcode zum einbetten ein",
"Insert video": "Video einf\u00fcgen",
"Embed": "Einbetten",
"Nonbreaking space": "gesch\u00fctztes Leerzeichen",
"Page break": "Seitenumbruch",
"Paste as text": "Als Text einf\u00fcgen",
"Preview": "Vorschau",
"Print": "Drucken",
"Save": "Speichern",
"Could not find the specified string.": "Keine \u00dcbereinstimmung gefunden",
"Replace": "Ersetzen",
"Next": "N\u00e4chstes",
"Whole words": "Vollst\u00e4ndige W\u00f6rter",
"Find and replace": "Suchen und ersetzen",
"Replace with": "Ersetzen durch",
"Find": "Suchen",
"Replace all": "Alle ersetzen",
"Match case": "Gro\u00df-\/Kleinschreibung beachten",
"Prev": "Vorheriges",
"Spellcheck": "Rechtschreibung \u00fcberpr\u00fcfen",
"Finish": "Fertig",
"Ignore all": "Alle ignorieren",
"Ignore": "Ignorieren",
"Add to Dictionary": "Zum W\u00f6rterbuch hinzuf\u00fcgen",
"Insert row before": "Neue Zeile oberhalb einf\u00fcgen",
"Rows": "Zeilen",
"Height": "H\u00f6he",
"Paste row after": "Zeile unterhalb einf\u00fcgen",
"Alignment": "Ausrichtung",
"Border color": "Rahmenfarbe",
"Column group": "Spaltengruppe",
"Row": "Zeile",
"Insert column before": "Neue Spalte links einf\u00fcgen",
"Split cell": "Verbundene Zellen trennen",
"Cell padding": "Abstand innerhalb der Zellen",
"Cell spacing": "Zellenabstand",
"Row type": "Zeilentyp",
"Insert table": "Tabelle einf\u00fcgen",
"Body": "Tabellenk\u00f6rper",
"Caption": "Beschriftung der Tabelle",
"Footer": "Tabellenfu\u00df",
"Delete row": "Zeile l\u00f6schen",
"Paste row before": "Zeile oberhalb einf\u00fcgen",
"Scope": "Geltungsbereich",
"Delete table": "Tabelle l\u00f6schen",
"H Align": "Ausrichtung H",
"Top": "Oben",
"Header cell": "\u00dcberschrift",
"Column": "Spalte",
"Row group": "Zeilengruppe",
"Cell": "Zelle",
"Middle": "Mitte",
"Cell type": "Zellentyp",
"Copy row": "Zeile kopieren",
"Row properties": "Zeileneigenschaften",
"Table properties": "Tabelleneigenschaften",
"Bottom": "Unten",
"V Align": "Ausrichtung V",
"Header": "Tabellen\u00fcberschrift",
"Right": "Rechts",
"Insert column after": "Neue Spalte rechts einf\u00fcgen",
"Cols": "Spalten",
"Insert row after": "Neue Zeile unterhalb einf\u00fcgen",
"Width": "Breite",
"Cell properties": "Zelleneigenschaften",
"Left": "Links",
"Cut row": "Zeile ausschneiden",
"Delete column": "Spalte l\u00f6schen",
"Center": "Zentriert",
"Merge cells": "Zellen vereinen",
"Insert template": "Vorlage einf\u00fcgen",
"Templates": "Vorlagen",
"Background color": "Hintergrundfarbe",
"Custom...": "Benutzerdefiniert...",
"Custom color": "Benutzerdefinierte Farbe",
"No color": "Keine Farbe",
"Text color": "Textfarbe",
"Show blocks": "Blockelemente einblenden",
"Show invisible characters": "Unsichtbare Zeichen einblenden",
"Words: {0}": "W\u00f6rter: {0}",
"Insert": "Einf\u00fcgen",
"File": "Datei",
"Edit": "Bearbeiten",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "Rich Text Area. Dr\u00fccken Sie ALT-F9 f\u00fcr das Men\u00fc. Dr\u00fccken Sie ALT-F10 f\u00fcr die Werkzeugleiste. Dr\u00fccken Sie ALT-0 f\u00fcr Hilfe",
"Tools": "Extras",
"View": "Ansicht",
"Table": "Tabelle",
"Format": "Format"
});
program/js/tinymce/langs/dv.js
New file
@@ -0,0 +1,192 @@
tinymce.addI18n('dv',{
"Cut": "\u0786\u07a6\u0793\u07b0",
"Heading 5": "\u0780\u07ac\u0791\u07a8\u0782\u07b0 5",
"Header 2": "\u0780\u07ac\u0791\u07a7 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "\u0786\u07b0\u078d\u07a8\u0795\u07b0\u0784\u07af\u0791\u07b0 \u0784\u07ad\u0782\u07aa\u0782\u07b0 \u0786\u07aa\u0783\u07aa\u0789\u07aa\u078e\u07ac \u0780\u07aa\u0787\u07b0\u078b\u07a6\u060c \u0784\u07b0\u0783\u07af\u0792\u07a6\u0783\u0787\u07a6\u0786\u07aa\u0782\u07b0 \u0782\u07aa\u078b\u07ad! Ctrl+X\/C\/V \u0784\u07ad\u0782\u07aa\u0782\u07b0 \u0786\u07aa\u0783\u07ad!",
"Heading 4": "\u0780\u07ac\u0791\u07a8\u0782\u07b0 4",
"Div": "\u0791\u07a6\u0787\u07a8\u0788\u07b0",
"Heading 2": "\u0780\u07ac\u0791\u07a8\u0782\u07b0 2",
"Paste": "\u0795\u07ad\u0790\u07b0\u0793\u07b0",
"Close": "\u0782\u07a8\u0787\u07b0\u0788\u07a7",
"Font Family": "\u078a\u07ae\u0782\u07b0\u0793\u07b0",
"Pre": "\u0795\u07b0\u0783\u07a9",
"Align right": "\u0786\u07a6\u0782\u07a7\u078c\u07a6\u0781\u07b0 \u0796\u07a6\u0787\u07b0\u0790\u07a7",
"New document": "\u0787\u07a7 \u0791\u07ae\u0786\u07a8\u0787\u07aa\u0789\u07ac\u0782\u07b0\u0793\u07b0",
"Blockquote": "\u0784\u07b0\u078d\u07ae\u0786\u07b0-\u0786\u07af\u0793\u07b0",
"Numbered list": "\u0782\u07a6\u0782\u07b0\u0784\u07a6\u0783\u07aa \u078d\u07a8\u0790\u07b0\u0793\u07b0",
"Heading 1": "\u0780\u07ac\u0791\u07a8\u0782\u07b0 1",
"Headings": "\u0780\u07ac\u0791\u07a8\u0782\u07b0",
"Increase indent": "\u078b\u07aa\u0783\u07aa\u0789\u07a8\u0782\u07b0 \u0784\u07ae\u0791\u07aa\u0786\u07aa\u0783\u07ad",
"Formats": "\u078a\u07af\u0789\u07ac\u0793\u07b0\u078c\u07a6\u0787\u07b0",
"Headers": "\u0780\u07ac\u0791\u07a7\u078c\u07a6\u0787\u07b0",
"Select all": "\u0790\u07ac\u078d\u07ac\u0786\u07b0\u0793\u07b0 \u0787\u07af\u078d\u07b0",
"Header 3": "\u0780\u07ac\u0791\u07a7 3",
"Blocks": "\u0784\u07b0\u078d\u07ae\u0786\u07b0\u078c\u07a6\u0787\u07b0",
"Undo": "\u0787\u07a6\u0782\u07b0\u0791\u07ab",
"Strikethrough": "\u0789\u07ac\u078b\u07aa \u0783\u07ae\u0782\u078e\u07ae",
"Bullet list": "\u0784\u07aa\u078d\u07ac\u0793\u07b0 \u078d\u07a8\u0790\u07b0\u0793\u07b0",
"Header 1": "\u0780\u07ac\u0791\u07a7 1",
"Superscript": "\u0789\u07a6\u078c\u07a9\u0787\u07a6\u0786\u07aa\u0783\u07aa",
"Clear formatting": "\u078a\u07af\u0789\u07ac\u0793\u07b0\u078c\u07a6\u0787\u07b0 \u078a\u07ae\u0780\u07ad",
"Font Sizes": "\u078a\u07ae\u0782\u07b0\u0793\u07b0 \u0790\u07a6\u0787\u07a8\u0792\u07b0",
"Subscript": "\u078c\u07a8\u0783\u07a9\u0787\u07a6\u0786\u07aa\u0783\u07aa",
"Header 6": "\u0780\u07ac\u0791\u07a7 6",
"Redo": "\u0783\u07a9\u0791\u07ab",
"Paragraph": "\u0795\u07ac\u0783\u07ac\u078e\u07b0\u0783\u07a7\u078a\u07b0",
"Ok": "\u0787\u07af\u0786\u07ad",
"Bold": "\u0784\u07af\u078d\u07b0\u0791\u07b0",
"Code": "\u0786\u07af\u0791\u07b0",
"Italic": "\u0787\u07a8\u0793\u07a6\u078d\u07a8\u0786\u07b0",
"Align center": "\u0789\u07ac\u078b\u07a6\u0781\u07b0 \u0796\u07a6\u0787\u07b0\u0790\u07a7",
"Header 5": "\u0780\u07ac\u0791\u07a7 5",
"Heading 6": "\u0780\u07ac\u0791\u07a8\u0782\u07b0 6",
"Heading 3": "\u0780\u07ac\u0791\u07a8\u0782\u07b0 3",
"Decrease indent": "\u078b\u07aa\u0783\u07aa\u0789\u07a8\u0782\u07b0 \u0786\u07aa\u0791\u07a6\u0786\u07aa\u0783\u07ad",
"Header 4": "\u0780\u07ac\u0791\u07a7 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "\u0795\u07ad\u0790\u07b0\u0793\u07b0 \u0786\u07aa\u0783\u07ac\u0788\u07ad\u0782\u07a9 \u0795\u07b0\u078d\u07ac\u0787\u07a8\u0782\u07b0\u0786\u07ae\u0781\u07b0! \u0784\u07a6\u078b\u07a6\u078d\u07aa \u0786\u07aa\u0783\u07ac\u0787\u07b0\u0788\u07aa\u0789\u07a6\u0781\u07b0 \u0789\u07a8 \u0787\u07ae\u0795\u07b0\u079d\u07a6\u0782\u07b0 \u0787\u07ae\u078a\u07b0 \u0786\u07ae\u0781\u07b0\u078d\u07a6\u0787\u07b0\u0788\u07a7!",
"Underline": "\u078b\u07a6\u0781\u07aa\u0783\u07ae\u0782\u078e\u07aa",
"Cancel": "\u0786\u07ac\u0782\u07b0\u0790\u07a6\u078d\u07b0",
"Justify": "\u0787\u07ac\u0787\u07b0\u0788\u07a6\u0783\u07aa \u0786\u07aa\u0783\u07ad",
"Inline": "\u0787\u07a8\u0782\u07b0\u078d\u07a6\u0787\u07a8\u0782\u07b0",
"Copy": "\u0786\u07ae\u0795\u07a9",
"Align left": "\u0788\u07a7\u078c\u07a6\u0781\u07b0 \u0796\u07a6\u0787\u07b0\u0790\u07a7",
"Visual aids": "\u0788\u07a8\u079d\u07aa\u0787\u07a6\u078d\u07b0 \u0787\u07ac\u0787\u07a8\u0791\u07b0\u0790\u07b0",
"Lower Greek": "\u078d\u07af\u0788\u07a6\u0783 \u078e\u07b0\u0783\u07a9\u0786\u07b0",
"Square": "\u078e\u07ae\u0785\u07a8",
"Default": "\u0791\u07a8\u078a\u07af\u078d\u07b0\u0793\u07b0",
"Lower Alpha": "\u078d\u07af\u0788\u07a6\u0783 \u0787\u07a6\u078d\u07b0\u078a\u07a7",
"Circle": "\u0784\u07ae\u0785\u07aa",
"Disc": "\u0788\u07a6\u0781\u07b0\u0784\u07aa\u0783\u07aa",
"Upper Alpha": "\u0787\u07a6\u0795\u07a7 \u0787\u07a6\u078d\u07b0\u078a\u07a7",
"Upper Roman": "\u0787\u07a6\u0795\u07a7 \u0783\u07af\u0789\u07a6\u0782\u07b0",
"Lower Roman": "\u078d\u07af\u0788\u07a6\u0783 \u0783\u07af\u0789\u07a6\u0782\u07b0",
"Name": "\u0782\u07a6\u0782\u07b0",
"Anchor": "\u0787\u07ac\u0782\u07b0\u0786\u07a6\u0783",
"You have unsaved changes are you sure you want to navigate away?": "\u0784\u07a6\u078b\u07a6\u078d\u07aa\u078c\u07a6\u0787\u07b0 \u0790\u07ad\u0788\u07b0 \u0782\u07aa\u0786\u07ae\u0781\u07b0 \u078b\u07ab\u0786\u07ae\u0781\u07b0\u078d\u07a6\u0782\u07b0\u0788\u07a9\u078c\u07a6\u061f",
"Restore last draft": "\u078a\u07a6\u0780\u07aa\u078e\u07ac \u0791\u07b0\u0783\u07a7\u078a\u07b0\u0793\u07b0 \u0783\u07ac\u0790\u07b0\u0793\u07af \u0786\u07aa\u0783\u07ad",
"Special character": "\u079a\u07a7\u0787\u07b0\u0790\u07a6 \u0787\u07a6\u0786\u07aa\u0783\u07aa\u078c\u07a6\u0787\u07b0",
"Source code": "\u0789\u07a6\u0790\u07b0\u078b\u07a6\u0783\u07aa",
"Right to left": "\u0786\u07a6\u0782\u07a7\u078c\u07aa\u0782\u07b0 \u0788\u07a7\u078c\u07a6\u0781\u07b0",
"Left to right": "\u0788\u07a7\u078c\u07aa\u0782\u07b0 \u0786\u07a6\u0782\u07a7\u078c\u07a6\u0781\u07b0",
"Emoticons": "\u079d\u07aa\u0787\u07ab\u0783\u07aa \u078a\u07ae\u0793\u07af",
"Robots": "\u0783\u07af\u0784\u07ae\u0793\u07b0\u0790\u07b0",
"Document properties": "\u0791\u07ae\u0786\u07a8\u0787\u07aa\u0789\u07ac\u0782\u07b0\u0793\u07b0\u078e\u07ac \u0790\u07a8\u078a\u07a6\u078c\u07a6\u0787\u07b0",
"Title": "\u0793\u07a6\u0787\u07a8\u0793\u07a6\u078d\u07b0",
"Keywords": "\u0786\u07a9\u0788\u07af\u0791\u07b0\u078c\u07a6\u0787\u07b0",
"Encoding": "\u0787\u07ac\u0782\u07b0\u0786\u07af\u0791\u07a8\u0782\u07b0",
"Description": "\u078c\u07a6\u078a\u07b0\u0790\u07a9\u078d\u07aa",
"Author": "\u0788\u07ac\u0783\u07a8\u078a\u07a6\u0783\u07a7\u078c\u07b0",
"Fullscreen": "\u078a\u07aa\u078d\u07b0\u0790\u07b0\u0786\u07b0\u0783\u07a9\u0782\u07b0",
"Horizontal line": "\u0780\u07aa\u0783\u07a6\u0790\u07b0 \u0783\u07ae\u0782\u078e\u07aa",
"Horizontal space": "\u0780\u07ae\u0783\u07a8\u0792\u07af\u0782\u07b0\u0793\u07a6\u078d\u07b0 \u0790\u07b0\u0795\u07ad\u0790\u07b0",
"Insert\/edit image": "\u078a\u07ae\u0793\u07af\u078d\u07aa\u0782\u07b0\/\u0784\u07a6\u078b\u07a6\u078d\u07aa\u0786\u07aa\u0783\u07aa\u0782\u07b0",
"General": "\u0787\u07a7\u0782\u07b0\u0789\u07aa",
"Advanced": "\u0787\u07ac\u0791\u07b0\u0788\u07a7\u0782\u07b0\u0790\u07b0\u0791\u07b0",
"Source": "\u0789\u07a6\u0790\u07b0\u078b\u07a6\u0783\u07aa",
"Border": "\u0784\u07af\u0791\u07a6\u0783\u07aa",
"Constrain proportions": "\u0788\u07a6\u0792\u07a6\u0782\u07b0 \u0780\u07a8\u078a\u07a6\u0780\u07a6\u0787\u07b0\u0793\u07a7",
"Vertical space": "\u0788\u07a7\u0793\u07a8\u0786\u07a6\u078d\u07b0 \u0790\u07b0\u0795\u07ad\u0790\u07b0",
"Image description": "\u078a\u07ae\u0793\u07af\u078e\u07ac \u078c\u07a6\u078a\u07b0\u0790\u07a9\u078d\u07aa",
"Style": "\u0790\u07b0\u0793\u07a6\u0787\u07a8\u078d\u07b0",
"Dimensions": "\u0789\u07a8\u0782\u07b0\u078c\u07a6\u0787\u07b0",
"Insert image": "\u078a\u07ae\u0793\u07af \u0787\u07a8\u0782\u07b0\u0790\u07a7\u0793\u07b0 \u0786\u07aa\u0783\u07ad",
"Insert date\/time": "\u0788\u07a6\u078e\u07aa\u078c\u07aa\/\u078c\u07a7\u0783\u07a9\u079a\u07b0 \u078d\u07aa\u0782\u07b0",
"Remove link": "\u078d\u07a8\u0782\u07b0\u0786\u07b0 \u078a\u07ae\u0780\u07ad",
"Url": "\u0794\u07ab.\u0787\u07a7\u0783\u07b0.\u0787\u07ac\u078d\u07b0",
"Text to display": "\u078b\u07a6\u0787\u07b0\u0786\u07a6\u0782\u07b0\u0788\u07a9 \u0787\u07a8\u0784\u07a7\u0783\u07a7\u078c\u07b0",
"Anchors": "\u0787\u07ac\u0782\u07b0\u0786\u07a6\u0783\u078c\u07a6\u0787\u07b0",
"Insert link": "\u078d\u07a8\u0782\u07b0\u0786\u07b0 \u078d\u07aa\u0782\u07b0",
"New window": "\u0787\u07a7 \u0788\u07a8\u0782\u07b0\u0791\u07af\u0787\u07a6\u0786\u07a6\u0781\u07b0",
"None": "\u0782\u07ae\u0782\u07b0",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "\u078c\u07a8\u0794\u07a6 \u078d\u07a8\u0794\u07aa\u0787\u07b0\u0788\u07a9 \u0787\u07ac\u0780\u07ac\u0782\u07b0 \u0790\u07a6\u0787\u07a8\u0793\u07ac\u0787\u07b0\u078e\u07ac \u078d\u07a8\u0782\u07b0\u0786\u07ac\u0787\u07b0\u0786\u07a6\u0789\u07aa\u0782\u07b0 \u0787\u07ac\u0797\u07b0.\u0793\u07a9.\u0793\u07a9.\u0795\u07a9 \u0786\u07aa\u0783\u07a8\u0787\u07a6\u0781\u07b0 \u0787\u07a8\u078c\u07aa\u0783\u07aa \u0786\u07aa\u0783\u07a6\u0782\u07b0\u078c\u07af\u061f",
"Target": "\u0793\u07a7\u078e\u07ac\u0793\u07b0",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "\u0789\u07ac\u0787\u07a8\u078d\u07b0\u0793\u07ab - \u0786\u07aa\u0783\u07a8\u0787\u07a6\u0781\u07b0 \u0787\u07a8\u078c\u07aa\u0783\u07aa\u0786\u07aa\u0783\u07a6\u0787\u07b0\u0788\u07a6\u0782\u07b0 \u0784\u07ad\u0782\u07aa\u0782\u07b0\u078a\u07aa\u0785\u07aa\u078c\u07af\u061f",
"Insert\/edit link": "\u078d\u07a8\u0782\u07b0\u0786\u07b0 \u078d\u07aa\u0782\u07b0\/\u0784\u07a6\u078b\u07a6\u078d\u07aa \u078e\u07ac\u0782\u07a6\u0787\u07aa\u0782\u07b0",
"Insert\/edit video": "\u0788\u07a9\u0791\u07a8\u0787\u07af \u078d\u07aa\u0782\u07b0\/\u0784\u07a6\u078b\u07a6\u078d\u07aa \u078e\u07ac\u0782\u07a6\u0787\u07aa\u0782\u07b0",
"Poster": "\u0795\u07af\u0790\u07b0\u0793\u07a6\u0783",
"Alternative source": "\u0787\u07a6\u078d\u07b0\u0793\u07a6\u0782\u07ad\u0793\u07a8\u0788\u07b0 \u0790\u07af\u0790\u07b0",
"Paste your embed code below:": "\u0787\u07ac\u0789\u07b0\u0784\u07ac\u0791\u07b0 \u0786\u07af\u0791\u07b0 \u078c\u07a8\u0783\u07a9\u078e\u07a6\u0787\u07a8 \u0795\u07ad\u0790\u07b0\u0793\u07b0 \u0786\u07aa\u0783\u07ad",
"Insert video": "\u0788\u07a9\u0791\u07a8\u0787\u07af \u078d\u07aa\u0782\u07b0",
"Embed": "\u0787\u07ac\u0789\u07b0\u0784\u07ac\u0791\u07b0",
"Nonbreaking space": "\u0782\u07ae\u0782\u07b0 \u0784\u07b0\u0783\u07ad\u0786\u07a8\u0782\u07b0 \u0790\u07b0\u0795\u07ad\u0790\u07b0",
"Page break": "\u0795\u07ad\u0796\u07b0 \u0784\u07b0\u0783\u07ad\u0786\u07b0",
"Paste as text": "\u0793\u07ac\u0786\u07b0\u0790\u07b0\u0793\u07b0 \u078e\u07ae\u078c\u07a6\u0781\u07b0 \u0795\u07ad\u0790\u07b0\u0793\u07b0 \u0786\u07aa\u0783\u07ad",
"Preview": "\u0795\u07b0\u0783\u07a9\u0788\u07a8\u0787\u07aa",
"Print": "\u0795\u07b0\u0783\u07a8\u0782\u07b0\u0793\u07b0 \u0786\u07aa\u0783\u07ad",
"Save": "\u0790\u07ad\u0788\u07b0 \u0786\u07aa\u0783\u07ad",
"Could not find the specified string.": "\u078c\u07a8\u0794\u07a6 \u0780\u07af\u0787\u07b0\u078b\u07a6\u0788\u07a7 \u078d\u07a6\u078a\u07aa\u0792\u07ac\u0787\u07b0 \u0782\u07aa\u078a\u07ac\u0782\u07aa\u0782\u07aa",
"Replace": "\u0784\u07a6\u078b\u07a6\u078d\u07aa \u0786\u07aa\u0783\u07ad",
"Next": "\u078a\u07a6\u0780\u07a6\u078c\u07a6\u0781\u07b0",
"Whole words": "\u0784\u07a6\u0790\u07b0\u078c\u07a6\u0787\u07b0 \u0787\u07ac\u0787\u07b0\u0786\u07ae\u0781\u07b0",
"Find and replace": "\u0780\u07af\u078b\u07aa\u0789\u07a6\u0781\u07b0\u078a\u07a6\u0780\u07aa \u0784\u07a6\u078b\u07a6\u078d\u07aa \u0786\u07aa\u0783\u07aa\u0782\u07b0",
"Replace with": "\u0784\u07a6\u078b\u07a6\u078d\u07aa\u078e\u07a6\u0787\u07a8 \u0784\u07ad\u0782\u07aa\u0782\u07b0 \u0786\u07aa\u0783\u07a7\u0782\u07a9",
"Find": "\u0780\u07af\u078b\u07a7",
"Replace all": "\u0780\u07aa\u0783\u07a8\u0780\u07a7 \u0787\u07ac\u0787\u07b0\u0797\u07ac\u0787\u07b0 \u0784\u07a6\u078b\u07a6\u078d\u07aa \u0786\u07aa\u0783\u07ad",
"Match case": "\u0786\u07ad\u0790\u07b0 \u0787\u07a6\u0781\u07b0 \u0784\u07a6\u078d\u07a7",
"Prev": "\u0786\u07aa\u0783\u07a8\u0787\u07a6\u0781\u07b0",
"Spellcheck": "\u0786\u07aa\u0781\u07b0 \u0780\u07af\u078b\u07a7",
"Finish": "\u0782\u07a8\u0782\u07b0\u0789\u07a7",
"Ignore all": "\u0780\u07aa\u0783\u07a8\u0780\u07a7 \u0787\u07ac\u0787\u07b0\u0797\u07ac\u0787\u07b0 \u078b\u07ab\u0786\u07ae\u0781\u07b0\u078d\u07a7",
"Ignore": "\u078b\u07ab\u0786\u07ae\u0781\u07b0\u078d\u07a7",
"Add to Dictionary": "\u0783\u07a6\u078b\u07a9\u078a\u07a6\u0781\u07b0 \u0787\u07a8\u078c\u07aa\u0783\u07aa\u0786\u07aa\u0783\u07ad",
"Insert row before": "\u0786\u07aa\u0783\u07a8\u0787\u07a6\u0781\u07b0 \u0783\u07af\u0787\u07ac\u0787\u07b0 \u0787\u07a8\u078c\u07aa\u0783\u07aa \u0786\u07aa\u0783\u07ad",
"Rows": "\u0783\u07af",
"Height": "\u078b\u07a8\u078e\u07aa\u0789\u07a8\u0782\u07b0",
"Paste row after": "\u078a\u07a6\u0780\u07a6\u078c\u07a6\u0781\u07b0 \u0783\u07af \u0795\u07ad\u0790\u07b0\u0793\u07b0 \u0786\u07aa\u0783\u07ad",
"Alignment": "\u0787\u07ac\u078d\u07a6\u0787\u07a8\u0782\u07b0\u0789\u07ac\u0782\u07b0\u0793\u07b0",
"Column group": "\u0786\u07ae\u078d\u07a6\u0789\u07b0 \u078e\u07b0\u0783\u07ab\u0795\u07b0",
"Row": "\u0783\u07af",
"Insert column before": "\u0786\u07aa\u0783\u07a8\u0787\u07a6\u0781\u07b0 \u0786\u07ae\u078d\u07a6\u0789\u07ac\u0787\u07b0 \u0787\u07a8\u078c\u07aa\u0783\u07aa \u0786\u07aa\u0783\u07ad",
"Split cell": "\u0790\u07ac\u078d\u07b0 \u0788\u07a6\u0786\u07a8\u0786\u07aa\u0783\u07ad",
"Cell padding": "\u0790\u07ac\u078d\u07b0 \u0795\u07ac\u0791\u07a8\u0782\u07b0",
"Cell spacing": "\u0790\u07ac\u078d\u07b0 \u0790\u07b0\u0795\u07ad\u0790\u07a8\u0782\u07b0\u078e",
"Row type": "\u0783\u07af\u078e\u07ac \u0788\u07a6\u0787\u07b0\u078c\u07a6\u0783\u07aa",
"Insert table": "\u0793\u07ad\u0784\u07a6\u078d\u07b0 \u078d\u07aa\u0782\u07b0",
"Body": "\u0784\u07ae\u0791\u07a9",
"Caption": "\u0786\u07ac\u0795\u07b0\u079d\u07a6\u0782\u07b0",
"Footer": "\u078a\u07ab\u0793\u07a6\u0783",
"Delete row": "\u0783\u07af \u078a\u07ae\u0780\u07ad",
"Paste row before": "\u0786\u07aa\u0783\u07a8\u0787\u07a6\u0781\u07b0 \u0783\u07af \u0795\u07ad\u0790\u07b0\u0793\u07b0 \u0786\u07aa\u0783\u07ad",
"Scope": "\u0790\u07b0\u0786\u07af\u0795\u07b0",
"Delete table": "\u0793\u07ad\u0784\u07a6\u078d\u07b0 \u078a\u07ae\u0780\u07ad",
"H Align": "\u0780\u07aa\u0783\u07a6\u0790\u07b0 \u0787\u07ac\u078d\u07a6\u0787\u07a8\u0782\u07b0",
"Top": "\u0789\u07a6\u078c\u07a8",
"Header cell": "\u0780\u07ac\u0791\u07a7 \u0790\u07ac\u078d\u07b0",
"Column": "\u0786\u07ae\u078d\u07a6\u0789\u07b0",
"Row group": "\u0783\u07af \u078e\u07b0\u0783\u07ab\u0795\u07b0",
"Cell": "\u0790\u07ac\u078d\u07b0",
"Middle": "\u0789\u07ac\u078b\u07aa",
"Cell type": "\u0790\u07ac\u078d\u07b0\u078e\u07ac \u0788\u07a6\u0787\u07b0\u078c\u07a6\u0783\u07aa",
"Copy row": "\u0783\u07af \u0786\u07ae\u0795\u07a9\u0786\u07aa\u0783\u07ad",
"Row properties": "\u0783\u07af\u078e\u07ac \u0790\u07a8\u078a\u07a6\u078c\u07a6\u0787\u07b0",
"Table properties": "\u0793\u07ad\u0784\u07a6\u078d\u07b0\u078e\u07ac \u0790\u07a8\u078a\u07a6\u078c\u07a6\u0787\u07b0",
"Bottom": "\u078c\u07a8\u0783\u07a8",
"V Align": "\u078b\u07a8\u078e\u07a6\u0781\u07b0 \u0787\u07ac\u078d\u07a6\u0787\u07a8\u0782\u07b0",
"Header": "\u0780\u07ac\u0791\u07a7",
"Right": "\u0786\u07a6\u0782\u07a7\u078c\u07a6\u0781\u07b0",
"Insert column after": "\u078a\u07a6\u0780\u07a6\u078c\u07a6\u0781\u07b0 \u0786\u07ae\u078d\u07a6\u0789\u07ac\u0787\u07b0 \u0787\u07a8\u078c\u07aa\u0783\u07aa \u0786\u07aa\u0783\u07ad",
"Cols": "\u0786\u07ae\u078d\u07a6\u0789\u07b0",
"Insert row after": "\u078a\u07a6\u0780\u07a6\u078c\u07a6\u0781\u07b0 \u0783\u07af\u0787\u07ac\u0787\u07b0 \u0787\u07a8\u078c\u07aa\u0783\u07aa \u0786\u07aa\u0783\u07ad",
"Width": "\u078a\u07aa\u0785\u07a7\u0789\u07a8\u0782\u07b0",
"Cell properties": "\u0790\u07ac\u078d\u07b0\u078e\u07ac \u0790\u07a8\u078a\u07a6\u078c\u07a6\u0787\u07b0",
"Left": "\u0788\u07a7\u078c\u07a6\u0781\u07b0",
"Cut row": "\u0783\u07af \u0786\u07a6\u0793\u07b0\u0786\u07aa\u0783\u07ad",
"Delete column": "\u0786\u07ae\u078d\u07a6\u0789\u07b0 \u078a\u07ae\u0780\u07ad",
"Center": "\u0789\u07ac\u078b\u07a6\u0781\u07b0",
"Merge cells": "\u0790\u07ac\u078d\u07b0 \u0787\u07ac\u0787\u07b0\u0786\u07aa\u0783\u07ad",
"Insert template": "\u0793\u07ac\u0789\u07b0\u0795\u07b0\u078d\u07ad\u0793\u07b0 \u0787\u07a8\u0782\u07b0\u0790\u07a7\u0793\u07b0 \u0786\u07aa\u0783\u07aa\u0782\u07b0",
"Templates": "\u0793\u07ac\u0789\u07b0\u0795\u07b0\u078d\u07ad\u0793\u07b0\u078c\u07a6\u0787\u07b0",
"Background color": "\u0784\u07ac\u0786\u07b0\u078e\u07b0\u0783\u07a6\u0787\u07aa\u0782\u07b0\u0791\u07b0\u078e\u07ac \u0786\u07aa\u078d\u07a6",
"Text color": "\u0787\u07a6\u0786\u07aa\u0783\u07aa\u078e\u07ac \u0786\u07aa\u078d\u07a6",
"Show blocks": "\u0784\u07b0\u078d\u07ae\u0786\u07b0\u078c\u07a6\u0787\u07b0 \u078b\u07a6\u0787\u07b0\u0786\u07a7",
"Show invisible characters": "\u0782\u07aa\u078a\u07ac\u0782\u07b0\u0782\u07a6 \u0787\u07a6\u0786\u07aa\u0783\u07aa\u078c\u07a6\u0787\u07b0 \u078b\u07a6\u0787\u07b0\u0786\u07a7",
"Words: {0}": "\u0784\u07a6\u0790\u07b0: {0}",
"Insert": "\u0787\u07a8\u0782\u07b0\u0790\u07a7\u0793\u07b0",
"File": "\u078a\u07a6\u0787\u07a8\u078d\u07b0",
"Edit": "\u0784\u07a6\u078b\u07a6\u078d\u07aa \u078e\u07ac\u0782\u07a6\u0787\u07aa\u0782\u07b0",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "\u0783\u07a8\u0797\u07b0 \u0793\u07ac\u0786\u07b0\u0790\u07b0\u0793\u07b0 \u0787\u07ad\u0783\u07a8\u0787\u07a7. \u0789\u07ac\u0782\u07ab \u0780\u07af\u078b\u07aa\u0789\u07a6\u0781\u07b0 ALT-F9. \u0793\u07ab\u078d\u07b0\u0784\u07a6\u0783 \u0780\u07af\u078b\u07aa\u0789\u07a6\u0781\u07b0 ALT-F10. \u0787\u07ac\u0780\u07a9 \u0780\u07af\u078b\u07aa\u0789\u07a6\u0781\u07b0 ALT-0",
"Tools": "\u0793\u07ab\u078d\u07b0\u078c\u07a6\u0787\u07b0",
"View": "\u0788\u07a8\u0787\u07aa",
"Table": "\u0793\u07ad\u0784\u07a6\u078d\u07b0",
"Format": "\u078a\u07af\u0789\u07ac\u0793\u07b0"
});
program/js/tinymce/langs/el.js
New file
@@ -0,0 +1,197 @@
tinymce.addI18n('el',{
"Cut": "\u0391\u03c0\u03bf\u03ba\u03bf\u03c0\u03ae",
"Heading 5": "\u039a\u03b5\u03c6\u03b1\u03bb\u03af\u03b4\u03b1 5",
"Header 2": "\u039a\u03b5\u03c6\u03b1\u03bb\u03af\u03b4\u03b1 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "\u039f \u03c0\u03b5\u03c1\u03b9\u03b7\u03b3\u03b7\u03c4\u03ae\u03c2 \u03c3\u03b1\u03c2 \u03b4\u03b5\u03bd \u03c5\u03c0\u03bf\u03c3\u03c4\u03b7\u03c1\u03af\u03b6\u03b5\u03b9 \u03ac\u03bc\u03b5\u03c3\u03b7 \u03c0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7 \u03c3\u03c4\u03bf \u03c0\u03c1\u03cc\u03c7\u03b5\u03b9\u03c1\u03bf. \u03a0\u03b1\u03c1\u03b1\u03ba\u03b1\u03bb\u03ce \u03c7\u03c1\u03b7\u03c3\u03b9\u03bc\u03bf\u03c0\u03bf\u03b9\u03ae\u03c3\u03c4\u03b5 \u03c4\u03b9\u03c2 \u03c3\u03c5\u03bd\u03c4\u03bf\u03bc\u03b5\u03cd\u03c3\u03b5\u03b9\u03c2 \u03c0\u03bb\u03b7\u03ba\u03c4\u03c1\u03bf\u03bb\u03bf\u03b3\u03af\u03bf\u03c5 Ctrl+X\/C\/V.",
"Heading 4": "\u039a\u03b5\u03c6\u03b1\u03bb\u03af\u03b4\u03b1 4",
"Div": "Div",
"Heading 2": "\u039a\u03b5\u03c6\u03b1\u03bb\u03af\u03b4\u03b1 2",
"Paste": "\u0395\u03c0\u03b9\u03ba\u03cc\u03bb\u03bb\u03b7\u03c3\u03b7",
"Close": "\u039a\u03bb\u03b5\u03af\u03c3\u03b9\u03bc\u03bf",
"Font Family": "\u0393\u03c1\u03b1\u03bc\u03bc\u03b1\u03c4\u03bf\u03c3\u03b5\u03b9\u03c1\u03ac",
"Pre": "Pre",
"Align right": "\u03a3\u03c4\u03bf\u03af\u03c7\u03b9\u03c3\u03b7 \u03b4\u03b5\u03be\u03b9\u03ac",
"New document": "\u039d\u03ad\u03bf \u03ad\u03b3\u03b3\u03c1\u03b1\u03c6\u03bf",
"Blockquote": "\u03a0\u03b5\u03c1\u03b9\u03bf\u03c7\u03ae \u03c0\u03b1\u03c1\u03ac\u03b8\u03b5\u03c3\u03b7\u03c2",
"Numbered list": "\u0391\u03c1\u03b9\u03b8\u03bc\u03b7\u03bc\u03ad\u03bd\u03b7 \u03bb\u03af\u03c3\u03c4\u03b1",
"Heading 1": "\u039a\u03b5\u03c6\u03b1\u03bb\u03af\u03b4\u03b1 1",
"Headings": "\u039a\u03b5\u03c6\u03b1\u03bb\u03af\u03b4\u03b5\u03c2",
"Increase indent": "\u0391\u03cd\u03be\u03b7\u03c3\u03b7 \u03b5\u03c3\u03bf\u03c7\u03ae\u03c2",
"Formats": "\u039c\u03bf\u03c1\u03c6\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7",
"Headers": "\u039a\u03b5\u03c6\u03b1\u03bb\u03af\u03b4\u03b5\u03c2",
"Select all": "\u0395\u03c0\u03b9\u03bb\u03bf\u03b3\u03ae \u03cc\u03bb\u03c9\u03bd",
"Header 3": "\u039a\u03b5\u03c6\u03b1\u03bb\u03af\u03b4\u03b1 3",
"Blocks": "\u03a4\u03bc\u03ae\u03bc\u03b1\u03c4\u03b1",
"Undo": "\u0391\u03bd\u03b1\u03af\u03c1\u03b5\u03c3\u03b7",
"Strikethrough": "\u0394\u03b9\u03b1\u03ba\u03c1\u03b9\u03c4\u03ae \u03b4\u03b9\u03b1\u03b3\u03c1\u03b1\u03c6\u03ae",
"Bullet list": "\u039b\u03af\u03c3\u03c4\u03b1 \u03bc\u03b5 \u03ba\u03bf\u03c5\u03ba\u03ba\u03af\u03b4\u03b5\u03c2",
"Header 1": "\u039a\u03b5\u03c6\u03b1\u03bb\u03af\u03b4\u03b1 1",
"Superscript": "\u0395\u03ba\u03b8\u03ad\u03c4\u03b7\u03c2",
"Clear formatting": "\u0391\u03c0\u03b1\u03bb\u03bf\u03b9\u03c6\u03ae \u03bc\u03bf\u03c1\u03c6\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7\u03c2",
"Font Sizes": "\u039c\u03ad\u03b3\u03b5\u03b8\u03bf\u03c2",
"Subscript": "\u0394\u03b5\u03af\u03ba\u03c4\u03b7\u03c2",
"Header 6": "\u039a\u03b5\u03c6\u03b1\u03bb\u03af\u03b4\u03b1 6",
"Redo": "\u0395\u03c0\u03b1\u03bd\u03ac\u03bb\u03b7\u03c8\u03b7",
"Paragraph": "\u03a0\u03b1\u03c1\u03ac\u03b3\u03c1\u03b1\u03c6\u03bf\u03c2",
"Ok": "\u0395\u03bd\u03c4\u03ac\u03be\u03b5\u03b9",
"Bold": "\u0388\u03bd\u03c4\u03bf\u03bd\u03b7",
"Code": "\u039a\u03ce\u03b4\u03b9\u03ba\u03b1\u03c2",
"Italic": "\u03a0\u03bb\u03ac\u03b3\u03b9\u03b1",
"Align center": "\u03a3\u03c4\u03bf\u03af\u03c7\u03b9\u03c3\u03b7 \u03c3\u03c4\u03bf \u03ba\u03ad\u03bd\u03c4\u03c1\u03bf",
"Header 5": "\u039a\u03b5\u03c6\u03b1\u03bb\u03af\u03b4\u03b1 5",
"Heading 6": "\u039a\u03b5\u03c6\u03b1\u03bb\u03af\u03b4\u03b1 6",
"Heading 3": "\u039a\u03b5\u03c6\u03b1\u03bb\u03af\u03b4\u03b1 3",
"Decrease indent": "\u039c\u03b5\u03af\u03c9\u03c3\u03b7 \u03b5\u03c3\u03bf\u03c7\u03ae\u03c2",
"Header 4": "\u039a\u03b5\u03c6\u03b1\u03bb\u03af\u03b4\u03b1 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "\u0397 \u03b5\u03c0\u03b9\u03ba\u03cc\u03bb\u03bb\u03b7\u03c3\u03b7 \u03b5\u03af\u03bd\u03b1\u03b9 \u03c4\u03ce\u03c1\u03b1 \u03c3\u03b5 \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 \u03b1\u03c0\u03bb\u03bf\u03cd \u03ba\u03b5\u03b9\u03bc\u03ad\u03bd\u03bf\u03c5. \u03a4\u03b1 \u03c0\u03b5\u03c1\u03b9\u03b5\u03c7\u03cc\u03bc\u03b5\u03bd\u03b1 \u03bc\u03b9\u03b1\u03c2 \u03b5\u03c0\u03b9\u03ba\u03cc\u03bb\u03bb\u03b7\u03c3\u03b7\u03c2 \u03b8\u03b1 \u03b5\u03c0\u03b9\u03ba\u03bf\u03bb\u03bb\u03bf\u03cd\u03bd\u03c4\u03b1\u03b9 \u03c9\u03c2 \u03b1\u03c0\u03bb\u03cc \u03ba\u03b5\u03af\u03bc\u03b5\u03bd\u03bf \u03cc\u03c3\u03bf \u03b7 \u03bb\u03b5\u03b9\u03c4\u03bf\u03c5\u03c1\u03b3\u03af\u03b1 \u03b1\u03c5\u03c4\u03ae \u03c0\u03b1\u03c1\u03b1\u03bc\u03ad\u03bd\u03b5\u03b9 \u03b5\u03bd\u03b5\u03c1\u03b3\u03ae.",
"Underline": "\u03a5\u03c0\u03bf\u03b3\u03c1\u03ac\u03bc\u03bc\u03b9\u03c3\u03b7",
"Cancel": "\u0391\u03ba\u03cd\u03c1\u03c9\u03c3\u03b7",
"Justify": "\u03a0\u03bb\u03ae\u03c1\u03b7\u03c2 \u03c3\u03c4\u03bf\u03af\u03c7\u03b9\u03c3\u03b7",
"Inline": "\u0395\u03bd\u03c3\u03c9\u03bc\u03b1\u03c4\u03c9\u03bc\u03ad\u03bd\u03b7",
"Copy": "\u0391\u03bd\u03c4\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae",
"Align left": "\u03a3\u03c4\u03bf\u03af\u03c7\u03b9\u03c3\u03b7 \u03b1\u03c1\u03b9\u03c3\u03c4\u03b5\u03c1\u03ac",
"Visual aids": "O\u03c0\u03c4\u03b9\u03ba\u03ac \u03b2\u03bf\u03b7\u03b8\u03ae\u03bc\u03b1\u03c4\u03b1 ",
"Lower Greek": "\u03a0\u03b5\u03b6\u03ac \u03b5\u03bb\u03bb\u03b7\u03bd\u03b9\u03ba\u03ac",
"Square": "\u03a4\u03b5\u03c4\u03c1\u03ac\u03b3\u03c9\u03bd\u03bf",
"Default": "\u03a0\u03c1\u03bf\u03ba\u03b1\u03b8\u03bf\u03c1\u03b9\u03c3\u03bc\u03ad\u03bd\u03bf",
"Lower Alpha": "\u03a0\u03b5\u03b6\u03ac \u03bb\u03b1\u03c4\u03b9\u03bd\u03b9\u03ba\u03ac",
"Circle": "\u039a\u03cd\u03ba\u03bb\u03bf\u03c2",
"Disc": "\u0394\u03af\u03c3\u03ba\u03bf\u03c2",
"Upper Alpha": "\u039a\u03b5\u03c6\u03b1\u03bb\u03b1\u03af\u03b1 \u03bb\u03b1\u03c4\u03b9\u03bd\u03b9\u03ba\u03ac",
"Upper Roman": "\u039a\u03b5\u03c6\u03b1\u03bb\u03b1\u03af\u03b1 \u03c1\u03c9\u03bc\u03b1\u03ca\u03ba\u03ac",
"Lower Roman": "\u03a0\u03b5\u03b6\u03ac \u03c1\u03c9\u03bc\u03b1\u03ca\u03ba\u03ac",
"Name": "\u038c\u03bd\u03bf\u03bc\u03b1",
"Anchor": "\u0391\u03b3\u03ba\u03cd\u03c1\u03c9\u03c3\u03b7",
"You have unsaved changes are you sure you want to navigate away?": "\u0388\u03c7\u03b5\u03c4\u03b5 \u03bc\u03b7 \u03b1\u03c0\u03bf\u03b8\u03b7\u03ba\u03b5\u03c5\u03bc\u03ad\u03bd\u03b5\u03c2 \u03b1\u03bb\u03bb\u03b1\u03b3\u03ad\u03c2. \u0395\u03af\u03c3\u03c4\u03b5 \u03b2\u03ad\u03b2\u03b1\u03b9\u03bf\u03b9 \u03cc\u03c4\u03b9 \u03b8\u03ad\u03bb\u03b5\u03c4\u03b5 \u03bd\u03b1 \u03c6\u03cd\u03b3\u03b5\u03c4\u03b5 \u03b1\u03c0\u03cc \u03c4\u03b7\u03bd \u03c3\u03b5\u03bb\u03af\u03b4\u03b1;",
"Restore last draft": "\u0395\u03c0\u03b1\u03bd\u03b1\u03c6\u03bf\u03c1\u03ac \u03c4\u03b5\u03bb\u03b5\u03c5\u03c4\u03b1\u03af\u03bf\u03c5 \u03c3\u03c7\u03b5\u03b4\u03af\u03bf\u03c5",
"Special character": "\u0395\u03b9\u03b4\u03b9\u03ba\u03cc\u03c2 \u03c7\u03b1\u03c1\u03b1\u03ba\u03c4\u03ae\u03c1\u03b1\u03c2",
"Source code": "\u03a0\u03b7\u03b3\u03b1\u03af\u03bf\u03c2 \u03ba\u03ce\u03b4\u03b9\u03ba\u03b1\u03c2",
"Color": "\u03a7\u03c1\u03ce\u03bc\u03b1",
"Right to left": "\u0391\u03c0\u03cc \u03b4\u03b5\u03be\u03b9\u03ac \u03c0\u03c1\u03bf\u03c2 \u03c4\u03b1 \u03b1\u03c1\u03b9\u03c3\u03c4\u03b5\u03c1\u03ac",
"Left to right": "\u0391\u03c0\u03cc \u03b1\u03c1\u03b9\u03c3\u03c4\u03b5\u03c1\u03ac \u03c0\u03c1\u03bf\u03c2 \u03c4\u03b1 \u03b4\u03b5\u03be\u03b9\u03ac",
"Emoticons": "\u03a6\u03b1\u03c4\u03c3\u03bf\u03cd\u03bb\u03b5\u03c2",
"Robots": "\u03a1\u03bf\u03bc\u03c0\u03cc\u03c4",
"Document properties": "\u0399\u03b4\u03b9\u03cc\u03c4\u03b7\u03c4\u03b5\u03c2 \u03b5\u03b3\u03b3\u03c1\u03ac\u03c6\u03bf\u03c5",
"Title": "\u03a4\u03af\u03c4\u03bb\u03bf\u03c2",
"Keywords": "\u039b\u03ad\u03be\u03b5\u03b9\u03c2 \u03ba\u03bb\u03b5\u03b9\u03b4\u03b9\u03ac",
"Encoding": "\u039a\u03c9\u03b4\u03b9\u03ba\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7",
"Description": "\u03a0\u03b5\u03c1\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae",
"Author": "\u03a3\u03c5\u03bd\u03c4\u03ac\u03ba\u03c4\u03b7\u03c2",
"Fullscreen": "\u03a0\u03bb\u03ae\u03c1\u03b7\u03c2 \u03bf\u03b8\u03cc\u03bd\u03b7",
"Horizontal line": "\u039f\u03c1\u03b9\u03b6\u03cc\u03bd\u03c4\u03b9\u03b1 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae",
"Horizontal space": "\u039f\u03c1\u03b9\u03b6\u03cc\u03bd\u03c4\u03b9\u03bf \u03b4\u03b9\u03ac\u03c3\u03c4\u03b7\u03bc\u03b1",
"Insert\/edit image": "\u0395\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae\/\u03b5\u03c0\u03b5\u03be\u03b5\u03c1\u03b3\u03b1\u03c3\u03af\u03b1 \u03b5\u03b9\u03ba\u03cc\u03bd\u03b1\u03c2",
"General": "\u0393\u03b5\u03bd\u03b9\u03ba\u03ac",
"Advanced": "\u0393\u03b9\u03b1 \u03a0\u03c1\u03bf\u03c7\u03c9\u03c1\u03b7\u03bc\u03ad\u03bd\u03bf\u03c5\u03c2",
"Source": "\u03a0\u03b7\u03b3\u03ae",
"Border": "\u03a0\u03bb\u03b1\u03af\u03c3\u03b9\u03bf",
"Constrain proportions": "\u03a0\u03b5\u03c1\u03b9\u03bf\u03c1\u03b9\u03c3\u03bc\u03cc\u03c2 \u03b1\u03bd\u03b1\u03bb\u03bf\u03b3\u03b9\u03ce\u03bd",
"Vertical space": "\u039a\u03ac\u03b8\u03b5\u03c4\u03bf \u03b4\u03b9\u03ac\u03c3\u03c4\u03b7\u03bc\u03b1",
"Image description": "\u03a0\u03b5\u03c1\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae \u03b5\u03b9\u03ba\u03cc\u03bd\u03b1\u03c2",
"Style": "\u0395\u03bc\u03c6\u03ac\u03bd\u03b9\u03c3\u03b7",
"Dimensions": "\u0394\u03b9\u03b1\u03c3\u03c4\u03ac\u03c3\u03b5\u03b9\u03c2",
"Insert image": "\u0395\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae \u03b5\u03b9\u03ba\u03cc\u03bd\u03b1\u03c2",
"Insert date\/time": "\u0395\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae \u03b7\u03bc\u03b5\u03c1\u03bf\u03bc\u03b7\u03bd\u03af\u03b1\u03c2\/\u03ce\u03c1\u03b1\u03c2",
"Remove link": "\u0391\u03c6\u03b1\u03af\u03c1\u03b5\u03c3\u03b7 \u03c3\u03c5\u03bd\u03b4\u03ad\u03c3\u03bc\u03bf\u03c5",
"Url": "URL",
"Text to display": "\u039a\u03b5\u03af\u03bc\u03b5\u03bd\u03bf \u03b3\u03b9\u03b1 \u03b5\u03bc\u03c6\u03ac\u03bd\u03b9\u03c3\u03b7",
"Anchors": "\u0386\u03b3\u03ba\u03c5\u03c1\u03b5\u03c2",
"Insert link": "\u0395\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae \u03c3\u03c5\u03bd\u03b4\u03ad\u03c3\u03bc\u03bf\u03c5",
"New window": "\u039d\u03ad\u03bf \u03c0\u03b1\u03c1\u03ac\u03b8\u03c5\u03c1\u03bf",
"None": "\u039a\u03b1\u03bc\u03af\u03b1",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "\u0397 \u03b4\u03b9\u03b5\u03cd\u03b8\u03c5\u03bd\u03c3\u03b7 URL \u03c0\u03bf\u03c5 \u03b5\u03b9\u03c3\u03ac\u03c7\u03b8\u03b7\u03ba\u03b5 \u03c0\u03b9\u03b8\u03b1\u03bd\u03ce\u03c2 \u03b5\u03af\u03bd\u03b1\u03b9 \u03b5\u03be\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03cc\u03c2 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03bc\u03bf\u03c2. \u0398\u03ad\u03bb\u03b5\u03c4\u03b5 \u03bd\u03b1 \u03c0\u03c1\u03bf\u03c3\u03b8\u03ad\u03c3\u03b5\u03c4\u03b5 \u03c4\u03bf \u03b1\u03c0\u03b1\u03b9\u03c4\u03bf\u03cd\u03bc\u03b5\u03bd\u03bf \u03c0\u03c1\u03cc\u03b8\u03b7\u03bc\u03b1 http:\/\/;",
"Target": "\u03a0\u03c1\u03bf\u03bf\u03c1\u03b9\u03c3\u03bc\u03cc\u03c2",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "\u0397 \u03b4\u03b9\u03b5\u03cd\u03b8\u03c5\u03bd\u03c3\u03b7 URL \u03c0\u03bf\u03c5 \u03b5\u03b9\u03c3\u03ac\u03c7\u03b8\u03b7\u03ba\u03b5 \u03c0\u03b9\u03b8\u03b1\u03bd\u03ce\u03c2 \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03b9\u03b5\u03cd\u03b8\u03c5\u03bd\u03c3\u03b7 email. \u0398\u03ad\u03bb\u03b5\u03c4\u03b5 \u03bd\u03b1 \u03c0\u03c1\u03bf\u03c3\u03b8\u03ad\u03c3\u03b5\u03c4\u03b5 \u03c4\u03bf \u03b1\u03c0\u03b1\u03b9\u03c4\u03bf\u03cd\u03bc\u03b5\u03bd\u03bf \u03c0\u03c1\u03cc\u03b8\u03b7\u03bc\u03b1 mailto:;",
"Insert\/edit link": "\u0395\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae\/\u03b5\u03c0\u03b5\u03be\u03b5\u03c1\u03b3\u03b1\u03c3\u03af\u03b1 \u03c3\u03c5\u03bd\u03b4\u03ad\u03c3\u03bc\u03bf\u03c5",
"Insert\/edit video": "\u0395\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae\/\u03b5\u03c0\u03b5\u03be\u03b5\u03c1\u03b3\u03b1\u03c3\u03af\u03b1 \u03b2\u03af\u03bd\u03c4\u03b5\u03bf",
"Poster": "\u0391\u03c6\u03af\u03c3\u03b1",
"Alternative source": "\u0395\u03bd\u03b1\u03bb\u03bb\u03b1\u03ba\u03c4\u03b9\u03ba\u03ae \u03c0\u03c1\u03bf\u03ad\u03bb\u03b5\u03c5\u03c3\u03b7",
"Paste your embed code below:": "\u0395\u03b9\u03c3\u03ac\u03b3\u03b5\u03c4\u03b5 \u03c4\u03bf\u03bd \u03b5\u03bd\u03c3\u03c9\u03bc\u03b1\u03c4\u03c9\u03bc\u03ad\u03bd\u03bf \u03ba\u03ce\u03b4\u03b9\u03ba\u03b1 \u03c0\u03b1\u03c1\u03b1\u03ba\u03ac\u03c4\u03c9:",
"Insert video": "\u0395\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae \u03b2\u03af\u03bd\u03c4\u03b5\u03bf",
"Embed": "\u0395\u03bd\u03c3\u03c9\u03bc\u03ac\u03c4\u03c9\u03c3\u03b7",
"Nonbreaking space": "\u039a\u03b5\u03bd\u03cc \u03c7\u03c9\u03c1\u03af\u03c2 \u03b4\u03b9\u03b1\u03ba\u03bf\u03c0\u03ae",
"Page break": "\u0391\u03bb\u03bb\u03b1\u03b3\u03ae \u03c3\u03b5\u03bb\u03af\u03b4\u03b1\u03c2",
"Paste as text": "\u0395\u03c0\u03b9\u03ba\u03cc\u03bb\u03bb\u03b7\u03c3\u03b7 \u03c9\u03c2 \u03ba\u03b5\u03af\u03bc\u03b5\u03bd\u03bf",
"Preview": "\u03a0\u03c1\u03bf\u03b5\u03c0\u03b9\u03c3\u03ba\u03cc\u03c0\u03b7\u03c3\u03b7",
"Print": "\u0395\u03ba\u03c4\u03cd\u03c0\u03c9\u03c3\u03b7",
"Save": "\u0391\u03c0\u03bf\u03b8\u03ae\u03ba\u03b5\u03c5\u03c3\u03b7",
"Could not find the specified string.": "\u0394\u03b5\u03bd \u03ae\u03c4\u03b1\u03bd \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae \u03b7 \u03b5\u03cd\u03c1\u03b5\u03c3\u03b7 \u03c4\u03bf\u03c5 \u03ba\u03b1\u03b8\u03bf\u03c1\u03b9\u03c3\u03bc\u03ad\u03bd\u03bf\u03c5 \u03b1\u03bb\u03c6\u03b1\u03c1\u03b9\u03b8\u03bc\u03b7\u03c4\u03b9\u03ba\u03bf\u03cd.",
"Replace": "\u0391\u03bd\u03c4\u03b9\u03ba\u03b1\u03c4\u03ac\u03c3\u03c4\u03b1\u03c3\u03b7",
"Next": "\u0395\u03c0\u03cc\u03bc.",
"Whole words": "\u039f\u03bb\u03cc\u03ba\u03bb\u03b7\u03c1\u03b5\u03c2 \u03bb\u03ad\u03be\u03b5\u03b9\u03c2",
"Find and replace": "\u0395\u03cd\u03c1\u03b5\u03c3\u03b7 \u03ba\u03b1\u03b9 \u03b1\u03bd\u03c4\u03b9\u03ba\u03b1\u03c4\u03ac\u03c3\u03c4\u03b1\u03c3\u03b7",
"Replace with": "\u0391\u03bd\u03c4\u03b9\u03ba\u03b1\u03c4\u03ac\u03c3\u03c4\u03b1\u03c3\u03b7 \u03bc\u03b5",
"Find": "\u0395\u03cd\u03c1\u03b5\u03c3\u03b7",
"Replace all": "\u0391\u03bd\u03c4\u03b9\u03ba\u03b1\u03c4\u03ac\u03c3\u03c4\u03b1\u03c3\u03b7 \u03cc\u03bb\u03c9\u03bd",
"Match case": "\u03a4\u03b1\u03af\u03c1\u03b9\u03b1\u03c3\u03bc\u03b1 \u03c0\u03b5\u03b6\u03ce\u03bd\/\u03ba\u03b5\u03c6\u03b1\u03bb\u03b1\u03af\u03c9\u03bd",
"Prev": "\u03a0\u03c1\u03bf\u03b7\u03b3.",
"Spellcheck": "\u039f\u03c1\u03b8\u03bf\u03b3\u03c1\u03b1\u03c6\u03b9\u03ba\u03cc\u03c2 \u03ad\u03bb\u03b5\u03b3\u03c7\u03bf\u03c2 ",
"Finish": "\u03a4\u03ad\u03bb\u03bf\u03c2",
"Ignore all": "\u03a0\u03b1\u03c1\u03ac\u03b2\u03bb\u03b5\u03c8\u03b7 \u03cc\u03bb\u03c9\u03bd",
"Ignore": "\u03a0\u03b1\u03c1\u03ac\u03b2\u03bb\u03b5\u03c8\u03b7",
"Add to Dictionary": "\u03a0\u03c1\u03bf\u03c3\u03b8\u03ae\u03ba\u03b7 \u03c3\u03c4\u03bf \u039b\u03b5\u03be\u03b9\u03ba\u03cc",
"Insert row before": "\u0395\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae\u03c2 \u03b5\u03c0\u03ac\u03bd\u03c9",
"Rows": "\u0393\u03c1\u03b1\u03bc\u03bc\u03ad\u03c2",
"Height": "\u038e\u03c8\u03bf\u03c2",
"Paste row after": "\u0395\u03c0\u03b9\u03ba\u03cc\u03bb\u03bb\u03b7\u03c3\u03b7 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae\u03c2 \u03ba\u03ac\u03c4\u03c9",
"Alignment": "\u03a3\u03c4\u03bf\u03af\u03c7\u03b9\u03c3\u03b7",
"Border color": "\u03a7\u03c1\u03ce\u03bc\u03b1 \u03c0\u03bb\u03b1\u03b9\u03c3\u03af\u03bf\u03c5",
"Column group": "\u039f\u03bc\u03ac\u03b4\u03b1 \u03c3\u03c4\u03b7\u03bb\u03ce\u03bd",
"Row": "\u0393\u03c1\u03b1\u03bc\u03bc\u03ae",
"Insert column before": "\u0395\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae \u03c3\u03c4\u03ae\u03bb\u03b7\u03c2 \u03b1\u03c1\u03b9\u03c3\u03c4\u03b5\u03c1\u03ac",
"Split cell": "\u0394\u03b9\u03b1\u03af\u03c1\u03b5\u03c3\u03b7 \u03ba\u03b5\u03bb\u03b9\u03bf\u03cd",
"Cell padding": "\u0391\u03bd\u03b1\u03c0\u03bb\u03ae\u03c1\u03c9\u03c3\u03b7 \u03ba\u03b5\u03bb\u03b9\u03ce\u03bd",
"Cell spacing": "\u0391\u03c0\u03cc\u03c3\u03c4\u03b1\u03c3\u03b7 \u03ba\u03b5\u03bb\u03b9\u03ce\u03bd",
"Row type": "\u03a4\u03cd\u03c0\u03bf\u03c2 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae\u03c2",
"Insert table": "\u0395\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae \u03c0\u03af\u03bd\u03b1\u03ba\u03b1",
"Body": "\u03a3\u03ce\u03bc\u03b1",
"Caption": "\u039b\u03b5\u03b6\u03ac\u03bd\u03c4\u03b1",
"Footer": "\u03a5\u03c0\u03bf\u03c3\u03ad\u03bb\u03b9\u03b4\u03bf",
"Delete row": "\u0394\u03b9\u03b1\u03b3\u03c1\u03b1\u03c6\u03ae \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae\u03c2",
"Paste row before": "\u0395\u03c0\u03b9\u03ba\u03cc\u03bb\u03bb\u03b7\u03c3\u03b7 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae\u03c2 \u03b5\u03c0\u03ac\u03bd\u03c9",
"Scope": "\u0388\u03ba\u03c4\u03b1\u03c3\u03b7",
"Delete table": "\u0394\u03b9\u03b1\u03b3\u03c1\u03b1\u03c6\u03ae \u03c0\u03af\u03bd\u03b1\u03ba\u03b1",
"H Align": "\u039f\u03c1. \u03a3\u03c4\u03bf\u03af\u03c7\u03b9\u03c3\u03b7",
"Top": "\u039a\u03bf\u03c1\u03c5\u03c6\u03ae",
"Header cell": "\u039a\u03b5\u03bb\u03af-\u03ba\u03b5\u03c6\u03b1\u03bb\u03af\u03b4\u03b1",
"Column": "\u03a3\u03c4\u03ae\u03bb\u03b7",
"Row group": "\u039f\u03bc\u03ac\u03b4\u03b1 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ce\u03bd",
"Cell": "\u039a\u03b5\u03bb\u03af",
"Middle": "\u039c\u03ad\u03c3\u03b7",
"Cell type": "\u03a4\u03cd\u03c0\u03bf\u03c2 \u03ba\u03b5\u03bb\u03b9\u03bf\u03cd",
"Copy row": "\u0391\u03bd\u03c4\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae\u03c2",
"Row properties": "\u0399\u03b4\u03b9\u03cc\u03c4\u03b7\u03c4\u03b5\u03c2 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae\u03c2",
"Table properties": "\u0399\u03b4\u03b9\u03cc\u03c4\u03b7\u03c4\u03b5\u03c2 \u03c0\u03af\u03bd\u03b1\u03ba\u03b1",
"Bottom": "\u039a\u03ac\u03c4\u03c9",
"V Align": "\u039a. \u03a3\u03c4\u03bf\u03af\u03c7\u03b9\u03c3\u03b7",
"Header": "\u039a\u03b5\u03c6\u03b1\u03bb\u03af\u03b4\u03b1",
"Right": "\u0394\u03b5\u03be\u03b9\u03ac",
"Insert column after": "\u0395\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae \u03c3\u03c4\u03ae\u03bb\u03b7\u03c2 \u03b4\u03b5\u03be\u03b9\u03ac",
"Cols": "\u03a3\u03c4\u03ae\u03bb\u03b5\u03c2",
"Insert row after": "\u0395\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae\u03c2 \u03ba\u03ac\u03c4\u03c9",
"Width": "\u03a0\u03bb\u03ac\u03c4\u03bf\u03c2",
"Cell properties": "\u0399\u03b4\u03b9\u03cc\u03c4\u03b7\u03c4\u03b5\u03c2 \u03ba\u03b5\u03bb\u03b9\u03bf\u03cd",
"Left": "\u0391\u03c1\u03b9\u03c3\u03c4\u03b5\u03c1\u03ac",
"Cut row": "\u0391\u03c0\u03bf\u03ba\u03bf\u03c0\u03ae \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae\u03c2",
"Delete column": "\u0394\u03b9\u03b1\u03b3\u03c1\u03b1\u03c6\u03ae \u03c3\u03c4\u03ae\u03bb\u03b7\u03c2",
"Center": "\u039a\u03b5\u03bd\u03c4\u03c1\u03b1\u03c1\u03b9\u03c3\u03bc\u03ad\u03bd\u03b7",
"Merge cells": "\u03a3\u03c5\u03b3\u03c7\u03ce\u03bd\u03b5\u03c5\u03c3\u03b7 \u03ba\u03b5\u03bb\u03b9\u03ce\u03bd",
"Insert template": "\u0395\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae \u03c0\u03c1\u03bf\u03c4\u03cd\u03c0\u03bf\u03c5 ",
"Templates": "\u03a0\u03c1\u03cc\u03c4\u03c5\u03c0\u03b1",
"Background color": "\u03a7\u03c1\u03ce\u03bc\u03b1 \u03c6\u03cc\u03bd\u03c4\u03bf\u03c5",
"Custom...": "\u03a0\u03c1\u03bf\u03c3\u03b1\u03c1\u03bc\u03bf\u03b3\u03ae...",
"Custom color": "\u03a0\u03c1\u03bf\u03c3\u03b1\u03c1\u03bc\u03bf\u03c3\u03bc\u03ad\u03bd\u03bf \u03c7\u03c1\u03ce\u03bc\u03b1",
"No color": "\u03a7\u03c9\u03c1\u03af\u03c2 \u03c7\u03c1\u03ce\u03bc\u03b1",
"Text color": "\u03a7\u03c1\u03ce\u03bc\u03b1 \u03ba\u03b5\u03b9\u03bc\u03ad\u03bd\u03bf\u03c5 ",
"Show blocks": "\u0395\u03bc\u03c6\u03ac\u03bd\u03b9\u03c3\u03b7 \u03c4\u03bc\u03b7\u03bc\u03ac\u03c4\u03c9\u03bd",
"Show invisible characters": "\u0395\u03bc\u03c6\u03ac\u03bd\u03b9\u03c3\u03b7 \u03ba\u03c1\u03c5\u03c6\u03ce\u03bd \u03c7\u03b1\u03c1\u03b1\u03ba\u03c4\u03ae\u03c1\u03c9\u03bd",
"Words: {0}": "\u039b\u03ad\u03be\u03b5\u03b9\u03c2: {0}",
"Insert": "\u0395\u03b9\u03c3\u03b1\u03b3\u03c9\u03b3\u03ae",
"File": "\u0391\u03c1\u03c7\u03b5\u03af\u03bf",
"Edit": "\u0395\u03c0\u03b5\u03be\u03b5\u03c1\u03b3\u03b1\u03c3\u03af\u03b1",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "\u03a0\u03b5\u03c1\u03b9\u03bf\u03c7\u03ae \u0395\u03bc\u03c0\u03bb\u03bf\u03c5\u03c4\u03b9\u03c3\u03bc\u03ad\u03bd\u03bf \u039a\u03b5\u03b9\u03bc\u03ad\u03bd\u03bf\u03c5. \u03a0\u03b1\u03c4\u03ae\u03c3\u03c4\u03b5 ALT-F9 \u03b3\u03b9\u03b1 \u03c4\u03bf \u03bc\u03b5\u03bd\u03bf\u03cd. \u03a0\u03b1\u03c4\u03ae\u03c3\u03c4\u03b5 ALT-F10 \u03b3\u03b9\u03b1  \u03c4\u03b7 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae \u03b5\u03c1\u03b3\u03b1\u03bb\u03b5\u03af\u03c9\u03bd. \u03a0\u03b1\u03c4\u03ae\u03c3\u03c4\u03b5 ALT-0 \u03b3\u03b9\u03b1 \u03b2\u03bf\u03ae\u03b8\u03b5\u03b9\u03b1",
"Tools": "\u0395\u03c1\u03b3\u03b1\u03bb\u03b5\u03af\u03b1",
"View": "\u03a0\u03c1\u03bf\u03b2\u03bf\u03bb\u03ae",
"Table": "\u03a0\u03af\u03bd\u03b1\u03ba\u03b1\u03c2",
"Format": "\u039c\u03bf\u03c1\u03c6\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7"
});
program/js/tinymce/langs/en_CA.js
New file
@@ -0,0 +1,191 @@
tinymce.addI18n('en_CA',{
"Cut": "Cut",
"Heading 5": "Heading 5",
"Header 2": "Header 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.",
"Heading 4": "Heading 4",
"Div": "Div",
"Heading 2": "Heading 2",
"Paste": "Paste",
"Close": "Close",
"Font Family": "Font Family",
"Pre": "Pre",
"Align right": "Align right",
"New document": "New document",
"Blockquote": "Blockquote",
"Numbered list": "Numbered list",
"Heading 1": "Heading 1",
"Headings": "Headings",
"Increase indent": "Increase indent",
"Formats": "Formats",
"Headers": "Headers",
"Select all": "Select all",
"Header 3": "Header 3",
"Blocks": "Blocks",
"Undo": "Undo",
"Strikethrough": "Strikethrough",
"Bullet list": "Bullet list",
"Header 1": "Header 1",
"Superscript": "Superscript",
"Clear formatting": "Clear formatting",
"Font Sizes": "Font Sizes",
"Subscript": "Subscript",
"Header 6": "Header 6",
"Redo": "Redo",
"Paragraph": "Paragraph",
"Ok": "Ok",
"Bold": "Bold",
"Code": "Code",
"Italic": "Italic",
"Align center": "Align center",
"Header 5": "Header 5",
"Heading 6": "Heading 6",
"Heading 3": "Heading 3",
"Decrease indent": "Decrease indent",
"Header 4": "Header 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.",
"Underline": "Underline",
"Cancel": "Cancel",
"Justify": "Justify",
"Inline": "Inline",
"Copy": "Copy",
"Align left": "Align left",
"Visual aids": "Visual aids",
"Lower Greek": "Lower Greek",
"Square": "Square",
"Default": "Default",
"Lower Alpha": "Lower Alpha",
"Circle": "Circle",
"Disc": "Disc",
"Upper Alpha": "Upper Alpha",
"Upper Roman": "Upper Roman",
"Lower Roman": "Lower Roman",
"Name": "Name",
"Anchor": "Anchor",
"You have unsaved changes are you sure you want to navigate away?": "You have unsaved changes are you sure you want to navigate away?",
"Restore last draft": "Restore last draft",
"Special character": "Special character",
"Source code": "Source code",
"Right to left": "Right to left",
"Left to right": "Left to right",
"Emoticons": "Emoticons",
"Robots": "Robots",
"Document properties": "Document properties",
"Title": "Title",
"Keywords": "Keywords",
"Encoding": "Encoding",
"Description": "Description",
"Author": "Author",
"Fullscreen": "Fullscreen",
"Horizontal line": "Horizontal line",
"Horizontal space": "Horizontal space",
"Insert\/edit image": "Insert\/edit image",
"General": "General",
"Advanced": "Advanced",
"Source": "Source",
"Border": "Border",
"Constrain proportions": "Constrain proportions",
"Vertical space": "Vertical space",
"Image description": "Image description",
"Style": "Style",
"Dimensions": "Dimensions",
"Insert image": "Insert image",
"Insert date\/time": "Insert date\/time",
"Remove link": "Remove link",
"Url": "Url",
"Text to display": "Text to display",
"Anchors": "Anchors",
"Insert link": "Insert link",
"New window": "New window",
"None": "None",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?",
"Target": "Target",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?",
"Insert\/edit link": "Insert\/edit link",
"Insert\/edit video": "Insert\/edit video",
"Poster": "Poster",
"Alternative source": "Alternative source",
"Paste your embed code below:": "Paste your embed code below:",
"Insert video": "Insert video",
"Embed": "Embed",
"Nonbreaking space": "Nonbreaking space",
"Page break": "Page break",
"Paste as text": "Paste as text",
"Preview": "Preview",
"Print": "Print",
"Save": "Save",
"Could not find the specified string.": "Could not find the specified string.",
"Replace": "Replace",
"Next": "Next",
"Whole words": "Whole words",
"Find and replace": "Find and replace",
"Replace with": "Replace with",
"Find": "Find",
"Replace all": "Replace all",
"Match case": "Match case",
"Prev": "Prev",
"Spellcheck": "Spellcheck",
"Finish": "Finish",
"Ignore all": "Ignore all",
"Ignore": "Ignore",
"Insert row before": "Insert row before",
"Rows": "Rows",
"Height": "Height",
"Paste row after": "Paste row after",
"Alignment": "Alignment",
"Column group": "Column group",
"Row": "Row",
"Insert column before": "Insert column before",
"Split cell": "Split cell",
"Cell padding": "Cell padding",
"Cell spacing": "Cell spacing",
"Row type": "Row type",
"Insert table": "Insert table",
"Body": "Body",
"Caption": "Caption",
"Footer": "Footer",
"Delete row": "Delete row",
"Paste row before": "Paste row before",
"Scope": "Scope",
"Delete table": "Delete table",
"H Align": "H Align",
"Top": "Top",
"Header cell": "Header cell",
"Column": "Column",
"Row group": "Row group",
"Cell": "Cell",
"Middle": "Middle",
"Cell type": "Cell type",
"Copy row": "Copy row",
"Row properties": "Row properties",
"Table properties": "Table properties",
"Bottom": "Bottom",
"V Align": "V Align",
"Header": "Header",
"Right": "Right",
"Insert column after": "Insert column after",
"Cols": "Cols",
"Insert row after": "Insert row after",
"Width": "Width",
"Cell properties": "Cell properties",
"Left": "Left",
"Cut row": "Cut row",
"Delete column": "Delete column",
"Center": "Center",
"Merge cells": "Merge cells",
"Insert template": "Insert template",
"Templates": "Templates",
"Background color": "Background colour",
"Text color": "Text colour",
"Show blocks": "Show blocks",
"Show invisible characters": "Show invisible characters",
"Words: {0}": "Words: {0}",
"Insert": "Insert",
"File": "File",
"Edit": "Edit",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help",
"Tools": "Tools",
"View": "View",
"Table": "Table",
"Format": "Format"
});
program/js/tinymce/langs/en_GB.js
New file
@@ -0,0 +1,179 @@
tinymce.addI18n('en_GB',{
"Cut": "Cut",
"Header 2": "Header 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.",
"Div": "Div",
"Paste": "Paste",
"Close": "Close",
"Font Family": "Font Family",
"Pre": "Pre",
"Align right": "Align right",
"New document": "New document",
"Blockquote": "Blockquote",
"Numbered list": "Numbered list",
"Increase indent": "Increase indent",
"Formats": "Formats",
"Headers": "Headers",
"Select all": "Select all",
"Header 3": "Header 3",
"Blocks": "Blocks",
"Undo": "Undo",
"Strikethrough": "Strike-through",
"Bullet list": "Bullet list",
"Header 1": "Header 1",
"Superscript": "Superscript",
"Clear formatting": "Clear formatting",
"Font Sizes": "Font Sizes",
"Subscript": "Subscript",
"Header 6": "Header 6",
"Redo": "Redo",
"Paragraph": "Paragraph",
"Ok": "Ok",
"Bold": "Bold",
"Code": "Code",
"Italic": "Italic",
"Align center": "Align centre",
"Header 5": "Header 5",
"Decrease indent": "Decrease indent",
"Header 4": "Header 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.",
"Underline": "Underline",
"Cancel": "Cancel",
"Justify": "Justify",
"Inline": "Inline",
"Copy": "Copy",
"Align left": "Align left",
"Visual aids": "Visual aids",
"Lower Greek": "Lower Greek",
"Square": "Square",
"Default": "Default",
"Lower Alpha": "Lower Alpha",
"Circle": "Circle",
"Disc": "Disc",
"Upper Alpha": "Upper Alpha",
"Upper Roman": "Upper Roman",
"Lower Roman": "Lower Roman",
"Name": "Name",
"Anchor": "Anchor",
"You have unsaved changes are you sure you want to navigate away?": "You have unsaved changes are you sure you want to navigate away?",
"Restore last draft": "Restore last draft",
"Special character": "Special character",
"Source code": "Source code",
"Right to left": "Right to left",
"Left to right": "Left to right",
"Emoticons": "Emoticons",
"Robots": "Robots",
"Document properties": "Document properties",
"Title": "Title",
"Keywords": "Keywords",
"Encoding": "Encoding",
"Description": "Description",
"Author": "Author",
"Fullscreen": "Full-screen",
"Horizontal line": "Horizontal line",
"Horizontal space": "Horizontal space",
"Insert\/edit image": "Insert\/edit image",
"General": "General",
"Advanced": "Advanced",
"Source": "Source",
"Border": "Border",
"Constrain proportions": "Constrain proportions",
"Vertical space": "Vertical space",
"Image description": "Image description",
"Style": "Style",
"Dimensions": "Dimensions",
"Insert image": "Insert image",
"Insert date\/time": "Insert date\/time",
"Remove link": "Remove link",
"Url": "URL",
"Text to display": "Text to display",
"Anchors": "Anchors",
"Insert link": "Insert link",
"New window": "New window",
"None": "None",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?",
"Target": "Target",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?",
"Insert\/edit link": "Insert\/edit link",
"Insert\/edit video": "Insert\/edit video",
"Poster": "Poster",
"Alternative source": "Alternative source",
"Paste your embed code below:": "Paste your embed code below:",
"Insert video": "Insert video",
"Embed": "Embed",
"Nonbreaking space": "Non-breaking space",
"Page break": "Page break",
"Paste as text": "Paste as text",
"Preview": "Preview",
"Print": "Print",
"Save": "Save",
"Could not find the specified string.": "Could not find the specified string.",
"Replace": "Replace",
"Next": "Next",
"Whole words": "Whole words",
"Find and replace": "Find and replace",
"Replace with": "Replace with",
"Find": "Find",
"Replace all": "Replace all",
"Match case": "Match case",
"Prev": "Prev",
"Spellcheck": "Spell-check",
"Finish": "Finish",
"Ignore all": "Ignore all",
"Ignore": "Ignore",
"Insert row before": "Insert row before",
"Rows": "Rows",
"Height": "Height",
"Paste row after": "Paste row after",
"Alignment": "Alignment",
"Column group": "Column group",
"Row": "Row",
"Insert column before": "Insert column before",
"Split cell": "Split cell",
"Cell padding": "Cell padding",
"Cell spacing": "Cell spacing",
"Row type": "Row type",
"Insert table": "Insert table",
"Body": "Body",
"Caption": "Caption",
"Footer": "Footer",
"Delete row": "Delete row",
"Paste row before": "Paste row before",
"Scope": "Scope",
"Delete table": "Delete table",
"Header cell": "Header cell",
"Column": "Column",
"Cell": "Cell",
"Header": "Header",
"Cell type": "Cell type",
"Copy row": "Copy row",
"Row properties": "Row properties",
"Table properties": "Table properties",
"Row group": "Row group",
"Right": "Right",
"Insert column after": "Insert column after",
"Cols": "Cols",
"Insert row after": "Insert row after",
"Width": "Width",
"Cell properties": "Cell properties",
"Left": "Left",
"Cut row": "Cut row",
"Delete column": "Delete column",
"Center": "Centre",
"Merge cells": "Merge cells",
"Insert template": "Insert template",
"Templates": "Templates",
"Background color": "Background colour",
"Text color": "Text colour",
"Show blocks": "Show blocks",
"Show invisible characters": "Show invisible characters",
"Words: {0}": "Words: {0}",
"Insert": "Insert",
"File": "File",
"Edit": "Edit",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help",
"Tools": "Tools",
"View": "View",
"Table": "Table",
"Format": "Format"
});
program/js/tinymce/langs/es.js
New file
@@ -0,0 +1,197 @@
tinymce.addI18n('es',{
"Cut": "Cortar",
"Heading 5": "Encabezado 5",
"Header 2": "Encabezado 2 ",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "Tu navegador no soporta acceso directo al portapapeles. Por favor usa las teclas Crtl+X\/C\/V de tu teclado",
"Heading 4": "Encabezado 4",
"Div": "Capa",
"Heading 2": "Encabezado 2",
"Paste": "Pegar",
"Close": "Cerrar",
"Font Family": "Familia de fuentes",
"Pre": "Pre",
"Align right": "Alinear a la derecha",
"New document": "Nuevo documento",
"Blockquote": "Bloque de cita",
"Numbered list": "Lista numerada",
"Heading 1": "Encabezado 1",
"Headings": "Encabezados",
"Increase indent": "Incrementar sangr\u00eda",
"Formats": "Formatos",
"Headers": "Encabezados",
"Select all": "Seleccionar todo",
"Header 3": "Encabezado 3",
"Blocks": "Bloques",
"Undo": "Deshacer",
"Strikethrough": "Tachado",
"Bullet list": "Lista de vi\u00f1etas",
"Header 1": "Encabezado 1",
"Superscript": "Super\u00edndice",
"Clear formatting": "Limpiar formato",
"Font Sizes": "Tama\u00f1os de fuente",
"Subscript": "Sub\u00edndice",
"Header 6": "Encabezado 6",
"Redo": "Rehacer",
"Paragraph": "P\u00e1rrafo",
"Ok": "Ok",
"Bold": "Negrita",
"Code": "C\u00f3digo",
"Italic": "It\u00e1lica",
"Align center": "Alinear al centro",
"Header 5": "Encabezado 5 ",
"Heading 6": "Encabezado 6",
"Heading 3": "Encabezado 3",
"Decrease indent": "Disminuir sangr\u00eda",
"Header 4": "Encabezado 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Pegar est\u00e1 ahora en modo de texto plano. El contenido se pegar\u00e1 como texto plano hasta que desactive esta opci\u00f3n.",
"Underline": "Subrayado",
"Cancel": "Cancelar",
"Justify": "Justificar",
"Inline": "en l\u00ednea",
"Copy": "Copiar",
"Align left": "Alinear a la izquierda",
"Visual aids": "Ayudas visuales",
"Lower Greek": "Inferior Griega",
"Square": "Cuadrado",
"Default": "Por defecto",
"Lower Alpha": "Inferior Alfa",
"Circle": "C\u00edrculo",
"Disc": "Disco",
"Upper Alpha": "Superior Alfa",
"Upper Roman": "Superior Romana",
"Lower Roman": "Inferior Romana",
"Name": "Nombre",
"Anchor": "Ancla",
"You have unsaved changes are you sure you want to navigate away?": "Tiene cambios sin guardar. \u00bfEst\u00e1 seguro de que quiere salir?",
"Restore last draft": "Restaurar el \u00faltimo borrador",
"Special character": "Car\u00e1cter especial",
"Source code": "C\u00f3digo fuente",
"Color": "Color",
"Right to left": "De derecha a izquierda",
"Left to right": "De izquierda a derecha",
"Emoticons": "Emoticonos",
"Robots": "Robots",
"Document properties": "Propiedades del documento",
"Title": "T\u00edtulo",
"Keywords": "Palabras clave",
"Encoding": "Codificaci\u00f3n",
"Description": "Descripci\u00f3n",
"Author": "Autor",
"Fullscreen": "Pantalla completa",
"Horizontal line": "L\u00ednea horizontal",
"Horizontal space": "Espacio horizontal",
"Insert\/edit image": "Insertar\/editar imagen",
"General": "General",
"Advanced": "Avanzado",
"Source": "Fuente",
"Border": "Borde",
"Constrain proportions": "Restringir proporciones",
"Vertical space": "Espacio vertical",
"Image description": "Descripci\u00f3n de la imagen",
"Style": "Estilo",
"Dimensions": "Dimensiones",
"Insert image": "Insertar imagen",
"Insert date\/time": "Insertar fecha\/hora",
"Remove link": "Quitar enlace",
"Url": "URL",
"Text to display": "Texto para mostrar",
"Anchors": "Anclas",
"Insert link": "Insertar enlace",
"New window": "Nueva ventana",
"None": "Ninguno",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "El enlace que has introducido no parece ser una enlace externo. Quieres a\u00f1adir el prefijo necesario http:\/\/ ?",
"Target": "Destino",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "El enlace que has introducido no parece ser una direcci\u00f3n de correo electr\u00f3nico. Quieres a\u00f1adir el prefijo necesario mailto: ?",
"Insert\/edit link": "Insertar\/editar enlace",
"Insert\/edit video": "Insertar\/editar video",
"Poster": "Miniatura",
"Alternative source": "Fuente alternativa",
"Paste your embed code below:": "Pega tu c\u00f3digo embebido debajo",
"Insert video": "Insertar video",
"Embed": "Incrustado",
"Nonbreaking space": "Espacio fijo",
"Page break": "Salto de p\u00e1gina",
"Paste as text": "Pegar como texto",
"Preview": "Previsualizar",
"Print": "Imprimir",
"Save": "Guardar",
"Could not find the specified string.": "No se encuentra la cadena de texto especificada",
"Replace": "Reemplazar",
"Next": "Siguiente",
"Whole words": "Palabras completas",
"Find and replace": "Buscar y reemplazar",
"Replace with": "Reemplazar con",
"Find": "Buscar",
"Replace all": "Reemplazar todo",
"Match case": "Coincidencia exacta",
"Prev": "Anterior",
"Spellcheck": "Corrector ortogr\u00e1fico",
"Finish": "Finalizar",
"Ignore all": "Ignorar todos",
"Ignore": "Ignorar",
"Add to Dictionary": "A\u00f1adir al Diccionario",
"Insert row before": "Insertar fila antes",
"Rows": "Filas",
"Height": "Alto",
"Paste row after": "Pegar la fila despu\u00e9s",
"Alignment": "Alineaci\u00f3n",
"Border color": "Color del borde",
"Column group": "Grupo de columnas",
"Row": "Fila",
"Insert column before": "Insertar columna antes",
"Split cell": "Dividir celdas",
"Cell padding": "Relleno de celda",
"Cell spacing": "Espacio entre celdas",
"Row type": "Tipo de fila",
"Insert table": "Insertar tabla",
"Body": "Cuerpo",
"Caption": "Subt\u00edtulo",
"Footer": "Pie de p\u00e1gina",
"Delete row": "Eliminar fila",
"Paste row before": "Pegar la fila antes",
"Scope": "\u00c1mbito",
"Delete table": "Eliminar tabla",
"H Align": "Alineamiento Horizontal",
"Top": "Arriba",
"Header cell": "Celda de la cebecera",
"Column": "Columna",
"Row group": "Grupo de filas",
"Cell": "Celda",
"Middle": "Centro",
"Cell type": "Tipo de celda",
"Copy row": "Copiar fila",
"Row properties": "Propiedades de la fila",
"Table properties": "Propiedades de la tabla",
"Bottom": "Abajo",
"V Align": "Alineamiento Vertical",
"Header": "Cabecera",
"Right": "Derecha",
"Insert column after": "Insertar columna despu\u00e9s",
"Cols": "Columnas",
"Insert row after": "Insertar fila despu\u00e9s ",
"Width": "Ancho",
"Cell properties": "Propiedades de la celda",
"Left": "Izquierda",
"Cut row": "Cortar fila",
"Delete column": "Eliminar columna",
"Center": "Centrado",
"Merge cells": "Combinar celdas",
"Insert template": "Insertar plantilla",
"Templates": "Plantillas",
"Background color": "Color de fondo",
"Custom...": "Personalizar...",
"Custom color": "Color personalizado",
"No color": "Sin color",
"Text color": "Color del texto",
"Show blocks": "Mostrar bloques",
"Show invisible characters": "Mostrar caracteres invisibles",
"Words: {0}": "Palabras: {0}",
"Insert": "Insertar",
"File": "Archivo",
"Edit": "Editar",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "\u00c1rea de texto enriquecido. Pulse ALT-F9 para el menu. Pulse ALT-F10 para la barra de herramientas. Pulse ALT-0 para ayuda",
"Tools": "Herramientas",
"View": "Ver",
"Table": "Tabla",
"Format": "Formato"
});
program/js/tinymce/langs/et.js
New file
@@ -0,0 +1,179 @@
tinymce.addI18n('et',{
"Cut": "L\u00f5ika",
"Header 2": "Pealkiri 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "Sinu veebilehitseja ei toeta otsest ligip\u00e4\u00e4su l\u00f5ikelauale. Palun kasuta selle asemel klaviatuuri kiirk\u00e4sklusi Ctrl+X\/C\/V.",
"Div": "Sektsioon",
"Paste": "Kleebi",
"Close": "Sulge",
"Font Family": "Kirjastiilid",
"Pre": "Eelvormindatud",
"Align right": "Joonda paremale",
"New document": "Uus dokument",
"Blockquote": "Plokktsitaat",
"Numbered list": "J\u00e4rjestatud loend",
"Increase indent": "Suurenda taanet",
"Formats": "Vormingud",
"Headers": "P\u00e4ised",
"Select all": "Vali k\u00f5ik",
"Header 3": "Pealkiri 3",
"Blocks": "Plokid",
"Undo": "V\u00f5ta tagasi",
"Strikethrough": "L\u00e4bikriipsutatud",
"Bullet list": "J\u00e4rjestamata loend",
"Header 1": "Pealkiri 1",
"Superscript": "\u00dclaindeks",
"Clear formatting": "Puhasta vorming",
"Font Sizes": "Kirja suurused",
"Subscript": "Alaindeks",
"Header 6": "Pealkiri 6",
"Redo": "Tee uuesti",
"Paragraph": "L\u00f5ik",
"Ok": "Ok",
"Bold": "Rasvane",
"Code": "Kood",
"Italic": "Kaldkiri",
"Align center": "Joonda keskele",
"Header 5": "Pealkiri 5",
"Decrease indent": "V\u00e4henda taanet",
"Header 4": "Pealkiri 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Asetamine on n\u00fc\u00fcd tekstire\u017eiimis. Sisu asetatakse n\u00fc\u00fcd lihttekstina, kuni sa l\u00fclitad selle valiku v\u00e4lja.",
"Underline": "Allakriipsutatud",
"Cancel": "Katkesta",
"Justify": "Joonda r\u00f6\u00f6pselt",
"Inline": "Reasisene",
"Copy": "Kopeeri",
"Align left": "Joonda vasakule",
"Visual aids": "N\u00e4itevahendid",
"Lower Greek": "Kreeka v\u00e4iket\u00e4hed (\u03b1, \u03b2, \u03b3)",
"Square": "Ruut",
"Default": "Vaikimisi",
"Lower Alpha": "V\u00e4iket\u00e4hed (a, b, c)",
"Circle": "Ring",
"Disc": "Ketas",
"Upper Alpha": "Suurt\u00e4hed (A, B, C)",
"Upper Roman": "Rooma suurt\u00e4hed (I, II, III)",
"Lower Roman": "Rooma v\u00e4iket\u00e4hed (i, ii, iii)",
"Name": "Nimi",
"Anchor": "Ankur",
"You have unsaved changes are you sure you want to navigate away?": "Sul on salvestamata muudatusi. Oled Sa kindel, et soovid mujale navigeeruda?",
"Restore last draft": "Taasta viimane mustand",
"Special character": "Erim\u00e4rk",
"Source code": "L\u00e4htekood",
"Right to left": "Paremalt vasakule",
"Left to right": "Vasakult paremale",
"Emoticons": "Emotikonid",
"Robots": "Robotid",
"Document properties": "Dokumendi omadused",
"Title": "Pealkiri",
"Keywords": "M\u00e4rks\u00f5nad",
"Encoding": "M\u00e4rgistik",
"Description": "Kirjeldus",
"Author": "Autor",
"Fullscreen": "T\u00e4isekraan",
"Horizontal line": "Horisontaaljoon",
"Horizontal space": "Reavahe",
"Insert\/edit image": "Lisa\/muuda pilt",
"General": "\u00dcldine",
"Advanced": "T\u00e4iendavad seaded",
"Source": "Allikas",
"Border": "\u00c4\u00e4ris",
"Constrain proportions": "S\u00e4ilita kuvasuhe",
"Vertical space": "P\u00fcstine vahe",
"Image description": "Pildi kirjeldus",
"Style": "Stiil",
"Dimensions": "M\u00f5\u00f5tmed",
"Insert image": "Lisa pilt",
"Insert date\/time": "Lisa kuup\u00e4ev\/kellaaeg",
"Remove link": "Eemalda link",
"Url": "Viide (url)",
"Text to display": "Kuvatav tekst",
"Anchors": "Ankrud",
"Insert link": "Lisa link",
"New window": "Uus aken",
"None": "Puudub",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?",
"Target": "Sihtm\u00e4rk",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?",
"Insert\/edit link": "Lisa\/muuda link",
"Insert\/edit video": "Lisa\/muuda video",
"Poster": "Lisaja",
"Alternative source": "Teine allikas",
"Paste your embed code below:": "Kleebi oma manustamiskood siia alla:",
"Insert video": "Lisa video",
"Embed": "Manusta",
"Nonbreaking space": "T\u00fchim\u00e4rk (nbsp)",
"Page break": "Lehevahetus",
"Paste as text": "Aseta tekstina",
"Preview": "Eelvaade",
"Print": "Tr\u00fcki",
"Save": "Salvesta",
"Could not find the specified string.": "Ei suutnud leida etteantud s\u00f5net.",
"Replace": "Asenda",
"Next": "J\u00e4rg",
"Whole words": "Terviks\u00f5nad",
"Find and replace": "Otsi ja asenda",
"Replace with": "Asendus",
"Find": "Otsi",
"Replace all": "Asenda k\u00f5ik",
"Match case": "Erista suur- ja v\u00e4iket\u00e4hti",
"Prev": "Eelm",
"Spellcheck": "\u00d5igekirja kontroll",
"Finish": "L\u00f5peta",
"Ignore all": "Eira k\u00f5iki",
"Ignore": "Eira",
"Insert row before": "Lisa rida enne",
"Rows": "Read",
"Height": "K\u00f5rgus",
"Paste row after": "Kleebi rida j\u00e4rele",
"Alignment": "Joondus",
"Column group": "Veergude r\u00fchm",
"Row": "Rida",
"Insert column before": "Lisa tulp enne",
"Split cell": "T\u00fckelda lahter",
"Cell padding": "Lahtri sisu ja tabeli \u00e4\u00e4rise vahe",
"Cell spacing": "Lahtrivahe",
"Row type": "Rea t\u00fc\u00fcp",
"Insert table": "Lisa tabel",
"Body": "P\u00f5hiosa",
"Caption": "Alapealkiri",
"Footer": "Jalus",
"Delete row": "Kustuta rida",
"Paste row before": "Kleebi rida enne",
"Scope": "Ulatus",
"Delete table": "Kustuta tabel",
"Header cell": "P\u00e4islahter",
"Column": "Tulp",
"Cell": "Lahter",
"Header": "P\u00e4is",
"Cell type": "Lahtri t\u00fc\u00fcp",
"Copy row": "Kopeeri rida",
"Row properties": "Rea omadused",
"Table properties": "Tabeli omadused",
"Row group": "Ridade r\u00fchm",
"Right": "Paremal",
"Insert column after": "Lisa tulp j\u00e4rele",
"Cols": "Veerud",
"Insert row after": "Lisa rida j\u00e4rele",
"Width": "Laius",
"Cell properties": "Lahtri omadused",
"Left": "Vasakul",
"Cut row": "L\u00f5ika rida",
"Delete column": "Kustuta tulp",
"Center": "Keskel",
"Merge cells": "\u00dchenda lahtrid",
"Insert template": "Lisa mall",
"Templates": "Mallid",
"Background color": "Tausta v\u00e4rv",
"Text color": "Teksti v\u00e4rv",
"Show blocks": "N\u00e4ita plokke",
"Show invisible characters": "N\u00e4ita peidetud m\u00e4rke",
"Words: {0}": "S\u00f5nu: {0}",
"Insert": "Sisesta",
"File": "Fail",
"Edit": "Muuda",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "Rikastatud teksti ala. Men\u00fc\u00fc jaoks vajuta ALT-F9. T\u00f6\u00f6riistariba jaoks vajuta ALT-F10. Abi saamiseks vajuta ALT-0.",
"Tools": "T\u00f6\u00f6riistad",
"View": "Vaade",
"Table": "Tabel",
"Format": "Vorming"
});
program/js/tinymce/langs/eu.js
New file
@@ -0,0 +1,191 @@
tinymce.addI18n('eu',{
"Cut": "Ebaki",
"Heading 5": "5. izenburua",
"Header 2": "2 Goiburua",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "Zure nabigatzaileak ez du arbela zuzenean erabiltzeko euskarririk. Mesedez erabili CTRL+X\/C\/V teklatuko lasterbideak.",
"Heading 4": "4. izenburua",
"Div": "Div",
"Heading 2": "2. izenburua",
"Paste": "Itsatsi",
"Close": "Itxi",
"Font Family": "Letra-tipo familia",
"Pre": "Pre",
"Align right": "Lerrokatu eskuinean",
"New document": "Dokumentu berria",
"Blockquote": "Blockquote",
"Numbered list": "Zerrenda  zenbatua",
"Heading 1": "1. izenburua",
"Headings": "Izenburuak",
"Increase indent": "Handitu koska",
"Formats": "Formatuak",
"Headers": "Goiburuak",
"Select all": "Hautatu dena",
"Header 3": "3 Goiburua",
"Blocks": "Blokeak",
"Undo": "Desegin",
"Strikethrough": "Marratua",
"Bullet list": "Bulet zerrenda",
"Header 1": "1 Goiburua",
"Superscript": "Goi-indize",
"Clear formatting": "Garbitu formatua",
"Font Sizes": "Letra-tamainuak",
"Subscript": "Azpiindize",
"Header 6": "6 Goiburua",
"Redo": "Berregin",
"Paragraph": "Parrafoa",
"Ok": "Ondo",
"Bold": "Lodia",
"Code": "Kodea",
"Italic": "Etzana",
"Align center": "Lerrokatu horizontalki erdian",
"Header 5": "5 Goiburua",
"Heading 6": "6. izenburua",
"Heading 3": "3. izenburua",
"Decrease indent": "Txikitu koska",
"Header 4": "4 Goiburua",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Itsatsi testu arrunt moduan dago orain. Edukiak testu arruntak bezala itsatsiko dira aukera hau itzaltzen duzunera arte.",
"Underline": "Azpimarratua",
"Cancel": "Ezeztatu",
"Justify": "Justifikatuta",
"Inline": "Lerroan",
"Copy": "Kopiatu",
"Align left": "Lerrokatu ezkerrean",
"Visual aids": "Laguntza bisualak",
"Lower Greek": "Behe grekoa",
"Square": "Karratua",
"Default": "Lehenetstia",
"Lower Alpha": "Behe alfa",
"Circle": "Zirkulua",
"Disc": "Diskoa",
"Upper Alpha": "Goi alfa",
"Upper Roman": "Goi erromatarra",
"Lower Roman": "Behe erromatarra",
"Name": "Izena",
"Anchor": "Esteka",
"You have unsaved changes are you sure you want to navigate away?": "Gorde gabeko aldaketak dituzu, zihur zaude hemendik irten nahi duzula?",
"Restore last draft": "Leheneratu azken zirriborroa",
"Special character": "Karaktere bereziak",
"Source code": "Iturburu-kodea",
"Right to left": "Eskuinetik ezkerrera",
"Left to right": "Ezkerretik eskuinera",
"Emoticons": "Irrifartxoak",
"Robots": "Robotak",
"Document properties": "Dokumentuaren propietateak",
"Title": "Titulua",
"Keywords": "Hitz gakoak",
"Encoding": "Encoding",
"Description": "Deskribapena",
"Author": "Egilea",
"Fullscreen": "Pantaila osoa",
"Horizontal line": "Marra horizontala",
"Horizontal space": "Hutsune horizontala",
"Insert\/edit image": "Irudia txertatu\/editatu",
"General": "Orokorra",
"Advanced": "Aurreratua",
"Source": "Iturburua",
"Border": "Ertza",
"Constrain proportions": "Zerraditu proportzioak",
"Vertical space": "Hutsune bertikala",
"Image description": "Irudiaren deskribapena",
"Style": "Estiloa",
"Dimensions": "Neurriak",
"Insert image": "Irudia txertatu",
"Insert date\/time": "Data\/ordua txertatu",
"Remove link": "Kendu esteka",
"Url": "Url",
"Text to display": "Bistaratzeko testua",
"Anchors": "Estekak",
"Insert link": "Esteka txertatu",
"New window": "Lehio berria",
"None": "Bat ere ez",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "Sartu duzun URL-ak kanpoko esteka dela dirudi. Nahi duzu dagokion http:\/\/ aurrizkia gehitzea?",
"Target": "Target",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "Sartu duzun URL-ak e-posta helbidea dela dirudi. Nahi duzu dagokion mailto: aurrizkia gehitzea?",
"Insert\/edit link": "Esteka txertatu\/editatu",
"Insert\/edit video": "Bideoa txertatu\/editatu",
"Poster": "Poster-a",
"Alternative source": "Iturburu alternatiboa",
"Paste your embed code below:": "Itsatsi hemen zure enkapsulatzeko kodea:",
"Insert video": "Bideoa txertatu",
"Embed": "Kapsulatu",
"Nonbreaking space": "Zuriune zatiezina",
"Page break": "Orrialde-jauzia",
"Paste as text": "Itsatsi testu bezala",
"Preview": "Aurrebista",
"Print": "Inprimatu",
"Save": "Gorde",
"Could not find the specified string.": "Ezin izan da zehaztutako katea aurkitu.",
"Replace": "Ordeztu",
"Next": "Hurrengoa",
"Whole words": "hitz osoak",
"Find and replace": "Bilatu eta ordeztu",
"Replace with": "Honekin ordeztu",
"Find": "Bilatu",
"Replace all": "Ordeztu dena",
"Match case": "Maiuskula\/minuskula",
"Prev": "Aurrekoa",
"Spellcheck": "Egiaztapenak",
"Finish": "Amaitu",
"Ignore all": "Ez ikusi guztia",
"Ignore": "Ez ikusi",
"Insert row before": "Txertatu errenkada aurretik",
"Rows": "Errenkadak",
"Height": "Altuera",
"Paste row after": "Itsatsi errenkada ostean",
"Alignment": "Lerrokatzea",
"Column group": "Zutabe taldea",
"Row": "Errenkada",
"Insert column before": "Txertatu zutabe aurretik",
"Split cell": "Banatu gelaxkak",
"Cell padding": "Gelaxken betegarria",
"Cell spacing": "Gelaxka arteko tartea",
"Row type": "Lerro mota",
"Insert table": "Txertatu taula",
"Body": "Gorputza",
"Caption": "Epigrafea",
"Footer": "Oina",
"Delete row": "Ezabatu errenkada",
"Paste row before": "Itsatsi errenkada aurretik",
"Scope": "Esparrua",
"Delete table": "Taula ezabatu",
"H Align": "Lerrokatze horizontala",
"Top": "Goian",
"Header cell": "Goiburuko gelaxka",
"Column": "Zutabea",
"Row group": "Lerro taldea",
"Cell": "Gelaxka",
"Middle": "Erdian",
"Cell type": "Gelaxka mota",
"Copy row": "Kopiatu errenkada",
"Row properties": "Errenkadaren propietateak",
"Table properties": "Taularen propietateak",
"Bottom": "Behean",
"V Align": "Lerrokatze bertikala",
"Header": "Goiburua",
"Right": "Eskuina",
"Insert column after": "Txertatu zutabea ostean",
"Cols": "Zutabeak",
"Insert row after": "Txertatu errenkada ostean",
"Width": "Zabalera",
"Cell properties": "Gelaxkaren propietateak",
"Left": "Ezkerra",
"Cut row": "Ebaki errenkada",
"Delete column": "Ezabatu zutabea",
"Center": "Erdia",
"Merge cells": "Batu gelaxkak",
"Insert template": "Txertatu txantiloia",
"Templates": "Txantiloiak",
"Background color": "Atzeko kolorea",
"Text color": "Testuaren kolorea",
"Show blocks": "Erakutsi blokeak",
"Show invisible characters": "Erakutsi karaktere izkutuak",
"Words: {0}": "Hitzak: {0}",
"Insert": "Sartu",
"File": "Fitxategia",
"Edit": "Editatu",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "Testu aberastuko area. Sakatu ALT-F9 menurako. Sakatu ALT-F10 tresna-barrarako. Sakatu ALT-0 laguntzarako",
"Tools": "Tresnak",
"View": "Ikusi",
"Table": "Taula",
"Format": "Formatua"
});
program/js/tinymce/langs/fa.js
New file
@@ -0,0 +1,180 @@
tinymce.addI18n('fa',{
"Cut": "\u0628\u0631\u062f\u0627\u0634\u062a\u0646",
"Header 2": "\u0633\u0631\u200c\u0635\u0641\u062d\u0647 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "\u0645\u0631\u0648\u0631\u06af\u0631 \u0634\u0645\u0627 \u0627\u0632 \u062f\u0633\u062a\u0631\u0633\u06cc \u0645\u0633\u062a\u0642\u06cc\u0645 \u0628\u0647 \u062d\u0627\u0641\u0638\u0647 \u06a9\u067e\u06cc \u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u0646\u0645\u06cc \u06a9\u0646\u062f. \u0644\u0637\u0641\u0627 \u0627\u0632 \u06a9\u0644\u06cc\u062f \u0647\u0627\u06cc Ctrl+X\/C\/V \u062f\u0631 \u06a9\u06cc\u0628\u0648\u0631\u062f \u0628\u0631\u0627\u06cc \u0627\u06cc\u0646 \u06a9\u0627\u0631 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f.",
"Div": "\u062a\u06af \u0628\u062e\u0634 - Div",
"Paste": "\u0686\u0633\u0628\u0627\u0646\u062f\u0646",
"Close": "\u0628\u0633\u062a\u0646",
"Font Family": "\u0641\u0648\u0646\u062a",
"Pre": "\u062a\u06af \u062a\u0628\u062f\u06cc\u0644 \u0628\u0647 \u0645\u062a\u0646 \u0633\u0627\u062f\u0647 - Pre",
"Align right": "\u0631\u0627\u0633\u062a \u0686\u06cc\u0646",
"New document": "\u0633\u0646\u062f \u062c\u062f\u06cc\u062f",
"Blockquote": "\u062a\u06af \u0646\u0642\u0644 \u0642\u0648\u0644 - Blockquote",
"Numbered list": "\u0644\u06cc\u0633\u062a \u0634\u0645\u0627\u0631\u0647 \u0627\u06cc",
"Increase indent": "\u0627\u0641\u0632\u0627\u06cc\u0634 \u062a\u0648 \u0631\u0641\u062a\u06af\u06cc",
"Formats": "\u0642\u0627\u0644\u0628",
"Headers": "\u0633\u0631\u200c\u0635\u0641\u062d\u0647\u200c\u0647\u0627",
"Select all": "\u0627\u0646\u062a\u062e\u0627\u0628 \u0647\u0645\u0647",
"Header 3": "\u0633\u0631\u200c\u0635\u0641\u062d\u0647 3",
"Blocks": "\u0628\u0644\u0648\u06a9",
"Undo": "\t\n\u0628\u0627\u0637\u0644 \u06a9\u0631\u062f\u0646",
"Strikethrough": "\u062e\u0637 \u062e\u0648\u0631\u062f\u0647",
"Bullet list": "\u0644\u06cc\u0633\u062a \u062f\u0627\u06cc\u0631\u0647 \u0627\u06cc",
"Header 1": "\u0633\u0631\u200c\u0635\u0641\u062d\u0647 1",
"Superscript": "\u0628\u0627\u0644\u0627\u0646\u0648\u06cc\u0633 - \u062d\u0627\u0644\u062a \u062a\u0648\u0627\u0646",
"Clear formatting": "\u067e\u0627\u06a9 \u06a9\u0631\u062f\u0646 \u0642\u0627\u0644\u0628 \u0628\u0646\u062f\u06cc",
"Font Sizes": "\u0627\u0646\u062f\u0627\u0632\u0647 \u0641\u0648\u0646\u062a",
"Subscript": "\u0632\u06cc\u0631 \u0646\u0648\u06cc\u0633 - \u062d\u0627\u0644\u062a \u0627\u0646\u062f\u06cc\u0633",
"Header 6": "\u0633\u0631\u200c\u0635\u0641\u062d\u0647 6",
"Redo": "\u0627\u0646\u062c\u0627\u0645 \u062f\u0648\u0628\u0627\u0631\u0647",
"Paragraph": "\u062a\u06af \u067e\u0627\u0631\u0627\u06af\u0631\u0627\u0641 - Paragraph",
"Ok": "\u0628\u0627\u0634\u0647",
"Bold": "\u062f\u0631\u0634\u062a",
"Code": "\u062a\u06af \u06a9\u062f - Code",
"Italic": "\u062e\u0637 \u06a9\u062c",
"Align center": "\u0648\u0633\u0637 \u0686\u06cc\u0646",
"Header 5": "\u0633\u0631\u200c\u0635\u0641\u062d\u0647 5",
"Decrease indent": "\u06a9\u0627\u0647\u0634 \u062a\u0648 \u0631\u0641\u062a\u06af\u06cc",
"Header 4": "\u0633\u0631\u200c\u0635\u0641\u062d\u0647 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "\u0686\u0633\u0628\u0627\u0646\u062f\u0646 \u0647\u0645 \u0627\u06a9\u0646\u0648\u0646 \u062f\u0631 \u062d\u0627\u0644\u062a \u0645\u062a\u0646 \u0633\u0627\u062f\u0647 \u0627\u0633\u062a. \u062a\u0627 \u0632\u0645\u0627\u0646\u06cc \u06a9\u0647 \u0627\u06cc\u0646 \u062d\u0627\u0644\u062a \u0631\u0627 \u063a\u06cc\u0631\u200c\u0641\u0639\u0627\u0644 \u0646\u06a9\u0646\u06cc\u062f\u060c \u0645\u062d\u062a\u0648\u0627 \u062f\u0631 \u062d\u0627\u0644\u062a \u0645\u062a\u0646 \u0633\u0627\u062f\u0647 \u0627\u0636\u0627\u0641\u0647 \u0645\u06cc\u200c\u0634\u0648\u062f.",
"Underline": "\u062e\u0637 \u0632\u06cc\u0631",
"Cancel": "\u0644\u063a\u0648",
"Justify": "\u0645\u0633\u0627\u0648\u06cc \u0627\u0632 \u0637\u0631\u0641\u06cc\u0646",
"Inline": "\u062e\u0637\u06cc",
"Copy": "\u06a9\u067e\u06cc",
"Align left": "\u0686\u067e \u0686\u06cc\u0646",
"Visual aids": "\u06a9\u0645\u06a9 \u0647\u0627\u06cc \u0628\u0635\u0631\u06cc",
"Lower Greek": "\u06cc\u0648\u0646\u0627\u0646\u06cc \u06a9\u0648\u0686\u06a9",
"Square": "\u0645\u0631\u0628\u0639",
"Default": "\u067e\u06cc\u0634\u0641\u0631\u0636",
"Lower Alpha": "\u0622\u0644\u0641\u0627\u0621 \u06a9\u0648\u0686\u06a9",
"Circle": "\u062f\u0627\u06cc\u0631\u0647",
"Disc": "\u062f\u06cc\u0633\u06a9",
"Upper Alpha": "\u0622\u0644\u0641\u0627\u0621 \u0628\u0632\u0631\u06af",
"Upper Roman": "\u0631\u0648\u0645\u06cc \u0628\u0632\u0631\u06af",
"Lower Roman": "\u0631\u0648\u0645\u06cc \u06a9\u0648\u0686\u06a9",
"Name": "\u0646\u0627\u0645",
"Anchor": "\u0644\u0646\u06af\u0631 - \u0644\u06cc\u0646\u06a9",
"You have unsaved changes are you sure you want to navigate away?": "\u0634\u0645\u0627 \u062a\u063a\u06cc\u06cc\u0631\u0627\u062a \u0630\u062e\u06cc\u0631\u0647 \u0646\u0634\u062f\u0647 \u0627\u06cc \u062f\u0627\u0631\u06cc\u062f\u060c \u0622\u06cc\u0627 \u0645\u0637\u0645\u0626\u0646\u06cc\u062f \u06a9\u0647 \u0645\u06cc\u062e\u0648\u0627\u0647\u06cc\u062f \u0627\u0632 \u0627\u06cc\u0646 \u0635\u0641\u062d\u0647 \u0628\u0631\u0648\u06cc\u062f\u061f",
"Restore last draft": "\u0628\u0627\u0632\u06af\u0631\u062f\u0627\u0646\u062f\u0646 \u0622\u062e\u0631\u06cc\u0646 \u067e\u06cc\u0634 \u0646\u0648\u06cc\u0633",
"Special character": "\u06a9\u0627\u0631\u0627\u06a9\u062a\u0631 \u0647\u0627\u06cc \u062e\u0627\u0635",
"Source code": "\u06a9\u062f \u0645\u0646\u0628\u0639",
"Right to left": "\u0631\u0627\u0633\u062a \u0628\u0647 \u0686\u067e",
"Left to right": "\u0686\u067e \u0628\u0647 \u0631\u0627\u0633\u062a",
"Emoticons": "\u0634\u06a9\u0644\u06a9\u200c\u0647\u0627",
"Robots": "\u0631\u0628\u0627\u062a\u200c\u0647\u0627",
"Document properties": "\u0648\u06cc\u0698\u06af\u06cc\u200c\u0647\u0627\u06cc \u0633\u0646\u062f",
"Title": "\u0639\u0646\u0648\u0627\u0646",
"Keywords": "\u06a9\u0644\u0645\u0627\u062a \u06a9\u0644\u06cc\u062f\u06cc",
"Encoding": "\u06a9\u062f \u06af\u0630\u0627\u0631\u06cc",
"Description": "\u062a\u0648\u0636\u06cc\u062d\u0627\u062a",
"Author": "\u0646\u0648\u06cc\u0633\u0646\u062f\u0647",
"Fullscreen": "\u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647",
"Horizontal line": "\u062e\u0637 \u0627\u0641\u0642\u06cc",
"Horizontal space": "\u0641\u0636\u0627\u06cc \u0627\u0641\u0642\u06cc",
"Insert\/edit image": "\u0627\u0636\u0627\u0641\u0647\/\u0648\u06cc\u0631\u0627\u06cc\u0634 \u06a9\u0631\u062f\u0646 \u062a\u0635\u0648\u06cc\u0631",
"General": "\u0639\u0645\u0648\u0645\u06cc",
"Advanced": "\u067e\u06cc\u0634\u0631\u0641\u062a\u0647",
"Source": "\u0645\u0646\u0628\u0639",
"Border": "\u062d\u0627\u0634\u06cc\u0647",
"Constrain proportions": "\u062d\u0641\u0638 \u062a\u0646\u0627\u0633\u0628",
"Vertical space": "\u0641\u0636\u0627\u06cc \u0639\u0645\u0648\u062f\u06cc",
"Image description": "\u062a\u0648\u0636\u06cc\u062d\u0627\u062a \u0639\u06a9\u0633",
"Style": "\u0633\u0628\u06a9",
"Dimensions": "\u0627\u0628\u0639\u0627\u062f",
"Insert image": "\u0627\u0636\u0627\u0641\u0647 \u06a9\u0631\u062f\u0646 \u062a\u0635\u0648\u06cc\u0631",
"Insert date\/time": "\u0627\u0636\u0627\u0641\u0647 \u06a9\u0631\u062f\u0646 \u062a\u0627\u0631\u06cc\u062e\/\u0632\u0645\u0627\u0646",
"Remove link": "\u062d\u0630\u0641 \u0644\u06cc\u0646\u06a9",
"Url": "\u0627\u062f\u0631\u0633 \u0644\u06cc\u0646\u06a9",
"Text to display": "\u0645\u062a\u0646 \u0628\u0631\u0627\u06cc \u0646\u0645\u0627\u06cc\u0634",
"Anchors": "\u0644\u0646\u06af\u0631 - \u0644\u06cc\u0646\u06a9 \u062f\u0627\u062e\u0644 \u0635\u0641\u062d\u0647",
"Insert link": "\u0627\u0636\u0627\u0641\u0647 \u06a9\u0631\u062f\u0646 \u0644\u06cc\u0646\u06a9",
"New window": "\u067e\u0646\u062c\u0631\u0647 \u062c\u062f\u06cc\u062f",
"None": "\u0647\u06cc\u0686 \u06a9\u062f\u0627\u0645",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?",
"Target": "\u0646\u062d\u0648\u0647 \u0628\u0627\u0632 \u0634\u062f\u0646 \u062f\u0631 \u0645\u0631\u0648\u0631\u06af\u0631",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?",
"Insert\/edit link": "\u0627\u0636\u0627\u0641\u0647\/\u0648\u06cc\u0631\u0627\u06cc\u0634 \u06a9\u0631\u062f\u0646 \u0644\u06cc\u0646\u06a9",
"Insert\/edit video": "\u0627\u0636\u0627\u0641\u0647\/\u0648\u06cc\u0631\u0627\u06cc\u0634 \u06a9\u0631\u062f\u0646 \u0641\u0627\u06cc\u0644 \u062a\u0635\u0648\u06cc\u0631\u06cc",
"Poster": "\u067e\u0648\u0633\u062a\u0631",
"Alternative source": "\u0645\u0646\u0628\u0639 \u062f\u06cc\u06af\u0631",
"Paste your embed code below:": "\u06a9\u062f \u062e\u0648\u062f \u0631\u0627 \u0628\u0631\u0627\u06cc \u062c\u0627 \u062f\u0627\u062f\u0646 \u062f\u0631 \u0633\u0627\u06cc\u062a - embed - \u060c \u062f\u0631 \u0632\u06cc\u0631 \u0642\u0631\u0627\u0631 \u062f\u0647\u06cc\u062f:",
"Insert video": "\u0627\u0636\u0627\u0641\u0647 \u06a9\u0631\u062f\u0646 \u0641\u0627\u06cc\u0644 \u062a\u0635\u0648\u06cc\u0631\u06cc",
"Embed": "\u062c\u0627 \u062f\u0627\u062f\u0646",
"Nonbreaking space": "\u0641\u0636\u0627\u06cc \u063a\u06cc\u0631 \u0634\u06a9\u0633\u062a\u0646",
"Page break": "\u0634\u06a9\u0633\u062a\u0646 \u0635\u0641\u062d\u0647",
"Paste as text": "\u0686\u0633\u0628\u0627\u0646\u062f\u0646 \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062a\u0646",
"Preview": "\u067e\u06cc\u0634 \u0646\u0645\u0627\u06cc\u0634",
"Print": "\u0686\u0627\u067e",
"Save": "\u0630\u062e\u06cc\u0631\u0647",
"Could not find the specified string.": "\u0631\u0634\u062a\u0647 \u0645\u062a\u0646\u06cc \u0645\u0648\u0631\u062f \u0646\u0638\u0631 \u067e\u06cc\u062f\u0627 \u0646\u0634\u062f.",
"Replace": "\u062c\u0627\u06cc\u06af\u0632\u06cc\u0646 \u06a9\u0631\u062f\u0646",
"Next": "\u0628\u0639\u062f\u06cc",
"Whole words": "\u0647\u0645\u0647 \u06a9\u0644\u0645\u0647\u200c\u0647\u0627",
"Find and replace": "\u062c\u0633\u062a\u200c\u0648\u200c\u062c\u0648 \u0648 \u062c\u0627\u06cc\u06af\u0632\u06cc\u0646 \u06a9\u0631\u062f\u0646",
"Replace with": "\u062c\u0627\u06cc\u06af\u0632\u06cc\u0646 \u06a9\u0631\u062f\u0646 \u0628\u0627",
"Find": "\u062c\u0633\u062a\u200c\u0648\u200c\u062c\u0648",
"Replace all": "\u062c\u0627\u06cc\u06af\u0632\u06cc\u0646 \u06a9\u0631\u062f\u0646 \u0647\u0645\u0647",
"Match case": "\u062d\u0633\u0627\u0633 \u0628\u0647 \u062d\u0631\u0648\u0641 \u06a9\u0648\u0686\u06a9 \u0648 \u0628\u0632\u0631\u06af",
"Prev": "\u0642\u0628\u0644\u06cc",
"Spellcheck": "\u0628\u0631\u0631\u0633\u06cc \u0627\u0645\u0644\u0627\u06cc\u06cc",
"Finish": "\u067e\u0627\u06cc\u0627\u0646",
"Ignore all": "\u0646\u0627\u062f\u06cc\u062f\u0647 \u06af\u0631\u0641\u062a\u0646 \u0647\u0645\u0647",
"Ignore": "\u0646\u0627\u062f\u06cc\u062f\u0647 \u06af\u0631\u0641\u062a\u0646",
"Insert row before": "\u0627\u0636\u0627\u0641\u0647 \u06a9\u0631\u062f\u0646 \u0633\u0637\u0631 \u062c\u062f\u06cc\u062f \u0642\u0628\u0644 \u0627\u0632 \u0627\u06cc\u0646 \u0633\u0637\u0631",
"Rows": "\u062a\u0639\u062f\u0627\u062f \u0633\u0637\u0631\u200c\u0647\u0627",
"Height": "\u0627\u0631\u062a\u0641\u0627\u0639",
"Paste row after": "\u0686\u0633\u0628\u0627\u0646\u062f\u0646 \u0633\u0637\u0631\u060c \u0628\u0639\u062f \u0627\u0632 \u0627\u06cc\u0646 \u0633\u0637\u0631",
"Alignment": "\u0631\u062f\u06cc\u0641 \u0628\u0646\u062f\u06cc \u0646\u0648\u0634\u062a\u0647",
"Column group": "\u06af\u0631\u0648\u0647 \u0633\u062a\u0648\u0646",
"Row": "\u0633\u0637\u0631",
"Insert column before": "\u0627\u0636\u0627\u0641\u0647 \u06a9\u0631\u062f\u0646 \u0633\u062a\u0648\u0646 \u062c\u062f\u06cc\u062f \u0642\u0628\u0644 \u0627\u0632 \u0627\u06cc\u0646 \u0633\u062a\u0648\u0646",
"Split cell": "\u062a\u0642\u0633\u06cc\u0645 \u0633\u0644\u0648\u0644 \u062c\u062f\u0648\u0644",
"Cell padding": "\u062d\u0627\u0634\u06cc\u0647 \u0633\u0644\u0648\u0644 \u0647\u0627",
"Cell spacing": "\u0641\u0627\u0635\u0644\u0647\u200c\u06cc \u0628\u06cc\u0646 \u0633\u0644\u0648\u0644 \u0647\u0627",
"Row type": "\u0646\u0648\u0639 \u0633\u0637\u0631",
"Insert table": "\u0627\u0636\u0627\u0641\u0647 \u06a9\u0631\u062f\u0646 \u062c\u062f\u0648\u0644",
"Body": "\u0628\u062f\u0646\u0647",
"Caption": "\u0639\u0646\u0648\u0627\u0646",
"Footer": "\u067e\u0627\u0646\u0648\u06cc\u0633",
"Delete row": "\u062d\u0630\u0641 \u0633\u0637\u0631",
"Paste row before": "\u0686\u0633\u0628\u0627\u0646\u062f\u0646 \u0633\u0637\u0631\u060c \u0642\u0628\u0644 \u0627\u0632 \u0627\u06cc\u0646 \u0633\u0637\u0631",
"Scope": "\u0645\u062d\u062f\u0648\u062f\u0647\u200c\u06cc \u0639\u0646\u0648\u0627\u0646",
"Delete table": "\u062d\u0630\u0641 \u062c\u062f\u0648\u0644",
"Header cell": "\u0633\u0631\u0622\u06cc\u0646\u062f \u0633\u0644\u0648\u0644",
"Column": "\u0633\u062a\u0648\u0646",
"Cell": "\u0633\u0644\u0648\u0644",
"Header": "\u0633\u0631\u0622\u06cc\u0646\u062f",
"Cell type": "\u0646\u0648\u0639 \u0633\u0644\u0648\u0644",
"Copy row": "\u06a9\u067e\u06cc \u0633\u0637\u0631",
"Row properties": "\u0648\u06cc\u0698\u06af\u06cc\u200c\u0647\u0627\u06cc \u0633\u0637\u0631",
"Table properties": "\u0648\u06cc\u0698\u06af\u06cc\u200c\u0647\u0627\u06cc \u062c\u062f\u0648\u0644",
"Row group": "\u06af\u0631\u0648\u0647 \u0633\u0637\u0631",
"Right": "\u0631\u0627\u0633\u062a",
"Insert column after": "\u0627\u0636\u0627\u0641\u0647 \u06a9\u0631\u062f\u0646 \u0633\u062a\u0648\u0646 \u062c\u062f\u06cc\u062f \u0628\u0639\u062f \u0627\u0632 \u0627\u06cc\u0646 \u0633\u062a\u0648\u0646",
"Cols": "\u062a\u0639\u062f\u0627\u062f \u0633\u062a\u0648\u0646\u200c\u0647\u0627",
"Insert row after": "\u0627\u0636\u0627\u0641\u0647 \u06a9\u0631\u062f\u0646 \u0633\u0637\u0631 \u062c\u062f\u06cc\u062f \u0628\u0639\u062f \u0627\u0632 \u0627\u06cc\u0646 \u0633\u0637\u0631",
"Width": "\u0639\u0631\u0636",
"Cell properties": "\u0648\u06cc\u0698\u06af\u06cc\u200c\u0647\u0627\u06cc \u0633\u0644\u0648\u0644",
"Left": "\u0686\u067e",
"Cut row": "\u0628\u0631\u0634 \u0633\u0637\u0631",
"Delete column": "\u062d\u0630\u0641 \u0633\u062a\u0648\u0646",
"Center": "\u0648\u0633\u0637",
"Merge cells": "\u0627\u062f\u063a\u0627\u0645 \u0633\u0644\u0648\u0644\u200c\u0647\u0627",
"Insert template": "\u0627\u0636\u0627\u0641\u0647 \u06a9\u0631\u062f\u0646 \u0627\u0644\u06af\u0648",
"Templates": "\u0627\u0644\u06af\u0648\u200c\u0647\u0627",
"Background color": "\u0631\u0646\u06af \u0632\u0645\u06cc\u0646\u0647 \u0645\u062a\u0646",
"Text color": "\u0631\u0646\u06af \u0645\u062a\u0646",
"Show blocks": "\u0646\u0645\u0627\u06cc\u0634 \u0628\u062e\u0634\u200c\u0647\u0627",
"Show invisible characters": "\u0646\u0645\u0627\u06cc\u0634 \u06a9\u0627\u0631\u0627\u06a9\u062a\u0631\u0647\u0627\u06cc \u063a\u06cc\u0631 \u0642\u0627\u0628\u0644 \u0686\u0627\u067e",
"Words: {0}": "\u06a9\u0644\u0645\u0627\u062a : {0}",
"Insert": "\u0627\u0636\u0627\u0641\u0647 \u06a9\u0631\u062f\u0646",
"File": "\u067e\u0631\u0648\u0646\u062f\u0647",
"Edit": "\u0648\u06cc\u0631\u0627\u06cc\u0634",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "\u0648\u06cc\u0631\u0627\u06cc\u0634\u06af\u0631 \u067e\u06cc\u0634\u0631\u0641\u062a\u0647\u200c\u06cc \u0645\u062a\u0646. \u0628\u0631\u0627\u06cc \u062f\u0633\u062a\u0631\u0633\u06cc \u0628\u0647 \u0645\u0646\u0648 \u06a9\u0644\u06cc\u062f\u0647\u0627\u06cc ALT-F9\u060c \u0646\u0648\u0627\u0631 \u0627\u0628\u0632\u0627\u0631 ALT-F10 \u0648 \u0628\u0631\u0627\u06cc \u0645\u0634\u0627\u0647\u062f\u0647\u200c\u06cc \u0631\u0627\u0647\u0646\u0645\u0627 ALT-0 \u0631\u0627 \u0641\u0634\u0627\u0631 \u062f\u0647\u06cc\u062f.",
"Tools": "\u0627\u0628\u0632\u0627\u0631\u0647\u0627",
"View": "\u0646\u0645\u0627\u06cc\u0634",
"Table": "\u062c\u062f\u0648\u0644",
"Format": "\u0642\u0627\u0644\u0628",
"_dir": "rtl"
});
program/js/tinymce/langs/fi.js
New file
@@ -0,0 +1,194 @@
tinymce.addI18n('fi',{
"Cut": "Leikkaa",
"Heading 5": "Otsikko 5",
"Header 2": "Otsikko 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "Selaimesi ei tue leikekirjan suoraa k\u00e4ytt\u00e4mist\u00e4. Ole hyv\u00e4 ja k\u00e4yt\u00e4 n\u00e4pp\u00e4imist\u00f6n Ctrl+X ja Ctrl+V n\u00e4pp\u00e4inyhdistelmi\u00e4.",
"Heading 4": "Otsikko 4",
"Div": "Div",
"Heading 2": "Otsikko 2",
"Paste": "Liit\u00e4",
"Close": "Sulje",
"Font Family": "Fontti",
"Pre": "Esimuotoiltu",
"Align right": "Tasaa oikealle",
"New document": "Uusi dokumentti",
"Blockquote": "Lainauslohko",
"Numbered list": "J\u00e4rjestetty lista",
"Heading 1": "Otsikko 1",
"Headings": "Otsikot",
"Increase indent": "Loitonna",
"Formats": "Muotoilut",
"Headers": "Otsikot",
"Select all": "Valitse kaikki",
"Header 3": "Otsikko 3",
"Blocks": "Lohkot",
"Undo": "Peru",
"Strikethrough": "Yliviivaus",
"Bullet list": "J\u00e4rjest\u00e4m\u00e4t\u00f6n lista",
"Header 1": "Otsikko 1",
"Superscript": "Yl\u00e4indeksi",
"Clear formatting": "Poista muotoilu",
"Font Sizes": "Fonttikoko",
"Subscript": "Alaindeksi",
"Header 6": "Otsikko 6",
"Redo": "Tee uudelleen",
"Paragraph": "Kappale",
"Ok": "Ok",
"Bold": "Lihavointi",
"Code": "Koodi",
"Italic": "Kursivointi",
"Align center": "Keskit\u00e4",
"Header 5": "Otsikko 5",
"Heading 6": "Otsikko 6",
"Heading 3": "Otsikko 3",
"Decrease indent": "Sisenn\u00e4",
"Header 4": "Otsikko 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Liitt\u00e4minen on nyt pelk\u00e4n tekstin -tilassa. Sis\u00e4ll\u00f6t liitet\u00e4\u00e4n nyt pelkk\u00e4n\u00e4 tekstin\u00e4, kunnes otat vaihtoehdon pois k\u00e4yt\u00f6st\u00e4.",
"Underline": "Alleviivaus",
"Cancel": "Peruuta",
"Justify": "Tasaa",
"Inline": "Samalla rivill\u00e4",
"Copy": "Kopioi",
"Align left": "Tasaa vasemmalle",
"Visual aids": "Visuaaliset neuvot",
"Lower Greek": "pienet kirjaimet: \u03b1, \u03b2, \u03b3",
"Square": "Neli\u00f6",
"Default": "Oletus",
"Lower Alpha": "pienet kirjaimet: a, b, c",
"Circle": "Pallo",
"Disc": "Ympyr\u00e4",
"Upper Alpha": "isot kirjaimet: A, B, C",
"Upper Roman": "isot kirjaimet: I, II, III",
"Lower Roman": "pienet kirjaimet: i, ii, iii",
"Name": "Nimi",
"Anchor": "Ankkuri",
"You have unsaved changes are you sure you want to navigate away?": "Sinulla on tallentamattomia muutoksia, haluatko varmasti siirty\u00e4 toiselle sivulle?",
"Restore last draft": "Palauta aiempi luonnos",
"Special character": "Erikoismerkki",
"Source code": "L\u00e4hdekoodi",
"Color": "V\u00e4ri",
"Right to left": "Oikealta vasemmalle",
"Left to right": "Vasemmalta oikealle",
"Emoticons": "Hymi\u00f6t",
"Robots": "Robotit",
"Document properties": "Dokumentin ominaisuudet",
"Title": "Otsikko",
"Keywords": "Avainsanat",
"Encoding": "Merkist\u00f6",
"Description": "Kuvaus",
"Author": "Tekij\u00e4",
"Fullscreen": "Koko ruutu",
"Horizontal line": "Vaakasuora viiva",
"Horizontal space": "Horisontaalinen tila",
"Insert\/edit image": "Lis\u00e4\u00e4\/muokkaa kuva",
"General": "Yleiset",
"Advanced": "Lis\u00e4asetukset",
"Source": "L\u00e4hde",
"Border": "Reunus",
"Constrain proportions": "S\u00e4ilyt\u00e4 mittasuhteet",
"Vertical space": "Vertikaalinen tila",
"Image description": "Kuvaus",
"Style": "Tyyli",
"Dimensions": "Mittasuhteet",
"Insert image": "Lis\u00e4\u00e4 kuva",
"Insert date\/time": "Lis\u00e4\u00e4 p\u00e4iv\u00e4m\u00e4\u00e4r\u00e4 tai aika",
"Remove link": "Poista linkki",
"Url": "Osoite",
"Text to display": "N\u00e4ytett\u00e4v\u00e4 teksti",
"Anchors": "Ankkurit",
"Insert link": "Lis\u00e4\u00e4 linkki",
"New window": "Uusi ikkuna",
"None": "Ei mit\u00e4\u00e4n",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "Antamasi osoite n\u00e4ytt\u00e4\u00e4 olevan ulkoinen linkki. Haluatko lis\u00e4t\u00e4 osoitteeseen vaaditun http:\/\/ -etuliitteen?",
"Target": "Kohde",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "Antamasi osoite n\u00e4ytt\u00e4\u00e4 olevan s\u00e4hk\u00f6postiosoite. Haluatko lis\u00e4t\u00e4 osoitteeseen vaaditun mailto: -etuliitteen?",
"Insert\/edit link": "Lis\u00e4\u00e4 tai muokkaa linkki",
"Insert\/edit video": "Lis\u00e4\u00e4\/muokkaa video",
"Poster": "L\u00e4hett\u00e4j\u00e4",
"Alternative source": "Vaihtoehtoinen l\u00e4hde",
"Paste your embed code below:": "Liit\u00e4 upotuskoodisi alapuolelle:",
"Insert video": "Lis\u00e4\u00e4 video",
"Embed": "Upota",
"Nonbreaking space": "Sitova v\u00e4lily\u00f6nti",
"Page break": "Sivunvaihto",
"Paste as text": "Liit\u00e4 tekstin\u00e4",
"Preview": "Esikatselu",
"Print": "Tulosta",
"Save": "Tallenna",
"Could not find the specified string.": "Haettua merkkijonoa ei l\u00f6ytynyt.",
"Replace": "Korvaa",
"Next": "Seur.",
"Whole words": "Koko sanat",
"Find and replace": "Etsi ja korvaa",
"Replace with": "Korvaa",
"Find": "Etsi",
"Replace all": "Korvaa kaikki",
"Match case": "Erota isot ja pienet kirjaimet",
"Prev": "Edel.",
"Spellcheck": "Oikolue",
"Finish": "Lopeta",
"Ignore all": "\u00c4l\u00e4 huomioi mit\u00e4\u00e4n",
"Ignore": "\u00c4l\u00e4 huomioi",
"Add to Dictionary": "Lis\u00e4\u00e4 sanakirjaan",
"Insert row before": "Lis\u00e4\u00e4 rivi ennen",
"Rows": "Rivit",
"Height": "Korkeus",
"Paste row after": "Liit\u00e4 rivi j\u00e4lkeen",
"Alignment": "Tasaus",
"Border color": "Reunuksen v\u00e4ri",
"Column group": "Sarakeryhm\u00e4",
"Row": "Rivi",
"Insert column before": "Lis\u00e4\u00e4 rivi ennen",
"Split cell": "Jaa solu",
"Cell padding": "Solun tyhj\u00e4 tila",
"Cell spacing": "Solun v\u00e4li",
"Row type": "Rivityyppi",
"Insert table": "Lis\u00e4\u00e4 taulukko",
"Body": "Runko",
"Caption": "Seloste",
"Footer": "Alaosa",
"Delete row": "Poista rivi",
"Paste row before": "Liit\u00e4 rivi ennen",
"Scope": "Laajuus",
"Delete table": "Poista taulukko",
"H Align": "H tasaus",
"Top": "Yl\u00e4reuna",
"Header cell": "Otsikkosolu",
"Column": "Sarake",
"Row group": "Riviryhm\u00e4",
"Cell": "Solu",
"Middle": "Keskikohta",
"Cell type": "Solun tyyppi",
"Copy row": "Kopioi rivi",
"Row properties": "Rivin ominaisuudet",
"Table properties": "Taulukon ominaisuudet",
"Bottom": "Alareuna",
"V Align": "V tasaus",
"Header": "Otsikko",
"Right": "Oikea",
"Insert column after": "Lis\u00e4\u00e4 rivi j\u00e4lkeen",
"Cols": "Sarakkeet",
"Insert row after": "Lis\u00e4\u00e4 rivi j\u00e4lkeen",
"Width": "Leveys",
"Cell properties": "Solun ominaisuudet",
"Left": "Vasen",
"Cut row": "Leikkaa rivi",
"Delete column": "Poista sarake",
"Center": "Keskell\u00e4",
"Merge cells": "Yhdist\u00e4 solut",
"Insert template": "Lis\u00e4\u00e4 pohja",
"Templates": "Pohjat",
"Background color": "Taustan v\u00e4ri",
"Text color": "Tekstin v\u00e4ri",
"Show blocks": "N\u00e4yt\u00e4 lohkot",
"Show invisible characters": "N\u00e4yt\u00e4 n\u00e4kym\u00e4tt\u00f6m\u00e4t merkit",
"Words: {0}": "Sanat: {0}",
"Insert": "Lis\u00e4\u00e4",
"File": "Tiedosto",
"Edit": "Muokkaa",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "Rikastetun tekstin alue. Paina ALT-F9 valikkoon. Paina ALT-F10 ty\u00f6kaluriviin. Paina ALT-0 ohjeeseen.",
"Tools": "Ty\u00f6kalut",
"View": "N\u00e4yt\u00e4",
"Table": "Taulukko",
"Format": "Muotoilu"
});
program/js/tinymce/langs/fo.js
New file
@@ -0,0 +1,179 @@
tinymce.addI18n('fo',{
"Cut": "Klipp",
"Header 2": "Header 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "T\u00edn kagi hevur ikki beinlei\u00f0is atgongd til setibor\u00f0i\u00f0. Vinarliga br\u00faka CTRL+X\/C\/V snarvegirnar \u00edsta\u00f0in.",
"Div": "Div",
"Paste": "L\u00edma",
"Close": "Lat aftur",
"Font Family": "Font Family",
"Pre": "Pre",
"Align right": "H\u00f8gra stilla",
"New document": "N\u00fdtt skjal",
"Blockquote": "Blockquote",
"Numbered list": "Tal listi",
"Increase indent": "vaks inndr\u00e1tt",
"Formats": "Sni\u00f0",
"Headers": "Headers",
"Select all": "Vel alt",
"Header 3": "Header 3",
"Blocks": "Blocks",
"Undo": "Angra ger",
"Strikethrough": "Strika \u00edgj\u00f8gnum",
"Bullet list": "Punkt listi",
"Header 1": "Header 1",
"Superscript": "H\u00e1skrift",
"Clear formatting": "Strika sni\u00f0",
"Font Sizes": "Font Sizes",
"Subscript": "L\u00e1gskrift",
"Header 6": "Header 6",
"Redo": "Ger aftur",
"Paragraph": "Paragraph",
"Ok": "Ok",
"Bold": "Feit",
"Code": "Code",
"Italic": "Sk\u00e1ktekstur",
"Align center": "Mi\u00f0set",
"Header 5": "Header 5",
"Decrease indent": "Minka inndr\u00e1tt",
"Header 4": "Header 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.",
"Underline": "Undirstrika",
"Cancel": "\u00d3gilda",
"Justify": "L\u00edka breddar",
"Inline": "Inline",
"Copy": "Avrita",
"Align left": "Vinstra stilla",
"Visual aids": "Sj\u00f3nhj\u00e1lp",
"Lower Greek": "L\u00edti Grikskt",
"Square": "Fj\u00f3rhyrningur",
"Default": "Forsettur",
"Lower Alpha": "L\u00edti Alfa",
"Circle": "Ringur",
"Disc": "Skiva",
"Upper Alpha": "St\u00f3rt Alfa",
"Upper Roman": "St\u00f3rt R\u00f3mverskt",
"Lower Roman": "L\u00edti R\u00f3mverskt",
"Name": "Navn",
"Anchor": "Akker",
"You have unsaved changes are you sure you want to navigate away?": "T\u00fa hevur ikki goymdar broytingar. Ert t\u00fa v\u00edsur \u00ed at t\u00fa vilt halda fram?",
"Restore last draft": "Endurskapa seinasta uppkast",
"Special character": "Serst\u00f8k tekn",
"Source code": "keldukoda",
"Right to left": "H\u00f8gra til vinstra",
"Left to right": "Vinstra til h\u00f8gra",
"Emoticons": "Emotikonur",
"Robots": "Robottar",
"Document properties": "Skjal eginleikar",
"Title": "Heiti",
"Keywords": "Leitior\u00f0",
"Encoding": "Koding",
"Description": "L\u00fdsing",
"Author": "H\u00f8vundur",
"Fullscreen": "Fullan sk\u00edggja",
"Horizontal line": "Vatnr\u00f8tt linja",
"Horizontal space": "Vatnr\u00e6tt fr\u00e1st\u00f8\u00f0a",
"Insert\/edit image": "Innset\/r\u00e6tta mynd",
"General": "Vanligt",
"Advanced": "Framkomi",
"Source": "Kelda",
"Border": "Rammi",
"Constrain proportions": "Var\u00f0veit lutfall",
"Vertical space": "Loddr\u00e6t fr\u00e1st\u00f8\u00f0a",
"Image description": "L\u00fdsing av mynd",
"Style": "St\u00edlur",
"Dimensions": "St\u00f8dd",
"Insert image": "Insert image",
"Insert date\/time": "Innset dag\/t\u00ed\u00f0",
"Remove link": "Remove link",
"Url": "Url",
"Text to display": "Tekstur at v\u00edsa",
"Anchors": "Anchors",
"Insert link": "Innset leinkju",
"New window": "N\u00fdggjan glugga",
"None": "Eingin",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?",
"Target": "M\u00e1l",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?",
"Insert\/edit link": "Innset\/r\u00e6tta leinkju",
"Insert\/edit video": "Innset\/r\u00e6tta kykmynd",
"Poster": "Uppslag",
"Alternative source": "Onnur kelda",
"Paste your embed code below:": "Innset ta\u00f0 kodu, sum skal leggjast inn \u00ed, ni\u00f0anfyri:",
"Insert video": "Innset kykmynd",
"Embed": "Legg inn \u00ed",
"Nonbreaking space": "Hart millumr\u00fam",
"Page break": "S\u00ed\u00f0uskift",
"Paste as text": "Paste as text",
"Preview": "V\u00eds frammanundan",
"Print": "Prenta",
"Save": "Goym",
"Could not find the specified string.": "Kundi ikki finna leititekst",
"Replace": "Set \u00edsta\u00f0in",
"Next": "N\u00e6sta",
"Whole words": "Heil or\u00f0",
"Find and replace": "Finn og set \u00edsta\u00f0in",
"Replace with": "Set \u00edsta\u00f0in",
"Find": "Finn",
"Replace all": "Set \u00edsta\u00f0in fyri \u00f8ll",
"Match case": "ST\u00d3RIR og l\u00edtlir b\u00f3kstavir",
"Prev": "Fyrra",
"Spellcheck": "R\u00e6ttstavari",
"Finish": "Enda",
"Ignore all": "Leyp alt um",
"Ignore": "Leyp um",
"Insert row before": "Innset ra\u00f0 \u00e1\u00f0renn",
"Rows": "R\u00f8\u00f0",
"Height": "H\u00e6dd",
"Paste row after": "L\u00edma ra\u00f0 aftan\u00e1",
"Alignment": "Stilling",
"Column group": "Teig b\u00f3lkur",
"Row": "Ra\u00f0",
"Insert column before": "Innset teig \u00e1\u00f0renn",
"Split cell": "Syndra puntar",
"Cell padding": "Punt fylling",
"Cell spacing": "Punt fr\u00e1st\u00f8\u00f0a",
"Row type": "Ra\u00f0 slag",
"Insert table": "Innset talvu",
"Body": "Likam",
"Caption": "Tekstur",
"Footer": "F\u00f3tur",
"Delete row": "Skrika ra\u00f0",
"Paste row before": "L\u00edma ra\u00f0 \u00e1\u00f0renn",
"Scope": "N\u00fdtslu\u00f8ki",
"Delete table": "Strika talvu",
"Header cell": "H\u00f8vd puntur",
"Column": "Teigur",
"Cell": "Puntur",
"Header": "H\u00f8vd",
"Cell type": "Punt slag",
"Copy row": "Avrita ra\u00f0",
"Row properties": "Ra\u00f0 eginleikar",
"Table properties": "Talvu eginleikar",
"Row group": "Ra\u00f0 b\u00f3lkur",
"Right": "H\u00f8gra",
"Insert column after": "Innset teig aftan\u00e1",
"Cols": "Teigar",
"Insert row after": "Innset ra\u00f0 aftan\u00e1",
"Width": "Breidd",
"Cell properties": "Punt eginleikar",
"Left": "Vinstra",
"Cut row": "Klipp ra\u00f0",
"Delete column": "Strika teig",
"Center": "Mi\u00f0a",
"Merge cells": "Fl\u00e6tta puntar",
"Insert template": "Innset form",
"Templates": "Formur",
"Background color": "Bakgrundslitur",
"Text color": "Tekst litur",
"Show blocks": "V\u00eds blokkar",
"Show invisible characters": "V\u00eds \u00f3sj\u00f3nlig tekn",
"Words: {0}": "Or\u00f0: {0}",
"Insert": "Innset",
"File": "F\u00edla",
"Edit": "Ritstj\u00f3rna",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "R\u00edkt Tekst \u00d8ki. Tr\u00fdst ALT-F9 fyri valmynd. Tr\u00fdst ALT-F10 fyri ambo\u00f0slinju. Tr\u00fdst ALT-0 fyri hj\u00e1lp",
"Tools": "Ambo\u00f0",
"View": "V\u00eds",
"Table": "Talva",
"Format": "Smi\u00f0"
});
program/js/tinymce/langs/fr_FR.js
New file
@@ -0,0 +1,184 @@
tinymce.addI18n('fr_FR',{
"Cut": "Couper",
"Header 2": "Titre 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "Votre navigateur ne supporte pas la copie directe. Merci d'utiliser les touches Ctrl+X\/C\/V.",
"Div": "Div",
"Paste": "Coller",
"Close": "Fermer",
"Font Family": "Polices de caract\u00e8res",
"Pre": "Pre",
"Align right": "Aligner \u00e0 droite",
"New document": "Nouveau document",
"Blockquote": "Citation",
"Numbered list": "Num\u00e9rotation",
"Increase indent": "Augmenter le retrait",
"Formats": "Formats",
"Headers": "Titres",
"Select all": "Tout s\u00e9lectionner",
"Header 3": "Titre 3",
"Blocks": "Blocs",
"Undo": "Annuler",
"Strikethrough": "Barr\u00e9",
"Bullet list": "Puces",
"Header 1": "Titre 1",
"Superscript": "Exposant",
"Clear formatting": "Effacer la mise en forme",
"Font Sizes": "Tailles de la police",
"Subscript": "Indice",
"Header 6": "Titre 6",
"Redo": "R\u00e9tablir",
"Paragraph": "Paragraphe",
"Ok": "Ok",
"Bold": "Gras",
"Code": "Code",
"Italic": "Italique",
"Align center": "Aligner au centre",
"Header 5": "Titre 5",
"Decrease indent": "Diminuer le retrait",
"Header 4": "Titre 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Le presse-papiers est maintenant en mode \"texte plein\". Les contenus seront coll\u00e9s sans retenir les formatages jusqu'\u00e0 ce que vous d\u00e9sactiviez cette option.",
"Underline": "Soulign\u00e9",
"Cancel": "Annuler",
"Justify": "Justifi\u00e9",
"Inline": "En ligne",
"Copy": "Copier",
"Align left": "Aligner \u00e0 gauche",
"Visual aids": "Aides visuelle",
"Lower Greek": "Grec minuscule",
"Square": "Carr\u00e9",
"Default": "Par d\u00e9faut",
"Lower Alpha": "Alpha minuscule",
"Circle": "Cercle",
"Disc": "Disque",
"Upper Alpha": "Alpha majuscule",
"Upper Roman": "Romain majuscule",
"Lower Roman": "Romain minuscule",
"Name": "Nom",
"Anchor": "Ancre",
"You have unsaved changes are you sure you want to navigate away?": "Vous avez des modifications non enregistr\u00e9es, \u00eates-vous s\u00fbr de quitter la page?",
"Restore last draft": "Restaurer le dernier brouillon",
"Special character": "Caract\u00e8res sp\u00e9ciaux",
"Source code": "Code source",
"Right to left": "Droite \u00e0 gauche",
"Left to right": "Gauche \u00e0 droite",
"Emoticons": "Emotic\u00f4nes",
"Robots": "Robots",
"Document properties": "Propri\u00e9t\u00e9 du document",
"Title": "Titre",
"Keywords": "Mots-cl\u00e9s",
"Encoding": "Encodage",
"Description": "Description",
"Author": "Auteur",
"Fullscreen": "Plein \u00e9cran",
"Horizontal line": "Ligne horizontale",
"Horizontal space": "Espacement horizontal",
"Insert\/edit image": "Ins\u00e9rer\/\u00e9diter une image",
"General": "G\u00e9n\u00e9ral",
"Advanced": "Avanc\u00e9",
"Source": "Source",
"Border": "Bordure",
"Constrain proportions": "Contraindre les proportions",
"Vertical space": "Espacement vertical",
"Image description": "Description de l'image",
"Style": "Style",
"Dimensions": "Dimensions",
"Insert image": "Ins\u00e9rer une image",
"Insert date\/time": "Ins\u00e9rer date\/heure",
"Remove link": "Enlever le lien",
"Url": "Url",
"Text to display": "Texte \u00e0 afficher",
"Anchors": "Ancres",
"Insert link": "Ins\u00e9rer un lien",
"New window": "Nouvelle fen\u00eatre",
"None": "n\/a",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "L'URL que vous avez entr\u00e9e semble \u00eatre un lien externe. Voulez-vous ajouter le pr\u00e9fixe http:\/\/ n\u00e9cessaire?",
"Target": "Cible",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "L'URL que vous avez entr\u00e9e semble \u00eatre une adresse e-mail. Voulez-vous ajouter le pr\u00e9fixe mailto: n\u00e9cessaire?",
"Insert\/edit link": "Ins\u00e9rer\/\u00e9diter un lien",
"Insert\/edit video": "Ins\u00e9rer\/\u00e9diter une vid\u00e9o",
"Poster": "Publier",
"Alternative source": "Source alternative",
"Paste your embed code below:": "Collez votre code d'int\u00e9gration ci-dessous :",
"Insert video": "Ins\u00e9rer une vid\u00e9o",
"Embed": "Ins\u00e9rer",
"Nonbreaking space": "Espace ins\u00e9cable",
"Page break": "Saut de page",
"Paste as text": "Coller comme texte",
"Preview": "Pr\u00e9visualiser",
"Print": "Imprimer",
"Save": "Enregistrer",
"Could not find the specified string.": "Impossible de trouver la cha\u00eene sp\u00e9cifi\u00e9e.",
"Replace": "Remplacer",
"Next": "Suiv",
"Whole words": "Mots entiers",
"Find and replace": "Trouver et remplacer",
"Replace with": "Remplacer par",
"Find": "Chercher",
"Replace all": "Tout remplacer",
"Match case": "Respecter la casse",
"Prev": "Pr\u00e9c ",
"Spellcheck": "V\u00e9rification orthographique",
"Finish": "Finie",
"Ignore all": "Tout ignorer",
"Ignore": "Ignorer",
"Insert row before": "Ins\u00e9rer une ligne avant",
"Rows": "Lignes",
"Height": "Hauteur",
"Paste row after": "Coller la ligne apr\u00e8s",
"Alignment": "Alignement",
"Column group": "Groupe de colonnes",
"Row": "Ligne",
"Insert column before": "Ins\u00e9rer une colonne avant",
"Split cell": "Diviser la cellule",
"Cell padding": "Espacement interne cellule",
"Cell spacing": "Espacement inter-cellulles",
"Row type": "Type de ligne",
"Insert table": "Ins\u00e9rer un tableau",
"Body": "Corps",
"Caption": "Titre",
"Footer": "Pied",
"Delete row": "Effacer la ligne",
"Paste row before": "Coller la ligne avant",
"Scope": "Etendue",
"Delete table": "Supprimer le tableau",
"H Align": "Alignement H",
"Top": "Haut",
"Header cell": "Cellule d'en-t\u00eate",
"Column": "Colonne",
"Row group": "Groupe de lignes",
"Cell": "Cellule",
"Middle": "Milieu",
"Cell type": "Type de cellule",
"Copy row": "Copier la ligne",
"Row properties": "Propri\u00e9t\u00e9s de la ligne",
"Table properties": "Propri\u00e9t\u00e9s du tableau",
"Bottom": "Bas",
"V Align": "Alignement V",
"Header": "En-t\u00eate",
"Right": "Droite",
"Insert column after": "Ins\u00e9rer une colonne apr\u00e8s",
"Cols": "Colonnes",
"Insert row after": "Ins\u00e9rer une ligne apr\u00e8s",
"Width": "Largeur",
"Cell properties": "Propri\u00e9t\u00e9s de la cellule",
"Left": "Gauche",
"Cut row": "Couper la ligne",
"Delete column": "Effacer la colonne",
"Center": "Centr\u00e9",
"Merge cells": "Fusionner les cellules",
"Insert template": "Ajouter un th\u00e8me",
"Templates": "Th\u00e8mes",
"Background color": "Couleur d'arri\u00e8re-plan",
"Text color": "Couleur du texte",
"Show blocks": "Afficher les blocs",
"Show invisible characters": "Afficher les caract\u00e8res invisibles",
"Words: {0}": "Mots : {0}",
"Insert": "Ins\u00e9rer",
"File": "Fichier",
"Edit": "Editer",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "Zone Texte Riche. Appuyer sur ALT-F9 pour le menu. Appuyer sur ALT-F10 pour la barre d'outils. Appuyer sur ALT-0 pour de l'aide.",
"Tools": "Outils",
"View": "Voir",
"Table": "Tableau",
"Format": "Format"
});
program/js/tinymce/langs/gd.js
New file
@@ -0,0 +1,179 @@
tinymce.addI18n('gd',{
"Cut": "Gearr \u00e0s",
"Header 2": "Bann-cinn 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "Chan eil am brabhsair agad a' cur taic ri inntrigeadh d\u00ecreach dhan st\u00f2r-bh\u00f2rd. Cleachd ath-ghoiridean a' mheur-chl\u00e0ir, Ctrl+X\/V\/V 'nan \u00e0ite.",
"Div": "Div",
"Paste": "Cuir ann",
"Close": "D\u00f9in",
"Font Family": "Teaghlach a' chrutha-chl\u00f2",
"Pre": "Pre",
"Align right": "Co-thaobhaich ris an l\u00e0imh dheas",
"New document": "Sgr\u00ecobhainn \u00f9r",
"Blockquote": "Bloc-luaidh",
"Numbered list": "Liosta \u00e0ireamhaichte",
"Increase indent": "Meudaich an eag",
"Formats": "F\u00f2rmatan",
"Headers": "Bannan-cinn",
"Select all": "Tagh na h-uile",
"Header 3": "Bann-cinn 3",
"Blocks": "Blocaichean",
"Undo": "Neo-dh\u00e8an",
"Strikethrough": "Loidhne troimhe",
"Bullet list": "Liosta pheilearaichte",
"Header 1": "Bann-cinn 1",
"Superscript": "Os-sgr\u00ecobhte",
"Clear formatting": "Falamhaich am f\u00f2rmatadh",
"Font Sizes": "Meudan nan cruthan-chl\u00f2",
"Subscript": "Bun-sgr\u00ecobhte",
"Header 6": "Bann-cinn 6",
"Redo": "Ath-dh\u00e8an",
"Paragraph": "Paragraf",
"Ok": "Ceart ma-th\u00e0",
"Bold": "Trom",
"Code": "C\u00f2d",
"Italic": "Eadailteach",
"Align center": "Co-thaobhaich ris a' mheadhan",
"Header 5": "Bann-cinn 5",
"Decrease indent": "Lughdaich an eag",
"Header 4": "Bann-cinn 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Ma chuireas tu rud ann a-nis, th\u00e8id an t-susbaint a chur ann mar theacsa lom gus an cuir thu dheth an roghainn seo a-rithist.",
"Underline": "Fo-loidhne",
"Cancel": "Sguir dheth",
"Justify": "Blocaich",
"Inline": "Taobh a-staigh na loidhne",
"Copy": "D\u00e8an lethbhreac",
"Align left": "Co-thaobhaich ris an l\u00e0imh chl\u00ec",
"Visual aids": "Taic l\u00e8irsinne",
"Lower Greek": "Litrichean Greugach beaga",
"Square": "Ce\u00e0rnag",
"Default": "Bun-roghainn",
"Lower Alpha": "Aibidileach is beag",
"Circle": "Cearcall",
"Disc": "Diosga",
"Upper Alpha": "Aibidileach is m\u00f2r",
"Upper Roman": "\u00c0ireamhan R\u00f2manach is m\u00f2r",
"Lower Roman": "\u00c0ireamhan R\u00f2manach is beag",
"Name": "Ainm",
"Anchor": "Acair",
"You have unsaved changes are you sure you want to navigate away?": "Tha atharraichean gun s\u00e0bhaladh agad, a bheil thu cinnteach gu bheil thu airson gluasad air falbh?",
"Restore last draft": "Aisig an dreach mu dheireadh",
"Special character": "Caractar s\u00f2nraichte",
"Source code": "An c\u00f2d t\u00f9sail",
"Right to left": "Deas gu cl\u00ec",
"Left to right": "Cl\u00ec gu deas",
"Emoticons": "Samhlaidhean-gn\u00f9ise",
"Robots": "Robotairean",
"Document properties": "Roghainnean na sgr\u00ecobhainne",
"Title": "Tiotal",
"Keywords": "Faclan-luirg",
"Encoding": "C\u00f2dachadh",
"Description": "Tuairisgeul",
"Author": "\u00d9ghdar",
"Fullscreen": "L\u00e0n-sgr\u00ecn",
"Horizontal line": "Loidhne ch\u00f2mhnard",
"Horizontal space": "\u00c0ite c\u00f2mhnard",
"Insert\/edit image": "Cuir a-steach\/Deasaich an dealbh",
"General": "Coitcheann",
"Advanced": "Adhartach",
"Source": "T\u00f9s",
"Border": "Iomall",
"Constrain proportions": "Cuingich na co-r\u00e8irean",
"Vertical space": "\u00c0ite inghearach",
"Image description": "Tuairisgeul an deilbh",
"Style": "Stoidhle",
"Dimensions": "Meudachd",
"Insert image": "Cuir a-steach dealbh",
"Insert date\/time": "Cuir a-steach ceann-l\u00e0\/\u00e0m",
"Remove link": "Thoir air falbh an ceangal",
"Url": "URL",
"Text to display": "An teacsa a th\u00e8id a shealltainn",
"Anchors": "Acraichean",
"Insert link": "Cuir a-steach ceangal",
"New window": "Uinneag \u00f9r",
"None": "Chan eil gin",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "Tha coltas gu bheil an URL a chuir thu a-steach 'na cheangal ris an taobh a-muigh. A bheil thu airson an ro-leasachan http:\/\/ a chur ris? Tha feum air.",
"Target": "Targaid",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "Tha coltas gu bheil an URL a chuir thu a-steach 'na she\u00f2ladh puist-d. A bheil thu airson an ro-leasachan mailto: a chur ris? Tha feum air.",
"Insert\/edit link": "Cuir a-steach\/Deasaich an ceangal",
"Insert\/edit video": "Cuir a-steach\/Deasaich a' video",
"Poster": "P\u00f2stair",
"Alternative source": "Roghainn eile de th\u00f9s",
"Paste your embed code below:": "Cuir an c\u00f2d leabachaidh agad a-steach gu h-\u00ecosal:",
"Insert video": "Cuir a-steach video",
"Embed": "Leabaich",
"Nonbreaking space": "Be\u00e0rn neo-bhristidh",
"Page break": "Briseadh-duilleige",
"Paste as text": "Cuir ann mar theacsa",
"Preview": "Ro-shealladh",
"Print": "Cl\u00f2-bhuail",
"Save": "S\u00e0bhail",
"Could not find the specified string.": "Cha b' urrainn dhuinn na dh'iarr thu a lorg.",
"Replace": "Cuir 'na \u00e0ite",
"Next": "Air adhart",
"Whole words": "Faclan sl\u00e0na",
"Find and replace": "Lorg is cuir 'na \u00e0ite",
"Replace with": "Cuir na leanas 'na \u00e0ite",
"Find": "Lorg",
"Replace all": "Cuir an \u00e0ite na h-uile",
"Match case": "Maids litrichean m\u00f2ra 's beaga",
"Prev": "Air ais",
"Spellcheck": "Dearbhaich an litreachadh",
"Finish": "Cr\u00ecochnaich",
"Ignore all": "Leig seachad na h-uile",
"Ignore": "Leig seachad",
"Insert row before": "Cuir a-steach r\u00e0gh roimhe",
"Rows": "R\u00e0ghan",
"Height": "\u00c0irde",
"Paste row after": "Cuir ann r\u00e0gh 'na dh\u00e8idh",
"Alignment": "Co-thaobhadh",
"Column group": "Buidheann cholbhan",
"Row": "R\u00e0gh",
"Insert column before": "Cuir a-steach colbh roimhe",
"Split cell": "Sgoilt an cealla",
"Cell padding": "Padadh nan ceallan",
"Cell spacing": "Be\u00e0rnadh nan ceallan",
"Row type": "Se\u00f2rsa an r\u00e0igh",
"Insert table": "Cuir a-steach cl\u00e0r",
"Body": "Bodhaig",
"Caption": "Caipsean",
"Footer": "Bann-coise",
"Delete row": "Sguab \u00e0s an r\u00e0gh",
"Paste row before": "Cuir ann r\u00e0gh roimhe",
"Scope": "Sg\u00f2p",
"Delete table": "Sguab \u00e0s an cl\u00e0r",
"Header cell": "Cealla a' bhanna-chinn",
"Column": "Colbh",
"Cell": "Cealla",
"Header": "Bann-cinn",
"Cell type": "Se\u00f2rsa a' chealla",
"Copy row": "D\u00e8an lethbhreac dhen r\u00e0gh",
"Row properties": "Roghainnean an r\u00e0igh",
"Table properties": "Roghainnean a' chl\u00e0ir",
"Row group": "Buidheann r\u00e0ghan",
"Right": "Deas",
"Insert column after": "Cuir a-steach colbh 'na dh\u00e8idh",
"Cols": "Colbhan",
"Insert row after": "Cuir a-steach r\u00e0gh 'na dh\u00e8idh",
"Width": "Leud",
"Cell properties": "Roghainnean a' chealla",
"Left": "Cl\u00ec",
"Cut row": "Gearr \u00e0s an r\u00e0gh",
"Delete column": "Sguab \u00e0s an colbh",
"Center": "Meadhan",
"Merge cells": "Co-aonaich na ceallan",
"Insert template": "Cuir a-steach teamplaid",
"Templates": "Teamplaidean",
"Background color": "Dath a\u2019 ch\u00f9laibh",
"Text color": "Dath an teacsa",
"Show blocks": "Seall na blocaichean",
"Show invisible characters": "Seall na caractaran do-fhaicsinneach",
"Words: {0}": "Faclan: {0}",
"Insert": "Cuir a-steach",
"File": "Faidhle",
"Edit": "Deasaich",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "Raon Rich Text. Br\u00f9th ALT-F9 airson a' chl\u00e0ir-thaice. Br\u00f9th ALT-F10 airson a' bh\u00e0r-inneal. Br\u00f9th ALT-0 airson na cobharach.",
"Tools": "Innealan",
"View": "Sealladh",
"Table": "Cl\u00e0r",
"Format": "F\u00f2rmat"
});
program/js/tinymce/langs/gl.js
New file
@@ -0,0 +1,191 @@
tinymce.addI18n('gl',{
"Cut": "Cortar",
"Heading 5": "T\u00edtulo 5",
"Header 2": "Cabeceira 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "O seu navegador non admite o acceso directo ao portapapeis. Empregue os atallos de teclado Ctrl+X\/C\/V no seu canto.",
"Heading 4": "T\u00edtulo 4",
"Div": "Div",
"Heading 2": "T\u00edtulo 2",
"Paste": "Pegar",
"Close": "Pechar",
"Font Family": "Tipo de letra",
"Pre": "Pre",
"Align right": "Ali\u00f1ar \u00e1 dereita",
"New document": "Novo documento",
"Blockquote": "Bloque entre comi\u00f1as",
"Numbered list": "Lista numerada",
"Heading 1": "T\u00edtulo 1",
"Headings": "T\u00edtulo",
"Increase indent": "Aumentar a sangr\u00eda",
"Formats": "Formatos",
"Headers": "Cabeceiras",
"Select all": "Seleccionar todo",
"Header 3": "Cabeceira 3",
"Blocks": "Bloques",
"Undo": "Desfacer",
"Strikethrough": "Riscado",
"Bullet list": "Lista de vi\u00f1etas",
"Header 1": "Cabeceira 1",
"Superscript": "Super\u00edndice",
"Clear formatting": "Limpar o formato",
"Font Sizes": "Tama\u00f1o da letra",
"Subscript": "Sub\u00edndice",
"Header 6": "Cabeceira 6",
"Redo": "Refacer",
"Paragraph": "Par\u00e1grafo",
"Ok": "Aceptar",
"Bold": "Negra",
"Code": "C\u00f3digo",
"Italic": "Cursiva",
"Align center": "Ali\u00f1ar ao centro",
"Header 5": "Cabeceira 5",
"Heading 6": "T\u00edtulo 6",
"Heading 3": "T\u00edtulo 3",
"Decrease indent": "Reducir a sangr\u00eda",
"Header 4": "Cabeceira 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Neste momento o pegado est\u00e1 definido en modo de texto simple. Os contidos p\u00e9garanse como texto sen formato ata que se active esta opci\u00f3n.",
"Underline": "Subli\u00f1ado",
"Cancel": "Cancelar",
"Justify": "Xustificar",
"Inline": "En li\u00f1a",
"Copy": "Copiar",
"Align left": "Ali\u00f1ar \u00e1 esquerda",
"Visual aids": "Axudas visuais",
"Lower Greek": "Grega min\u00fascula",
"Square": "Cadrado",
"Default": "Predeterminada",
"Lower Alpha": "Alfa min\u00fascula",
"Circle": "Circulo",
"Disc": "Disco",
"Upper Alpha": "Alfa mai\u00fascula",
"Upper Roman": "Romana mai\u00fascula",
"Lower Roman": "Romana min\u00fascula",
"Name": "Nome",
"Anchor": "Ancoraxe",
"You have unsaved changes are you sure you want to navigate away?": "Ten cambios sen gardar. Confirma que quere sa\u00edr?",
"Restore last draft": "Restaurar o \u00faltimo borrador",
"Special character": "Car\u00e1cter especial",
"Source code": "C\u00f3digo fonte",
"Right to left": "De dereita a esquerda",
"Left to right": "De esquerda a dereita",
"Emoticons": "Emoticonas",
"Robots": "Robots",
"Document properties": "Propiedades do documento",
"Title": "T\u00edtulo",
"Keywords": "Palabras clave",
"Encoding": "Codificaci\u00f3n",
"Description": "Descrici\u00f3n",
"Author": "Autor",
"Fullscreen": "Pantalla completa",
"Horizontal line": "Li\u00f1a horizontal",
"Horizontal space": "Espazo horizontal",
"Insert\/edit image": "Inserir\/editar imaxe",
"General": "Xeral",
"Advanced": "Avanzado",
"Source": "Orixe",
"Border": "Bordo",
"Constrain proportions": "Restrinxir as proporci\u00f3ns",
"Vertical space": "Espazo vertical",
"Image description": "Descrici\u00f3n da imaxe",
"Style": "Estilo",
"Dimensions": "Dimensi\u00f3ns",
"Insert image": "Inserir imaxe",
"Insert date\/time": "Inserir data\/hora",
"Remove link": "Retirar a ligaz\u00f3n",
"Url": "URL",
"Text to display": "Texto que amosar",
"Anchors": "Ancoraxes",
"Insert link": "Inserir ligaz\u00f3n",
"New window": "Nova xanela",
"None": "Ning\u00fan",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "O URL que introduciu semella seren unha ligaz\u00f3n externa. Quere engadirlle o prefixo http:\/\/ requirido?",
"Target": "Destino",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "O URL que introduciu semella seren un enderezo de correo. Quere engadirlle o prefixo mailto: requirido?",
"Insert\/edit link": "Inserir\/editar ligaz\u00f3n",
"Insert\/edit video": "Inserir\/editar v\u00eddeo",
"Poster": "Cartel",
"Alternative source": "Orixe alternativa",
"Paste your embed code below:": "Pegue embaixo o c\u00f3digo integrado:",
"Insert video": "Inserir v\u00eddeo",
"Embed": "Integrado",
"Nonbreaking space": "Espazo irromp\u00edbel",
"Page break": "Quebra de p\u00e1xina",
"Paste as text": "Pegar como texto",
"Preview": "Vista previa",
"Print": "Imprimir",
"Save": "Gardar",
"Could not find the specified string.": "Non foi pos\u00edbel atopar a cadea de texto especificada.",
"Replace": "Substitu\u00edr",
"Next": "Seguinte",
"Whole words": "Palabras completas",
"Find and replace": "Buscar e substitu\u00edr",
"Replace with": "Substitu\u00edr con",
"Find": "Buscar",
"Replace all": "Substitu\u00edr todo",
"Match case": "Distinguir mai\u00fasculas",
"Prev": "Anterior",
"Spellcheck": "Corrector ortogr\u00e1fico",
"Finish": "Rematar",
"Ignore all": "Ignorar todo",
"Ignore": "Ignorar",
"Insert row before": "Inserir unha fila enriba",
"Rows": "Filas",
"Height": "Alto",
"Paste row after": "Pegar fila enriba",
"Alignment": "Ali\u00f1amento",
"Column group": "Grupo de columnas",
"Row": "Fila",
"Insert column before": "Inserir columna \u00e1 esquerda",
"Split cell": "Dividir celas",
"Cell padding": "Marxe interior da cela",
"Cell spacing": "Marxe entre celas",
"Row type": "Tipo de fila",
"Insert table": "Inserir t\u00e1boa",
"Body": "Corpo",
"Caption": "Subt\u00edtulo",
"Footer": "Rodap\u00e9",
"Delete row": "Eliminar fila",
"Paste row before": "Pegar fila embaixo",
"Scope": "\u00c1mbito",
"Delete table": "Eliminar t\u00e1boa",
"H Align": "Ali\u00f1amento H",
"Top": "Arriba",
"Header cell": "Cela de cabeceira",
"Column": "Columna",
"Row group": "Grupo de filas",
"Cell": "Cela",
"Middle": "Medio",
"Cell type": "Tipo de cela",
"Copy row": "Copiar fila",
"Row properties": "Propiedades das filas",
"Table properties": "Propiedades da t\u00e1boa",
"Bottom": "Abaixo",
"V Align": "Ali\u00f1amento V",
"Header": "Cabeceira",
"Right": "Dereita",
"Insert column after": "Inserir columna \u00e1 dereita",
"Cols": "Cols.",
"Insert row after": "Inserir unha fila embaixo",
"Width": "Largo",
"Cell properties": "Propiedades da cela",
"Left": "Esquerda",
"Cut row": "Cortar fila",
"Delete column": "Eliminar columna",
"Center": "Centro",
"Merge cells": "Combinar celas",
"Insert template": "Inserir modelo",
"Templates": "Modelos",
"Background color": "Cor do fondo",
"Text color": "Cor do texto",
"Show blocks": "Amosar os bloques",
"Show invisible characters": "Amosar caracteres invis\u00edbeis",
"Words: {0}": "Palabras: {0}",
"Insert": "Inserir",
"File": "Ficheiro",
"Edit": "Editar",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "\u00c1rea de texto mellorado. Prema ALT-F9 para o men\u00fa. Prema ALT-F10 para a barra de ferramentas. Prema ALT-0 para a axuda",
"Tools": "Ferramentas",
"View": "Ver",
"Table": "T\u00e1boa",
"Format": "Formato"
});
program/js/tinymce/langs/he_IL.js
New file
@@ -0,0 +1,180 @@
tinymce.addI18n('he_IL',{
"Cut": "\u05d2\u05d6\u05d5\u05e8",
"Header 2": "\u05db\u05d5\u05ea\u05e8\u05ea 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "\u05d4\u05d3\u05e4\u05d3\u05e4\u05df \u05e9\u05dc\u05da \u05d0\u05d9\u05e0\u05d5 \u05de\u05d0\u05e4\u05e9\u05e8 \u05d2\u05d9\u05e9\u05d4 \u05d9\u05e9\u05d9\u05e8\u05d4 \u05dc\u05dc\u05d5\u05d7. \u05d0\u05e0\u05d0 \u05d4\u05e9\u05ea\u05de\u05e9 \u05d1\u05e7\u05d9\u05e6\u05d5\u05e8\u05d9 \u05d4\u05de\u05e7\u05dc\u05d3\u05ea Ctrl+X\/C\/V \u05d1\u05de\u05e7\u05d5\u05dd.",
"Div": "\u05de\u05e7\u05d8\u05e2 \u05e7\u05d5\u05d3 Div",
"Paste": "\u05d4\u05d3\u05d1\u05e7",
"Close": "\u05e1\u05d2\u05d5\u05e8",
"Font Family": "\u05e1\u05d5\u05d2 \u05d2\u05d5\u05e4\u05df",
"Pre": "\u05e7\u05d8\u05e2 \u05de\u05e7\u05d3\u05d9\u05dd Pre",
"Align right": "\u05d9\u05d9\u05e9\u05e8 \u05dc\u05e9\u05de\u05d0\u05dc",
"New document": "\u05de\u05e1\u05de\u05da \u05d7\u05d3\u05e9",
"Blockquote": "\u05de\u05e7\u05d8\u05e2 \u05e6\u05d9\u05d8\u05d5\u05d8",
"Numbered list": "\u05e8\u05e9\u05d9\u05de\u05d4 \u05de\u05de\u05d5\u05e1\u05e4\u05e8\u05ea",
"Increase indent": "\u05d4\u05d2\u05d3\u05dc \u05d4\u05d6\u05d7\u05d4",
"Formats": "\u05e4\u05d5\u05e8\u05de\u05d8\u05d9\u05dd",
"Headers": "\u05db\u05d5\u05ea\u05e8\u05d5\u05ea",
"Select all": "\u05d1\u05d7\u05e8 \u05d4\u05db\u05dc",
"Header 3": "\u05db\u05d5\u05ea\u05e8\u05ea 3",
"Blocks": "\u05de\u05d1\u05e0\u05d9\u05dd",
"Undo": "\u05d1\u05d8\u05dc \u05e4\u05e2\u05d5\u05dc\u05d4",
"Strikethrough": "\u05e7\u05d5 \u05d7\u05d5\u05e6\u05d4",
"Bullet list": "\u05e8\u05e9\u05d9\u05de\u05ea \u05ea\u05d1\u05dc\u05d9\u05d8\u05d9\u05dd",
"Header 1": "\u05db\u05d5\u05ea\u05e8\u05ea 1",
"Superscript": "\u05db\u05ea\u05d1 \u05e2\u05d9\u05dc\u05d9",
"Clear formatting": "\u05e0\u05e7\u05d4 \u05e4\u05d5\u05e8\u05de\u05d8\u05d9\u05dd",
"Font Sizes": "\u05d2\u05d5\u05d3\u05dc \u05d2\u05d5\u05e4\u05df",
"Subscript": "\u05db\u05ea\u05d1 \u05ea\u05d7\u05ea\u05d9",
"Header 6": "\u05db\u05d5\u05ea\u05e8\u05ea 6",
"Redo": "\u05d1\u05e6\u05e2 \u05e9\u05d5\u05d1",
"Paragraph": "\u05e4\u05d9\u05e1\u05e7\u05d4",
"Ok": "\u05d0\u05d9\u05e9\u05d5\u05e8",
"Bold": "\u05de\u05d5\u05d3\u05d2\u05e9",
"Code": "\u05e7\u05d5\u05d3",
"Italic": "\u05e0\u05d8\u05d5\u05d9",
"Align center": "\u05de\u05e8\u05db\u05d6",
"Header 5": "\u05db\u05d5\u05ea\u05e8\u05ea 5",
"Decrease indent": "\u05d4\u05e7\u05d8\u05df \u05d4\u05d6\u05d7\u05d4",
"Header 4": "\u05db\u05d5\u05ea\u05e8\u05ea 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "\u05d4\u05d3\u05d1\u05e7\u05d4 \u05d1\u05de\u05e6\u05d1 \u05d8\u05e7\u05e1\u05d8 \u05e8\u05d2\u05d9\u05dc. \u05ea\u05db\u05e0\u05d9\u05dd \u05d9\u05d5\u05d3\u05d1\u05e7\u05d5 \u05de\u05e2\u05ea\u05d4 \u05db\u05d8\u05e7\u05e1\u05d8 \u05e8\u05d2\u05d9\u05dc \u05e2\u05d3 \u05e9\u05ea\u05db\u05d1\u05d4 \u05d0\u05e4\u05e9\u05e8\u05d5\u05ea \u05d6\u05d5.",
"Underline": "\u05e7\u05d5 \u05ea\u05d7\u05ea\u05d9",
"Cancel": "\u05d1\u05d8\u05dc",
"Justify": "\u05de\u05ea\u05d7 \u05dc\u05e6\u05d3\u05d3\u05d9\u05dd",
"Inline": "\u05d1\u05d2\u05d5\u05e3 \u05d4\u05d8\u05e7\u05e1\u05d8",
"Copy": "\u05d4\u05e2\u05ea\u05e7",
"Align left": "\u05d9\u05d9\u05e9\u05e8 \u05dc\u05e9\u05de\u05d0\u05dc",
"Visual aids": "\u05e2\u05d6\u05e8\u05d9\u05dd \u05d7\u05d6\u05d5\u05ea\u05d9\u05d9\u05dd",
"Lower Greek": "\u05d0\u05d5\u05ea\u05d9\u05d5\u05ea \u05d9\u05d5\u05d5\u05e0\u05d9\u05d5\u05ea \u05e7\u05d8\u05e0\u05d5\u05ea",
"Square": "\u05e8\u05d9\u05d1\u05d5\u05e2",
"Default": "\u05d1\u05e8\u05d9\u05e8\u05ea \u05de\u05d7\u05d3\u05dc",
"Lower Alpha": "\u05d0\u05d5\u05ea\u05d9\u05d5\u05ea \u05d0\u05e0\u05d2\u05dc\u05d9\u05d5\u05ea \u05e7\u05d8\u05e0\u05d5\u05ea",
"Circle": "\u05e2\u05d9\u05d2\u05d5\u05dc",
"Disc": "\u05d7\u05d9\u05e9\u05d5\u05e7",
"Upper Alpha": "\u05d0\u05d5\u05ea\u05d9\u05d5\u05ea \u05d0\u05e0\u05d2\u05dc\u05d9\u05d5\u05ea \u05d2\u05d3\u05d5\u05dc\u05d5\u05ea",
"Upper Roman": "\u05e1\u05e4\u05e8\u05d5\u05ea \u05e8\u05d5\u05de\u05d9\u05d5\u05ea \u05d2\u05d3\u05d5\u05dc\u05d5\u05ea",
"Lower Roman": "\u05e1\u05e4\u05e8\u05d5\u05ea \u05e8\u05d5\u05de\u05d9\u05d5\u05ea \u05e7\u05d8\u05e0\u05d5\u05ea",
"Name": "\u05e9\u05dd",
"Anchor": "\u05de\u05e7\u05d5\u05dd \u05e2\u05d9\u05d2\u05d5\u05df",
"You have unsaved changes are you sure you want to navigate away?": "\u05d4\u05e9\u05d9\u05e0\u05d5\u05d9\u05d9\u05dd \u05dc\u05d0 \u05e0\u05e9\u05de\u05e8\u05d5. \u05d1\u05d8\u05d5\u05d7 \u05e9\u05d1\u05e8\u05e6\u05d5\u05e0\u05da \u05dc\u05e6\u05d0\u05ea \u05de\u05d4\u05d3\u05e3?",
"Restore last draft": "\u05e9\u05d7\u05d6\u05e8 \u05d8\u05d9\u05d5\u05d8\u05d4 \u05d0\u05d7\u05e8\u05d5\u05e0\u05d4",
"Special character": "\u05ea\u05d5\u05d5\u05d9\u05dd \u05de\u05d9\u05d5\u05d7\u05d3\u05d9\u05dd",
"Source code": "\u05e7\u05d5\u05d3 \u05de\u05e7\u05d5\u05e8",
"Right to left": "\u05de\u05d9\u05de\u05d9\u05df \u05dc\u05e9\u05de\u05d0\u05dc",
"Left to right": "\u05de\u05e9\u05de\u05d0\u05dc \u05dc\u05d9\u05de\u05d9\u05df",
"Emoticons": "\u05de\u05d7\u05d5\u05d5\u05ea",
"Robots": "\u05e8\u05d5\u05d1\u05d5\u05d8\u05d9\u05dd",
"Document properties": "\u05de\u05d0\u05e4\u05d9\u05d9\u05e0\u05d9 \u05de\u05e1\u05de\u05da",
"Title": "\u05db\u05d5\u05ea\u05e8\u05ea",
"Keywords": "\u05de\u05d9\u05dc\u05d5\u05ea \u05de\u05e4\u05ea\u05d7",
"Encoding": "\u05e7\u05d9\u05d3\u05d5\u05d3",
"Description": "\u05ea\u05d9\u05d0\u05d5\u05e8",
"Author": "\u05de\u05d7\u05d1\u05e8",
"Fullscreen": "\u05de\u05e1\u05da \u05de\u05dc\u05d0",
"Horizontal line": "\u05e7\u05d5 \u05d0\u05d5\u05e4\u05e7\u05d9",
"Horizontal space": "\u05de\u05e8\u05d5\u05d5\u05d7 \u05d0\u05d5\u05e4\u05e7\u05d9",
"Insert\/edit image": "\u05d4\u05db\u05e0\u05e1\/\u05e2\u05e8\u05d5\u05da \u05ea\u05de\u05d5\u05e0\u05d4",
"General": "\u05db\u05dc\u05dc\u05d9",
"Advanced": "\u05de\u05ea\u05e7\u05d3\u05dd",
"Source": "\u05de\u05e7\u05d5\u05e8",
"Border": "\u05de\u05e1\u05d2\u05e8\u05ea",
"Constrain proportions": "\u05d4\u05d2\u05d1\u05dc\u05ea \u05e4\u05e8\u05d5\u05e4\u05d5\u05e8\u05e6\u05d9\u05d5\u05ea",
"Vertical space": "\u05de\u05e8\u05d5\u05d5\u05d7 \u05d0\u05e0\u05db\u05d9",
"Image description": "\u05ea\u05d9\u05d0\u05d5\u05e8 \u05d4\u05ea\u05de\u05d5\u05e0\u05d4",
"Style": "\u05e1\u05d2\u05e0\u05d5\u05df",
"Dimensions": "\u05de\u05d9\u05de\u05d3\u05d9\u05dd",
"Insert image": "\u05d4\u05db\u05e0\u05e1 \u05ea\u05de\u05d5\u05e0\u05d4",
"Insert date\/time": "\u05d4\u05db\u05e0\u05e1 \u05ea\u05d0\u05e8\u05d9\u05da\/\u05e9\u05e2\u05d4",
"Remove link": "\u05de\u05d7\u05e7 \u05e7\u05d9\u05e9\u05d5\u05e8",
"Url": "\u05db\u05ea\u05d5\u05d1\u05ea \u05e7\u05d9\u05e9\u05d5\u05e8",
"Text to display": "\u05d8\u05e7\u05e1\u05d8 \u05dc\u05d4\u05e6\u05d2\u05d4",
"Anchors": "\u05e2\u05d5\u05d2\u05e0\u05d9\u05dd",
"Insert link": "\u05d4\u05db\u05e0\u05e1 \u05e7\u05d9\u05e9\u05d5\u05e8",
"New window": "\u05d7\u05dc\u05d5\u05df \u05d7\u05d3\u05e9",
"None": "\u05dc\u05dc\u05d0",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?",
"Target": "\u05de\u05d8\u05e8\u05d4",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?",
"Insert\/edit link": "\u05d4\u05db\u05e0\u05e1\/\u05e2\u05e8\u05d5\u05da \u05e7\u05d9\u05e9\u05d5\u05e8",
"Insert\/edit video": "\u05d4\u05db\u05e0\u05e1\/\u05e2\u05e8\u05d5\u05da \u05e1\u05e8\u05d8\u05d5\u05df",
"Poster": "\u05e4\u05d5\u05e1\u05d8\u05e8",
"Alternative source": "\u05de\u05e7\u05d5\u05e8 \u05de\u05e9\u05e0\u05d9",
"Paste your embed code below:": "\u05d4\u05d3\u05d1\u05e7 \u05e7\u05d5\u05d3 \u05d4\u05d8\u05de\u05e2\u05d4 \u05de\u05ea\u05d7\u05ea:",
"Insert video": "\u05d4\u05db\u05e0\u05e1 \u05e1\u05e8\u05d8\u05d5\u05df",
"Embed": "\u05d4\u05d8\u05de\u05e2",
"Nonbreaking space": "\u05e8\u05d5\u05d5\u05d7 (\u05dc\u05dc\u05d0 \u05e9\u05d1\u05d9\u05e8\u05ea \u05e9\u05d5\u05e8\u05d4)",
"Page break": "\u05d3\u05e3 \u05d7\u05d3\u05e9",
"Paste as text": "\u05d4\u05d3\u05d1\u05e7 \u05db\u05d8\u05e7\u05e1\u05d8",
"Preview": "\u05ea\u05e6\u05d5\u05d2\u05d4 \u05de\u05e7\u05d3\u05d9\u05de\u05d4",
"Print": "\u05d4\u05d3\u05e4\u05e1",
"Save": "\u05e9\u05de\u05d9\u05e8\u05d4",
"Could not find the specified string.": "\u05de\u05d7\u05e8\u05d5\u05d6\u05ea \u05dc\u05d0 \u05e0\u05de\u05e6\u05d0\u05d4",
"Replace": "\u05d4\u05d7\u05dc\u05e3",
"Next": "\u05d4\u05d1\u05d0",
"Whole words": "\u05de\u05d9\u05dc\u05d4 \u05e9\u05dc\u05de\u05d4",
"Find and replace": "\u05d7\u05e4\u05e9 \u05d5\u05d4\u05d7\u05dc\u05e3",
"Replace with": "\u05d4\u05d7\u05dc\u05e3 \u05d1",
"Find": "\u05d7\u05e4\u05e9",
"Replace all": "\u05d4\u05d7\u05dc\u05e3 \u05d4\u05db\u05dc",
"Match case": "\u05d4\u05d1\u05d7\u05df \u05d1\u05d9\u05df \u05d0\u05d5\u05ea\u05d9\u05d5\u05ea \u05e7\u05d8\u05e0\u05d5\u05ea \u05dc\u05d2\u05d3\u05d5\u05dc\u05d5\u05ea",
"Prev": "\u05e7\u05d5\u05d3\u05dd",
"Spellcheck": "\u05d1\u05d5\u05d3\u05e7 \u05d0\u05d9\u05d5\u05ea",
"Finish": "\u05e1\u05d9\u05d9\u05dd",
"Ignore all": "\u05d4\u05ea\u05e2\u05dc\u05dd \u05de\u05d4\u05db\u05dc",
"Ignore": "\u05d4\u05ea\u05e2\u05dc\u05dd",
"Insert row before": "\u05d4\u05d5\u05e1\u05e3 \u05e9\u05d5\u05e8\u05d4 \u05dc\u05e4\u05e0\u05d9",
"Rows": "\u05e9\u05d5\u05e8\u05d5\u05ea",
"Height": "\u05d2\u05d5\u05d1\u05d4",
"Paste row after": "\u05d4\u05e2\u05ea\u05e7 \u05e9\u05d5\u05e8\u05d4 \u05d0\u05d7\u05e8\u05d9",
"Alignment": "\u05d9\u05d9\u05e9\u05d5\u05e8",
"Column group": "\u05e7\u05d9\u05d1\u05d5\u05e5 \u05e2\u05de\u05d5\u05d3\u05d5\u05ea",
"Row": "\u05e9\u05d5\u05e8\u05d4",
"Insert column before": "\u05d4\u05e2\u05ea\u05e7 \u05e2\u05de\u05d5\u05d3\u05d4 \u05dc\u05e4\u05e0\u05d9",
"Split cell": "\u05e4\u05e6\u05dc \u05ea\u05d0",
"Cell padding": "\u05e9\u05d5\u05dc\u05d9\u05d9\u05dd \u05e4\u05e0\u05d9\u05de\u05d9\u05d9\u05dd \u05dc\u05ea\u05d0",
"Cell spacing": "\u05e9\u05d5\u05dc\u05d9\u05d9\u05dd \u05d7\u05d9\u05e6\u05d5\u05e0\u05d9\u05dd \u05dc\u05ea\u05d0",
"Row type": "\u05e1\u05d5\u05d2 \u05e9\u05d5\u05e8\u05d4",
"Insert table": "\u05d4\u05db\u05e0\u05e1 \u05d8\u05d1\u05dc\u05d4",
"Body": "\u05d2\u05d5\u05e3 \u05d4\u05d8\u05d1\u05dc\u05d0",
"Caption": "\u05db\u05d9\u05ea\u05d5\u05d1",
"Footer": "\u05db\u05d5\u05ea\u05e8\u05ea \u05ea\u05d7\u05ea\u05d5\u05e0\u05d4",
"Delete row": "\u05de\u05d7\u05e7 \u05e9\u05d5\u05e8\u05d4",
"Paste row before": "\u05d4\u05d3\u05d1\u05e7 \u05e9\u05d5\u05e8\u05d4 \u05dc\u05e4\u05e0\u05d9",
"Scope": "\u05d4\u05d9\u05e7\u05e3",
"Delete table": "\u05de\u05d7\u05e7 \u05d8\u05d1\u05dc\u05d4",
"Header cell": "\u05db\u05d5\u05ea\u05e8\u05ea \u05dc\u05ea\u05d0",
"Column": "\u05e2\u05de\u05d5\u05d3\u05d4",
"Cell": "\u05ea\u05d0",
"Header": "\u05db\u05d5\u05ea\u05e8\u05ea",
"Cell type": "\u05e1\u05d5\u05d2 \u05ea\u05d0",
"Copy row": "\u05d4\u05e2\u05ea\u05e7 \u05e9\u05d5\u05e8\u05d4",
"Row properties": "\u05de\u05d0\u05e4\u05d9\u05d9\u05e0\u05d9 \u05e9\u05d5\u05e8\u05d4",
"Table properties": "\u05de\u05d0\u05e4\u05d9\u05d9\u05e0\u05d9 \u05d8\u05d1\u05dc\u05d4",
"Row group": "\u05e7\u05d9\u05d1\u05d5\u05e5 \u05e9\u05d5\u05e8\u05d5\u05ea",
"Right": "\u05d9\u05de\u05d9\u05df",
"Insert column after": "\u05d4\u05e2\u05ea\u05e7 \u05e2\u05de\u05d5\u05d3\u05d4 \u05d0\u05d7\u05e8\u05d9",
"Cols": "\u05e2\u05de\u05d5\u05d3\u05d5\u05ea",
"Insert row after": "\u05d4\u05d5\u05e1\u05e3 \u05e9\u05d5\u05e8\u05d4 \u05d0\u05d7\u05e8\u05d9",
"Width": "\u05e8\u05d5\u05d7\u05d1",
"Cell properties": "\u05de\u05d0\u05e4\u05d9\u05d9\u05e0\u05d9 \u05ea\u05d0",
"Left": "\u05e9\u05de\u05d0\u05dc",
"Cut row": "\u05d2\u05d6\u05d5\u05e8 \u05e9\u05d5\u05e8\u05d4",
"Delete column": "\u05de\u05d7\u05e7 \u05e2\u05de\u05d5\u05d3\u05d4",
"Center": "\u05de\u05e8\u05db\u05d6",
"Merge cells": "\u05de\u05d6\u05d2 \u05ea\u05d0\u05d9\u05dd",
"Insert template": "\u05d4\u05db\u05e0\u05e1 \u05ea\u05d1\u05e0\u05d9\u05ea",
"Templates": "\u05ea\u05d1\u05e0\u05d9\u05d5\u05ea",
"Background color": "\u05e6\u05d1\u05e2 \u05e8\u05e7\u05e2",
"Text color": "\u05e6\u05d1\u05e2 \u05d4\u05db\u05ea\u05d1",
"Show blocks": "\u05d4\u05e6\u05d2 \u05ea\u05d9\u05d1\u05d5\u05ea",
"Show invisible characters": "\u05d4\u05e6\u05d2 \u05ea\u05d5\u05d5\u05d9\u05dd \u05dc\u05d0 \u05e0\u05e8\u05d0\u05d9\u05dd",
"Words: {0}": "\u05de\u05d9\u05dc\u05d9\u05dd: {0}",
"Insert": "\u05d4\u05d5\u05e1\u05e4\u05d4",
"File": "\u05e7\u05d5\u05d1\u05e5",
"Edit": "\u05e2\u05e8\u05d9\u05db\u05d4",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "\u05ea\u05d9\u05d1\u05ea \u05e2\u05e8\u05d9\u05db\u05d4 \u05d7\u05db\u05de\u05d4. \u05dc\u05d7\u05e5 Alt-F9 \u05dc\u05ea\u05e4\u05e8\u05d9\u05d8. Alt-F10 \u05dc\u05ea\u05e6\u05d5\u05d2\u05ea \u05db\u05e4\u05ea\u05d5\u05e8\u05d9\u05dd, Alt-0 \u05dc\u05e2\u05d6\u05e8\u05d4",
"Tools": "\u05db\u05dc\u05d9\u05dd",
"View": "\u05ea\u05e6\u05d5\u05d2\u05d4",
"Table": "\u05d8\u05d1\u05dc\u05d4",
"Format": "\u05e4\u05d5\u05e8\u05de\u05d8",
"_dir": "rtl"
});
program/js/tinymce/langs/hr.js
New file
@@ -0,0 +1,179 @@
tinymce.addI18n('hr',{
"Cut": "Izre\u017ei",
"Header 2": "Zaglavlje 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "Va\u0161 preglednik ne podr\u017eava direktan pristup me\u0111uspremniku. Molimo Vas da umjesto toga koristite tipkovni\u010dke kratice Ctrl+X\/C\/V.",
"Div": "DIV",
"Paste": "Zalijepi",
"Close": "Zatvori",
"Font Family": "Font Family",
"Pre": "PRE",
"Align right": "Poravnaj desno",
"New document": "Novi dokument",
"Blockquote": "BLOCKQUOTE",
"Numbered list": "Numerirana lista",
"Increase indent": "Pove\u0107aj uvla\u010denje",
"Formats": "Formati",
"Headers": "Zaglavlja",
"Select all": "Ozna\u010di sve",
"Header 3": "Zaglavlje 3",
"Blocks": "Blokovi",
"Undo": "Poni\u0161ti",
"Strikethrough": "Crta kroz sredinu",
"Bullet list": "Lista",
"Header 1": "Zaglavlje 1",
"Superscript": "Natpis",
"Clear formatting": "Ukloni oblikovanje",
"Font Sizes": "Font Sizes",
"Subscript": "Potpis",
"Header 6": "Zaglavlje 6",
"Redo": "Vrati",
"Paragraph": "Paragraf",
"Ok": "Uredu",
"Bold": "Masna",
"Code": "CODE oznaka",
"Italic": "Kurziv",
"Align center": "Poravnaj po sredini",
"Header 5": "Zaglavlje 5",
"Decrease indent": "Smanji uvla\u010denje",
"Header 4": "Zaglavlje 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Akcija zalijepi od sada lijepi \u010disti tekst. Sadr\u017eaj \u0107e biti zaljepljen kao \u010disti tekst sve dok ne isklju\u010dite ovu opciju.",
"Underline": "Crta ispod",
"Cancel": "Odustani",
"Justify": "Obostrano poravnanje",
"Inline": "Unutarnje",
"Copy": "Kopiraj",
"Align left": "Poravnaj lijevo",
"Visual aids": "Vizualna pomo\u0107",
"Lower Greek": "Mala gr\u010dka slova",
"Square": "Kvadrat",
"Default": "Zadano",
"Lower Alpha": "Mala slova",
"Circle": "Krug",
"Disc": "To\u010dka",
"Upper Alpha": "Velika slova",
"Upper Roman": "Velika rimska slova",
"Lower Roman": "Mala rimska slova",
"Name": "Ime",
"Anchor": "Sidro",
"You have unsaved changes are you sure you want to navigate away?": "Postoje ne pohranjene izmjene, jeste li sigurni da \u017eelite oti\u0107i?",
"Restore last draft": "Vrati posljednju skicu",
"Special character": "Poseban znak",
"Source code": "Izvorni kod",
"Right to left": "S desna na lijevo",
"Left to right": "S lijeva na desno",
"Emoticons": "Emotikoni",
"Robots": "Roboti pretra\u017eiva\u010da",
"Document properties": "Svojstva dokumenta",
"Title": "Naslov",
"Keywords": "Klju\u010dne rije\u010di",
"Encoding": "Kodna stranica",
"Description": "Opis",
"Author": "Autor",
"Fullscreen": "Cijeli ekran",
"Horizontal line": "Horizontalna linija",
"Horizontal space": "Horizontalan razmak",
"Insert\/edit image": "Umetni\/izmijeni sliku",
"General": "Op\u0107enito",
"Advanced": "Napredno",
"Source": "Izvor",
"Border": "Rub",
"Constrain proportions": "Zadr\u017ei proporcije",
"Vertical space": "Okomit razmak",
"Image description": "Opis slike",
"Style": "Stil",
"Dimensions": "Dimenzije",
"Insert image": "Umetni sliku",
"Insert date\/time": "Umetni datum\/vrijeme",
"Remove link": "Ukloni poveznicu",
"Url": "Url",
"Text to display": "Tekst za prikaz",
"Anchors": "Kra\u0107e poveznice",
"Insert link": "Umetni poveznicu",
"New window": "Novi prozor",
"None": "Ni\u0161ta",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?",
"Target": "Meta",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?",
"Insert\/edit link": "Umetni\/izmijeni poveznicu",
"Insert\/edit video": "Umetni\/izmijeni video",
"Poster": "Poster",
"Alternative source": "Alternativni izvor",
"Paste your embed code below:": "Umetnite va\u0161 kod za ugradnju ispod:",
"Insert video": "Umetni video",
"Embed": "Ugradi",
"Nonbreaking space": "Neprekidaju\u0107i razmak",
"Page break": "Prijelom stranice",
"Paste as text": "Zalijepi kao tekst",
"Preview": "Pregled",
"Print": "Ispis",
"Save": "Spremi",
"Could not find the specified string.": "Tra\u017eeni tekst nije prona\u0111en",
"Replace": "Zamijeni",
"Next": "Slijede\u0107i",
"Whole words": "Cijele rije\u010di",
"Find and replace": "Prona\u0111i i zamijeni",
"Replace with": "Zamijeni s",
"Find": "Tra\u017ei",
"Replace all": "Zamijeni sve",
"Match case": "Pazi na mala i velika slova",
"Prev": "Prethodni",
"Spellcheck": "Provjeri pravopis",
"Finish": "Zavr\u0161i",
"Ignore all": "Zanemari sve",
"Ignore": "Zanemari",
"Insert row before": "Umetni redak prije",
"Rows": "Redci",
"Height": "Visina",
"Paste row after": "Zalijepi redak nakon",
"Alignment": "Poravnanje",
"Column group": "Grupirani stupci",
"Row": "Redak",
"Insert column before": "Umetni stupac prije",
"Split cell": "Razdvoji polja",
"Cell padding": "Razmak unutar polja",
"Cell spacing": "Razmak izme\u0111u polja",
"Row type": "Vrsta redka",
"Insert table": "Umetni tablicu",
"Body": "Sadr\u017eaj",
"Caption": "Natpis",
"Footer": "Podno\u017eje",
"Delete row": "Izbri\u0161i redak",
"Paste row before": "Zalijepi redak prije",
"Scope": "Doseg",
"Delete table": "Izbri\u0161i tablicu",
"Header cell": "Polje zaglavlja",
"Column": "Stupac",
"Cell": "Polje",
"Header": "Zaglavlje",
"Cell type": "Vrsta polja",
"Copy row": "Kopiraj redak",
"Row properties": "Svojstva redka",
"Table properties": "Svojstva tablice",
"Row group": "Grupirani redci",
"Right": "Desno",
"Insert column after": "Umetni stupac nakon",
"Cols": "Stupci",
"Insert row after": "Umetni redak nakon",
"Width": "\u0160irina",
"Cell properties": "Svojstva polja",
"Left": "Lijevo",
"Cut row": "Izre\u017ei redak",
"Delete column": "Izbri\u0161i stupac",
"Center": "Sredina",
"Merge cells": "Spoji polja",
"Insert template": "Umetni predlo\u017eak",
"Templates": "Predlo\u0161ci",
"Background color": "Boja pozadine",
"Text color": "Boja teksta",
"Show blocks": "Prika\u017ei blokove",
"Show invisible characters": "Prika\u017ei nevidljive znakove",
"Words: {0}": "Rije\u010di: {0}",
"Insert": "Umetni",
"File": "Datoteka",
"Edit": "Izmijeni",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "Pritisni ALT-F9 za izbornik. Pritisni ALT-F10 za alatnu traku. Pritisni ALT-0 za pomo\u0107",
"Tools": "Alati",
"View": "Pogled",
"Table": "Tablica",
"Format": "Oblikuj"
});
program/js/tinymce/langs/hu_HU.js
New file
@@ -0,0 +1,197 @@
tinymce.addI18n('hu_HU',{
"Cut": "Kiv\u00e1g\u00e1s",
"Heading 5": "Fejl\u00e9c 5",
"Header 2": "C\u00edmsor 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "A b\u00f6ng\u00e9sz\u0151d nem t\u00e1mogatja a k\u00f6zvetlen hozz\u00e1f\u00e9r\u00e9st a v\u00e1g\u00f3laphoz. K\u00e9rlek haszn\u00e1ld a Ctrl+X\/C\/V billenty\u0171ket.",
"Heading 4": "Fejl\u00e9c 4",
"Div": "Div",
"Heading 2": "Fejl\u00e9c 2",
"Paste": "Beilleszt\u00e9s",
"Close": "Bez\u00e1r",
"Font Family": "Bet\u0171t\u00edpus",
"Pre": "El\u0151",
"Align right": "Jobbra igaz\u00edt",
"New document": "\u00daj dokumentum",
"Blockquote": "Id\u00e9zetblokk",
"Numbered list": "Sz\u00e1moz\u00e1s",
"Heading 1": "Fejl\u00e9c 1",
"Headings": "Fejl\u00e9cek",
"Increase indent": "Beh\u00faz\u00e1s n\u00f6vel\u00e9se",
"Formats": "Form\u00e1tumok",
"Headers": "C\u00edmsorok",
"Select all": "Minden kijel\u00f6l\u00e9se",
"Header 3": "C\u00edmsor 3",
"Blocks": "Blokkok",
"Undo": "Visszavon\u00e1s",
"Strikethrough": "\u00c1th\u00fazott",
"Bullet list": "Felsorol\u00e1s",
"Header 1": "C\u00edmsor 1",
"Superscript": "Fels\u0151 index",
"Clear formatting": "Form\u00e1z\u00e1s t\u00f6rl\u00e9se",
"Font Sizes": "Bet\u0171m\u00e9retek",
"Subscript": "Als\u00f3 index",
"Header 6": "C\u00edmsor 6",
"Redo": "Ism\u00e9t",
"Paragraph": "Bekezd\u00e9s",
"Ok": "Rendben",
"Bold": "F\u00e9lk\u00f6v\u00e9r",
"Code": "K\u00f3d",
"Italic": "D\u0151lt",
"Align center": "K\u00f6z\u00e9pre z\u00e1r",
"Header 5": "C\u00edmsor 5",
"Heading 6": "Fejl\u00e9c 6",
"Heading 3": "Fejl\u00e9c 3",
"Decrease indent": "Beh\u00faz\u00e1s cs\u00f6kkent\u00e9se",
"Header 4": "C\u00edmsor 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "Beilleszt\u00e9s mostant\u00f3l egyszer\u0171 sz\u00f6veg m\u00f3dban. A tartalmak mostant\u00f3l egyszer\u0171 sz\u00f6vegk\u00e9nt lesznek beillesztve, am\u00edg nem kapcsolod ki ezt az opci\u00f3t.",
"Underline": "Al\u00e1h\u00fazott",
"Cancel": "M\u00e9gse",
"Justify": "Sorkiz\u00e1r\u00e1s",
"Inline": "Vonalon bel\u00fcl",
"Copy": "M\u00e1sol\u00e1s",
"Align left": "Balra igaz\u00edt",
"Visual aids": "Vizu\u00e1lis seg\u00e9deszk\u00f6z\u00f6k",
"Lower Greek": "Kis g\u00f6r\u00f6g sz\u00e1m",
"Square": "N\u00e9gyzet",
"Default": "Alap\u00e9rtelmezett",
"Lower Alpha": "Kisbet\u0171",
"Circle": "K\u00f6r",
"Disc": "Pont",
"Upper Alpha": "Nagybet\u0171",
"Upper Roman": "Nagy r\u00f3mai sz\u00e1m",
"Lower Roman": "Kis r\u00f3mai sz\u00e1m",
"Name": "N\u00e9v",
"Anchor": "Horgony",
"You have unsaved changes are you sure you want to navigate away?": "Nem mentett m\u00f3dos\u00edt\u00e1said vannak, biztos hogy el akarsz navig\u00e1lni?",
"Restore last draft": "Utols\u00f3 piszkozat vissza\u00e1ll\u00edt\u00e1sa",
"Special character": "Speci\u00e1lis karakter",
"Source code": "Forr\u00e1sk\u00f3d",
"Color": "Sz\u00edn",
"Right to left": "Jobbr\u00f3l balra",
"Left to right": "Balr\u00f3l jobbra",
"Emoticons": "Vigyorok",
"Robots": "Robotok",
"Document properties": "Dokumentum tulajdons\u00e1gai",
"Title": "C\u00edm",
"Keywords": "Kulcsszavak",
"Encoding": "K\u00f3dol\u00e1s",
"Description": "Le\u00edr\u00e1s",
"Author": "Szerz\u0151",
"Fullscreen": "Teljes k\u00e9perny\u0151",
"Horizontal line": "V\u00edzszintes vonal",
"Horizontal space": "Horizont\u00e1lis hely",
"Insert\/edit image": "K\u00e9p beilleszt\u00e9se\/szerkeszt\u00e9se",
"General": "\u00c1ltal\u00e1nos",
"Advanced": "Halad\u00f3",
"Source": "Forr\u00e1s",
"Border": "Szeg\u00e9ly",
"Constrain proportions": "M\u00e9retar\u00e1ny",
"Vertical space": "Vertik\u00e1lis hely",
"Image description": "K\u00e9p le\u00edr\u00e1sa",
"Style": "St\u00edlus",
"Dimensions": "M\u00e9retek",
"Insert image": "K\u00e9p besz\u00far\u00e1sa",
"Insert date\/time": "D\u00e1tum\/id\u0151 beilleszt\u00e9se",
"Remove link": "Hivatkoz\u00e1s t\u00f6rl\u00e9se",
"Url": "Url",
"Text to display": "Megjelen\u0151 sz\u00f6veg",
"Anchors": "Horgonyok",
"Insert link": "Link beilleszt\u00e9se",
"New window": "\u00daj ablak",
"None": "Nincs",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "Az URL amit megadt\u00e1l k\u00fcls\u0151 c\u00edmnek t\u0171nik. Szeretn\u00e9d hozz\u00e1adni a sz\u00fcks\u00e9ges http:\/\/ el\u0151tagot?",
"Target": "C\u00e9l",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "Az URL amit megadt\u00e1l email c\u00edmnek t\u0171nik. Szeretn\u00e9d hozz\u00e1adni a sz\u00fcks\u00e9ges mailto: el\u0151tagot?",
"Insert\/edit link": "Link beilleszt\u00e9se\/szerkeszt\u00e9se",
"Insert\/edit video": "Vide\u00f3 beilleszt\u00e9se\/szerkeszt\u00e9se",
"Poster": "El\u0151n\u00e9zeti k\u00e9p",
"Alternative source": "Alternat\u00edv forr\u00e1s",
"Paste your embed code below:": "Illeszd be a be\u00e1gyaz\u00f3 k\u00f3dot alulra:",
"Insert video": "Vide\u00f3 beilleszt\u00e9se",
"Embed": "Be\u00e1gyaz\u00e1s",
"Nonbreaking space": "Nem t\u00f6rhet\u0151 hely",
"Page break": "Oldalt\u00f6r\u00e9s",
"Paste as text": "Beilleszt\u00e9s sz\u00f6vegk\u00e9nt",
"Preview": "El\u0151n\u00e9zet",
"Print": "Nyomtat\u00e1s",
"Save": "Ment\u00e9s",
"Could not find the specified string.": "A be\u00edrt kifejez\u00e9s nem tal\u00e1lhat\u00f3.",
"Replace": "Csere",
"Next": "K\u00f6vetkez\u0151",
"Whole words": "Csak ha ez a teljes sz\u00f3",
"Find and replace": "Keres\u00e9s \u00e9s csere",
"Replace with": "Csere erre",
"Find": "Keres\u00e9s",
"Replace all": "Az \u00f6sszes cser\u00e9je",
"Match case": "Kis \u00e9s nagybet\u0171k megk\u00fcl\u00f6nb\u00f6ztet\u00e9se",
"Prev": "El\u0151z\u0151",
"Spellcheck": "Helyes\u00edr\u00e1s ellen\u0151rz\u00e9s",
"Finish": "Befejez\u00e9s",
"Ignore all": "Mindent figyelmen k\u00edv\u00fcl hagy",
"Ignore": "Figyelmen k\u00edv\u00fcl hagy",
"Add to Dictionary": "Sz\u00f3t\u00e1rhoz ad",
"Insert row before": "Sor besz\u00far\u00e1sa el\u00e9",
"Rows": "Sorok",
"Height": "Magass\u00e1g",
"Paste row after": "Sor beilleszt\u00e9se m\u00f6g\u00e9",
"Alignment": "Igaz\u00edt\u00e1s",
"Border color": "Szeg\u00e9ly sz\u00edne",
"Column group": "Oszlop csoport",
"Row": "Sor",
"Insert column before": "Oszlop besz\u00far\u00e1sa el\u00e9",
"Split cell": "Cell\u00e1k sz\u00e9tv\u00e1laszt\u00e1sa",
"Cell padding": "Cella m\u00e9rete",
"Cell spacing": "Cell\u00e1k t\u00e1vols\u00e1ga",
"Row type": "Sor t\u00edpus",
"Insert table": "T\u00e1bl\u00e1zat beilleszt\u00e9se",
"Body": "Sz\u00f6vegt\u00f6rzs",
"Caption": "Felirat",
"Footer": "L\u00e1bl\u00e9c",
"Delete row": "Sor t\u00f6rl\u00e9se",
"Paste row before": "Sor beilleszt\u00e9se el\u00e9",
"Scope": "Hat\u00f3k\u00f6r",
"Delete table": "T\u00e1bl\u00e1zat t\u00f6rl\u00e9se",
"H Align": "V\u00edzszintes igaz\u00edt\u00e1s",
"Top": "Fel\u00fcl",
"Header cell": "Fejl\u00e9c cella",
"Column": "Oszlop",
"Row group": "Sor csoport",
"Cell": "Cella",
"Middle": "K\u00f6z\u00e9pen",
"Cell type": "Cella t\u00edpusa",
"Copy row": "Sor m\u00e1sol\u00e1sa",
"Row properties": "Sor tulajdons\u00e1gai",
"Table properties": "T\u00e1bl\u00e1zat tulajdons\u00e1gok",
"Bottom": "Alul",
"V Align": "F\u00fcgg\u0151leges igaz\u00edt\u00e1s",
"Header": "Fejl\u00e9c",
"Right": "Jobb",
"Insert column after": "Oszlop besz\u00far\u00e1sa m\u00f6g\u00e9",
"Cols": "Oszlopok",
"Insert row after": "Sor besz\u00far\u00e1sa m\u00f6g\u00e9",
"Width": "Sz\u00e9less\u00e9g",
"Cell properties": "Cella tulajdons\u00e1gok",
"Left": "Bal",
"Cut row": "Sor kiv\u00e1g\u00e1sa",
"Delete column": "Oszlop t\u00f6rl\u00e9se",
"Center": "K\u00f6z\u00e9p",
"Merge cells": "Cell\u00e1k egyes\u00edt\u00e9se",
"Insert template": "Sablon beilleszt\u00e9se",
"Templates": "Sablonok",
"Background color": "H\u00e1tt\u00e9r sz\u00edn",
"Custom...": "Egy\u00e9ni...",
"Custom color": "Egy\u00e9ni sz\u00edn",
"No color": "Nincs sz\u00edn",
"Text color": "Sz\u00f6veg sz\u00edne",
"Show blocks": "Blokkok mutat\u00e1sa",
"Show invisible characters": "L\u00e1thatatlan karakterek mutat\u00e1sa",
"Words: {0}": "Szavak: {0}",
"Insert": "Beilleszt\u00e9s",
"File": "F\u00e1jl",
"Edit": "Szerkeszt\u00e9s",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "Rich Text ter\u00fclet. Nyomj ALT-F9-et a men\u00fch\u00f6z. Nyomj ALT-F10-et az eszk\u00f6zt\u00e1rhoz. Nyomj ALT-0-t a s\u00fag\u00f3hoz",
"Tools": "Eszk\u00f6z\u00f6k",
"View": "N\u00e9zet",
"Table": "T\u00e1bl\u00e1zat",
"Format": "Form\u00e1tum"
});
program/js/tinymce/langs/hy.js
New file
@@ -0,0 +1,179 @@
tinymce.addI18n('hy',{
"Cut": "\u053f\u057f\u0580\u0565\u056c",
"Header 2": "\u054e\u0565\u0580\u0576\u0561\u0563\u056b\u0580 2",
"Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X\/C\/V keyboard shortcuts instead.": "\u0541\u0565\u0580 \u0562\u0580\u0561\u0578\u0582\u0566\u0565\u0580\u0568 \u0579\u056b \u0561\u057a\u0561\u0570\u0578\u057e\u0578\u0582\u0574 \u0561\u0576\u0574\u056b\u057b\u0561\u056f\u0561\u0576 \u0565\u056c\u0584 \u0583\u0578\u056d\u0561\u0576\u0561\u056f\u0574\u0561\u0576 \u0562\u0578\u0582\u0586\u0565\u0580\u056b\u0576\u0589 \u053d\u0576\u0564\u0580\u0578\u0582\u0574 \u0565\u0576\u0584 \u0585\u0563\u057f\u057e\u0565\u056c Ctrl+X\/C\/V \u057d\u057f\u0565\u0572\u0576\u0565\u0580\u056b\u0581\u0589",
"Div": "Div",
"Paste": "\u054f\u0565\u0572\u0561\u0564\u0580\u0565\u056c",
"Close": "\u0553\u0561\u056f\u0565\u056c",
"Font Family": "\u054f\u0561\u057c\u0561\u057f\u0565\u057d\u0561\u056f",
"Pre": "Pre",
"Align right": "\u0531\u057b\u0561\u056f\u0578\u0572\u0574\u0575\u0561 \u0570\u0561\u057e\u0561\u057d\u0561\u0580\u0578\u0582\u0569\u0575\u0578\u0582\u0576",
"New document": "\u0546\u0578\u0580 \u0583\u0561\u057d\u057f\u0561\u0569\u0578\u0582\u0572\u0569",
"Blockquote": "\u0544\u0565\u057b\u0562\u0565\u0580\u0578\u0582\u0574",
"Numbered list": "\u0540\u0561\u0574\u0561\u0580\u0561\u056f\u0561\u056c\u057e\u0561\u056e \u0581\u0578\u0582\u0581\u0561\u056f",
"Increase indent": "\u0544\u0565\u056e\u0561\u0581\u0576\u0565\u056c \u0571\u0561\u056d \u0565\u0566\u0580\u056b \u0570\u0565\u057c\u0561\u057e\u0578\u0580\u0578\u0582\u0569\u0575\u0578\u0582\u0576\u0568",
"Formats": "\u0556\u0578\u0580\u0574\u0561\u057f\u0576\u0565\u0580",
"Headers": "\u054e\u0565\u0580\u0576\u0561\u0563\u0580\u0565\u0580",
"Select all": "\u0546\u0577\u0565\u056c \u0562\u0578\u056c\u0578\u0580\u0568",
"Header 3": "\u054e\u0565\u0580\u0576\u0561\u0563\u056b\u0580 3",
"Blocks": "\u0532\u056c\u0578\u056f\u0576\u0565\u0580",
"Undo": "\u0546\u0561\u056d\u0578\u0580\u0564 \u0584\u0561\u0575\u056c",
"Strikethrough": "\u0531\u0580\u057f\u0561\u0563\u056e\u057e\u0561\u056e",
"Bullet list": "\u0549\u0570\u0561\u0574\u0561\u0580\u0561\u056f\u0561\u056c\u057e\u0561\u056e \u0581\u0578\u0582\u0581\u0561\u056f",
"Header 1": "\u054e\u0565\u0580\u0576\u0561\u0563\u056b\u0580 1",
"Superscript": "\u054e\u0565\u0580\u056b\u0576 \u056b\u0576\u0564\u0565\u0584\u057d",
"Clear formatting": "\u0544\u0561\u0584\u0580\u0565\u056c \u0586\u0578\u0580\u0574\u0561\u057f\u0561\u057e\u0578\u0580\u0578\u0582\u0574\u0568",
"Font Sizes": "\u054f\u0561\u057c\u056b \u0579\u0561\u0583",
"Subscript": "\u054d\u057f\u0578\u0580\u056b\u0576 \u056b\u0576\u0564\u0565\u0584\u057d",
"Header 6": "\u054e\u0565\u0580\u0576\u0561\u0563\u056b\u0580 6",
"Redo": "\u0540\u0561\u057b\u0578\u0580\u0564 \u0584\u0561\u0575\u056c",
"Paragraph": "\u054a\u0561\u0580\u0562\u0565\u0580\u0578\u0582\u0569\u0575\u0578\u0582\u0576",
"Ok": "Ok",
"Bold": "\u0539\u0561\u057e\u0561\u057f\u0561\u057c",
"Code": "\u053f\u0578\u0564",
"Italic": "\u0547\u0565\u0572\u0561\u057f\u0561\u057c",
"Align center": "\u053f\u0565\u0576\u057f\u0580\u0578\u0576\u0561\u056f\u0561\u0576 \u0570\u0561\u057e\u0561\u057d\u0561\u0580\u0578\u0582\u0569\u0575\u0578\u0582\u0576",
"Header 5": "\u054e\u0565\u0580\u0576\u0561\u0563\u056b\u0580 5",
"Decrease indent": "\u0553\u0578\u0584\u0580\u0561\u0581\u0576\u0565\u056c \u0571\u0561\u056d \u0565\u0566\u0580\u056b \u0570\u0565\u057c\u0561\u057e\u0578\u0580\u0578\u0582\u0569\u0575\u0578\u0582\u0576\u0568",
"Header 4": "\u054e\u0565\u0580\u0576\u0561\u0563\u056b\u0580 4",
"Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.": "\u054f\u0565\u0584\u057d\u057f\u056b \u057f\u0565\u0572\u0561\u0564\u0580\u0578\u0582\u0574\u0568 \u056f\u0561\u057f\u0561\u0580\u057e\u0565\u056c\u0578\u0582 \u0567 \u0570\u0561\u057d\u0561\u0580\u0561\u056f \u057f\u0565\u0584\u057d\u057f\u056b \u057c\u0565\u056a\u056b\u0574\u0578\u057e\u0589 \u054a\u0561\u057f\u0573\u0565\u0576\u057e\u0561\u056e \u057f\u0565\u0584\u057d\u057f\u0568 \u057f\u0565\u0572\u0561\u0564\u0580\u057e\u0565\u056c\u0578\u0582 \u0567 \u0570\u0561\u057d\u0561\u0580\u0561\u056f \u057f\u0565\u0584\u057d\u057f\u056b \u0571\u0587\u0578\u057e \u0574\u056b\u0576\u0579\u0587 \u0561\u0575\u057d \u057c\u0565\u056a\u056b\u0574\u056b \u0561\u0576\u057b\u0561\u057f\u0578\u0582\u0574\u0568\u0589",
"Underline": "\u0538\u0576\u0564\u0563\u056e\u057e\u0561\u056e",
"Cancel": "\u0553\u0561\u056f\u0565\u056c",
"Justify": "\u0535\u0580\u056f\u056f\u0578\u0572\u0574\u0561\u0576\u056b \u0570\u0561\u057e\u0561\u057d\u0561\u0580\u0578\u0582\u0569\u0575\u0578\u0582\u0576",
"Inline": "\u054f\u0578\u0572\u0561\u0575\u056b\u0576",
"Copy": "\u054a\u0561\u057f\u0573\u0565\u0576\u0565\u056c",
"Align left": "\u0541\u0561\u056d\u0561\u056f\u0578\u0572\u0574\u0575\u0561 \u0570\u0561\u057e\u0561\u057d\u0561\u0580\u0578\u0582\u0569\u0575\u0578\u0582\u0576",
"Visual aids": "\u0551\u0578\u0582\u0581\u0561\u0564\u0580\u0565\u056c \u056f\u0578\u0576\u057f\u0578\u0582\u0580\u0576\u0565\u0580\u0568",
"Lower Greek": "\u0553\u0578\u0584\u0580\u0561\u057f\u0561\u057c \u0570\u0578\u0582\u0576\u0561\u056f\u0561\u0576 \u057f\u0561\u057c\u0565\u0580",
"Square": "\u0554\u0561\u057c\u0561\u056f\u0578\u0582\u057d\u056b",
"Default": "\u054d\u057f\u0561\u0576\u0564\u0561\u0580\u057f",
"Lower Alpha": "\u0553\u0578\u0584\u0580\u0561\u057f\u0561\u057c \u056c\u0561\u057f\u056b\u0576\u0561\u056f\u0561\u0576 \u057f\u0561\u057c\u0565\u0580",
"Circle": "\u0547\u0580\u057b\u0561\u0576",
"Disc": "\u053f\u056c\u0578\u0580",
"Upper Alpha": "\u0544\u0565\u056e\u0561\u057f\u0561\u057c \u056c\u0561\u057f\u056b\u0576\u0565\u0580\u0565\u0576 \u057f\u0561\u057c\u0565\u0580",
"Upper Roman": "\u0544\u0565\u056e\u0561\u057f\u0561\u057c \u0570\u057c\u0578\u0574\u0565\u0561\u056f\u0561\u0576 \u0569\u057e\u0565\u0580",
"Lower Roman": "\u0553\u0578\u0584\u0580\u0561\u057f\u0561\u057c \u0570\u057c\u0578\u0574\u0565\u0561\u056f\u0561\u0576 \u0569\u057e\u0565\u0580",
"Name": "\u0531\u0576\u0578\u0582\u0576",
"Anchor": "\u053d\u0561\u0580\u056b\u057d\u056d",
"You have unsaved changes are you sure you want to navigate away?": "\u053f\u0561\u0576 \u0579\u057a\u0561\u0570\u057a\u0561\u0576\u057e\u0561\u056e \u0583\u0578\u0583\u0578\u056d\u0578\u0582\u0569\u0575\u0578\u0582\u0576\u0576\u0565\u0580\u0589 \u0534\u0578\u0582\u0584 \u056b\u0580\u0578\u055e\u0584 \u0578\u0582\u0566\u0578\u0582\u0574 \u0565\u0584 \u0564\u0578\u0582\u0580\u057d \u0563\u0561\u056c",
"Restore last draft": "\u054e\u0565\u0580\u0561\u056f\u0561\u0576\u0563\u0576\u0565\u056c \u057e\u0565\u0580\u057b\u056b\u0576 \u0576\u0561\u056d\u0561\u0563\u056b\u056e\u0568",
"Special character": "\u0540\u0561\u057f\u0578\u0582\u056f \u057d\u056b\u0574\u057e\u0578\u056c\u0576\u0565\u0580",
"Source code": "\u053e\u0580\u0561\u0563\u0580\u0561\u0575\u056b\u0576 \u056f\u0578\u0564",
"Right to left": "\u0531\u057b\u056b\u0581 \u0571\u0561\u056d",
"Left to right": "\u0541\u0561\u056d\u056b\u0581 \u0561\u057b",
"Emoticons": "\u054d\u0574\u0561\u0575\u056c\u056b\u056f\u0576\u0565\u0580",
"Robots": "Robots",
"Document properties": "\u0553\u0561\u057d\u057f\u0561\u0569\u0572\u0569\u056b \u0570\u0561\u057f\u056f\u0578\u0582\u0569\u0575\u0578\u0582\u0576\u0576\u0565\u0580\u0568",
"Title": "\u054e\u0565\u0580\u0576\u0561\u0563\u056b\u0580",
"Keywords": "\u0548\u0580\u0578\u0576\u0578\u0572\u0561\u056f\u0561\u0576 \u0562\u0561\u057c\u0565\u0580",
"Encoding": "\u053f\u0578\u0564\u0561\u057e\u0578\u0580\u0578\u0582\u0574",
"Description": "\u0546\u056f\u0561\u0580\u0561\u0563\u0580\u0578\u0582\u0569\u0575\u0578\u0582\u0576",
"Author": "\u0540\u0565\u0572\u056b\u0576\u0561\u056f",
"Fullscreen": "\u0531\u0574\u0562\u0578\u0572\u057b \u0567\u056f\u0580\u0561\u0576\u0578\u057e",
"Horizontal line": "\u0540\u0578\u0580\u056b\u0566\u0578\u0576\u0561\u056f\u0561\u0576 \u0563\u056b\u056e",
"Horizontal space": "\u0540\u0578\u0580\u056b\u0566\u0578\u0576\u0561\u056f\u0561\u0576 \u057f\u0561\u0580\u0561\u056e\u0578\u0582\u0569\u0575\u0578\u0582\u0576",
"Insert\/edit image": "\u054f\u0565\u0572\u0561\u0564\u0580\u0565\u056c\/\u056d\u0574\u0562\u0561\u0563\u0580\u0565\u056c \u0576\u056f\u0561\u0580",
"General": "\u0533\u056c\u056d\u0561\u057e\u0578\u0580",
"Advanced": "\u053c\u0580\u0561\u0581\u0578\u0582\u0581\u056b\u0579",
"Source": "\u0546\u056f\u0561\u0580\u056b \u0570\u0561\u057d\u0581\u0565",
"Border": "\u0535\u0566\u0580\u0561\u0563\u056b\u056e",
"Constrain proportions": "\u054a\u0561\u0570\u057a\u0561\u0576\u0565\u056c \u0574\u0561\u0577\u057f\u0561\u0562\u0561\u057e\u0578\u0580\u0578\u0582\u0574\u0568",
"Vertical space": "\u0548\u0582\u0572\u0572\u0561\u0570\u0561\u0575\u0561\u0581 \u057f\u0561\u0580\u0561\u056e\u0578\u0582\u0569\u0575\u0578\u0582\u0576",
"Image description": "\u0546\u056f\u0561\u0580\u0561\u0563\u0580\u0578\u0582\u0569\u0575\u0578\u0582\u0576",
"Style": "\u0548\u0573",
"Dimensions": "\u0549\u0561\u0583\u0565\u0580",
"Insert image": "\u054f\u0565\u0572\u0561\u0564\u0580\u0565\u056c \u0576\u056f\u0561\u0580",
"Insert date\/time": "\u054f\u0565\u0572\u0561\u0564\u0580\u0565\u056c \u0561\u0574\u057d\u0561\u0569\u056b\u057e\/\u056a\u0561\u0574\u0561\u0576\u0561\u056f",
"Remove link": "\u054b\u0576\u057b\u0565\u056c \u0570\u0572\u0578\u0582\u0574\u0568",
"Url": "Url",
"Text to display": "\u0540\u0572\u0574\u0561\u0576 \u057f\u0565\u0584\u057d\u057f",
"Anchors": "\u053d\u0561\u0580\u056b\u057d\u056d\u0576\u0565\u0580",
"Insert link": "\u054f\u0565\u0572\u0561\u0564\u0580\u0565\u056c \u0570\u0572\u0578\u0582\u0574",
"New window": "\u0546\u0578\u0580 \u057a\u0561\u057f\u0578\u0582\u0570\u0561\u0576",
"None": "\u0548\u0579\u056b\u0576\u0579",
"The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?": "The URL you entered seems to be an external link. Do you want to add the required http:\/\/ prefix?",
"Target": "\u0539\u056b\u0580\u0561\u056d",
"The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?": "The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?",
"Insert\/edit link": "\u054f\u0565\u0572\u0561\u0564\u0580\u0565\u056c\/\u056d\u0574\u0562\u0561\u0563\u0580\u0565\u056c \u0570\u0572\u0578\u0582\u0574",
"Insert\/edit video": "\u054f\u0565\u0572\u0561\u0564\u0580\u0565\u056c\/\u056d\u0574\u0562\u0561\u0563\u0580\u0565\u056c \u057e\u056b\u0564\u0565\u0578",
"Poster": "\u054a\u0561\u057d\u057f\u0561\u057c",
"Alternative source": "\u0531\u0575\u056c\u0568\u0576\u057f\u0580\u0561\u0576\u0584\u0561\u0575\u056b\u0576 \u056f\u0578\u0564",
"Paste your embed code below:": "\u054f\u0565\u0572\u0561\u0564\u0580\u0565\u0584 \u0541\u0565\u0580 \u056f\u0578\u0564\u0568 \u0561\u0575\u057d\u057f\u0565\u0572\u055d",
"Insert video": "\u054f\u0565\u0572\u0561\u0564\u0580\u0565\u056c \u057e\u056b\u0564\u0565\u0578",
"Embed": "\u054f\u0565\u0572\u0561\u0564\u0580\u057e\u0578\u0572 \u056f\u0578\u0564",
"Nonbreaking space": "\u0531\u057c\u0561\u0576\u0581 \u0576\u0578\u0580 \u057f\u0578\u0572\u056b \u0562\u0561\u0581\u0561\u057f",
"Page break": "\u054f\u0565\u0572\u0561\u0564\u0580\u0565\u056c \u0567\u057b\u056b \u0561\u0576\u057b\u0561\u057f\u056b\u0579",
"Paste as text": "\u054f\u0565\u0572\u0561\u0564\u0580\u0565\u056c \u0578\u0580\u057a\u0565\u057d \u057f\u0565\u0584\u057d\u057f",
"Preview": "\u0546\u0561\u056d\u0576\u0561\u056f\u0561\u0576 \u0564\u056b\u057f\u0578\u0582\u0574",
"Print": "\u054f\u057a\u0565\u056c",
"Save": "\u054a\u0561\u0570\u057a\u0561\u0576\u0565\u056c",
"Could not find the specified string.": "\u0546\u0577\u057e\u0561\u056e \u057f\u0565\u0584\u057d\u057f\u0568 \u0579\u056b \u0563\u057f\u0576\u057e\u0565\u056c",
"Replace": "\u0553\u0578\u056d\u0561\u0580\u056b\u0576\u0565\u056c",
"Next": "\u0540\u0561\u057b\u0578\u0580\u0564",
"Whole words": "\u0532\u0561\u057c\u0565\u0580\u0568 \u0561\u0574\u0562\u0578\u0572\u057b\u0578\u0582\u0569\u0575\u0561\u0574\u0562",
"Find and replace": "\u0553\u0576\u057f\u0580\u0565\u056c \u0587 \u0583\u0578\u056d\u0561\u0580\u056b\u0576\u0565\u056c",
"Replace with": "\u0553\u0578\u056d\u0561\u0580\u056b\u0576\u0565\u056c",
"Find": "\u0553\u0576\u057f\u0580\u0565\u056c",
"Replace all": "\u0553\u0578\u056d\u0561\u0580\u056b\u0576\u0565\u056c \u0562\u0578\u056c\u0578\u0580\u0568",
"Match case": "\u0540\u0561\u0577\u057e\u056b \u0561\u057c\u0576\u0565\u056c \u057c\u0565\u0563\u056b\u057d\u057f\u0578\u0580\u0568",
"Prev": "\u0546\u0561\u056d\u0578\u0580\u0564",
"Spellcheck": "\u0548\u0582\u0572\u0572\u0561\u0563\u0580\u0578\u0582\u0569\u0575\u0578\u0582\u0576",
"Finish": "\u0531\u057e\u0561\u0580\u057f\u0565\u056c",
"Ignore all": "\u0531\u0576\u057f\u0565\u057d\u0565\u056c \u0562\u0578\u056c\u0578\u0580\u0568",
"Ignore": "\u0531\u0576\u057f\u0565\u057d\u0565\u056c",
"Insert row before": "\u0531\u057e\u0565\u056c\u0561\u0581\u0576\u0565\u056c \u057f\u0578\u0572 \u057e\u0565\u0580\u0587\u0578\u0582\u0574",
"Rows": "\u054f\u0578\u0572\u0565\u0580",
"Height": "\u0532\u0561\u0580\u0571\u0580\u0578\u0582\u0569\u0575\u0578\u0582\u0576",
"Paste row after": "\u054f\u0565\u0572\u0561\u0564\u0580\u0565\u056c \u057f\u0578\u0572\u0568 \u0576\u0565\u0580\u0584\u0587\u0578\u0582\u0574",
"Alignment": "\u0540\u0561\u057e\u0561\u057d\u0561\u0580\u0565\u0581\u0578\u0582\u0574",
"Column group": "\u054d\u0575\u0578\u0582\u0576\u0575\u0561\u056f\u0576\u0565\u0580\u056b \u056d\u0578\u0582\u0574\u0562",
"Row": "\u054f\u0578\u0572",
"Insert column before": "\u0531\u057e\u0565\u056c\u0561\u0581\u0576\u0565\u056c \u0576\u0578\u0580 \u057d\u0575\u0578\u0582\u0576 \u0571\u0561\u056d\u056b\u0581",
"Split cell": "\u0532\u0561\u056a\u0561\u0576\u0565\u056c \u057e\u0561\u0576\u0564\u0561\u056f\u0568",
"Cell padding": "\u0546\u0565\u0580\u0584\u056b\u0576 \u057f\u0561\u0580\u0561\u056e\u0578\u0582\u0569\u0575\u0578\u0582\u0576",
"Cell spacing": "\u0531\u0580\u057f\u0561\u0584\u056b\u0576 \u057f\u0561\u0580\u0561\u056e\u0578\u0582\u0569\u0575\u0578\u0582\u0576",
"Row type": "\u054f\u0578\u0572\u056b \u057f\u056b\u057a",
"Insert table": "\u054f\u0565\u0572\u0561\u0564\u0580\u0565\u056c \u0561\u0572\u0575\u0578\u0582\u057d\u0561\u056f",
"Body": "\u054a\u0561\u0580\u0578\u0582\u0576\u0561\u056f\u0578\u0582\u0569\u0575\u0578\u0582\u0576",
"Caption": "\u054e\u0565\u0580\u0576\u0561\u0563\u056b\u0580",
"Footer": "\u0531\u0572\u0575\u0578\u0582\u057d\u0561\u056f\u056b \u057d\u057f\u0578\u0580\u056b\u0576 \u0570\u0561\u057f\u057e\u0561\u056e",
"Delete row": "\u054b\u0576\u057b\u0565\u056c \u057f\u0578\u0572\u0568",
"Paste row before": "\u054f\u0565\u0572\u0561\u0564\u0580\u0565\u056c \u057f\u0578\u0572\u0568 \u057e\u0565\u0580\u0587\u0578\u0582\u0574",
"Scope": "Scope",
"Delete table": "\u054b\u0576\u057b\u0565\u056c \u0561\u0572\u0575\u0578\u0582\u057d\u0561\u056f\u0568",
"Header cell": "\u054e\u0565\u0580\u0576\u0561\u0563\u0580\u056b \u057e\u0561\u0576\u0564\u0561\u056f\u0576\u0565\u0580",
"Column": "\u054d\u0575\u0578\u0582\u0576\u0575\u0561\u056f",
"Cell": "\u054e\u0561\u0576\u0564\u0561\u056f",
"Header": "\u054e\u0565\u0580\u0576\u0561\u0563\u056b\u0580",
"Cell type": "\u054e\u0561\u0576\u0564\u0561\u056f\u056b \u057f\u056b\u057a",
"Copy row": "\u054a\u0561\u057f\u0573\u0565\u0576\u0565\u056c \u057f\u0578\u0572\u0568",
"Row properties": "\u054f\u0578\u0572\u056b \u0570\u0561\u057f\u056f\u0578\u0582\u0569\u0575\u0578\u0582\u0576\u0576\u0565\u0580\u0568",
"Table properties": "\u0531\u0572\u0575\u0578\u0582\u057d\u0561\u056f\u056b \u0570\u0561\u057f\u056f\u0578\u0582\u0569\u0575\u0578\u0582\u0576\u0576\u0565\u0580\u0568",
"Row group": "\u054f\u0578\u0572\u0565\u0580\u056b \u056d\u0578\u0582\u0574\u0562",
"Right": "\u0531\u057b",
"Insert column after": "\u0531\u057e\u0565\u056c\u0561\u0581\u0576\u0565\u056c \u0576\u0578\u0580 \u057d\u0575\u0578\u0582\u0576 \u0561\u057b\u056b\u0581",
"Cols": "\u054d\u0575\u0578\u0582\u0576\u0575\u0561\u056f\u0576\u0565\u0580",
"Insert row after": "\u0531\u057e\u0565\u056c\u0561\u0581\u0576\u0565\u056c \u057f\u0578\u0572 \u0576\u0565\u0580\u0584\u0587\u0578\u0582\u0574",
"Width": "\u053c\u0561\u0575\u0576\u0578\u0582\u0569\u0575\u0578\u0582\u0576",
"Cell properties": "\u054e\u0561\u0576\u0564\u0561\u056f\u056b \u0570\u0561\u057f\u056f\u0578\u0582\u0569\u0575\u0578\u0582\u0576\u0576\u0565\u0580\u0568",
"Left": "\u0541\u0561\u056d",
"Cut row": "\u053f\u057f\u0580\u0565\u056c \u057f\u0578\u0572\u0568",
"Delete column": "\u0541\u0576\u057b\u0565\u056c \u057d\u0575\u0578\u0582\u0576\u0568",
"Center": "\u053f\u0565\u0576\u057f\u0580\u0578\u0576",
"Merge cells": "\u0544\u056b\u0561\u057e\u0578\u0580\u0565\u056c \u057e\u0561\u0576\u0564\u0561\u056f\u0576\u0565\u0580\u0568",
"Insert template": "\u054f\u0565\u0572\u0561\u0564\u0580\u0565\u056c \u0571\u0587\u0561\u0576\u0574\u0578\u0582\u0577",
"Templates": "\u0541\u0587\u0561\u0576\u0574\u0578\u0582\u0577\u0576\u0565\u0580",
"Background color": "\u0556\u0578\u0576\u056b \u0563\u0578\u0582\u0575\u0576",
"Text color": "\u054f\u0561\u057c\u056b \u0563\u0578\u0582\u0575\u0576",
"Show blocks": "\u0551\u0578\u0582\u0581\u0561\u0564\u0580\u0565\u056c \u0562\u056c\u0578\u056f\u0576\u0565\u0580\u0568",
"Show invisible characters": "\u0551\u0578\u0582\u0575\u0581 \u057f\u0561\u056c \u0561\u0576\u057f\u0565\u057d\u0561\u0576\u0565\u056c\u056b \u057d\u056b\u0574\u057e\u0578\u056c\u0576\u0565\u0580\u0568",
"Words: {0}": "\u0532\u0561\u057c\u0565\u0580\u056b \u0584\u0561\u0576\u0561\u056f: {0}",
"Insert": "\u054f\u0565\u0572\u0561\u0564\u0580\u0565\u056c",
"File": "\u0556\u0561\u0575\u056c",
"Edit": "\u053d\u0574\u0562\u0561\u0563\u0580\u0565\u056c",
"Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help": "\u054f\u0565\u0584\u057d\u057f\u0561\u0575\u056b\u0576 \u0564\u0561\u0577\u057f\u0589 \u054d\u0565\u0572\u0574\u0565\u0584 ALT-F9 \u0574\u0565\u0576\u0575\u0578\u0582\u056b \u0570\u0561\u0574\u0561\u0580\u0589 ALT-F10 \u0563\u0578\u0580\u056e\u056b\u0584\u0576\u0565\u0580\u056b \u057e\u0561\u0570\u0561\u0576\u0561\u056f\u0589 \u054d\u0565\u0572\u0574\u0565\u0584 ALT-0 \u0585\u0563\u0576\u0578\u0582\u0569\u0575\u0561\u0576 \u0570\u0561\u0574\u0561\u0580",
"Tools": "\u0533\u0578\u0580\u056e\u056b\u0584\u0576\u0565\u0580",
"View": "\u054f\u0565\u057d\u0584",
"Table": "\u0531\u0572\u0575\u0578\u0582\u057d\u0561\u056f",
"Format": "\u0556\u0578\u0580\u0574\u0561\u057f"
});
Diff truncated after the above file
program/js/tinymce/langs/id.js program/js/tinymce/langs/is_IS.js program/js/tinymce/langs/it.js program/js/tinymce/langs/ja.js program/js/tinymce/langs/ka_GE.js program/js/tinymce/langs/kk.js program/js/tinymce/langs/km_KH.js program/js/tinymce/langs/ko_KR.js program/js/tinymce/langs/lb.js program/js/tinymce/langs/lt.js program/js/tinymce/langs/lv.js program/js/tinymce/langs/ml.js program/js/tinymce/langs/ml_IN.js program/js/tinymce/langs/mn_MN.js program/js/tinymce/langs/nb_NO.js program/js/tinymce/langs/nl.js program/js/tinymce/langs/pl.js program/js/tinymce/langs/pt_BR.js program/js/tinymce/langs/pt_PT.js program/js/tinymce/langs/ro.js program/js/tinymce/langs/ru.js program/js/tinymce/langs/si_LK.js program/js/tinymce/langs/sk.js program/js/tinymce/langs/sl_SI.js program/js/tinymce/langs/sr.js program/js/tinymce/langs/sv_SE.js program/js/tinymce/langs/ta.js program/js/tinymce/langs/ta_IN.js program/js/tinymce/langs/tg.js program/js/tinymce/langs/th_TH.js program/js/tinymce/langs/tr_TR.js program/js/tinymce/langs/tt.js program/js/tinymce/langs/ug.js program/js/tinymce/langs/uk.js program/js/tinymce/langs/uk_UA.js program/js/tinymce/langs/vi.js program/js/tinymce/langs/vi_VN.js program/js/tinymce/langs/zh_CN.js program/js/tinymce/langs/zh_TW.js program/js/tinymce/license.txt program/js/tinymce/plugins/advlist/plugin.min.js program/js/tinymce/plugins/anchor/plugin.min.js program/js/tinymce/plugins/autolink/plugin.min.js program/js/tinymce/plugins/autoresize/plugin.min.js program/js/tinymce/plugins/autosave/plugin.min.js program/js/tinymce/plugins/bbcode/plugin.min.js program/js/tinymce/plugins/charmap/plugin.min.js program/js/tinymce/plugins/code/plugin.min.js program/js/tinymce/plugins/colorpicker/plugin.min.js program/js/tinymce/plugins/contextmenu/plugin.min.js program/js/tinymce/plugins/directionality/plugin.min.js program/js/tinymce/plugins/emoticons/img/smiley-cool.gif program/js/tinymce/plugins/emoticons/img/smiley-cry.gif program/js/tinymce/plugins/emoticons/img/smiley-embarassed.gif program/js/tinymce/plugins/emoticons/img/smiley-foot-in-mouth.gif program/js/tinymce/plugins/emoticons/img/smiley-frown.gif program/js/tinymce/plugins/emoticons/img/smiley-innocent.gif program/js/tinymce/plugins/emoticons/img/smiley-kiss.gif program/js/tinymce/plugins/emoticons/img/smiley-laughing.gif program/js/tinymce/plugins/emoticons/img/smiley-money-mouth.gif program/js/tinymce/plugins/emoticons/img/smiley-sealed.gif program/js/tinymce/plugins/emoticons/img/smiley-smile.gif program/js/tinymce/plugins/emoticons/img/smiley-surprised.gif program/js/tinymce/plugins/emoticons/img/smiley-tongue-out.gif program/js/tinymce/plugins/emoticons/img/smiley-undecided.gif program/js/tinymce/plugins/emoticons/img/smiley-wink.gif program/js/tinymce/plugins/emoticons/img/smiley-yell.gif program/js/tinymce/plugins/emoticons/plugin.min.js program/js/tinymce/plugins/fullpage/plugin.min.js program/js/tinymce/plugins/fullscreen/plugin.min.js program/js/tinymce/plugins/hr/plugin.min.js program/js/tinymce/plugins/image/plugin.min.js program/js/tinymce/plugins/importcss/plugin.min.js program/js/tinymce/plugins/insertdatetime/plugin.min.js program/js/tinymce/plugins/layer/plugin.min.js program/js/tinymce/plugins/legacyoutput/plugin.min.js program/js/tinymce/plugins/link/plugin.min.js program/js/tinymce/plugins/lists/plugin.min.js program/js/tinymce/plugins/media/moxieplayer.swf program/js/tinymce/plugins/media/plugin.min.js program/js/tinymce/plugins/nonbreaking/plugin.min.js program/js/tinymce/plugins/noneditable/plugin.min.js program/js/tinymce/plugins/pagebreak/plugin.min.js program/js/tinymce/plugins/paste/plugin.min.js program/js/tinymce/plugins/preview/plugin.min.js program/js/tinymce/plugins/print/plugin.min.js program/js/tinymce/plugins/save/plugin.min.js program/js/tinymce/plugins/searchreplace/plugin.min.js program/js/tinymce/plugins/spellchecker/plugin.min.js program/js/tinymce/plugins/tabfocus/plugin.min.js program/js/tinymce/plugins/table/plugin.min.js program/js/tinymce/plugins/template/plugin.min.js program/js/tinymce/plugins/textcolor/plugin.min.js program/js/tinymce/plugins/visualblocks/css/visualblocks.css program/js/tinymce/plugins/visualblocks/plugin.min.js program/js/tinymce/plugins/visualchars/plugin.min.js program/js/tinymce/plugins/wordcount/plugin.min.js program/js/tinymce/roundcube/browser.css program/js/tinymce/roundcube/content.css program/js/tinymce/roundcube/video.png program/js/tinymce/skins/lightgray/content.inline.min.css program/js/tinymce/skins/lightgray/content.min.css program/js/tinymce/skins/lightgray/fonts/readme.md program/js/tinymce/skins/lightgray/fonts/tinymce-small.dev.svg program/js/tinymce/skins/lightgray/fonts/tinymce-small.eot program/js/tinymce/skins/lightgray/fonts/tinymce-small.svg program/js/tinymce/skins/lightgray/fonts/tinymce-small.ttf program/js/tinymce/skins/lightgray/fonts/tinymce-small.woff program/js/tinymce/skins/lightgray/fonts/tinymce.dev.svg program/js/tinymce/skins/lightgray/fonts/tinymce.eot program/js/tinymce/skins/lightgray/fonts/tinymce.svg program/js/tinymce/skins/lightgray/fonts/tinymce.ttf program/js/tinymce/skins/lightgray/fonts/tinymce.woff program/js/tinymce/skins/lightgray/img/anchor.gif program/js/tinymce/skins/lightgray/img/loader.gif program/js/tinymce/skins/lightgray/img/object.gif program/js/tinymce/skins/lightgray/img/trans.gif program/js/tinymce/skins/lightgray/skin.ie7.min.css program/js/tinymce/skins/lightgray/skin.min.css program/js/tinymce/themes/modern/theme.min.js program/js/tinymce/tinymce.min.js program/js/treelist.js program/lib/Auth/SASL.php (deleted) program/lib/Auth/SASL/Anonymous.php (deleted) program/lib/Auth/SASL/Common.php (deleted) program/lib/Auth/SASL/CramMD5.php (deleted) program/lib/Auth/SASL/DigestMD5.php (deleted) program/lib/Auth/SASL/External.php (deleted) program/lib/Auth/SASL/Login.php (deleted) program/lib/Auth/SASL/Plain.php (deleted) program/lib/Auth/SASL/SCRAM.php (deleted) program/lib/Crypt/GPG.php (deleted) program/lib/Crypt/GPG/ByteUtils.php (deleted) program/lib/Crypt/GPG/DecryptStatusHandler.php (deleted) program/lib/Crypt/GPG/Engine.php (deleted) program/lib/Crypt/GPG/Exceptions.php (deleted) program/lib/Crypt/GPG/Key.php (deleted) program/lib/Crypt/GPG/KeyGenerator.php (deleted) program/lib/Crypt/GPG/KeyGeneratorErrorHandler.php (deleted) program/lib/Crypt/GPG/KeyGeneratorStatusHandler.php (deleted) program/lib/Crypt/GPG/PinEntry.php (deleted) program/lib/Crypt/GPG/ProcessControl.php (deleted) program/lib/Crypt/GPG/Signature.php (deleted) program/lib/Crypt/GPG/SubKey.php (deleted) program/lib/Crypt/GPG/UserId.php (deleted) program/lib/Crypt/GPG/VerifyStatusHandler.php (deleted) program/lib/Crypt/GPGAbstract.php (deleted) program/lib/Mail/mime.php (deleted) program/lib/Mail/mimeDecode.php (deleted) program/lib/Mail/mimePart.php (deleted) program/lib/Net/IDNA2.php (deleted) program/lib/Net/IDNA2/Exception.php (deleted) program/lib/Net/IDNA2/Exception/Nameprep.php (deleted) program/lib/Net/SMTP.php (deleted) program/lib/Net/Sieve.php (deleted) program/lib/Net/Socket.php (deleted) program/lib/PEAR.php (deleted) program/lib/PEAR5.php (deleted) program/lib/Roundcube/bootstrap.php program/lib/Roundcube/html.php program/lib/Roundcube/rcube.php program/lib/Roundcube/rcube_addressbook.php program/lib/Roundcube/rcube_cache.php program/lib/Roundcube/rcube_charset.php program/lib/Roundcube/rcube_contacts.php program/lib/Roundcube/rcube_csv2vcard.php program/lib/Roundcube/rcube_html2text.php program/lib/Roundcube/rcube_image.php program/lib/Roundcube/rcube_imap.php program/lib/Roundcube/rcube_imap_generic.php program/lib/Roundcube/rcube_imap_search.php program/lib/Roundcube/rcube_ldap.php program/lib/Roundcube/rcube_ldap_generic.php program/lib/Roundcube/rcube_ldap_result.php (deleted) program/lib/Roundcube/rcube_message_header.php program/lib/Roundcube/rcube_mime.php program/lib/Roundcube/rcube_output.php program/lib/Roundcube/rcube_plugin.php program/lib/Roundcube/rcube_plugin_api.php program/lib/Roundcube/rcube_result_multifolder.php program/lib/Roundcube/rcube_session.php program/lib/Roundcube/rcube_spellchecker.php program/lib/Roundcube/rcube_storage.php program/lib/Roundcube/rcube_string_replacer.php program/lib/Roundcube/rcube_text2html.php program/lib/Roundcube/rcube_utils.php program/lib/Roundcube/rcube_vcard.php program/lib/Roundcube/rcube_washtml.php program/lib/encoding/CP1250.map (deleted) program/lib/encoding/CP1251.map (deleted) program/lib/encoding/CP1252.map (deleted) program/lib/encoding/CP1253.map (deleted) program/lib/encoding/CP1254.map (deleted) program/lib/encoding/CP1255.map (deleted) program/lib/encoding/CP1256.map (deleted) program/lib/encoding/CP1257.map (deleted) program/lib/encoding/CP1258.map (deleted) program/lib/encoding/ISO-8859-1.map (deleted) program/lib/encoding/ISO-8859-10.map (deleted) program/lib/encoding/ISO-8859-11.map (deleted) program/lib/encoding/ISO-8859-13.map (deleted) program/lib/encoding/ISO-8859-14.map (deleted) program/lib/encoding/ISO-8859-15.map (deleted) program/lib/encoding/ISO-8859-16.map (deleted) program/lib/encoding/ISO-8859-2.map (deleted) program/lib/encoding/ISO-8859-3.map (deleted) program/lib/encoding/ISO-8859-4.map (deleted) program/lib/encoding/ISO-8859-5.map (deleted) program/lib/encoding/ISO-8859-6.map (deleted) program/lib/encoding/ISO-8859-7.map (deleted) program/lib/encoding/ISO-8859-8.map (deleted) program/lib/encoding/ISO-8859-9.map (deleted) program/lib/encoding/KOI8R.map (deleted) program/lib/encoding/KSC5601.map (deleted) program/lib/utf8.class.php (deleted) program/localization/ar/labels.inc program/localization/ar_SA/labels.inc program/localization/ar_SA/messages.inc program/localization/ast/labels.inc program/localization/ast/messages.inc program/localization/az_AZ/labels.inc program/localization/az_AZ/messages.inc program/localization/be_BE/labels.inc program/localization/be_BE/messages.inc program/localization/bg_BG/labels.inc program/localization/bg_BG/messages.inc program/localization/bn_BD/labels.inc program/localization/bn_BD/messages.inc program/localization/br/labels.inc program/localization/br/messages.inc program/localization/bs_BA/labels.inc program/localization/bs_BA/messages.inc program/localization/ca_ES/labels.inc program/localization/ca_ES/messages.inc program/localization/cs_CZ/labels.inc program/localization/cs_CZ/messages.inc program/localization/cy_GB/labels.inc program/localization/cy_GB/messages.inc program/localization/da_DK/labels.inc program/localization/da_DK/messages.inc program/localization/de_CH/csv2vcard.inc program/localization/de_CH/labels.inc program/localization/de_CH/messages.inc program/localization/de_DE/csv2vcard.inc program/localization/de_DE/labels.inc program/localization/de_DE/messages.inc program/localization/el_GR/labels.inc program/localization/el_GR/messages.inc program/localization/en_CA/labels.inc program/localization/en_CA/messages.inc program/localization/en_GB/labels.inc program/localization/en_GB/messages.inc program/localization/en_US/labels.inc program/localization/en_US/messages.inc program/localization/eo/labels.inc program/localization/es_419/labels.inc program/localization/es_419/messages.inc program/localization/es_AR/labels.inc program/localization/es_AR/messages.inc program/localization/es_ES/labels.inc program/localization/es_ES/messages.inc program/localization/et_EE/labels.inc program/localization/et_EE/messages.inc program/localization/eu_ES/labels.inc program/localization/eu_ES/messages.inc program/localization/fa_AF/labels.inc program/localization/fa_AF/messages.inc program/localization/fa_IR/labels.inc program/localization/fa_IR/messages.inc program/localization/fi_FI/labels.inc program/localization/fi_FI/messages.inc program/localization/fo_FO/labels.inc program/localization/fo_FO/messages.inc program/localization/fr_FR/labels.inc program/localization/fr_FR/messages.inc program/localization/fy_NL/labels.inc program/localization/ga_IE/labels.inc program/localization/gl_ES/labels.inc program/localization/gl_ES/messages.inc program/localization/he_IL/labels.inc program/localization/he_IL/messages.inc program/localization/hi_IN/labels.inc program/localization/hr_HR/labels.inc program/localization/hr_HR/messages.inc program/localization/hu_HU/labels.inc program/localization/hu_HU/messages.inc program/localization/hy_AM/labels.inc program/localization/hy_AM/messages.inc program/localization/ia/labels.inc program/localization/id_ID/labels.inc program/localization/id_ID/messages.inc program/localization/is_IS/labels.inc program/localization/it_IT/csv2vcard.inc program/localization/it_IT/labels.inc program/localization/it_IT/messages.inc program/localization/ja_JP/labels.inc program/localization/ja_JP/messages.inc program/localization/ka_GE/labels.inc program/localization/ka_GE/messages.inc program/localization/km_KH/labels.inc program/localization/kn_IN/labels.inc program/localization/ko_KR/labels.inc program/localization/ko_KR/messages.inc program/localization/ku/labels.inc program/localization/lb_LU/labels.inc program/localization/lb_LU/messages.inc program/localization/lt_LT/labels.inc program/localization/lt_LT/messages.inc program/localization/lv_LV/labels.inc program/localization/lv_LV/messages.inc program/localization/mk_MK/labels.inc program/localization/mk_MK/messages.inc program/localization/ml_IN/labels.inc program/localization/ml_IN/messages.inc program/localization/mr_IN/labels.inc program/localization/mr_IN/messages.inc program/localization/ms_MY/labels.inc program/localization/nb_NO/labels.inc program/localization/nb_NO/messages.inc program/localization/ne_NP/labels.inc program/localization/nl_BE/labels.inc program/localization/nl_BE/messages.inc program/localization/nl_NL/labels.inc program/localization/nl_NL/messages.inc program/localization/nn_NO/labels.inc program/localization/nn_NO/messages.inc program/localization/pl_PL/labels.inc program/localization/pl_PL/messages.inc program/localization/ps/labels.inc program/localization/ps/messages.inc program/localization/pt_BR/labels.inc program/localization/pt_BR/messages.inc program/localization/pt_PT/labels.inc program/localization/pt_PT/messages.inc program/localization/ro_RO/labels.inc program/localization/ro_RO/messages.inc program/localization/ru_RU/labels.inc program/localization/ru_RU/messages.inc program/localization/si_LK/labels.inc program/localization/sk_SK/labels.inc program/localization/sk_SK/messages.inc program/localization/sl_SI/labels.inc program/localization/sl_SI/messages.inc program/localization/sq_AL/labels.inc program/localization/sr_CS/labels.inc program/localization/sr_CS/messages.inc program/localization/sv_SE/labels.inc program/localization/sv_SE/messages.inc program/localization/ta_IN/labels.inc program/localization/ta_IN/messages.inc program/localization/th_TH/labels.inc program/localization/ti/labels.inc program/localization/tr_TR/labels.inc program/localization/tr_TR/messages.inc program/localization/uk_UA/labels.inc program/localization/uk_UA/messages.inc program/localization/ur_PK/labels.inc program/localization/vi_VN/labels.inc program/localization/vi_VN/messages.inc program/localization/zh_CN/labels.inc program/localization/zh_CN/messages.inc program/localization/zh_TW/labels.inc program/localization/zh_TW/messages.inc program/steps/addressbook/delete.inc program/steps/addressbook/edit.inc program/steps/addressbook/export.inc program/steps/addressbook/func.inc program/steps/addressbook/move.inc program/steps/addressbook/photo.inc program/steps/addressbook/save.inc program/steps/addressbook/show.inc program/steps/addressbook/undo.inc program/steps/mail/attachments.inc program/steps/mail/autocomplete.inc program/steps/mail/check_recent.inc program/steps/mail/compose.inc program/steps/mail/copy.inc program/steps/mail/folders.inc program/steps/mail/func.inc program/steps/mail/get.inc program/steps/mail/list.inc program/steps/mail/list_contacts.inc program/steps/mail/move_del.inc program/steps/mail/search.inc program/steps/mail/search_contacts.inc program/steps/mail/sendmail.inc program/steps/mail/show.inc program/steps/settings/about.inc program/steps/settings/delete_identity.inc (deleted) program/steps/settings/edit_folder.inc program/steps/settings/edit_identity.inc program/steps/settings/edit_response.inc program/steps/settings/folders.inc program/steps/settings/func.inc program/steps/settings/identities.inc program/steps/settings/responses.inc program/steps/settings/save_folder.inc program/steps/settings/save_identity.inc program/steps/settings/save_prefs.inc program/steps/settings/upload.inc program/steps/utils/html2text.inc program/steps/utils/spell_html.inc program/steps/utils/text2html.inc skins/classic/addressbook.css skins/classic/common.css skins/classic/editor_content.css (deleted) skins/classic/functions.js skins/classic/images/filedrop.png skins/classic/includes/links.html skins/classic/includes/messagetoolbar.html skins/classic/mail.css skins/classic/print.css skins/classic/settings.css skins/classic/templates/about.html skins/classic/templates/addressbook.html skins/classic/templates/compose.html skins/classic/templates/folders.html skins/classic/templates/mail.html skins/classic/templates/message.html skins/classic/templates/messagepreview.html skins/larry/addressbook.css skins/larry/editor_content.css (deleted) skins/larry/images/buttons.png skins/larry/images/listicons.png skins/larry/includes/footer.html skins/larry/includes/header.html skins/larry/includes/links.html skins/larry/includes/mailtoolbar.html skins/larry/includes/settingstabs.html skins/larry/mail.css skins/larry/print.css skins/larry/settings.css skins/larry/styles.css skins/larry/templates/about.html skins/larry/templates/addressbook.html skins/larry/templates/compose.html skins/larry/templates/contactedit.html skins/larry/templates/folders.html skins/larry/templates/identities.html skins/larry/templates/importcontacts.html skins/larry/templates/login.html skins/larry/templates/mail.html skins/larry/templates/message.html skins/larry/templates/messageerror.html skins/larry/templates/messagepart.html skins/larry/templates/messagepreview.html skins/larry/templates/responses.html skins/larry/templates/settings.html skins/larry/ui.js tests/Framework/Csv2vcard.php tests/Framework/Html.php tests/Framework/Html2text.php tests/Framework/Mime.php tests/Framework/StringReplacer.php tests/Framework/Text2Html.php tests/Framework/Utils.php tests/Framework/VCard.php tests/Framework/Washtml.php tests/MailFunc.php tests/RcmailFunc.php tests/phpunit.xml tests/src/Csv2vcard/gmail.csv tests/src/Csv2vcard/gmail.vcf