From 531178c8161ee16a1a204537de01b708e3250e11 Mon Sep 17 00:00:00 2001 From: otrok7 <50595291+otrok7@users.noreply.github.com> Date: Thu, 28 Aug 2025 15:09:50 +0200 Subject: [PATCH 01/15] First pass --- admin/class-bread-admin.php | 10 +- admin/css/admin.css | 80 +- admin/css/chosen-sprite-2x.png | Bin 738 -> 0 bytes admin/css/chosen-sprite.png | Bin 538 -> 0 bytes admin/css/chosen.min.css | 3 - admin/css/select2.min.css | 1 + admin/js/bmlt_meeting_list.js | 47 +- admin/js/bread-wizard.js | 2 +- admin/js/chosen.jquery.min.js | 2 - admin/js/select2.min.js | 2 + admin/partials/_backup_restore_setup.php | 48 +- admin/partials/_bmlt_server_setup.php | 86 +-- admin/partials/_custom_section_setup.php | 12 +- admin/partials/_front_page_setup.php | 10 +- admin/partials/_layout_setup.php | 169 ++-- admin/partials/_meetings_setup.php | 161 ++-- admin/partials/bread-admin-display.php | 44 +- bmlt-meeting-list.php | 6 +- includes/class-bread-bmlt.php | 5 +- includes/class-bread-i18n.php | 2 +- includes/lang/translate_cs.php | 9 + includes/lang/translate_fa.php | 6 +- includes/lang/translate_sk.php | 9 + languages/bread-domain-fa_IR.l10n.php | 24 + languages/bread-domain-fa_IR.mo | Bin 0 -> 21373 bytes languages/bread-domain-fa_IR.po | 752 ++++++++++++++++++ languages/bread-domain.pot | 940 +++++++++++++++++++++++ languages/bread.pot | 0 public/class-bread-content-generator.php | 7 +- readme.txt | 5 +- 30 files changed, 2097 insertions(+), 345 deletions(-) delete mode 100644 admin/css/chosen-sprite-2x.png delete mode 100644 admin/css/chosen-sprite.png delete mode 100644 admin/css/chosen.min.css create mode 100644 admin/css/select2.min.css delete mode 100644 admin/js/chosen.jquery.min.js create mode 100644 admin/js/select2.min.js create mode 100644 includes/lang/translate_cs.php create mode 100644 includes/lang/translate_sk.php create mode 100644 languages/bread-domain-fa_IR.l10n.php create mode 100644 languages/bread-domain-fa_IR.mo create mode 100644 languages/bread-domain-fa_IR.po create mode 100644 languages/bread-domain.pot delete mode 100644 languages/bread.pot diff --git a/admin/class-bread-admin.php b/admin/class-bread-admin.php index d223462..1830432 100644 --- a/admin/class-bread-admin.php +++ b/admin/class-bread-admin.php @@ -71,7 +71,7 @@ public function enqueue_styles($hook) wp_enqueue_style("tooltipster", plugin_dir_url(__FILE__) . "css/tooltipster.bundle.min.css", false, "1.2", 'all'); wp_enqueue_style("tooltipster-noir", plugin_dir_url(__FILE__) . "css/tooltipster-sideTip-noir.min.css", false, "1.2", 'all'); wp_enqueue_style("admin", plugin_dir_url(__FILE__) . "css/admin.css", false, "1.2", 'all'); - wp_enqueue_style("chosen", plugin_dir_url(__FILE__) . "css/chosen.min.css", false, "1.2", 'all'); + wp_enqueue_style("select2", plugin_dir_url(__FILE__) . "css/select2.min.css", false, "1.2", 'all'); wp_enqueue_style("smartWizard-dots", plugin_dir_url(__FILE__) . "css/smart_wizard_dots.css", false, "6.0.6", 'all'); } @@ -92,7 +92,7 @@ public function enqueue_scripts($hook) wp_enqueue_script("bmlt_meeting_list", plugin_dir_url(__FILE__) . "js/bmlt_meeting_list.js", array('jquery'), "2.8.0", true); wp_enqueue_script("tooltipster", plugin_dir_url(__FILE__) . "js/tooltipster.bundle.min.js", array('jquery'), "1.2", true); wp_enqueue_script("spectrum", plugin_dir_url(__FILE__) . "js/spectrum.min.js", array('jquery'), "1.2", true); - wp_enqueue_script("chosen", plugin_dir_url(__FILE__) . "js/chosen.jquery.min.js", array('jquery'), "1.2", true); + wp_enqueue_script("select2", plugin_dir_url(__FILE__) . "js/select2.min.js", array('jquery'), "1.2", true); wp_enqueue_script("fetch-jsonp", plugin_dir_url(__FILE__) . "js/fetch-jsonp.js", array('jquery'), "1.30", true); wp_enqueue_script("smartWizard", plugin_dir_url(__FILE__) . "js/jquery.smartWizard.js", array('jquery'), "6.0.6", true); wp_enqueue_script("breadWizard", plugin_dir_url(__FILE__) . "js/bread-wizard.js", array('smartWizard'), "2.8.0", true); @@ -356,15 +356,15 @@ function pwsix_process_settings_import() $tmp = explode('.', $file_name); $extension = end($tmp); if ($extension != 'json') { - wp_die(esc_html(__('Please upload a valid .json file', 'bread'))); + wp_die(esc_html(__('Please upload a valid .json file', 'bread-domain'))); } $import_file = $_FILES['import_file']['tmp_name']; if (empty($import_file)) { - wp_die(esc_html(__('Please upload a file to import', 'bread'))); + wp_die(esc_html(__('Please upload a file to import', 'bread-domain'))); } $file_size = $_FILES['import_file']['size']; if ($file_size > 500000) { - wp_die(esc_html(__('File size greater than 500k', 'bread'))); + wp_die(esc_html(__('File size greater than 500k', 'bread-domain'))); } $encode_options = (new WP_Filesystem_Direct(null))->get_contents($import_file); while (0 === strpos(bin2hex($encode_options), 'efbbbf')) { diff --git a/admin/css/admin.css b/admin/css/admin.css index f42778a..65cfabd 100644 --- a/admin/css/admin.css +++ b/admin/css/admin.css @@ -1,7 +1,7 @@ .wpbody-content { margin-top: 0; - margin-left: 0; - margin-right: 0; + margin-inline-start: 0; + margin-inline-end: 0; height: 100%; width: 100%; } @@ -34,7 +34,7 @@ and (orientation: portrait) { } .ui-accordion .ui-accordion-icons { - padding-left: 2.2em !important; + padding-inline-start: 2.2em !important; } img.box-description { margin: 0px 10px 0px 10px; @@ -123,12 +123,12 @@ div#meeting-list-tabs-wrapper li { margin-top: 1px; color: #FFF; float: right; -margin-right: 20px; +margin-inline-end: 20px; } #meeting-list-tabs .icon-question2 { margin-top: 1px; color: #FFF; -margin-left: 5px; +margin-inline-start: 5px; } #meeting-list-tabs .icon-question2:before { content: "\e6b7"; @@ -205,8 +205,8 @@ a img.alignleft { a img.aligncenter { display: block; - margin-left: auto; - margin-right: auto + margin-inline-start: auto; + margin-inline-end: auto } .wp-caption { @@ -273,7 +273,7 @@ width:410px; vertical-align: top; border: solid 1px #D5D5D5; padding: 10px 15px; -margin-left: 5px; +margin-inline-start: 5px; margin-bottom: 10px; display: -webkit-inline-box; color: #999; @@ -293,10 +293,10 @@ font-size: 22px; } .tooltipster-icon { cursor: help; - margin-left: 10px; + margin-inline-start: 10px; background: url("images/help-image2.png") no-repeat; color: rgba(0, 0, 0, 0); - padding-right: 5px; + padding-inline-end: 5px; } .mlg.dashicons-search:before { @@ -322,17 +322,17 @@ color: #222; .ui-tabs.ui-tabs-vertical .ui-widget-header { border: none; } -.ui-tabs.ui-tabs-vertical .ui-tabs-nav { +.bmlt-ltr .ui-tabs.ui-tabs-vertical .ui-tabs-nav { float: left; width: 10em; background: #CCC; border-radius: 4px 0 0 4px; border-right: 1px solid gray; - padding-right: 20px; + padding-inline-end: 20px; padding-top: 7px; - padding-left: 0; + padding-inline-start: 0; } -#meeting-list-tabs.ui-tabs.ui-tabs-vertical .ui-tabs-nav li { +.bmlt-ltr #meeting-list-tabs.ui-tabs.ui-tabs-vertical .ui-tabs-nav li { clear: left; width: 100%; margin: 0.2em 0; @@ -373,7 +373,7 @@ color: #000; #meeting-list-tabs.ui-tabs.ui-tabs-vertical .ui-tabs-nav li:last-child { margin-bottom: 10px; } -#meeting-list-tabs.ui-tabs.ui-tabs-vertical .ui-tabs-panel { +.bmlt-ltr #meeting-list-tabs.ui-tabs.ui-tabs-vertical .ui-tabs-panel { float: left; width: 50%; border-left: 0; @@ -408,7 +408,7 @@ width: 4em !important; } .mce-listbox button { text-align: left; - padding-right: 20px !important; + padding-inline-end: 20px !important; position: relative; } /* @@ -496,13 +496,10 @@ select.service_body_select { .extra_meetings_label { margin-top: 10px; } -.exactCenter { width:800px; height:800px; position: fixed; top: 50%; left: 50%; margin-top: -100px; margin-left: -100px; } +.exactCenter { width:800px; height:800px; position: fixed; top: 50%; left: 50%; margin-top: -100px; margin-inline-start: -100px; } #extra_meetings * { font-family: 'Courier New', Courier, monospace !important; } -.chosen-container-multi .chosen-choices li.search-field input[type=text] { - width: 100% !important; -} .step-description { margin: 10px; border: solid; @@ -517,3 +514,46 @@ select.service_body_select { color: green; font-weight: bold; } + +.bmlt-rtl .ui-tabs-vertical { width: 55em; } +.bmlt-rtl .ui-tabs-vertical .ui-tabs-nav li a { display:block; } +.bmlt-rtl .ui-tabs-vertical .ui-tabs-panel { + direction:rtl; + width: 60%; + position: relative; + float: right; +} +.bmlt-rtl .ui-tabs .ui-tabs-nav li a { float:none;} + +.bmlt-rtl .ui-tabs-vertical .ui-tabs-nav { + float: right; + width: 10em; + background: #CCC; + border-radius: 4px 0 0 4px; + border-right: 1px solid gray; + padding-inline-end: 20px; + padding-top: 7px; + padding-inline-start: 0; +} +.bmlt-rtl .ui-tabs-vertical .ui-tabs-nav li { + clear: right; + width: 100%; + margin: 0.2em 0; + /* border: 1px solid gray; */ + /* border-width: 1px 1px 1px 1px; */ + /* border-radius: 4px 4px 4px 4px; */ + overflow: hidden; + position: relative; + left: -2px; + z-index: 2; +} +.bmlt-rtl .ui-tabs .ui-tabs-nav li { + float: right !important +} +.select2-container { + width: 50% !important; +} +.nav-tab-wrapper { + width: max-content !important; +} +.select2-search--inline { display: contents; } .select2-search__field:placeholder-shown { width: 100% !important; } \ No newline at end of file diff --git a/admin/css/chosen-sprite-2x.png b/admin/css/chosen-sprite-2x.png deleted file mode 100644 index 6b50545202cb4770039362c55025b0b9824663ad..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 738 zcmV<80v-K{P)oJoIWh{eAG@xkM<0ryd(K3(} zP8JV&;uuIJ4nL%g8!wSG9E$P+3QVMGgj><+00}M5I5kMzaT<~M;uJ`UhLfbp9Ahdsrux5(g+(>Q*+9wU{AuYPH0}W_u4`|q(9c->{ zt>Jn|lbhH<_x5jU6prFi#S}&XMZ=~Y5VyC3+ZN%hXciz8 zPcLpJgbIK#a49e31-%wf2zh2F&&(Nq;AL%4zA(=QJRGq`sx3y3#0_cg9Fim739XTOu1NKKjlWs`52Q+3 Uja*K~(*OVf07*qoM6N<$g3mu-GXMYp diff --git a/admin/css/chosen-sprite.png b/admin/css/chosen-sprite.png deleted file mode 100644 index c57da70b4b5b1e08a6977ddde182677af0e5e1b8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 538 zcmV+#0_FXQP)cz2)-WJLkv8J@4bb5L`rsE?Kc|FrXHkKz)ov z76MHYM&Apx%05P7orE!>9=yZ~6O0^V?1%{=1UASqa<2Pgnk7fs!OIs9gh{NCN+@=) z>Gfttd5uq;oeR{%NHjtqV~jEQeY?tDff=(jqx>~SZ_e+iN26HR*`0Q!Re)~HD85p> zbL()Mw}bI^#`7wp0+cv&7*LhrtOmR)?PK>(-BeLm#jL5Jfogv-QS(TBnUb;))Krqm zD}uDDeVLNhm1G*pFB`O?iA=dnWBEpqHk8Yh%Qu45EIG=&F-dDmt|;|nN@|3lOkVZ7>z*~a1?_t?U)c+&|JFJke1`&0-a z#PjhRlg?=$KTo4|rU@NyV_fzDy@>h!lVyKShsO8>V>$xyIXRbHK%H~^Aaz=s$Jz^V zlb?KfaKdZqu3^#m$mintvgJ15@j`sb2Zr%69Sn=xN01Tm5r)NQanT=jhwm7zqj2>O cEB}D~0$b-QdD7|v=>Px#07*qoM6N<$g6AXnUH||9 diff --git a/admin/css/chosen.min.css b/admin/css/chosen.min.css deleted file mode 100644 index 08a0ecc..0000000 --- a/admin/css/chosen.min.css +++ /dev/null @@ -1,3 +0,0 @@ -/* Chosen v1.4.2 | (c) 2011-2015 by Harvest | MIT License, https://github.com/harvesthq/chosen/blob/master/LICENSE.md */ - -.chosen-container{position:relative;display:inline-block;vertical-align:middle;font-size:13px;zoom:1;*display:inline;-webkit-user-select:none;-moz-user-select:none;user-select:none}.chosen-container *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.chosen-container .chosen-drop{position:absolute;top:100%;left:-9999px;z-index:1010;width:100%;border:1px solid #aaa;border-top:0;background:#fff;box-shadow:0 4px 5px rgba(0,0,0,.15)}.chosen-container.chosen-with-drop .chosen-drop{left:0}.chosen-container a{cursor:pointer}.chosen-container .search-choice .group-name,.chosen-container .chosen-single .group-name{margin-right:4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:400;color:#999}.chosen-container .search-choice .group-name:after,.chosen-container .chosen-single .group-name:after{content:":";padding-left:2px;vertical-align:top}.chosen-container-single .chosen-single{position:relative;display:block;overflow:hidden;padding:0 0 0 8px;height:25px;border:1px solid #aaa;border-radius:5px;background-color:#fff;background:-webkit-gradient(linear,50% 0,50% 100%,color-stop(20%,#fff),color-stop(50%,#f6f6f6),color-stop(52%,#eee),color-stop(100%,#f4f4f4));background:-webkit-linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background:-moz-linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background:-o-linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background:linear-gradient(top,#fff 20%,#f6f6f6 50%,#eee 52%,#f4f4f4 100%);background-clip:padding-box;box-shadow:0 0 3px #fff inset,0 1px 1px rgba(0,0,0,.1);color:#444;text-decoration:none;white-space:nowrap;line-height:24px}.chosen-container-single .chosen-default{color:#999}.chosen-container-single .chosen-single span{display:block;overflow:hidden;margin-right:26px;text-overflow:ellipsis;white-space:nowrap}.chosen-container-single .chosen-single-with-deselect span{margin-right:38px}.chosen-container-single .chosen-single abbr{position:absolute;top:6px;right:26px;display:block;width:12px;height:12px;background:url(chosen-sprite.png) -42px 1px no-repeat;font-size:1px}.chosen-container-single .chosen-single abbr:hover{background-position:-42px -10px}.chosen-container-single.chosen-disabled .chosen-single abbr:hover{background-position:-42px -10px}.chosen-container-single .chosen-single div{position:absolute;top:0;right:0;display:block;width:18px;height:100%}.chosen-container-single .chosen-single div b{display:block;width:100%;height:100%;background:url(chosen-sprite.png) no-repeat 0 2px}.chosen-container-single .chosen-search{position:relative;z-index:1010;margin:0;padding:3px 4px;white-space:nowrap}.chosen-container-single .chosen-search input[type=text]{margin:1px 0;padding:4px 20px 4px 5px;width:100%;height:auto;outline:0;border:1px solid #aaa;background:#fff url(chosen-sprite.png) no-repeat 100% -20px;background:url(chosen-sprite.png) no-repeat 100% -20px;font-size:1em;font-family:sans-serif;line-height:normal;border-radius:0}.chosen-container-single .chosen-drop{margin-top:-1px;border-radius:0 0 4px 4px;background-clip:padding-box}.chosen-container-single.chosen-container-single-nosearch .chosen-search{position:absolute;left:-9999px}.chosen-container .chosen-results{color:#444;position:relative;overflow-x:hidden;overflow-y:auto;margin:0 4px 4px 0;padding:0 0 0 4px;max-height:240px;-webkit-overflow-scrolling:touch}.chosen-container .chosen-results li{display:none;margin:0;padding:5px 6px;list-style:none;line-height:15px;word-wrap:break-word;-webkit-touch-callout:none}.chosen-container .chosen-results li.active-result{display:list-item;cursor:pointer}.chosen-container .chosen-results li.disabled-result{display:list-item;color:#ccc;cursor:default}.chosen-container .chosen-results li.highlighted{background-color:#3875d7;background-image:-webkit-gradient(linear,50% 0,50% 100%,color-stop(20%,#3875d7),color-stop(90%,#2a62bc));background-image:-webkit-linear-gradient(#3875d7 20%,#2a62bc 90%);background-image:-moz-linear-gradient(#3875d7 20%,#2a62bc 90%);background-image:-o-linear-gradient(#3875d7 20%,#2a62bc 90%);background-image:linear-gradient(#3875d7 20%,#2a62bc 90%);color:#fff}.chosen-container .chosen-results li.no-results{color:#777;display:list-item;background:#f4f4f4}.chosen-container .chosen-results li.group-result{display:list-item;font-weight:700;cursor:default}.chosen-container .chosen-results li.group-option{padding-left:15px}.chosen-container .chosen-results li em{font-style:normal;text-decoration:underline}.chosen-container-multi .chosen-choices{position:relative;overflow:hidden;margin:0;padding:0 5px;width:100%;height:auto!important;height:1%;border:1px solid #aaa;background-color:#fff;background-image:-webkit-gradient(linear,50% 0,50% 100%,color-stop(1%,#eee),color-stop(15%,#fff));background-image:-webkit-linear-gradient(#eee 1%,#fff 15%);background-image:-moz-linear-gradient(#eee 1%,#fff 15%);background-image:-o-linear-gradient(#eee 1%,#fff 15%);background-image:linear-gradient(#eee 1%,#fff 15%);cursor:text}.chosen-container-multi .chosen-choices li{float:left;list-style:none}.chosen-container-multi .chosen-choices li.search-field{margin:0;padding:0;white-space:nowrap}.chosen-container-multi .chosen-choices li.search-field input[type=text]{margin:1px 0;padding:0;height:25px;outline:0;border:0!important;background:transparent!important;box-shadow:none;color:#999;font-size:100%;font-family:sans-serif;line-height:normal;border-radius:0}.chosen-container-multi .chosen-choices li.search-choice{position:relative;margin:3px 5px 3px 0;padding:3px 20px 3px 5px;border:1px solid #aaa;max-width:100%;border-radius:3px;background-color:#eee;background-image:-webkit-gradient(linear,50% 0,50% 100%,color-stop(20%,#f4f4f4),color-stop(50%,#f0f0f0),color-stop(52%,#e8e8e8),color-stop(100%,#eee));background-image:-webkit-linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:-moz-linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:-o-linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:linear-gradient(#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-size:100% 19px;background-repeat:repeat-x;background-clip:padding-box;box-shadow:0 0 2px #fff inset,0 1px 0 rgba(0,0,0,.05);color:#333;line-height:13px;cursor:default}.chosen-container-multi .chosen-choices li.search-choice span{word-wrap:break-word}.chosen-container-multi .chosen-choices li.search-choice .search-choice-close{position:absolute;top:4px;right:3px;display:block;width:12px;height:12px;background:url(chosen-sprite.png) -42px 1px no-repeat;font-size:1px}.chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover{background-position:-42px -10px}.chosen-container-multi .chosen-choices li.search-choice-disabled{padding-right:5px;border:1px solid #ccc;background-color:#e4e4e4;background-image:-webkit-gradient(linear,50% 0,50% 100%,color-stop(20%,#f4f4f4),color-stop(50%,#f0f0f0),color-stop(52%,#e8e8e8),color-stop(100%,#eee));background-image:-webkit-linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:-moz-linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:-o-linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);background-image:linear-gradient(top,#f4f4f4 20%,#f0f0f0 50%,#e8e8e8 52%,#eee 100%);color:#666}.chosen-container-multi .chosen-choices li.search-choice-focus{background:#d4d4d4}.chosen-container-multi .chosen-choices li.search-choice-focus .search-choice-close{background-position:-42px -10px}.chosen-container-multi .chosen-results{margin:0;padding:0}.chosen-container-multi .chosen-drop .result-selected{display:list-item;color:#ccc;cursor:default}.chosen-container-active .chosen-single{border:1px solid #5897fb;box-shadow:0 0 5px rgba(0,0,0,.3)}.chosen-container-active.chosen-with-drop .chosen-single{border:1px solid #aaa;-moz-border-radius-bottomright:0;border-bottom-right-radius:0;-moz-border-radius-bottomleft:0;border-bottom-left-radius:0;background-image:-webkit-gradient(linear,50% 0,50% 100%,color-stop(20%,#eee),color-stop(80%,#fff));background-image:-webkit-linear-gradient(#eee 20%,#fff 80%);background-image:-moz-linear-gradient(#eee 20%,#fff 80%);background-image:-o-linear-gradient(#eee 20%,#fff 80%);background-image:linear-gradient(#eee 20%,#fff 80%);box-shadow:0 1px 0 #fff inset}.chosen-container-active.chosen-with-drop .chosen-single div{border-left:0;background:transparent}.chosen-container-active.chosen-with-drop .chosen-single div b{background-position:-18px 2px}.chosen-container-active .chosen-choices{border:1px solid #5897fb;box-shadow:0 0 5px rgba(0,0,0,.3)}.chosen-container-active .chosen-choices li.search-field input[type=text]{color:#222!important}.chosen-disabled{opacity:.5!important;cursor:default}.chosen-disabled .chosen-single{cursor:default}.chosen-disabled .chosen-choices .search-choice .search-choice-close{cursor:default}.chosen-rtl{text-align:right}.chosen-rtl .chosen-single{overflow:visible;padding:0 8px 0 0}.chosen-rtl .chosen-single span{margin-right:0;margin-left:26px;direction:rtl}.chosen-rtl .chosen-single-with-deselect span{margin-left:38px}.chosen-rtl .chosen-single div{right:auto;left:3px}.chosen-rtl .chosen-single abbr{right:auto;left:26px}.chosen-rtl .chosen-choices li{float:right}.chosen-rtl .chosen-choices li.search-field input[type=text]{direction:rtl}.chosen-rtl .chosen-choices li.search-choice{margin:3px 5px 3px 0;padding:3px 5px 3px 19px}.chosen-rtl .chosen-choices li.search-choice .search-choice-close{right:auto;left:4px}.chosen-rtl.chosen-container-single-nosearch .chosen-search,.chosen-rtl .chosen-drop{left:9999px}.chosen-rtl.chosen-container-single .chosen-results{margin:0 0 4px 4px;padding:0 4px 0 0}.chosen-rtl .chosen-results li.group-option{padding-right:15px;padding-left:0}.chosen-rtl.chosen-container-active.chosen-with-drop .chosen-single div{border-right:0}.chosen-rtl .chosen-search input[type=text]{padding:4px 5px 4px 20px;background:#fff url(chosen-sprite.png) no-repeat -30px -20px;background:url(chosen-sprite.png) no-repeat -30px -20px;direction:rtl}.chosen-rtl.chosen-container-single .chosen-single div b{background-position:6px 2px}.chosen-rtl.chosen-container-single.chosen-with-drop .chosen-single div b{background-position:-12px 2px}@media only screen and (-webkit-min-device-pixel-ratio:1.5),only screen and (min-resolution:144dpi),only screen and (min-resolution:1.5dppx){.chosen-rtl .chosen-search input[type=text],.chosen-container-single .chosen-single abbr,.chosen-container-single .chosen-single div b,.chosen-container-single .chosen-search input[type=text],.chosen-container-multi .chosen-choices .search-choice .search-choice-close,.chosen-container .chosen-results-scroll-down span,.chosen-container .chosen-results-scroll-up span{background-image:url(chosen-sprite-2x.png)!important;background-size:52px 37px!important;background-repeat:no-repeat!important}} \ No newline at end of file diff --git a/admin/css/select2.min.css b/admin/css/select2.min.css new file mode 100644 index 0000000..7c18ad5 --- /dev/null +++ b/admin/css/select2.min.css @@ -0,0 +1 @@ +.select2-container{box-sizing:border-box;display:inline-block;margin:0;position:relative;vertical-align:middle}.select2-container .select2-selection--single{box-sizing:border-box;cursor:pointer;display:block;height:28px;user-select:none;-webkit-user-select:none}.select2-container .select2-selection--single .select2-selection__rendered{display:block;padding-left:8px;padding-right:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select2-container .select2-selection--single .select2-selection__clear{position:relative}.select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered{padding-right:8px;padding-left:20px}.select2-container .select2-selection--multiple{box-sizing:border-box;cursor:pointer;display:block;min-height:32px;user-select:none;-webkit-user-select:none}.select2-container .select2-selection--multiple .select2-selection__rendered{display:inline-block;overflow:hidden;padding-left:8px;text-overflow:ellipsis;white-space:nowrap}.select2-container .select2-search--inline{float:left}.select2-container .select2-search--inline .select2-search__field{box-sizing:border-box;border:none;font-size:100%;margin-top:5px;padding:0}.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button{-webkit-appearance:none}.select2-dropdown{background-color:white;border:1px solid #aaa;border-radius:4px;box-sizing:border-box;display:block;position:absolute;left:-100000px;width:100%;z-index:1051}.select2-results{display:block}.select2-results__options{list-style:none;margin:0;padding:0}.select2-results__option{padding:6px;user-select:none;-webkit-user-select:none}.select2-results__option[aria-selected]{cursor:pointer}.select2-container--open .select2-dropdown{left:0}.select2-container--open .select2-dropdown--above{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--open .select2-dropdown--below{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.select2-search--dropdown{display:block;padding:4px}.select2-search--dropdown .select2-search__field{padding:4px;width:100%;box-sizing:border-box}.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button{-webkit-appearance:none}.select2-search--dropdown.select2-search--hide{display:none}.select2-close-mask{border:0;margin:0;padding:0;display:block;position:fixed;left:0;top:0;min-height:100%;min-width:100%;height:auto;width:auto;opacity:0;z-index:99;background-color:#fff;filter:alpha(opacity=0)}.select2-hidden-accessible{border:0 !important;clip:rect(0 0 0 0) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;height:1px !important;overflow:hidden !important;padding:0 !important;position:absolute !important;width:1px !important;white-space:nowrap !important}.select2-container--default .select2-selection--single{background-color:#fff;border:1px solid #aaa;border-radius:4px}.select2-container--default .select2-selection--single .select2-selection__rendered{color:#444;line-height:28px}.select2-container--default .select2-selection--single .select2-selection__clear{cursor:pointer;float:right;font-weight:bold}.select2-container--default .select2-selection--single .select2-selection__placeholder{color:#999}.select2-container--default .select2-selection--single .select2-selection__arrow{height:26px;position:absolute;top:1px;right:1px;width:20px}.select2-container--default .select2-selection--single .select2-selection__arrow b{border-color:#888 transparent transparent transparent;border-style:solid;border-width:5px 4px 0 4px;height:0;left:50%;margin-left:-4px;margin-top:-2px;position:absolute;top:50%;width:0}.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__clear{float:left}.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__arrow{left:1px;right:auto}.select2-container--default.select2-container--disabled .select2-selection--single{background-color:#eee;cursor:default}.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear{display:none}.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b{border-color:transparent transparent #888 transparent;border-width:0 4px 5px 4px}.select2-container--default .select2-selection--multiple{background-color:white;border:1px solid #aaa;border-radius:4px;cursor:text}.select2-container--default .select2-selection--multiple .select2-selection__rendered{box-sizing:border-box;list-style:none;margin:0;padding:0 5px;width:100%}.select2-container--default .select2-selection--multiple .select2-selection__rendered li{list-style:none}.select2-container--default .select2-selection--multiple .select2-selection__clear{cursor:pointer;float:right;font-weight:bold;margin-top:5px;margin-right:10px;padding:1px}.select2-container--default .select2-selection--multiple .select2-selection__choice{background-color:#e4e4e4;border:1px solid #aaa;border-radius:4px;cursor:default;float:left;margin-right:5px;margin-top:5px;padding:0 5px}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove{color:#999;cursor:pointer;display:inline-block;font-weight:bold;margin-right:2px}.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover{color:#333}.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice,.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-search--inline{float:right}.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice{margin-left:5px;margin-right:auto}.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove{margin-left:2px;margin-right:auto}.select2-container--default.select2-container--focus .select2-selection--multiple{border:solid black 1px;outline:0}.select2-container--default.select2-container--disabled .select2-selection--multiple{background-color:#eee;cursor:default}.select2-container--default.select2-container--disabled .select2-selection__choice__remove{display:none}.select2-container--default.select2-container--open.select2-container--above .select2-selection--single,.select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple{border-top-left-radius:0;border-top-right-radius:0}.select2-container--default.select2-container--open.select2-container--below .select2-selection--single,.select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple{border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--default .select2-search--dropdown .select2-search__field{border:1px solid #aaa}.select2-container--default .select2-search--inline .select2-search__field{background:transparent;border:none;outline:0;box-shadow:none;-webkit-appearance:textfield}.select2-container--default .select2-results>.select2-results__options{max-height:200px;overflow-y:auto}.select2-container--default .select2-results__option[role=group]{padding:0}.select2-container--default .select2-results__option[aria-disabled=true]{color:#999}.select2-container--default .select2-results__option[aria-selected=true]{background-color:#ddd}.select2-container--default .select2-results__option .select2-results__option{padding-left:1em}.select2-container--default .select2-results__option .select2-results__option .select2-results__group{padding-left:0}.select2-container--default .select2-results__option .select2-results__option .select2-results__option{margin-left:-1em;padding-left:2em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-2em;padding-left:3em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-3em;padding-left:4em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-4em;padding-left:5em}.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option{margin-left:-5em;padding-left:6em}.select2-container--default .select2-results__option--highlighted[aria-selected]{background-color:#5897fb;color:white}.select2-container--default .select2-results__group{cursor:default;display:block;padding:6px}.select2-container--classic .select2-selection--single{background-color:#f7f7f7;border:1px solid #aaa;border-radius:4px;outline:0;background-image:-webkit-linear-gradient(top, #fff 50%, #eee 100%);background-image:-o-linear-gradient(top, #fff 50%, #eee 100%);background-image:linear-gradient(to bottom, #fff 50%, #eee 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0)}.select2-container--classic .select2-selection--single:focus{border:1px solid #5897fb}.select2-container--classic .select2-selection--single .select2-selection__rendered{color:#444;line-height:28px}.select2-container--classic .select2-selection--single .select2-selection__clear{cursor:pointer;float:right;font-weight:bold;margin-right:10px}.select2-container--classic .select2-selection--single .select2-selection__placeholder{color:#999}.select2-container--classic .select2-selection--single .select2-selection__arrow{background-color:#ddd;border:none;border-left:1px solid #aaa;border-top-right-radius:4px;border-bottom-right-radius:4px;height:26px;position:absolute;top:1px;right:1px;width:20px;background-image:-webkit-linear-gradient(top, #eee 50%, #ccc 100%);background-image:-o-linear-gradient(top, #eee 50%, #ccc 100%);background-image:linear-gradient(to bottom, #eee 50%, #ccc 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFCCCCCC', GradientType=0)}.select2-container--classic .select2-selection--single .select2-selection__arrow b{border-color:#888 transparent transparent transparent;border-style:solid;border-width:5px 4px 0 4px;height:0;left:50%;margin-left:-4px;margin-top:-2px;position:absolute;top:50%;width:0}.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__clear{float:left}.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__arrow{border:none;border-right:1px solid #aaa;border-radius:0;border-top-left-radius:4px;border-bottom-left-radius:4px;left:1px;right:auto}.select2-container--classic.select2-container--open .select2-selection--single{border:1px solid #5897fb}.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow{background:transparent;border:none}.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b{border-color:transparent transparent #888 transparent;border-width:0 4px 5px 4px}.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single{border-top:none;border-top-left-radius:0;border-top-right-radius:0;background-image:-webkit-linear-gradient(top, #fff 0%, #eee 50%);background-image:-o-linear-gradient(top, #fff 0%, #eee 50%);background-image:linear-gradient(to bottom, #fff 0%, #eee 50%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0)}.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0;background-image:-webkit-linear-gradient(top, #eee 50%, #fff 100%);background-image:-o-linear-gradient(top, #eee 50%, #fff 100%);background-image:linear-gradient(to bottom, #eee 50%, #fff 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFFFFFFF', GradientType=0)}.select2-container--classic .select2-selection--multiple{background-color:white;border:1px solid #aaa;border-radius:4px;cursor:text;outline:0}.select2-container--classic .select2-selection--multiple:focus{border:1px solid #5897fb}.select2-container--classic .select2-selection--multiple .select2-selection__rendered{list-style:none;margin:0;padding:0 5px}.select2-container--classic .select2-selection--multiple .select2-selection__clear{display:none}.select2-container--classic .select2-selection--multiple .select2-selection__choice{background-color:#e4e4e4;border:1px solid #aaa;border-radius:4px;cursor:default;float:left;margin-right:5px;margin-top:5px;padding:0 5px}.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove{color:#888;cursor:pointer;display:inline-block;font-weight:bold;margin-right:2px}.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover{color:#555}.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice{float:right;margin-left:5px;margin-right:auto}.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove{margin-left:2px;margin-right:auto}.select2-container--classic.select2-container--open .select2-selection--multiple{border:1px solid #5897fb}.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple{border-top:none;border-top-left-radius:0;border-top-right-radius:0}.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.select2-container--classic .select2-search--dropdown .select2-search__field{border:1px solid #aaa;outline:0}.select2-container--classic .select2-search--inline .select2-search__field{outline:0;box-shadow:none}.select2-container--classic .select2-dropdown{background-color:#fff;border:1px solid transparent}.select2-container--classic .select2-dropdown--above{border-bottom:none}.select2-container--classic .select2-dropdown--below{border-top:none}.select2-container--classic .select2-results>.select2-results__options{max-height:200px;overflow-y:auto}.select2-container--classic .select2-results__option[role=group]{padding:0}.select2-container--classic .select2-results__option[aria-disabled=true]{color:grey}.select2-container--classic .select2-results__option--highlighted[aria-selected]{background-color:#3875d7;color:#fff}.select2-container--classic .select2-results__group{cursor:default;display:block;padding:6px}.select2-container--classic.select2-container--open .select2-dropdown{border-color:#5897fb} diff --git a/admin/js/bmlt_meeting_list.js b/admin/js/bmlt_meeting_list.js index 44f1efe..c57f297 100644 --- a/admin/js/bmlt_meeting_list.js +++ b/admin/js/bmlt_meeting_list.js @@ -228,48 +228,23 @@ jQuery(document).ready( $ml('.booklet-check').on('click', bookletControlsShowHide); $ml('input[name=page_fold]:checked').hasClass('booklet-check') && bookletControlsShowHide(); $ml('input[name=page_fold]:checked').hasClass('single-page-check') && singlePageControlsShowHide(); - $ml(".service_body_select").chosen( + $ml(".service_body_select").select2(); + $ml('#extra_meetings').select2( { - inherit_select_classes: true, - width: "62%" + placeholder: "Select extra meetings", } ); - $ml("#extra_meetings").chosen( + $ml("#author_chosen").select2( { - no_results_text: "Oops, nothing found!", - width: "100%", - placeholder_text_multiple: "Select Extra Meetings", - search_contains: true - } - ); - $ml('#extra_meetings').on( - 'chosen:showing_dropdown', function(evt, params) { - $ml(".ctrl_key").show(); - } - ); - $ml('#extra_meetings').on( - 'chosen:hiding_dropdown', function(evt, params) { - $ml(".ctrl_key").hide(); - } - ); - $ml("#author_chosen").chosen( - { - no_results_text: "Oops, nothing found!", - width: "100%", - placeholder_text_multiple: "Select authors", - search_contains: true - } - ); - $ml('#author_chosen').on( - 'chosen:showing_dropdown', function(evt, params) { - $ml(".ctrl_key").show(); - } - ); - $ml('#author_chosen').on( - 'chosen:hiding_dropdown', function(evt, params) { - $ml(".ctrl_key").hide(); + placeholder: "Select authors", } ); + $ml('.chosen-select').on("change", function (e) { + const self = $ml(this); + const field = self.parent().find('.select2-search--inline'); + field.css('display', (self.val().length == 0 ? 'contents' : 'block')); + field.find('input').css('width', (self.val().length == 0 ? '100%' : 'auto')); + }); $ml("#meeting-list-tabs").tabs( { active: 0 diff --git a/admin/js/bread-wizard.js b/admin/js/bread-wizard.js index 3afaffb..712e1ec 100644 --- a/admin/js/bread-wizard.js +++ b/admin/js/bread-wizard.js @@ -234,7 +234,7 @@ jQuery(document).ready(function($){ } return true; }); - $("#wizard_service_bodies").chosen({ + $("#wizard_service_bodies").select2({ inherit_select_classes: true, max_selected_options:5, width: "62%" diff --git a/admin/js/chosen.jquery.min.js b/admin/js/chosen.jquery.min.js deleted file mode 100644 index 9ad3f62..0000000 --- a/admin/js/chosen.jquery.min.js +++ /dev/null @@ -1,2 +0,0 @@ -/* Chosen v1.4.2 | (c) 2011-2015 by Harvest | MIT License, https://github.com/harvesthq/chosen/blob/master/LICENSE.md */ -(function(){var a,AbstractChosen,Chosen,SelectParser,b,c={}.hasOwnProperty,d=function(a,b){function d(){this.constructor=a}for(var e in b)c.call(b,e)&&(a[e]=b[e]);return d.prototype=b.prototype,a.prototype=new d,a.__super__=b.prototype,a};SelectParser=function(){function SelectParser(){this.options_index=0,this.parsed=[]}return SelectParser.prototype.add_node=function(a){return"OPTGROUP"===a.nodeName.toUpperCase()?this.add_group(a):this.add_option(a)},SelectParser.prototype.add_group=function(a){var b,c,d,e,f,g;for(b=this.parsed.length,this.parsed.push({array_index:b,group:!0,label:this.escapeExpression(a.label),title:a.title?a.title:void 0,children:0,disabled:a.disabled,classes:a.className}),f=a.childNodes,g=[],d=0,e=f.length;e>d;d++)c=f[d],g.push(this.add_option(c,b,a.disabled));return g},SelectParser.prototype.add_option=function(a,b,c){return"OPTION"===a.nodeName.toUpperCase()?(""!==a.text?(null!=b&&(this.parsed[b].children+=1),this.parsed.push({array_index:this.parsed.length,options_index:this.options_index,value:a.value,text:a.text,html:a.innerHTML,title:a.title?a.title:void 0,selected:a.selected,disabled:c===!0?c:a.disabled,group_array_index:b,group_label:null!=b?this.parsed[b].label:null,classes:a.className,style:a.style.cssText})):this.parsed.push({array_index:this.parsed.length,options_index:this.options_index,empty:!0}),this.options_index+=1):void 0},SelectParser.prototype.escapeExpression=function(a){var b,c;return null==a||a===!1?"":/[\&\<\>\"\'\`]/.test(a)?(b={"<":"<",">":">",'"':""","'":"'","`":"`"},c=/&(?!\w+;)|[\<\>\"\'\`]/g,a.replace(c,function(a){return b[a]||"&"})):a},SelectParser}(),SelectParser.select_to_array=function(a){var b,c,d,e,f;for(c=new SelectParser,f=a.childNodes,d=0,e=f.length;e>d;d++)b=f[d],c.add_node(b);return c.parsed},AbstractChosen=function(){function AbstractChosen(a,b){this.form_field=a,this.options=null!=b?b:{},AbstractChosen.browser_is_supported()&&(this.is_multiple=this.form_field.multiple,this.set_default_text(),this.set_default_values(),this.setup(),this.set_up_html(),this.register_observers(),this.on_ready())}return AbstractChosen.prototype.set_default_values=function(){var a=this;return this.click_test_action=function(b){return a.test_active_click(b)},this.activate_action=function(b){return a.activate_field(b)},this.active_field=!1,this.mouse_on_container=!1,this.results_showing=!1,this.result_highlighted=null,this.allow_single_deselect=null!=this.options.allow_single_deselect&&null!=this.form_field.options[0]&&""===this.form_field.options[0].text?this.options.allow_single_deselect:!1,this.disable_search_threshold=this.options.disable_search_threshold||0,this.disable_search=this.options.disable_search||!1,this.enable_split_word_search=null!=this.options.enable_split_word_search?this.options.enable_split_word_search:!0,this.group_search=null!=this.options.group_search?this.options.group_search:!0,this.search_contains=this.options.search_contains||!1,this.single_backstroke_delete=null!=this.options.single_backstroke_delete?this.options.single_backstroke_delete:!0,this.max_selected_options=this.options.max_selected_options||1/0,this.inherit_select_classes=this.options.inherit_select_classes||!1,this.display_selected_options=null!=this.options.display_selected_options?this.options.display_selected_options:!0,this.display_disabled_options=null!=this.options.display_disabled_options?this.options.display_disabled_options:!0,this.include_group_label_in_selected=this.options.include_group_label_in_selected||!1},AbstractChosen.prototype.set_default_text=function(){return this.default_text=this.form_field.getAttribute("data-placeholder")?this.form_field.getAttribute("data-placeholder"):this.is_multiple?this.options.placeholder_text_multiple||this.options.placeholder_text||AbstractChosen.default_multiple_text:this.options.placeholder_text_single||this.options.placeholder_text||AbstractChosen.default_single_text,this.results_none_found=this.form_field.getAttribute("data-no_results_text")||this.options.no_results_text||AbstractChosen.default_no_result_text},AbstractChosen.prototype.choice_label=function(a){return this.include_group_label_in_selected&&null!=a.group_label?""+a.group_label+""+a.html:a.html},AbstractChosen.prototype.mouse_enter=function(){return this.mouse_on_container=!0},AbstractChosen.prototype.mouse_leave=function(){return this.mouse_on_container=!1},AbstractChosen.prototype.input_focus=function(){var a=this;if(this.is_multiple){if(!this.active_field)return setTimeout(function(){return a.container_mousedown()},50)}else if(!this.active_field)return this.activate_field()},AbstractChosen.prototype.input_blur=function(){var a=this;return this.mouse_on_container?void 0:(this.active_field=!1,setTimeout(function(){return a.blur_test()},100))},AbstractChosen.prototype.results_option_build=function(a){var b,c,d,e,f;for(b="",f=this.results_data,d=0,e=f.length;e>d;d++)c=f[d],b+=c.group?this.result_add_group(c):this.result_add_option(c),(null!=a?a.first:void 0)&&(c.selected&&this.is_multiple?this.choice_build(c):c.selected&&!this.is_multiple&&this.single_set_selected_text(this.choice_label(c)));return b},AbstractChosen.prototype.result_add_option=function(a){var b,c;return a.search_match?this.include_option_in_results(a)?(b=[],a.disabled||a.selected&&this.is_multiple||b.push("active-result"),!a.disabled||a.selected&&this.is_multiple||b.push("disabled-result"),a.selected&&b.push("result-selected"),null!=a.group_array_index&&b.push("group-option"),""!==a.classes&&b.push(a.classes),c=document.createElement("li"),c.className=b.join(" "),c.style.cssText=a.style,c.setAttribute("data-option-array-index",a.array_index),c.innerHTML=a.search_text,a.title&&(c.title=a.title),this.outerHTML(c)):"":""},AbstractChosen.prototype.result_add_group=function(a){var b,c;return a.search_match||a.group_match?a.active_options>0?(b=[],b.push("group-result"),a.classes&&b.push(a.classes),c=document.createElement("li"),c.className=b.join(" "),c.innerHTML=a.search_text,a.title&&(c.title=a.title),this.outerHTML(c)):"":""},AbstractChosen.prototype.results_update_field=function(){return this.set_default_text(),this.is_multiple||this.results_reset_cleanup(),this.result_clear_highlight(),this.results_build(),this.results_showing?this.winnow_results():void 0},AbstractChosen.prototype.reset_single_select_options=function(){var a,b,c,d,e;for(d=this.results_data,e=[],b=0,c=d.length;c>b;b++)a=d[b],a.selected?e.push(a.selected=!1):e.push(void 0);return e},AbstractChosen.prototype.results_toggle=function(){return this.results_showing?this.results_hide():this.results_show()},AbstractChosen.prototype.results_search=function(){return this.results_showing?this.winnow_results():this.results_show()},AbstractChosen.prototype.winnow_results=function(){var a,b,c,d,e,f,g,h,i,j,k,l;for(this.no_results_clear(),d=0,f=this.get_search_text(),a=f.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"),i=new RegExp(a,"i"),c=this.get_search_regex(a),l=this.results_data,j=0,k=l.length;k>j;j++)b=l[j],b.search_match=!1,e=null,this.include_option_in_results(b)&&(b.group&&(b.group_match=!1,b.active_options=0),null!=b.group_array_index&&this.results_data[b.group_array_index]&&(e=this.results_data[b.group_array_index],0===e.active_options&&e.search_match&&(d+=1),e.active_options+=1),b.search_text=b.group?b.label:b.html,(!b.group||this.group_search)&&(b.search_match=this.search_string_match(b.search_text,c),b.search_match&&!b.group&&(d+=1),b.search_match?(f.length&&(g=b.search_text.search(i),h=b.search_text.substr(0,g+f.length)+""+b.search_text.substr(g+f.length),b.search_text=h.substr(0,g)+""+h.substr(g)),null!=e&&(e.group_match=!0)):null!=b.group_array_index&&this.results_data[b.group_array_index].search_match&&(b.search_match=!0)));return this.result_clear_highlight(),1>d&&f.length?(this.update_results_content(""),this.no_results(f)):(this.update_results_content(this.results_option_build()),this.winnow_results_set_highlight())},AbstractChosen.prototype.get_search_regex=function(a){var b;return b=this.search_contains?"":"^",new RegExp(b+a,"i")},AbstractChosen.prototype.search_string_match=function(a,b){var c,d,e,f;if(b.test(a))return!0;if(this.enable_split_word_search&&(a.indexOf(" ")>=0||0===a.indexOf("["))&&(d=a.replace(/\[|\]/g,"").split(" "),d.length))for(e=0,f=d.length;f>e;e++)if(c=d[e],b.test(c))return!0},AbstractChosen.prototype.choices_count=function(){var a,b,c,d;if(null!=this.selected_option_count)return this.selected_option_count;for(this.selected_option_count=0,d=this.form_field.options,b=0,c=d.length;c>b;b++)a=d[b],a.selected&&(this.selected_option_count+=1);return this.selected_option_count},AbstractChosen.prototype.choices_click=function(a){return a.preventDefault(),this.results_showing||this.is_disabled?void 0:this.results_show()},AbstractChosen.prototype.keyup_checker=function(a){var b,c;switch(b=null!=(c=a.which)?c:a.keyCode,this.search_field_scale(),b){case 8:if(this.is_multiple&&this.backstroke_length<1&&this.choices_count()>0)return this.keydown_backstroke();if(!this.pending_backstroke)return this.result_clear_highlight(),this.results_search();break;case 13:if(a.preventDefault(),this.results_showing)return this.result_select(a);break;case 27:return this.results_showing&&this.results_hide(),!0;case 9:case 38:case 40:case 16:case 91:case 17:break;default:return this.results_search()}},AbstractChosen.prototype.clipboard_event_checker=function(){var a=this;return setTimeout(function(){return a.results_search()},50)},AbstractChosen.prototype.container_width=function(){return null!=this.options.width?this.options.width:""+this.form_field.offsetWidth+"px"},AbstractChosen.prototype.include_option_in_results=function(a){return this.is_multiple&&!this.display_selected_options&&a.selected?!1:!this.display_disabled_options&&a.disabled?!1:a.empty?!1:!0},AbstractChosen.prototype.search_results_touchstart=function(a){return this.touch_started=!0,this.search_results_mouseover(a)},AbstractChosen.prototype.search_results_touchmove=function(a){return this.touch_started=!1,this.search_results_mouseout(a)},AbstractChosen.prototype.search_results_touchend=function(a){return this.touch_started?this.search_results_mouseup(a):void 0},AbstractChosen.prototype.outerHTML=function(a){var b;return a.outerHTML?a.outerHTML:(b=document.createElement("div"),b.appendChild(a),b.innerHTML)},AbstractChosen.browser_is_supported=function(){return"Microsoft Internet Explorer"===window.navigator.appName?document.documentMode>=8:/iP(od|hone)/i.test(window.navigator.userAgent)?!1:/Android/i.test(window.navigator.userAgent)&&/Mobile/i.test(window.navigator.userAgent)?!1:!0},AbstractChosen.default_multiple_text="Select Some Options",AbstractChosen.default_single_text="Select an Option",AbstractChosen.default_no_result_text="No results match",AbstractChosen}(),a=jQuery,a.fn.extend({chosen:function(b){return AbstractChosen.browser_is_supported()?this.each(function(){var c,d;c=a(this),d=c.data("chosen"),"destroy"===b&&d instanceof Chosen?d.destroy():d instanceof Chosen||c.data("chosen",new Chosen(this,b))}):this}}),Chosen=function(c){function Chosen(){return b=Chosen.__super__.constructor.apply(this,arguments)}return d(Chosen,c),Chosen.prototype.setup=function(){return this.form_field_jq=a(this.form_field),this.current_selectedIndex=this.form_field.selectedIndex,this.is_rtl=this.form_field_jq.hasClass("chosen-rtl")},Chosen.prototype.set_up_html=function(){var b,c;return b=["chosen-container"],b.push("chosen-container-"+(this.is_multiple?"multi":"single")),this.inherit_select_classes&&this.form_field.className&&b.push(this.form_field.className),this.is_rtl&&b.push("chosen-rtl"),c={"class":b.join(" "),style:"width: "+this.container_width()+";",title:this.form_field.title},this.form_field.id.length&&(c.id=this.form_field.id.replace(/[^\w]/g,"_")+"_chosen"),this.container=a("
",c),this.is_multiple?this.container.html('
    '):this.container.html(''+this.default_text+'
      '),this.form_field_jq.hide().after(this.container),this.dropdown=this.container.find("div.chosen-drop").first(),this.search_field=this.container.find("input").first(),this.search_results=this.container.find("ul.chosen-results").first(),this.search_field_scale(),this.search_no_results=this.container.find("li.no-results").first(),this.is_multiple?(this.search_choices=this.container.find("ul.chosen-choices").first(),this.search_container=this.container.find("li.search-field").first()):(this.search_container=this.container.find("div.chosen-search").first(),this.selected_item=this.container.find(".chosen-single").first()),this.results_build(),this.set_tab_index(),this.set_label_behavior()},Chosen.prototype.on_ready=function(){return this.form_field_jq.trigger("chosen:ready",{chosen:this})},Chosen.prototype.register_observers=function(){var a=this;return this.container.bind("touchstart.chosen",function(b){return a.container_mousedown(b),b.preventDefault()}),this.container.bind("touchend.chosen",function(b){return a.container_mouseup(b),b.preventDefault()}),this.container.bind("mousedown.chosen",function(b){a.container_mousedown(b)}),this.container.bind("mouseup.chosen",function(b){a.container_mouseup(b)}),this.container.bind("mouseenter.chosen",function(b){a.mouse_enter(b)}),this.container.bind("mouseleave.chosen",function(b){a.mouse_leave(b)}),this.search_results.bind("mouseup.chosen",function(b){a.search_results_mouseup(b)}),this.search_results.bind("mouseover.chosen",function(b){a.search_results_mouseover(b)}),this.search_results.bind("mouseout.chosen",function(b){a.search_results_mouseout(b)}),this.search_results.bind("mousewheel.chosen DOMMouseScroll.chosen",function(b){a.search_results_mousewheel(b)}),this.search_results.bind("touchstart.chosen",function(b){a.search_results_touchstart(b)}),this.search_results.bind("touchmove.chosen",function(b){a.search_results_touchmove(b)}),this.search_results.bind("touchend.chosen",function(b){a.search_results_touchend(b)}),this.form_field_jq.bind("chosen:updated.chosen",function(b){a.results_update_field(b)}),this.form_field_jq.bind("chosen:activate.chosen",function(b){a.activate_field(b)}),this.form_field_jq.bind("chosen:open.chosen",function(b){a.container_mousedown(b)}),this.form_field_jq.bind("chosen:close.chosen",function(b){a.input_blur(b)}),this.search_field.bind("blur.chosen",function(b){a.input_blur(b)}),this.search_field.bind("keyup.chosen",function(b){a.keyup_checker(b)}),this.search_field.bind("keydown.chosen",function(b){a.keydown_checker(b)}),this.search_field.bind("focus.chosen",function(b){a.input_focus(b)}),this.search_field.bind("cut.chosen",function(b){a.clipboard_event_checker(b)}),this.search_field.bind("paste.chosen",function(b){a.clipboard_event_checker(b)}),this.is_multiple?this.search_choices.bind("click.chosen",function(b){a.choices_click(b)}):this.container.bind("click.chosen",function(a){a.preventDefault()})},Chosen.prototype.destroy=function(){return a(this.container[0].ownerDocument).unbind("click.chosen",this.click_test_action),this.search_field[0].tabIndex&&(this.form_field_jq[0].tabIndex=this.search_field[0].tabIndex),this.container.remove(),this.form_field_jq.removeData("chosen"),this.form_field_jq.show()},Chosen.prototype.search_field_disabled=function(){return this.is_disabled=this.form_field_jq[0].disabled,this.is_disabled?(this.container.addClass("chosen-disabled"),this.search_field[0].disabled=!0,this.is_multiple||this.selected_item.unbind("focus.chosen",this.activate_action),this.close_field()):(this.container.removeClass("chosen-disabled"),this.search_field[0].disabled=!1,this.is_multiple?void 0:this.selected_item.bind("focus.chosen",this.activate_action))},Chosen.prototype.container_mousedown=function(b){return this.is_disabled||(b&&"mousedown"===b.type&&!this.results_showing&&b.preventDefault(),null!=b&&a(b.target).hasClass("search-choice-close"))?void 0:(this.active_field?this.is_multiple||!b||a(b.target)[0]!==this.selected_item[0]&&!a(b.target).parents("a.chosen-single").length||(b.preventDefault(),this.results_toggle()):(this.is_multiple&&this.search_field.val(""),a(this.container[0].ownerDocument).bind("click.chosen",this.click_test_action),this.results_show()),this.activate_field())},Chosen.prototype.container_mouseup=function(a){return"ABBR"!==a.target.nodeName||this.is_disabled?void 0:this.results_reset(a)},Chosen.prototype.search_results_mousewheel=function(a){var b;return a.originalEvent&&(b=a.originalEvent.deltaY||-a.originalEvent.wheelDelta||a.originalEvent.detail),null!=b?(a.preventDefault(),"DOMMouseScroll"===a.type&&(b=40*b),this.search_results.scrollTop(b+this.search_results.scrollTop())):void 0},Chosen.prototype.blur_test=function(){return!this.active_field&&this.container.hasClass("chosen-container-active")?this.close_field():void 0},Chosen.prototype.close_field=function(){return a(this.container[0].ownerDocument).unbind("click.chosen",this.click_test_action),this.active_field=!1,this.results_hide(),this.container.removeClass("chosen-container-active"),this.clear_backstroke(),this.show_search_field_default(),this.search_field_scale()},Chosen.prototype.activate_field=function(){return this.container.addClass("chosen-container-active"),this.active_field=!0,this.search_field.val(this.search_field.val()),this.search_field.focus()},Chosen.prototype.test_active_click=function(b){var c;return c=a(b.target).closest(".chosen-container"),c.length&&this.container[0]===c[0]?this.active_field=!0:this.close_field()},Chosen.prototype.results_build=function(){return this.parsing=!0,this.selected_option_count=null,this.results_data=SelectParser.select_to_array(this.form_field),this.is_multiple?this.search_choices.find("li.search-choice").remove():this.is_multiple||(this.single_set_selected_text(),this.disable_search||this.form_field.options.length<=this.disable_search_threshold?(this.search_field[0].readOnly=!0,this.container.addClass("chosen-container-single-nosearch")):(this.search_field[0].readOnly=!1,this.container.removeClass("chosen-container-single-nosearch"))),this.update_results_content(this.results_option_build({first:!0})),this.search_field_disabled(),this.show_search_field_default(),this.search_field_scale(),this.parsing=!1},Chosen.prototype.result_do_highlight=function(a){var b,c,d,e,f;if(a.length){if(this.result_clear_highlight(),this.result_highlight=a,this.result_highlight.addClass("highlighted"),d=parseInt(this.search_results.css("maxHeight"),10),f=this.search_results.scrollTop(),e=d+f,c=this.result_highlight.position().top+this.search_results.scrollTop(),b=c+this.result_highlight.outerHeight(),b>=e)return this.search_results.scrollTop(b-d>0?b-d:0);if(f>c)return this.search_results.scrollTop(c)}},Chosen.prototype.result_clear_highlight=function(){return this.result_highlight&&this.result_highlight.removeClass("highlighted"),this.result_highlight=null},Chosen.prototype.results_show=function(){return this.is_multiple&&this.max_selected_options<=this.choices_count()?(this.form_field_jq.trigger("chosen:maxselected",{chosen:this}),!1):(this.container.addClass("chosen-with-drop"),this.results_showing=!0,this.search_field.focus(),this.search_field.val(this.search_field.val()),this.winnow_results(),this.form_field_jq.trigger("chosen:showing_dropdown",{chosen:this}))},Chosen.prototype.update_results_content=function(a){return this.search_results.html(a)},Chosen.prototype.results_hide=function(){return this.results_showing&&(this.result_clear_highlight(),this.container.removeClass("chosen-with-drop"),this.form_field_jq.trigger("chosen:hiding_dropdown",{chosen:this})),this.results_showing=!1},Chosen.prototype.set_tab_index=function(){var a;return this.form_field.tabIndex?(a=this.form_field.tabIndex,this.form_field.tabIndex=-1,this.search_field[0].tabIndex=a):void 0},Chosen.prototype.set_label_behavior=function(){var b=this;return this.form_field_label=this.form_field_jq.parents("label"),!this.form_field_label.length&&this.form_field.id.length&&(this.form_field_label=a("label[for='"+this.form_field.id+"']")),this.form_field_label.length>0?this.form_field_label.bind("click.chosen",function(a){return b.is_multiple?b.container_mousedown(a):b.activate_field()}):void 0},Chosen.prototype.show_search_field_default=function(){return this.is_multiple&&this.choices_count()<1&&!this.active_field?(this.search_field.val(this.default_text),this.search_field.addClass("default")):(this.search_field.val(""),this.search_field.removeClass("default"))},Chosen.prototype.search_results_mouseup=function(b){var c;return c=a(b.target).hasClass("active-result")?a(b.target):a(b.target).parents(".active-result").first(),c.length?(this.result_highlight=c,this.result_select(b),this.search_field.focus()):void 0},Chosen.prototype.search_results_mouseover=function(b){var c;return c=a(b.target).hasClass("active-result")?a(b.target):a(b.target).parents(".active-result").first(),c?this.result_do_highlight(c):void 0},Chosen.prototype.search_results_mouseout=function(b){return a(b.target).hasClass("active-result")?this.result_clear_highlight():void 0},Chosen.prototype.choice_build=function(b){var c,d,e=this;return c=a("
    • ",{"class":"search-choice"}).html(""+this.choice_label(b)+""),b.disabled?c.addClass("search-choice-disabled"):(d=a("",{"class":"search-choice-close","data-option-array-index":b.array_index}),d.bind("click.chosen",function(a){return e.choice_destroy_link_click(a)}),c.append(d)),this.search_container.before(c)},Chosen.prototype.choice_destroy_link_click=function(b){return b.preventDefault(),b.stopPropagation(),this.is_disabled?void 0:this.choice_destroy(a(b.target))},Chosen.prototype.choice_destroy=function(a){return this.result_deselect(a[0].getAttribute("data-option-array-index"))?(this.show_search_field_default(),this.is_multiple&&this.choices_count()>0&&this.search_field.val().length<1&&this.results_hide(),a.parents("li").first().remove(),this.search_field_scale()):void 0},Chosen.prototype.results_reset=function(){return this.reset_single_select_options(),this.form_field.options[0].selected=!0,this.single_set_selected_text(),this.show_search_field_default(),this.results_reset_cleanup(),this.form_field_jq.trigger("change"),this.active_field?this.results_hide():void 0},Chosen.prototype.results_reset_cleanup=function(){return this.current_selectedIndex=this.form_field.selectedIndex,this.selected_item.find("abbr").remove()},Chosen.prototype.result_select=function(a){var b,c;return this.result_highlight?(b=this.result_highlight,this.result_clear_highlight(),this.is_multiple&&this.max_selected_options<=this.choices_count()?(this.form_field_jq.trigger("chosen:maxselected",{chosen:this}),!1):(this.is_multiple?b.removeClass("active-result"):this.reset_single_select_options(),b.addClass("result-selected"),c=this.results_data[b[0].getAttribute("data-option-array-index")],c.selected=!0,this.form_field.options[c.options_index].selected=!0,this.selected_option_count=null,this.is_multiple?this.choice_build(c):this.single_set_selected_text(this.choice_label(c)),(a.metaKey||a.ctrlKey)&&this.is_multiple||this.results_hide(),this.search_field.val(""),(this.is_multiple||this.form_field.selectedIndex!==this.current_selectedIndex)&&this.form_field_jq.trigger("change",{selected:this.form_field.options[c.options_index].value}),this.current_selectedIndex=this.form_field.selectedIndex,a.preventDefault(),this.search_field_scale())):void 0},Chosen.prototype.single_set_selected_text=function(a){return null==a&&(a=this.default_text),a===this.default_text?this.selected_item.addClass("chosen-default"):(this.single_deselect_control_build(),this.selected_item.removeClass("chosen-default")),this.selected_item.find("span").html(a)},Chosen.prototype.result_deselect=function(a){var b;return b=this.results_data[a],this.form_field.options[b.options_index].disabled?!1:(b.selected=!1,this.form_field.options[b.options_index].selected=!1,this.selected_option_count=null,this.result_clear_highlight(),this.results_showing&&this.winnow_results(),this.form_field_jq.trigger("change",{deselected:this.form_field.options[b.options_index].value}),this.search_field_scale(),!0)},Chosen.prototype.single_deselect_control_build=function(){return this.allow_single_deselect?(this.selected_item.find("abbr").length||this.selected_item.find("span").first().after(''),this.selected_item.addClass("chosen-single-with-deselect")):void 0},Chosen.prototype.get_search_text=function(){return a("
      ").text(a.trim(this.search_field.val())).html()},Chosen.prototype.winnow_results_set_highlight=function(){var a,b;return b=this.is_multiple?[]:this.search_results.find(".result-selected.active-result"),a=b.length?b.first():this.search_results.find(".active-result").first(),null!=a?this.result_do_highlight(a):void 0},Chosen.prototype.no_results=function(b){var c;return c=a('
    • '+this.results_none_found+' ""
    • '),c.find("span").first().html(b),this.search_results.append(c),this.form_field_jq.trigger("chosen:no_results",{chosen:this})},Chosen.prototype.no_results_clear=function(){return this.search_results.find(".no-results").remove()},Chosen.prototype.keydown_arrow=function(){var a;return this.results_showing&&this.result_highlight?(a=this.result_highlight.nextAll("li.active-result").first())?this.result_do_highlight(a):void 0:this.results_show()},Chosen.prototype.keyup_arrow=function(){var a;return this.results_showing||this.is_multiple?this.result_highlight?(a=this.result_highlight.prevAll("li.active-result"),a.length?this.result_do_highlight(a.first()):(this.choices_count()>0&&this.results_hide(),this.result_clear_highlight())):void 0:this.results_show()},Chosen.prototype.keydown_backstroke=function(){var a;return this.pending_backstroke?(this.choice_destroy(this.pending_backstroke.find("a").first()),this.clear_backstroke()):(a=this.search_container.siblings("li.search-choice").last(),a.length&&!a.hasClass("search-choice-disabled")?(this.pending_backstroke=a,this.single_backstroke_delete?this.keydown_backstroke():this.pending_backstroke.addClass("search-choice-focus")):void 0)},Chosen.prototype.clear_backstroke=function(){return this.pending_backstroke&&this.pending_backstroke.removeClass("search-choice-focus"),this.pending_backstroke=null},Chosen.prototype.keydown_checker=function(a){var b,c;switch(b=null!=(c=a.which)?c:a.keyCode,this.search_field_scale(),8!==b&&this.pending_backstroke&&this.clear_backstroke(),b){case 8:this.backstroke_length=this.search_field.val().length;break;case 9:this.results_showing&&!this.is_multiple&&this.result_select(a),this.mouse_on_container=!1;break;case 13:this.results_showing&&a.preventDefault();break;case 32:this.disable_search&&a.preventDefault();break;case 38:a.preventDefault(),this.keyup_arrow();break;case 40:a.preventDefault(),this.keydown_arrow()}},Chosen.prototype.search_field_scale=function(){var b,c,d,e,f,g,h,i,j;if(this.is_multiple){for(d=0,h=0,f="position:absolute; left: -1000px; top: -1000px; display:none;",g=["font-size","font-style","font-weight","font-family","line-height","text-transform","letter-spacing"],i=0,j=g.length;j>i;i++)e=g[i],f+=e+":"+this.search_field.css(e)+";";return b=a("
      ",{style:f}),b.text(this.search_field.val()),a("body").append(b),h=b.width()+25,b.remove(),c=this.container.outerWidth(),h>c-10&&(h=c-10),this.search_field.css({width:h+"px"})}},Chosen}(AbstractChosen)}).call(this); \ No newline at end of file diff --git a/admin/js/select2.min.js b/admin/js/select2.min.js new file mode 100644 index 0000000..e421426 --- /dev/null +++ b/admin/js/select2.min.js @@ -0,0 +1,2 @@ +/*! Select2 4.0.13 | https://github.com/select2/select2/blob/master/LICENSE.md */ +!function(n){"function"==typeof define&&define.amd?define(["jquery"],n):"object"==typeof module&&module.exports?module.exports=function(e,t){return void 0===t&&(t="undefined"!=typeof window?require("jquery"):require("jquery")(e)),n(t),t}:n(jQuery)}(function(u){var e=function(){if(u&&u.fn&&u.fn.select2&&u.fn.select2.amd)var e=u.fn.select2.amd;var t,n,r,h,o,s,f,g,m,v,y,_,i,a,b;function w(e,t){return i.call(e,t)}function l(e,t){var n,r,i,o,s,a,l,c,u,d,p,h=t&&t.split("/"),f=y.map,g=f&&f["*"]||{};if(e){for(s=(e=e.split("/")).length-1,y.nodeIdCompat&&b.test(e[s])&&(e[s]=e[s].replace(b,"")),"."===e[0].charAt(0)&&h&&(e=h.slice(0,h.length-1).concat(e)),u=0;u":">",'"':""","'":"'","/":"/"};return"string"!=typeof e?e:String(e).replace(/[&<>"'\/\\]/g,function(e){return t[e]})},i.appendMany=function(e,t){if("1.7"===o.fn.jquery.substr(0,3)){var n=o();o.map(t,function(e){n=n.add(e)}),t=n}e.append(t)},i.__cache={};var n=0;return i.GetUniqueElementId=function(e){var t=e.getAttribute("data-select2-id");return null==t&&(e.id?(t=e.id,e.setAttribute("data-select2-id",t)):(e.setAttribute("data-select2-id",++n),t=n.toString())),t},i.StoreData=function(e,t,n){var r=i.GetUniqueElementId(e);i.__cache[r]||(i.__cache[r]={}),i.__cache[r][t]=n},i.GetData=function(e,t){var n=i.GetUniqueElementId(e);return t?i.__cache[n]&&null!=i.__cache[n][t]?i.__cache[n][t]:o(e).data(t):i.__cache[n]},i.RemoveData=function(e){var t=i.GetUniqueElementId(e);null!=i.__cache[t]&&delete i.__cache[t],e.removeAttribute("data-select2-id")},i}),e.define("select2/results",["jquery","./utils"],function(h,f){function r(e,t,n){this.$element=e,this.data=n,this.options=t,r.__super__.constructor.call(this)}return f.Extend(r,f.Observable),r.prototype.render=function(){var e=h('
        ');return this.options.get("multiple")&&e.attr("aria-multiselectable","true"),this.$results=e},r.prototype.clear=function(){this.$results.empty()},r.prototype.displayMessage=function(e){var t=this.options.get("escapeMarkup");this.clear(),this.hideLoading();var n=h(''),r=this.options.get("translations").get(e.message);n.append(t(r(e.args))),n[0].className+=" select2-results__message",this.$results.append(n)},r.prototype.hideMessages=function(){this.$results.find(".select2-results__message").remove()},r.prototype.append=function(e){this.hideLoading();var t=[];if(null!=e.results&&0!==e.results.length){e.results=this.sort(e.results);for(var n=0;n",{class:"select2-results__options select2-results__options--nested"});p.append(l),s.append(a),s.append(p)}else this.template(e,t);return f.StoreData(t,"data",e),t},r.prototype.bind=function(t,e){var l=this,n=t.id+"-results";this.$results.attr("id",n),t.on("results:all",function(e){l.clear(),l.append(e.data),t.isOpen()&&(l.setClasses(),l.highlightFirstItem())}),t.on("results:append",function(e){l.append(e.data),t.isOpen()&&l.setClasses()}),t.on("query",function(e){l.hideMessages(),l.showLoading(e)}),t.on("select",function(){t.isOpen()&&(l.setClasses(),l.options.get("scrollAfterSelect")&&l.highlightFirstItem())}),t.on("unselect",function(){t.isOpen()&&(l.setClasses(),l.options.get("scrollAfterSelect")&&l.highlightFirstItem())}),t.on("open",function(){l.$results.attr("aria-expanded","true"),l.$results.attr("aria-hidden","false"),l.setClasses(),l.ensureHighlightVisible()}),t.on("close",function(){l.$results.attr("aria-expanded","false"),l.$results.attr("aria-hidden","true"),l.$results.removeAttr("aria-activedescendant")}),t.on("results:toggle",function(){var e=l.getHighlightedResults();0!==e.length&&e.trigger("mouseup")}),t.on("results:select",function(){var e=l.getHighlightedResults();if(0!==e.length){var t=f.GetData(e[0],"data");"true"==e.attr("aria-selected")?l.trigger("close",{}):l.trigger("select",{data:t})}}),t.on("results:previous",function(){var e=l.getHighlightedResults(),t=l.$results.find("[aria-selected]"),n=t.index(e);if(!(n<=0)){var r=n-1;0===e.length&&(r=0);var i=t.eq(r);i.trigger("mouseenter");var o=l.$results.offset().top,s=i.offset().top,a=l.$results.scrollTop()+(s-o);0===r?l.$results.scrollTop(0):s-o<0&&l.$results.scrollTop(a)}}),t.on("results:next",function(){var e=l.getHighlightedResults(),t=l.$results.find("[aria-selected]"),n=t.index(e)+1;if(!(n>=t.length)){var r=t.eq(n);r.trigger("mouseenter");var i=l.$results.offset().top+l.$results.outerHeight(!1),o=r.offset().top+r.outerHeight(!1),s=l.$results.scrollTop()+o-i;0===n?l.$results.scrollTop(0):ithis.$results.outerHeight()||o<0)&&this.$results.scrollTop(i)}},r.prototype.template=function(e,t){var n=this.options.get("templateResult"),r=this.options.get("escapeMarkup"),i=n(e,t);null==i?t.style.display="none":"string"==typeof i?t.innerHTML=r(i):h(t).append(i)},r}),e.define("select2/keys",[],function(){return{BACKSPACE:8,TAB:9,ENTER:13,SHIFT:16,CTRL:17,ALT:18,ESC:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,DELETE:46}}),e.define("select2/selection/base",["jquery","../utils","../keys"],function(n,r,i){function o(e,t){this.$element=e,this.options=t,o.__super__.constructor.call(this)}return r.Extend(o,r.Observable),o.prototype.render=function(){var e=n('');return this._tabindex=0,null!=r.GetData(this.$element[0],"old-tabindex")?this._tabindex=r.GetData(this.$element[0],"old-tabindex"):null!=this.$element.attr("tabindex")&&(this._tabindex=this.$element.attr("tabindex")),e.attr("title",this.$element.attr("title")),e.attr("tabindex",this._tabindex),e.attr("aria-disabled","false"),this.$selection=e},o.prototype.bind=function(e,t){var n=this,r=e.id+"-results";this.container=e,this.$selection.on("focus",function(e){n.trigger("focus",e)}),this.$selection.on("blur",function(e){n._handleBlur(e)}),this.$selection.on("keydown",function(e){n.trigger("keypress",e),e.which===i.SPACE&&e.preventDefault()}),e.on("results:focus",function(e){n.$selection.attr("aria-activedescendant",e.data._resultId)}),e.on("selection:update",function(e){n.update(e.data)}),e.on("open",function(){n.$selection.attr("aria-expanded","true"),n.$selection.attr("aria-owns",r),n._attachCloseHandler(e)}),e.on("close",function(){n.$selection.attr("aria-expanded","false"),n.$selection.removeAttr("aria-activedescendant"),n.$selection.removeAttr("aria-owns"),n.$selection.trigger("focus"),n._detachCloseHandler(e)}),e.on("enable",function(){n.$selection.attr("tabindex",n._tabindex),n.$selection.attr("aria-disabled","false")}),e.on("disable",function(){n.$selection.attr("tabindex","-1"),n.$selection.attr("aria-disabled","true")})},o.prototype._handleBlur=function(e){var t=this;window.setTimeout(function(){document.activeElement==t.$selection[0]||n.contains(t.$selection[0],document.activeElement)||t.trigger("blur",e)},1)},o.prototype._attachCloseHandler=function(e){n(document.body).on("mousedown.select2."+e.id,function(e){var t=n(e.target).closest(".select2");n(".select2.select2-container--open").each(function(){this!=t[0]&&r.GetData(this,"element").select2("close")})})},o.prototype._detachCloseHandler=function(e){n(document.body).off("mousedown.select2."+e.id)},o.prototype.position=function(e,t){t.find(".selection").append(e)},o.prototype.destroy=function(){this._detachCloseHandler(this.container)},o.prototype.update=function(e){throw new Error("The `update` method must be defined in child classes.")},o.prototype.isEnabled=function(){return!this.isDisabled()},o.prototype.isDisabled=function(){return this.options.get("disabled")},o}),e.define("select2/selection/single",["jquery","./base","../utils","../keys"],function(e,t,n,r){function i(){i.__super__.constructor.apply(this,arguments)}return n.Extend(i,t),i.prototype.render=function(){var e=i.__super__.render.call(this);return e.addClass("select2-selection--single"),e.html(''),e},i.prototype.bind=function(t,e){var n=this;i.__super__.bind.apply(this,arguments);var r=t.id+"-container";this.$selection.find(".select2-selection__rendered").attr("id",r).attr("role","textbox").attr("aria-readonly","true"),this.$selection.attr("aria-labelledby",r),this.$selection.on("mousedown",function(e){1===e.which&&n.trigger("toggle",{originalEvent:e})}),this.$selection.on("focus",function(e){}),this.$selection.on("blur",function(e){}),t.on("focus",function(e){t.isOpen()||n.$selection.trigger("focus")})},i.prototype.clear=function(){var e=this.$selection.find(".select2-selection__rendered");e.empty(),e.removeAttr("title")},i.prototype.display=function(e,t){var n=this.options.get("templateSelection");return this.options.get("escapeMarkup")(n(e,t))},i.prototype.selectionContainer=function(){return e("")},i.prototype.update=function(e){if(0!==e.length){var t=e[0],n=this.$selection.find(".select2-selection__rendered"),r=this.display(t,n);n.empty().append(r);var i=t.title||t.text;i?n.attr("title",i):n.removeAttr("title")}else this.clear()},i}),e.define("select2/selection/multiple",["jquery","./base","../utils"],function(i,e,l){function n(e,t){n.__super__.constructor.apply(this,arguments)}return l.Extend(n,e),n.prototype.render=function(){var e=n.__super__.render.call(this);return e.addClass("select2-selection--multiple"),e.html('
          '),e},n.prototype.bind=function(e,t){var r=this;n.__super__.bind.apply(this,arguments),this.$selection.on("click",function(e){r.trigger("toggle",{originalEvent:e})}),this.$selection.on("click",".select2-selection__choice__remove",function(e){if(!r.isDisabled()){var t=i(this).parent(),n=l.GetData(t[0],"data");r.trigger("unselect",{originalEvent:e,data:n})}})},n.prototype.clear=function(){var e=this.$selection.find(".select2-selection__rendered");e.empty(),e.removeAttr("title")},n.prototype.display=function(e,t){var n=this.options.get("templateSelection");return this.options.get("escapeMarkup")(n(e,t))},n.prototype.selectionContainer=function(){return i('
        • ×
        • ')},n.prototype.update=function(e){if(this.clear(),0!==e.length){for(var t=[],n=0;n×');a.StoreData(r[0],"data",t),this.$selection.find(".select2-selection__rendered").prepend(r)}},e}),e.define("select2/selection/search",["jquery","../utils","../keys"],function(r,a,l){function e(e,t,n){e.call(this,t,n)}return e.prototype.render=function(e){var t=r('');this.$searchContainer=t,this.$search=t.find("input");var n=e.call(this);return this._transferTabIndex(),n},e.prototype.bind=function(e,t,n){var r=this,i=t.id+"-results";e.call(this,t,n),t.on("open",function(){r.$search.attr("aria-controls",i),r.$search.trigger("focus")}),t.on("close",function(){r.$search.val(""),r.$search.removeAttr("aria-controls"),r.$search.removeAttr("aria-activedescendant"),r.$search.trigger("focus")}),t.on("enable",function(){r.$search.prop("disabled",!1),r._transferTabIndex()}),t.on("disable",function(){r.$search.prop("disabled",!0)}),t.on("focus",function(e){r.$search.trigger("focus")}),t.on("results:focus",function(e){e.data._resultId?r.$search.attr("aria-activedescendant",e.data._resultId):r.$search.removeAttr("aria-activedescendant")}),this.$selection.on("focusin",".select2-search--inline",function(e){r.trigger("focus",e)}),this.$selection.on("focusout",".select2-search--inline",function(e){r._handleBlur(e)}),this.$selection.on("keydown",".select2-search--inline",function(e){if(e.stopPropagation(),r.trigger("keypress",e),r._keyUpPrevented=e.isDefaultPrevented(),e.which===l.BACKSPACE&&""===r.$search.val()){var t=r.$searchContainer.prev(".select2-selection__choice");if(0this.maximumInputLength?this.trigger("results:message",{message:"inputTooLong",args:{maximum:this.maximumInputLength,input:t.term,params:t}}):e.call(this,t,n)},e}),e.define("select2/data/maximumSelectionLength",[],function(){function e(e,t,n){this.maximumSelectionLength=n.get("maximumSelectionLength"),e.call(this,t,n)}return e.prototype.bind=function(e,t,n){var r=this;e.call(this,t,n),t.on("select",function(){r._checkIfMaximumSelected()})},e.prototype.query=function(e,t,n){var r=this;this._checkIfMaximumSelected(function(){e.call(r,t,n)})},e.prototype._checkIfMaximumSelected=function(e,n){var r=this;this.current(function(e){var t=null!=e?e.length:0;0=r.maximumSelectionLength?r.trigger("results:message",{message:"maximumSelected",args:{maximum:r.maximumSelectionLength}}):n&&n()})},e}),e.define("select2/dropdown",["jquery","./utils"],function(t,e){function n(e,t){this.$element=e,this.options=t,n.__super__.constructor.call(this)}return e.Extend(n,e.Observable),n.prototype.render=function(){var e=t('');return e.attr("dir",this.options.get("dir")),this.$dropdown=e},n.prototype.bind=function(){},n.prototype.position=function(e,t){},n.prototype.destroy=function(){this.$dropdown.remove()},n}),e.define("select2/dropdown/search",["jquery","../utils"],function(o,e){function t(){}return t.prototype.render=function(e){var t=e.call(this),n=o('');return this.$searchContainer=n,this.$search=n.find("input"),t.prepend(n),t},t.prototype.bind=function(e,t,n){var r=this,i=t.id+"-results";e.call(this,t,n),this.$search.on("keydown",function(e){r.trigger("keypress",e),r._keyUpPrevented=e.isDefaultPrevented()}),this.$search.on("input",function(e){o(this).off("keyup")}),this.$search.on("keyup input",function(e){r.handleSearch(e)}),t.on("open",function(){r.$search.attr("tabindex",0),r.$search.attr("aria-controls",i),r.$search.trigger("focus"),window.setTimeout(function(){r.$search.trigger("focus")},0)}),t.on("close",function(){r.$search.attr("tabindex",-1),r.$search.removeAttr("aria-controls"),r.$search.removeAttr("aria-activedescendant"),r.$search.val(""),r.$search.trigger("blur")}),t.on("focus",function(){t.isOpen()||r.$search.trigger("focus")}),t.on("results:all",function(e){null!=e.query.term&&""!==e.query.term||(r.showSearch(e)?r.$searchContainer.removeClass("select2-search--hide"):r.$searchContainer.addClass("select2-search--hide"))}),t.on("results:focus",function(e){e.data._resultId?r.$search.attr("aria-activedescendant",e.data._resultId):r.$search.removeAttr("aria-activedescendant")})},t.prototype.handleSearch=function(e){if(!this._keyUpPrevented){var t=this.$search.val();this.trigger("query",{term:t})}this._keyUpPrevented=!1},t.prototype.showSearch=function(e,t){return!0},t}),e.define("select2/dropdown/hidePlaceholder",[],function(){function e(e,t,n,r){this.placeholder=this.normalizePlaceholder(n.get("placeholder")),e.call(this,t,n,r)}return e.prototype.append=function(e,t){t.results=this.removePlaceholder(t.results),e.call(this,t)},e.prototype.normalizePlaceholder=function(e,t){return"string"==typeof t&&(t={id:"",text:t}),t},e.prototype.removePlaceholder=function(e,t){for(var n=t.slice(0),r=t.length-1;0<=r;r--){var i=t[r];this.placeholder.id===i.id&&n.splice(r,1)}return n},e}),e.define("select2/dropdown/infiniteScroll",["jquery"],function(n){function e(e,t,n,r){this.lastParams={},e.call(this,t,n,r),this.$loadingMore=this.createLoadingMore(),this.loading=!1}return e.prototype.append=function(e,t){this.$loadingMore.remove(),this.loading=!1,e.call(this,t),this.showLoadingMore(t)&&(this.$results.append(this.$loadingMore),this.loadMoreIfNeeded())},e.prototype.bind=function(e,t,n){var r=this;e.call(this,t,n),t.on("query",function(e){r.lastParams=e,r.loading=!0}),t.on("query:append",function(e){r.lastParams=e,r.loading=!0}),this.$results.on("scroll",this.loadMoreIfNeeded.bind(this))},e.prototype.loadMoreIfNeeded=function(){var e=n.contains(document.documentElement,this.$loadingMore[0]);if(!this.loading&&e){var t=this.$results.offset().top+this.$results.outerHeight(!1);this.$loadingMore.offset().top+this.$loadingMore.outerHeight(!1)<=t+50&&this.loadMore()}},e.prototype.loadMore=function(){this.loading=!0;var e=n.extend({},{page:1},this.lastParams);e.page++,this.trigger("query:append",e)},e.prototype.showLoadingMore=function(e,t){return t.pagination&&t.pagination.more},e.prototype.createLoadingMore=function(){var e=n('
        • '),t=this.options.get("translations").get("loadingMore");return e.html(t(this.lastParams)),e},e}),e.define("select2/dropdown/attachBody",["jquery","../utils"],function(f,a){function e(e,t,n){this.$dropdownParent=f(n.get("dropdownParent")||document.body),e.call(this,t,n)}return e.prototype.bind=function(e,t,n){var r=this;e.call(this,t,n),t.on("open",function(){r._showDropdown(),r._attachPositioningHandler(t),r._bindContainerResultHandlers(t)}),t.on("close",function(){r._hideDropdown(),r._detachPositioningHandler(t)}),this.$dropdownContainer.on("mousedown",function(e){e.stopPropagation()})},e.prototype.destroy=function(e){e.call(this),this.$dropdownContainer.remove()},e.prototype.position=function(e,t,n){t.attr("class",n.attr("class")),t.removeClass("select2"),t.addClass("select2-container--open"),t.css({position:"absolute",top:-999999}),this.$container=n},e.prototype.render=function(e){var t=f(""),n=e.call(this);return t.append(n),this.$dropdownContainer=t},e.prototype._hideDropdown=function(e){this.$dropdownContainer.detach()},e.prototype._bindContainerResultHandlers=function(e,t){if(!this._containerResultsHandlersBound){var n=this;t.on("results:all",function(){n._positionDropdown(),n._resizeDropdown()}),t.on("results:append",function(){n._positionDropdown(),n._resizeDropdown()}),t.on("results:message",function(){n._positionDropdown(),n._resizeDropdown()}),t.on("select",function(){n._positionDropdown(),n._resizeDropdown()}),t.on("unselect",function(){n._positionDropdown(),n._resizeDropdown()}),this._containerResultsHandlersBound=!0}},e.prototype._attachPositioningHandler=function(e,t){var n=this,r="scroll.select2."+t.id,i="resize.select2."+t.id,o="orientationchange.select2."+t.id,s=this.$container.parents().filter(a.hasScroll);s.each(function(){a.StoreData(this,"select2-scroll-position",{x:f(this).scrollLeft(),y:f(this).scrollTop()})}),s.on(r,function(e){var t=a.GetData(this,"select2-scroll-position");f(this).scrollTop(t.y)}),f(window).on(r+" "+i+" "+o,function(e){n._positionDropdown(),n._resizeDropdown()})},e.prototype._detachPositioningHandler=function(e,t){var n="scroll.select2."+t.id,r="resize.select2."+t.id,i="orientationchange.select2."+t.id;this.$container.parents().filter(a.hasScroll).off(n),f(window).off(n+" "+r+" "+i)},e.prototype._positionDropdown=function(){var e=f(window),t=this.$dropdown.hasClass("select2-dropdown--above"),n=this.$dropdown.hasClass("select2-dropdown--below"),r=null,i=this.$container.offset();i.bottom=i.top+this.$container.outerHeight(!1);var o={height:this.$container.outerHeight(!1)};o.top=i.top,o.bottom=i.top+o.height;var s=this.$dropdown.outerHeight(!1),a=e.scrollTop(),l=e.scrollTop()+e.height(),c=ai.bottom+s,d={left:i.left,top:o.bottom},p=this.$dropdownParent;"static"===p.css("position")&&(p=p.offsetParent());var h={top:0,left:0};(f.contains(document.body,p[0])||p[0].isConnected)&&(h=p.offset()),d.top-=h.top,d.left-=h.left,t||n||(r="below"),u||!c||t?!c&&u&&t&&(r="below"):r="above",("above"==r||t&&"below"!==r)&&(d.top=o.top-h.top-s),null!=r&&(this.$dropdown.removeClass("select2-dropdown--below select2-dropdown--above").addClass("select2-dropdown--"+r),this.$container.removeClass("select2-container--below select2-container--above").addClass("select2-container--"+r)),this.$dropdownContainer.css(d)},e.prototype._resizeDropdown=function(){var e={width:this.$container.outerWidth(!1)+"px"};this.options.get("dropdownAutoWidth")&&(e.minWidth=e.width,e.position="relative",e.width="auto"),this.$dropdown.css(e)},e.prototype._showDropdown=function(e){this.$dropdownContainer.appendTo(this.$dropdownParent),this._positionDropdown(),this._resizeDropdown()},e}),e.define("select2/dropdown/minimumResultsForSearch",[],function(){function e(e,t,n,r){this.minimumResultsForSearch=n.get("minimumResultsForSearch"),this.minimumResultsForSearch<0&&(this.minimumResultsForSearch=1/0),e.call(this,t,n,r)}return e.prototype.showSearch=function(e,t){return!(function e(t){for(var n=0,r=0;r');return e.attr("dir",this.options.get("dir")),this.$container=e,this.$container.addClass("select2-container--"+this.options.get("theme")),u.StoreData(e[0],"element",this.$element),e},d}),e.define("jquery-mousewheel",["jquery"],function(e){return e}),e.define("jquery.select2",["jquery","jquery-mousewheel","./select2/core","./select2/defaults","./select2/utils"],function(i,e,o,t,s){if(null==i.fn.select2){var a=["open","close","destroy"];i.fn.select2=function(t){if("object"==typeof(t=t||{}))return this.each(function(){var e=i.extend(!0,{},t);new o(i(this),e)}),this;if("string"!=typeof t)throw new Error("Invalid arguments for Select2: "+t);var n,r=Array.prototype.slice.call(arguments,1);return this.each(function(){var e=s.GetData(this,"select2");null==e&&window.console&&console.error&&console.error("The select2('"+t+"') method was called on an element that is not using Select2."),n=e[t].apply(e,r)}),-1
          \ No newline at end of file diff --git a/admin/partials/_bmlt_server_setup.php b/admin/partials/_bmlt_server_setup.php index 784a4e3..32eb7a4 100644 --- a/admin/partials/_bmlt_server_setup.php +++ b/admin/partials/_bmlt_server_setup.php @@ -15,10 +15,10 @@
          -

          BMLT Server(?)

          +

          (?)

          - +

          bread->getOption('sslverify') == '1') { ?>

          - + bread->emptyOption('root_server')) { - echo "

          ERROR: Please enter a BMLT Server"; + echo "
          ".__('ERROR: Please enter a BMLT Server', 'bread-domain')."
          "; echo ''; if ($this->bread->getOption('sslverify') == '1') { ?>

          - +

          -
          ERROR: Problem Connecting to BMLT Server
          bread->bmlt()->connection_error); ?> +

          bread->bmlt()->connection_error); ?>

          - +

          bread->getOption('sslverify') ? 'checked' : ''; ?> /> - +

          - +

            select_service_bodies(); ?>
          - bread->getOption('recurse_service_bodies') == 1 ? 'checked' : '') ?> /> Recurse Service Bodies + bread->getOption('recurse_service_bodies') == 1 ? 'checked' : '') ?> />
          @@ -69,64 +69,58 @@

          - This will be executed as part of the meeting search query. This will override any setting in the Service Body dropdowns. -
          You can get help formulating a query using your sites semantic interface. + +
          semantic interface.', 'bread-domain'), esc_url($this->bread->getOption('root_server')).'/semantic') ?>

          -

          Custom Query(?)

          +

          (?)

          - +
          -

          Include Extra Meetings from Another Service Body.

          -

          All Meetings from your BMLT Server are shown in the list.

          -

          The Meetings you select will be merged into your meeting list.

          -

          Note: Be sure to select all meetings for each group.

          +

          +

          +

          +

          -

          Include Extra Meetings(?)

          +

          (?)

          - - connected && $this->bread->getOption('extra_meetings_enabled') == 1) { $extra_meetings_array = $this->bread->bmlt()->get_all_meetings(); + echo ""; foreach ($extra_meetings_array as $id => $descr) { $selected = $this->bread->getOption('extra_meetings') != '' && in_array($id, $this->bread->getOption('extra_meetings')) ? 'selected' : ''; echo ""; } - } ?> - -

          Hint: Type a group name, weekday or area to narrow down your choices.

          + ?> + +

          +
          - bread->emptyOption('extra_meetings_enabled') && $this->bread->getOption('extra_meetings_enabled') == 1 ? 'checked' : '') ?> /> Extra Meetings Enabled + bread->emptyOption('extra_meetings_enabled') && $this->bread->getOption('extra_meetings_enabled') == 1 ? 'checked' : '') ?> />
          -

          Current Meeting List Link(?)

          +

          (?)

          bread->getRequestedSetting() ?>

          -

          Meeting List Author(s)

          +

          - @@ -134,20 +128,20 @@
          -

          Optimize/Debug mPDF(?)

          +

          (?)

          bread->emptyOption('logging') ? '' : 'checked'; ?>> - +
          bread->emptyOption('simpleTables') ? '' : 'checked'; ?>> - +
          bread->emptyOption('packTabledata') ? '' : 'checked'; ?>> - + -

          Download Log Files

          +

          @@ -160,19 +154,19 @@
          -

          Meeting List Cache(?)

          +

          (?)

          -

          This site is using an external object cache.

          +

          • - -   0 - 999 Hours (0 = disable cache)   + +     
          -

          CACHE is DELETED when you Save Changes.

          +

          diff --git a/admin/partials/_custom_section_setup.php b/admin/partials/_custom_section_setup.php index a1f5c0e..b637f60 100644 --- a/admin/partials/_custom_section_setup.php +++ b/admin/partials/_custom_section_setup.php @@ -7,18 +7,18 @@
          -
          -

          The Custom Content can be customized with text, graphics, tables, shortcodes, ect.

          +
          The Custom Content can be customized with text, graphics, tables, shortcodes, etc.

          Default Font Size can be changed for specific text in the editor.

          Add Media button - upload and add graphics.

          Meeting List Shortcodes dropdown - insert variable data.

          -

          The Custom Content will print immediately after the meetings in the meeting list.

          +

          The Custom Content will print immediately after the meetings in the meeting list.

          ", 'bread-domain')?>
          -

          Custom Section Content(?)

          +

          (?)

          -

          Default Font Size:    - Line Height:

          +

             +

          -
          +
          The Front Page can be customized with text, graphics, tables, shortcodes, ect.

          Add Media button - upload and add graphics.

          Meeting List Shortcodes dropdown - insert custom data.

          -

          Default Font Size can be changed for specific text.

          +

          Default Font Size can be changed for specific text.

          ", 'bread-domain') ?>
          -

          Front Page Content(?)

          +

          (?)

          -

          Default Font Size:    - Line Height:

          +

             +

          -

          Page Layout Defaults

          +

          - - - - - + + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - - + + + + +
          Meeting List SizePage LayoutOrientationPaper SizePage Height
          Smaller AreasTri-FoldLandscapeLetter, A4, 195, 180
          Medium AreaQuad-FoldLandscapeLegal, A4, 195, 180
          Large Area, Region, MetroHalf-FoldLandscapeBooklet, A5, 250, 260
          AnythingFull PagePortrait, LandscapeLetter, Legal, A4None, ,
          -

          When a layout is clicked defaults are reset for orientation, paper size and page height.

          +

          -

          Page Layout(?)

          +

          (?)

          type="hidden">
          -
          Single Page
          - bread->getOption('page_fold') == 'flyer' ? 'checked' : '') ?>> - bread->getOption('page_fold') == 'tri' ? 'checked' : '') ?>> - bread->getOption('page_fold') == 'quad' ? 'checked' : '') ?>> +

          + bread->getOption('page_fold') == 'flyer' ? 'checked' : '') ?>> + bread->getOption('page_fold') == 'tri' ? 'checked' : '') ?>> + bread->getOption('page_fold') == 'quad' ? 'checked' : '') ?>>
          - bread->getOption('page_orientation') == 'P' ? 'checked' : '') ?>> - bread->getOption('page_orientation') == 'L' ? 'checked' : '') ?>> + bread->getOption('page_orientation') == 'P' ? 'checked' : '') ?>> + bread->getOption('page_orientation') == 'L' ? 'checked' : '') ?>>
          -
          Booklets
          - bread->getOption('page_fold') == 'half' ? 'checked' : '') ?>> - bread->getOption('page_fold') == 'full' ? 'checked' : '') ?>> +

          + bread->getOption('page_fold') == 'half' ? 'checked' : '') ?>> + bread->getOption('page_fold') == 'full' ? 'checked' : '') ?>>
          - bread->getOption('booklet_pages') == '1' ? 'checked' : '') ?> /> + bread->getOption('booklet_pages') == '1' ? 'checked' : '') ?> />

          - Page Size:
          - bread->getOption('page_size') == '5inch' ? 'checked' : '') ?>> - bread->getOption('page_size') == 'letter' ? 'checked' : '') ?>> - bread->getOption('page_size') == 'legal' ? 'checked' : '') ?>> - bread->getOption('page_size') == 'ledger' ? 'checked' : '') ?>> - bread->getOption('page_size') == 'A4' ? 'checked' : '') ?>> - bread->getOption('page_size') == 'A5' ? 'checked' : '') ?>> - bread->getOption('page_size') == 'A6' ? 'checked' : '') ?>> +
          + bread->getOption('page_size') == '5inch' ? 'checked' : '') ?>> + bread->getOption('page_size') == 'letter' ? 'checked' : '') ?>> + bread->getOption('page_size') == 'legal' ? 'checked' : '') ?>> + bread->getOption('page_size') == 'ledger' ? 'checked' : '') ?>> + bread->getOption('page_size') == 'A4' ? 'checked' : '') ?>> + bread->getOption('page_size') == 'A5' ? 'checked' : '') ?>> + bread->getOption('page_size') == 'A6' ? 'checked' : '') ?>>
          - Page Margin Top:     - Bottom:     - Left:     - Right:     +     +     +     +    
          @@ -97,40 +97,42 @@

          - Describes things on the page other than the contents. Headers, footers, page numbers. -
          What options you see will be dependant on the layout selected. + +
          +

          -

          Page Decorations(?)

          +

          (?)

          - The page header is a title that goes across the entire page above the meetings.
          - - - - Header Margin Top:     -
          Header Text:     -
          Watermark:     + +
          + + + +     +
              +
             
          - +
          - +
          - Page Numbers Font Size: +
          - Column Gap Width: +
          - Separator: bread->getOption('column_line') == '1' ? 'checked' : '') ?> /> - + bread->getOption('column_line') == '1' ? 'checked' : '') ?> /> +
          @@ -139,24 +141,24 @@
          -

          Base Fonts and Colors

          +

          - + - +
          @@ -168,23 +170,26 @@
          -

          Enable PDF Protection.

          -

          Encrypts and sets the PDF document permissions for the PDF file.

          -

          PDF can be opened and printed. -

          Optional Password to allow editing in a PDF editor. -

          Note: PDF is encrypted and cannot be opened in MS Word at all.

          + + +
          + +
          + +
          +
          -

          Password Protection(?)

          +

          (?)

          - bread->getOption('include_protection') == '1' ? 'checked' : '') ?>>Enable Protection + bread->getOption('include_protection') == '1' ? 'checked' : '') ?>>
          - +
          diff --git a/admin/partials/_meetings_setup.php b/admin/partials/_meetings_setup.php index d1a058c..7df2821 100644 --- a/admin/partials/_meetings_setup.php +++ b/admin/partials/_meetings_setup.php @@ -8,62 +8,61 @@
          -

          Customize the Meeting Group Header to your specification.

          -

          The Meeting Group Header will contain the data from Group By.

          +
          -

          Meeting Group [Column] Header(?)

          +

          (?)

          - bread->getOption('suppress_heading') == '1' ? 'checked' : '') ?>> + bread->getOption('suppress_heading') == '1' ? 'checked' : '') ?>> - + + + +
          Font Size:
          - +
          - +
          - bread->getOption('header_uppercase') == '1' ? 'checked' : '') ?>>bread->getOption('header_uppercase') == '1' ? 'checked' : '') ?>> - bread->getOption('header_bold') == '1' ? 'checked' : '') ?>>bread->getOption('header_bold') == '1' ? 'checked' : '') ?>> - bread->getOption('cont_header_shown') == '1' ? 'checked' : '') ?>>bread->getOption('cont_header_shown') == '1' ? 'checked' : '') ?>>

          - +

          - +

          @@ -72,7 +71,7 @@

          - +

          @@ -81,7 +80,7 @@

          - +

          @@ -90,22 +89,22 @@

          - +

          - + - +

          - +
          @@ -205,13 +204,13 @@
          -

          Meeting Template(?)

          +

          (?)

          - Default Font Size:    - Line Height:    - Wheelchair Icon Size:    -

          Avoid using tables which will greatly slow down the generation time. Use CSS instead to get table-like effects if need be.
          +    +    +    +
          -

          Start Time Format(?)

          +

          (?)

          - + bread->getOption('column_line') == '1' ? 'checked' : '') ?> /> + @@ -141,24 +141,24 @@
          -

          +

          - + - +
          @@ -170,26 +170,26 @@
          - - + +
          - +
          - +
          - +
          -

          (?)

          +

          (?)

          - bread->getOption('include_protection') == '1' ? 'checked' : '') ?>> + bread->getOption('include_protection') == '1' ? 'checked' : '') ?>>
          - +
          diff --git a/admin/partials/_meetings_setup.php b/admin/partials/_meetings_setup.php index 7df2821..a04d47a 100644 --- a/admin/partials/_meetings_setup.php +++ b/admin/partials/_meetings_setup.php @@ -8,61 +8,61 @@
          - +
          -

          (?)

          +

          (?)

          - bread->getOption('suppress_heading') == '1' ? 'checked' : '') ?>> + bread->getOption('suppress_heading') == '1' ? 'checked' : '') ?>>
          -
          bread->getOption('time_clock') == '12' || $this->bread->getOption('time_clock') == '' ? 'checked' : '') ?>>
          +
          bread->getOption('time_clock') == '12' || $this->bread->getOption('time_clock') == '' ? 'checked' : '') ?>>
          bread->getOption('time_option') == '1' || $this->bread->getOption('time_option') == '' ? 'checked' : '') ?>>
          bread->getOption('remove_space') == '0' || $this->bread->getOption('remove_space') == '' ? 'checked' : ''; ?> -
          >
          +
          >
          -
          bread->getOption('time_clock') == '24' ? 'checked' : '') ?>>
          +
          bread->getOption('time_clock') == '24' ? 'checked' : '') ?>>
          bread->getOption('time_option') == '2' ? 'checked' : '') ?>>
          -
          bread->getOption('remove_space') == '1') ? 'checked' : ''; ?>>
          +
          bread->getOption('remove_space') == '1') ? 'checked' : ''; ?>>
          -
          bread->getOption('time_clock') == '24fr' ? 'checked' : '') ?>>
          +
          bread->getOption('time_clock') == '24fr' ? 'checked' : '') ?>>
          bread->getOption('time_option') == '3' ? 'checked' : '') ?>>
          @@ -275,9 +274,9 @@
          -

          Include Only This Meeting Format(?)

          +

          (?)

          - + - + connected) { ?> - - + + bread->bmlt()->getFormatsForSelect(true); $countmax = count($used_formats); for ($count = 0; $count < $countmax; $count++) { @@ -325,21 +324,21 @@

          - +

          - +

          -

          bread->getOption('include_additional_list') == '1' ? 'checked' : '') ?>>Include meetings with this format in the main list

          - If you wish to define different contents for the additional list, use this template. +

          bread->getOption('include_additional_list') == '1' ? 'checked' : '') ?>>

          +
          unique_areas = $this->bread->bmlt()->get_areas(); asort($this->unique_areas); if ($serverInfo[0]["aggregator_mode_enabled"] ?? false) { - $this->server_version = "
          Using Tomato Server
          "; + $this->server_version = "
          ".__('Using Tomato Server', 'bread-domain')."
          "; } elseif ($this->connected) { - $this->server_version = "
          Your BMLT Server is running " . $this->connected . "
          "; + $this->server_version = "
          ".sprintf(__('Your BMLT Server is running %s', 'bread-domain'), esc_html($this->connected)). "
          "; } } } private function select_service_bodies() { for ($i = 1; $i <= 5; $i++) { ?> -
        • +
        • @@ -149,10 +150,10 @@ function admin_options_page()
        • admin->current_user_can_modify()) { ?> - - -

          Generate Meeting List

          -
            Save Changes before Generating Meeting List.
          + + +

          +
            

          @@ -162,9 +163,6 @@ function admin_options_page()
          - '120', + 'headers' => array( + 'content-type' => 'application/json' + ), ); if ($this->bread->getOption('user_agent') != 'None') { $args['headers'] = array( @@ -170,7 +173,7 @@ public function testRootServer(string $override_root_server = null): array|bool if ($override_root_server == null) { $results = $this->bread->bmlt()->get_configured_root_server_request("client_interface/json/?switcher=GetServerInfo", true); } else { - $results = $this->bread->bmlt()->get($override_root_server . "/client_interface/json/?switcher=GetServerInfo"); + $results = $this->bread->bmlt()->get($override_root_server . "/client_interface/json/?switcher=GetServerInfo", true); } if ($results instanceof WP_Error) { $this->connection_error = $results->get_error_message(); diff --git a/includes/class-bread-i18n.php b/includes/class-bread-i18n.php index 514f96d..cd6ed13 100644 --- a/includes/class-bread-i18n.php +++ b/includes/class-bread-i18n.php @@ -37,7 +37,7 @@ public function load_plugin_textdomain() { load_plugin_textdomain( - 'bread', + 'bread-domain', false, dirname(dirname(plugin_basename(__FILE__))) . '/languages/' ); diff --git a/includes/lang/translate_cs.php b/includes/lang/translate_cs.php new file mode 100644 index 0000000..0e8d5ff --- /dev/null +++ b/includes/lang/translate_cs.php @@ -0,0 +1,9 @@ + "Czech", + "LOCALE" => "cs_CZ", + "WEEKDAYS" => array( 'ERROR', 'neděle', 'pondělí', 'úterý', 'středa', 'čtvrtek', 'pátek', 'sobota' ), + "WKDYS" => array( 'ERR', 'Ne', 'Po', 'Út', 'St', 'Čt', 'Pá', 'So' ), + "PAGE" => "Seite", + "CONT" => "Pokračování" +); diff --git a/includes/lang/translate_fa.php b/includes/lang/translate_fa.php index 8eecc0c..27d405f 100644 --- a/includes/lang/translate_fa.php +++ b/includes/lang/translate_fa.php @@ -1,6 +1,6 @@ "Farsi", + "LANG_NAME" => "فارسی", "LOCALE" => "fa_IR", "WEEKDAYS" => array( 'ERROR', 'یَکشَنبه', @@ -11,6 +11,6 @@ 'جُمعه', 'شَنبه'), "WKDYS" => array( 'ERR', 'So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa' ), - "PAGE" => "Seite", - "CONT" => "Weiter" + "PAGE" => "صفحه", + "CONT" => "ادامه" ); diff --git a/includes/lang/translate_sk.php b/includes/lang/translate_sk.php new file mode 100644 index 0000000..9462396 --- /dev/null +++ b/includes/lang/translate_sk.php @@ -0,0 +1,9 @@ + "Czech", + "LOCALE" => "cz_CZ", + "WEEKDAYS" => array( 'ERROR', 'nedeľa', 'pondelok', 'utorok', 'streda', 'štvrtok', 'piatok', 'sobota' ), + "WKDYS" => array( 'ERR', 'Ne', 'Po', 'Ut', 'St', 'Čt', 'Pá', 'So' ), + "PAGE" => "Seite", + "CONT" => "Pokračoval" +); diff --git a/languages/bread-domain-fa_IR.l10n.php b/languages/bread-domain-fa_IR.l10n.php new file mode 100644 index 0000000..01737d3 --- /dev/null +++ b/languages/bread-domain-fa_IR.l10n.php @@ -0,0 +1,24 @@ +'Bread','report-msgid-bugs-to'=>'','pot-creation-date'=>'2025-08-28 12:15+0000','po-revision-date'=>'2025-08-28 13:07+0000','last-translator'=>'','language-team'=>'Persian','language'=>'fa_IR','mime-version'=>'1.0','content-type'=>'text/plain; charset=UTF-8','content-transfer-encoding'=>'8bit','plural-forms'=>'nplurals=2; plural=n != 1;','x-domain'=>'bread-domain','x-generator'=>'Loco https://localise.biz/','x-loco-version'=>'2.8.0; wp-6.8.2; php-8.2.0','messages'=>[' +

          The Custom Content can be customized with text, graphics, tables, shortcodes, etc.

          +

          Default Font Size can be changed for specific text in the editor.

          +

          Add Media button - upload and add graphics.

          +

          Meeting List Shortcodes dropdown - insert variable data.

          +

          The Custom Content will print immediately after the meetings in the meeting list.

          '=>'

          محتوای سفارشی را می توان با متن ، گرافیک ، جداول ، کد کوتاه و غیره سفارشی کرد .___ html_1___ +

          default font size برای متن خاص در ویرایشگر قابل تغییر است .___ html_1___ +

          add media دکمه - بارگذاری و اضافه کردن گرافیک .___ html_1___ +

          Meeting لیست کوتاه کد های کشویی - داده های متغیر را وارد کنید .___ html_1___ +

          محتوای سفارشی بلافاصله پس از جلسات در لیست جلسه چاپ می شود .___ html_16___

          ',' +

          The Front Page can be customized with text, graphics, tables, shortcodes, ect.

          +

          Add Media button - upload and add graphics.

          +

          Meeting List Shortcodes dropdown - insert custom data.

          +

          Default Font Size can be changed for specific text.

          '=>'

          صفحه اول را می توان با متن ، گرافیک ، جداول ، کد کوتاه ، ect .___ html_1___ سفارشی سازی کرد. +

          add media دکمه - بارگذاری و اضافه کردن گرافیک .___ html_1___ +

          meeting لیست کوتاه کد های کشویی - داده های سفارشی را وارد کنید .___ html_1___ +

          default font size برای متن خاص قابل تغییر است .___ html_1___','%s Cache entries deleted'=>'%s ورودی های حافظه نهان حذف شده','0 - 999 Hours (0 = disable cache)'=>'0 - 999 ساعت (0 = غیرفعال کردن حافظه پنهان)','12 Hour'=>'12 ساعته','24 Hour'=>'24 ساعته','24 Hour French'=>'24 ساعته فرانسوی','5 inch'=>'5 اینچ','A4'=>'A4','A5'=>'A5','A6'=>'A6','Add extra pages for booklet'=>'صفحات اضافی را برای جزوه اضافه کنید','Add White Space'=>'فضای سفید را اضافه کنید','Additional List'=>'لیست اضافی','All Meetings from your BMLT Server are shown in the list.'=>'تمام جلسات از سرور BMLT شما در لیست نشان داده شده است.','Also useful for backing up before making significant changes to the meeting list settings.'=>'همچنین برای تهیه نسخه پشتیبان از قبل از ایجاد تغییرات مهم در تنظیمات لیست جلسه مفید است.','Anything'=>'هر چیزی','Arial'=>'عیاشی','Avoid using tables which will greatly slow down the generation time. Use CSS instead to get table-like effects if need be.'=>'از استفاده از جداول خودداری کنید که زمان تولید را به شدت کاهش می دهد. به جای آن از CSS استفاده کنید تا در صورت لزوم جلوه های جدول مانند را بدست آورید.','Background Color:'=>'رنگ پس زمینه:','Backup/ Restore'=>'پشتیبان گیری/ بازیابی','Base Font: '=>'قلم پایه:','Base Fonts and Colors'=>'قلم ها و رنگ های پایه','BMLT Server'=>'سرور BMLT','BMLT Server URL: '=>'URL سرور BMLT:','bmlt-enabled'=>'BMLT فعال','Bold: '=>'پررنگ:','Booklet'=>'کتاب','Booklets'=>'کتابفروشی','Borough'=>'ولگرد','Borough Suffix: '=>'پسوند بورو:','Borough+County'=>'ولسوالی+شهرستان','Bottom: '=>'پایین:','Bread'=>'نان','Bread can support multiple meeting lists. Each meeting list has an integer ID and a text description that help the user to identify + the configuration (or \\\'settings\\\') that will be used to generate the meeting list. The ID of the configuration is used in the link + that generates the meeting list (eg, ?current-meeting-list=2 generates the meeting list with ID 2).'=>'نان می تواند از لیست های جلسات مختلف پشتیبانی کند. هر لیست جلسه دارای شناسه عدد صحیح و توضیحات متن است که به کاربر کمک می کند تا شناسایی کند + پیکربندی (یا "تنظیمات \\") که برای تولید لیست جلسه استفاده می شود. شناسه پیکربندی در لینک استفاده می شود + این لیست جلسه را ایجاد می کند (به عنوان مثال ، لیست شماره فعلی = 2 لیست جلسه را با شناسه 2 تولید می کند).','By Day and Time'=>'روز و زمان','By Name'=>'با نام','CACHE is DELETED when you Save Changes.'=>'حافظه پنهان هنگام ذخیره تغییرات حذف می شود.','Cache Time: '=>'زمان حافظه نهان:','City'=>'شهر','City Suffix: '=>'پسوند شهر:','CMYK'=>'cmyk','Color space: '=>'فضای رنگ:','Color:'=>'رنگ:','Column Gap Width: '=>'عرض شکاف ستون:','Combine main and subgroup into a single header'=>'اصلی و زیر گروه را در یک هدر واحد ترکیب کنید','Configuration Manager'=>'مدیر پیکربندی','Configuration Name: '=>'نام پیکربندی:','Configuration Selection'=>'انتخاب پیکربندی','Consider backing up your settings by using the Export function.'=>'با استفاده از عملکرد صادرات ، از تنظیمات خود نسخه پشتیبان تهیه کنید.','County'=>'شهرستان','County Suffix: '=>'پسوند شهرستان:','Courier'=>'پیک','Current Meeting List'=>'لیست جلسه فعلی','Current Meeting List Link'=>'پیوند لیست جلسه فعلی','Custom Content'=>'محتوای سفارشی','Custom Footer: '=>'پاورقی سفارشی:','Custom Query'=>'پرس و جو سفارشی','Custom Query: '=>'پرس و جو سفارشی:','Custom Section Content'=>'محتوای بخش سفارشی','Customize how meetings are grouped and the headline that each group has.'=>'نحوه گروه بندی جلسات و تیتر هر گروه را سفارشی کنید.','Customizer'=>'سفارشی ساز','Default Font Size: '=>'اندازه فونت پیش فرض:','DejaVu Sans Condensed'=>'dejavu sans متراکم','Delete Current Configuration'=>'پیکربندی فعلی را حذف کنید','Disable SSL verification of server'=>'تأیید SSL سرور را غیرفعال کنید','Display (Cont) Header: '=>'هدر نمایش (ادامه):','Display each subgroup with its own header'=>'هر زیر گروه را با عنوان خود نمایش دهید','Display Subgrouping: '=>'نمایش زیر گروه:','Download Log Files'=>'بارگیری پرونده های log','Duplicate Current Configuration'=>'پیکربندی فعلی کپی','Enable Logging'=>'ورود به سیستم را فعال کنید','Enable PDF Protection.'=>'محافظت از PDF را فعال کنید.','Enable Protection'=>'محافظت','Enable SimpleTables'=>'Simpleables را فعال کنید','Encrypted PDFs can be opened and printed.'=>'PDF های رمزگذاری شده را می توان باز و چاپ کرد.','Encrypts and sets the PDF document permissions for the PDF file.'=>'مجوزهای سند PDF را برای پرونده PDF رمزگذاری و تنظیم می کند.','ERROR: Please enter a BMLT Server'=>'خطا: لطفاً یک سرور BMLT وارد کنید','ERROR: Problem Connecting to BMLT Server'=>'خطا: اتصال به سرور BMLT','Export'=>'صادر کردن','Export Configuration'=>'پیکربندی صادرات','Export or backup meeting list settings.'=>'تنظیمات لیست جلسات صادرات یا پشتیبان گیری.','Extra Meetings Enabled'=>'جلسات اضافی فعال شده است','Face-to-Face Meetings'=>'جلسات چهره به چهره','File loaded'=>'پرونده بارگیری شده است','File size greater than 500k'=>'اندازه پرونده بیشتر از 500k','Flyer'=>'پروانه دار','Font Size: '=>'اندازه قلم:','Format of meetings in the additional list: '=>'قالب جلسات در لیست اضافی:','Front Page'=>'صفحه اول','Front Page Content'=>'محتوای صفحه اول','Full Page'=>'صفحه کامل','Generate Meeting List'=>'لیست جلسات را تولید کنید','Getting Started'=>'شروع','Greyscale'=>'گودال','Group'=>'گروه','Group Meetings By: '=>'جلسات گروهی توسط:','Half-Fold'=>'نیمی','Header Margin Top: '=>'بالای حاشیه هدر:','Header Text: '=>'متن هدر:','Hint: Type a group name, weekday or area to narrow down your choices.'=>'نکته: برای محدود کردن انتخاب های خود ، نام گروهی ، روز هفته یا منطقه را تایپ کنید.','https://bmlt.app'=>'https://bmlt.app','https://bmlt.app/'=>'https://bmlt.app/','If you wish to define different contents for the additional list, use this template.'=>'اگر می خواهید مطالب مختلف را برای لیست اضافی تعریف کنید ، از این الگوی استفاده کنید.','Import'=>'وارد کردن','Import Configuration'=>'پیکربندی واردات','Import meeting list settings from a previously exported meeting list.'=>'تنظیمات لیست جلسه واردات از لیست جلسه قبلی صادر شده.','Include Extra Meetings'=>'شامل جلسات اضافی','Include Extra Meetings from Another Service Body.'=>'شامل جلسات اضافی از بدنه سرویس دیگر.','Include meetings with this format in the main list'=>'جلسات با این قالب را در لیست اصلی قرار دهید','Include Only This Meeting Format'=>'فقط این قالب جلسه را درج کنید','Landscape'=>'چشم انداز','Large Area, Region, Metro'=>'منطقه بزرگ ، منطقه ، مترو','Ledger'=>'پیشخدمت','Left: '=>'سمت چپ:','Legal'=>'حقوقی','Letter'=>'نامه','Line Height: '=>'ارتفاع خط:','Load Configuration'=>'پیکربندی بار','Main Grouping: '=>'گروه بندی اصلی:','Maintains and generates PDF Meeting Lists from BMLT.'=>'لیست های جلسات PDF را از BMLT حفظ و تولید می کند.','Margin Footer: '=>'پاورقی حاشیه:','Medium Area'=>'منطقه متوسط','Meeting Format: '=>'قالب جلسه:','Meeting Group [Column] Header'=>'گروه جلسات [ستون]','Meeting List Author(s)'=>'لیست جلسه نویسنده (ها)','Meeting List Cache'=>'حافظه پنهان لیست جلسه','Meeting List ID: '=>'شناسه لیست جلسه:','Meeting List Size'=>'اندازه لیست جلسه','Meeting Template'=>'الگوی جلسه','Meetings'=>'جلسات','Neighborhood'=>'محاصره','Neighborhood Suffix: '=>'پسوند محله:','Neighborhood+City'=>'محله+شهر','No header for subgroups'=>'بدون هدر برای زیر گروه ها','None'=>'هیچ کدام','Not Used'=>'استفاده نشده','Note: Be sure to select all meetings for each group.'=>'توجه: حتماً تمام جلسات را برای هر گروه انتخاب کنید.','Note: Encrypted PDFs cannot be opened in MS Word at all.'=>'توجه: PDF های رمزگذاری شده به هیچ وجه نمی توانند در MS Word باز شوند.','Optimize/Debug mPDF'=>'MPDF بهینه سازی/اشکال زدایی','Optional Password to allow editing in a PDF editor.'=>'رمزعبور اختیاری برای ویرایش در ویرایشگر PDF.','Orientation'=>'جهت گیری','Pack Table Data'=>'داده های جدول بسته بندی','Page Decorations'=>'دکوراسیون صفحه','Page Height'=>'ارتفاع صفحه','Page Layout'=>'چیدمان صفحه','Page Layout Defaults'=>'پیش فرض طرح بندی صفحه','Page Margin Top: '=>'بالای صفحه بالای صفحه:','Page Numbers Font Size: '=>'شماره صفحه اندازه فونت:','Page Size:'=>'اندازه صفحه:','Paper Size'=>'اندازه کاغذ','Password Protection'=>'محافظت از رمز عبور','Password: '=>'رمز عبور:','Please Choose a File.'=>'لطفا یک پرونده را انتخاب کنید.','Please upload a file to import'=>'لطفا یک پرونده را برای واردات بارگذاری کنید','Please upload a valid .json file'=>'لطفاً یک پرونده معتبر .json بارگذاری کنید','Portrait'=>'تصویر','Portrait, Landscape'=>'پرتره ، منظره','Preview'=>'پیش نمایش','Quad-Fold'=>'چهار برابر','Recurse Service Bodies'=>'مجدداً اجسام خدمات','Remove White Space'=>'فضای سفید را بردارید','RGB'=>'RGB','Right: '=>'سمت راست:','Same as main list'=>'همان لیست اصلی','Save Changes'=>'تغییرات را ذخیره کنید','Save Changes before Generating Meeting List.'=>'قبل از تولید لیست جلسات ، تغییرات را ذخیره کنید.','Save Configuration Name'=>'نام پیکربندی را ذخیره کنید','Select Configuration: '=>'پیکربندی را انتخاب کنید:','Select language for the additional list'=>'برای لیست اضافی زبان را انتخاب کنید','Select sort order for the additional list'=>'برای لیست اضافی ترتیب مرتب سازی را انتخاب کنید','Separator: '=>'جداکننده:','Service Body %s'=>'بدنه سرویس %s','Single Page'=>'یک صفحه','Smaller Areas'=>'مناطق کوچکتر','Start Time Format'=>'قالب زمان شروع','State'=>'حالت','State+City'=>'ایالت+شهر','Sub-Grouping: '=>'زیر گروهی:','Suppress Heading: '=>'سرکوب عنوان:','Text Color:'=>'رنگ متن:','The Meetings you select will be merged into your meeting list.'=>'جلساتی که انتخاب می کنید در لیست جلسات شما ادغام می شوند.','The page header is a title that goes across the entire page above the meetings.'=>'عنوان صفحه عنوانی است که در کل صفحه بالاتر از جلسات قرار می گیرد.','This allows you to easily import meeting list settings into another site.'=>'این به شما امکان می دهد تنظیمات لیست جلسه را به راحتی در سایت دیگری وارد کنید.','This section allows the definition of an additional meeting list, containing meetings that should not be included in the main + list. This is typically virtual meetings, but it can be any group of meetings identified by a format.'=>'این بخش اجازه می دهد تا تعریف یک لیست جلسات اضافی ، شامل جلساتی که نباید در قسمت اصلی گنجانده شوند + لیست این معمولاً جلسات مجازی است ، اما می تواند هر گروهی از جلسات باشد که با یک فرمت مشخص می شود.','This section describes things on the page other than the contents. Headers, footers, page numbers.'=>'در این بخش مواردی در صفحه غیر از محتویات شرح داده شده است. هدرها ، پاورقی ها ، شماره صفحه.','This site is using an external object cache.'=>'این سایت از حافظه نهان خارجی استفاده می کند.','This will be executed as part of the meeting search query. This will override any setting in the Service Body dropdowns.'=>'این به عنوان بخشی از پرس و جو جستجوی جلسه اجرا می شود. این امر باعث غلبه بر هر تنظیم در کشویی بدنه سرویس می شود.','Times'=>'بار','Tri-Fold'=>'سه برابر','Try a different user agent or "None" for Wordpress default: '=>'یک عامل کاربر متفاوت یا "هیچ" را برای پیش فرض وردپرس امتحان کنید:','Unrestricted'=>'بدون محدودیت','Uppercase: '=>'حروف بزرگ:','Use Aggregator 🍅'=>'از Aggregator 🍅 ؛','User Defined'=>'کاربر تعریف شده','Using Tomato Server'=>'با استفاده از سرور گوجه فرنگی','Virtual Meetings'=>'جلسات مجازی','Watermark: '=>'علامت علامت:','Weekday'=>'روز هفته','Weekday Language: '=>'زبان روز هفته:','Weekday Start: '=>'شروع روز هفته:','Weekday+Area'=>'روز هفته+منطقه','Weekday+City'=>'روز هفته+شهر','Weekday+County '=>'روز هفته+شهرستان','What options you see will be dependant on the layout selected.'=>'چه گزینه هایی را می بینید که به طرح انتخاب شده بستگی دارد.','Wheelchair Icon Size: '=>'اندازه نماد ویلچر:','When a layout is clicked defaults are reset for orientation, paper size and page height.'=>'هنگامی که یک طرح کلیک می شود پیش فرض برای جهت گیری ، اندازه کاغذ و ارتفاع صفحه تنظیم مجدد می شود.','You can get help formulating a query using your sites semantic interface.'=>'شما می توانید با استفاده از سایت های خود semantic Interface کمک کنید.','You do not have permission to save this configuation!'=>'شما اجازه ذخیره این پیکربندی را ندارید!','Your BMLT Server is running %s'=>'سرور BMLT شما در حال اجرا %s است','Your changes were successfully saved!'=>'تغییرات شما با موفقیت ذخیره شد!','Your current meeting list settings will be replaced and lost forever.'=>'تنظیمات لیست فعلی جلسه شما برای همیشه جایگزین و از بین می رود.']]; diff --git a/languages/bread-domain-fa_IR.mo b/languages/bread-domain-fa_IR.mo new file mode 100644 index 0000000000000000000000000000000000000000..ea8a42d2633f2e3b456aedfe69eb01251ea1d8fb GIT binary patch literal 21373 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 GiT($R)+tZ` literal 0 HcmV?d00001 diff --git a/languages/bread-domain-fa_IR.po b/languages/bread-domain-fa_IR.po new file mode 100644 index 0000000..5405b27 --- /dev/null +++ b/languages/bread-domain-fa_IR.po @@ -0,0 +1,752 @@ +msgid "" +msgstr "" +"Project-Id-Version: Bread\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-08-28 12:15+0000\n" +"PO-Revision-Date: 2025-08-28 13:07+0000\n" +"Last-Translator: \n" +"Language-Team: Persian\n" +"Language: fa_IR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Domain: bread-domain\n" +"X-Generator: Loco https://localise.biz/\n" +"X-Loco-Version: 2.8.0; wp-6.8.2; php-8.2.0" + +msgid "" +"\n" +"

          The Custom Content can be customized with text, " +"graphics, tables, shortcodes, etc.

          \n" +"

          Default Font Size can be changed " +"for specific text in the editor.

          \n" +"

          Add Media button - upload and " +"add graphics.

          \n" +"

          Meeting List Shortcodes dropdown " +"- insert variable data.

          \n" +"

          The Custom Content will print immediately " +"after the meetings in the meeting list.

          " +msgstr "" +"

          محتوای سفارشی را می توان با متن ، گرافیک ، جداول ، کد کوتاه و غیره " +"سفارشی کرد .___ html_1___\n" +"

          default font size برای متن خاص " +"در ویرایشگر قابل تغییر است .___ html_1___\n" +"

          add media دکمه - بارگذاری و " +"اضافه کردن گرافیک .___ html_1___\n" +"

          Meeting لیست کوتاه کد های کشویی " +"- داده های متغیر را وارد کنید .___ html_1___\n" +"

          محتوای سفارشی بلافاصله پس از جلسات در لیست " +"جلسه چاپ می شود .___ html_16___

          " + +msgid "" +"\n" +"

          The Front Page can be customized with text, " +"graphics, tables, shortcodes, ect.

          \n" +"

          Add Media button - upload and " +"add graphics.

          \n" +"

          Meeting List Shortcodes dropdown " +"- insert custom data.

          \n" +"

          Default Font Size can be changed " +"for specific text.

          " +msgstr "" +"

          صفحه اول را می توان با متن ، گرافیک ، جداول ، کد کوتاه ، ect .___ " +"html_1___ سفارشی سازی کرد.\n" +"

          add media دکمه - بارگذاری و " +"اضافه کردن گرافیک .___ html_1___\n" +"

          meeting لیست کوتاه کد های کشویی " +"- داده های سفارشی را وارد کنید .___ html_1___\n" +"

          default font size برای متن خاص " +"قابل تغییر است .___ html_1___" + +msgid "%s Cache entries deleted" +msgstr "%s ورودی های حافظه نهان حذف شده" + +msgid "0 - 999 Hours (0 = disable cache)" +msgstr "0 - 999 ساعت (0 = غیرفعال کردن حافظه پنهان)" + +msgid "12 Hour" +msgstr "12 ساعته" + +msgid "24 Hour" +msgstr "24 ساعته" + +msgid "24 Hour French" +msgstr "24 ساعته فرانسوی" + +msgid "5 inch" +msgstr "5 اینچ" + +msgid "A4" +msgstr "A4" + +msgid "A5" +msgstr "A5" + +msgid "A6" +msgstr "A6" + +msgid "Add extra pages for booklet" +msgstr "صفحات اضافی را برای جزوه اضافه کنید" + +msgid "Add White Space" +msgstr "فضای سفید را اضافه کنید" + +msgid "Additional List" +msgstr "لیست اضافی" + +msgid "All Meetings from your BMLT Server are shown in the list." +msgstr "تمام جلسات از سرور BMLT شما در لیست نشان داده شده است." + +msgid "" +"Also useful for backing up before making significant changes to the meeting " +"list settings." +msgstr "" +"همچنین برای تهیه نسخه پشتیبان از قبل از ایجاد تغییرات مهم در تنظیمات لیست " +"جلسه مفید است." + +msgid "Anything" +msgstr "هر چیزی" + +msgid "Arial" +msgstr "عیاشی" + +msgid "" +"Avoid using tables which will greatly slow down the generation time. Use CSS " +"instead to get table-like effects if need be." +msgstr "" +"از استفاده از جداول خودداری کنید که زمان تولید را به شدت کاهش می دهد. به جای " +"آن از CSS استفاده کنید تا در صورت لزوم جلوه های جدول مانند را بدست آورید." + +msgid "Background Color:" +msgstr "رنگ پس زمینه:" + +msgid "Backup/ Restore" +msgstr "پشتیبان گیری/ بازیابی" + +msgid "Base Font: " +msgstr "قلم پایه:" + +msgid "Base Fonts and Colors" +msgstr "قلم ها و رنگ های پایه" + +msgid "BMLT Server" +msgstr "سرور BMLT" + +msgid "BMLT Server URL: " +msgstr "URL سرور BMLT:" + +#. Author of the plugin +msgid "bmlt-enabled" +msgstr "BMLT فعال" + +msgid "Bold: " +msgstr "پررنگ:" + +msgid "Booklet" +msgstr "کتاب" + +msgid "Booklets" +msgstr "کتابفروشی" + +msgid "Borough" +msgstr "ولگرد" + +msgid "Borough Suffix: " +msgstr "پسوند بورو:" + +msgid "Borough+County" +msgstr "ولسوالی+شهرستان" + +msgid "Bottom: " +msgstr "پایین:" + +#. Name of the plugin +msgid "Bread" +msgstr "نان" + +msgid "" +"Bread can support multiple meeting lists. Each meeting list has an integer " +"ID and a text description that help the user to identify\n" +" the configuration (or \\'settings\\') that will be " +"used to generate the meeting list. The ID of the configuration is used in " +"the link\n" +" that generates the meeting list (eg, ?current-" +"meeting-list=2 generates the meeting list with ID 2)." +msgstr "" +"نان می تواند از لیست های جلسات مختلف پشتیبانی کند. هر لیست جلسه دارای شناسه " +"عدد صحیح و توضیحات متن است که به کاربر کمک می کند تا شناسایی کند\n" +" پیکربندی (یا \"تنظیمات \\\") که برای تولید لیست جلسه " +"استفاده می شود. شناسه پیکربندی در لینک استفاده می شود\n" +" این لیست جلسه را ایجاد می کند (به عنوان مثال ، لیست " +"شماره فعلی = 2 لیست جلسه را با شناسه 2 تولید می کند)." + +msgid "By Day and Time" +msgstr "روز و زمان" + +msgid "By Name" +msgstr "با نام" + +msgid "CACHE is DELETED when you Save Changes." +msgstr "حافظه پنهان هنگام ذخیره تغییرات حذف می شود." + +msgid "Cache Time: " +msgstr "زمان حافظه نهان:" + +msgid "City" +msgstr "شهر" + +msgid "City Suffix: " +msgstr "پسوند شهر:" + +msgid "CMYK" +msgstr "cmyk" + +msgid "Color space: " +msgstr "فضای رنگ:" + +msgid "Color:" +msgstr "رنگ:" + +msgid "Column Gap Width: " +msgstr "عرض شکاف ستون:" + +msgid "Combine main and subgroup into a single header" +msgstr "اصلی و زیر گروه را در یک هدر واحد ترکیب کنید" + +msgid "Configuration Manager" +msgstr "مدیر پیکربندی" + +msgid "Configuration Name: " +msgstr "نام پیکربندی:" + +msgid "Configuration Selection" +msgstr "انتخاب پیکربندی" + +msgid "Consider backing up your settings by using the Export function." +msgstr "با استفاده از عملکرد صادرات ، از تنظیمات خود نسخه پشتیبان تهیه کنید." + +msgid "County" +msgstr "شهرستان" + +msgid "County Suffix: " +msgstr "پسوند شهرستان:" + +msgid "Courier" +msgstr "پیک" + +msgid "Current Meeting List" +msgstr "لیست جلسه فعلی" + +msgid "Current Meeting List Link" +msgstr "پیوند لیست جلسه فعلی" + +msgid "Custom Content" +msgstr "محتوای سفارشی" + +msgid "Custom Footer: " +msgstr "پاورقی سفارشی:" + +msgid "Custom Query" +msgstr "پرس و جو سفارشی" + +msgid "Custom Query: " +msgstr "پرس و جو سفارشی:" + +msgid "Custom Section Content" +msgstr "محتوای بخش سفارشی" + +msgid "" +"Customize how meetings are grouped and the headline that each group has." +msgstr "نحوه گروه بندی جلسات و تیتر هر گروه را سفارشی کنید." + +msgid "Customizer" +msgstr "سفارشی ساز" + +msgid "Default Font Size: " +msgstr "اندازه فونت پیش فرض:" + +msgid "DejaVu Sans Condensed" +msgstr "dejavu sans متراکم" + +msgid "Delete Current Configuration" +msgstr "پیکربندی فعلی را حذف کنید" + +msgid "Disable SSL verification of server" +msgstr "تأیید SSL سرور را غیرفعال کنید" + +msgid "Display (Cont) Header: " +msgstr "هدر نمایش (ادامه):" + +msgid "Display each subgroup with its own header" +msgstr "هر زیر گروه را با عنوان خود نمایش دهید" + +msgid "Display Subgrouping: " +msgstr "نمایش زیر گروه:" + +msgid "Download Log Files" +msgstr "بارگیری پرونده های log" + +msgid "Duplicate Current Configuration" +msgstr "پیکربندی فعلی کپی" + +msgid "Enable Logging" +msgstr "ورود به سیستم را فعال کنید" + +msgid "Enable PDF Protection." +msgstr "محافظت از PDF را فعال کنید." + +msgid "Enable Protection" +msgstr "محافظت" + +msgid "Enable SimpleTables" +msgstr "Simpleables را فعال کنید" + +msgid "Encrypted PDFs can be opened and printed." +msgstr "PDF های رمزگذاری شده را می توان باز و چاپ کرد." + +msgid "Encrypts and sets the PDF document permissions for the PDF file." +msgstr "مجوزهای سند PDF را برای پرونده PDF رمزگذاری و تنظیم می کند." + +msgid "ERROR: Please enter a BMLT Server" +msgstr "خطا: لطفاً یک سرور BMLT وارد کنید" + +msgid "ERROR: Problem Connecting to BMLT Server" +msgstr "خطا: اتصال به سرور BMLT" + +msgid "Export" +msgstr "صادر کردن" + +msgid "Export Configuration" +msgstr "پیکربندی صادرات" + +msgid "Export or backup meeting list settings." +msgstr "تنظیمات لیست جلسات صادرات یا پشتیبان گیری." + +msgid "Extra Meetings Enabled" +msgstr "جلسات اضافی فعال شده است" + +msgid "Face-to-Face Meetings" +msgstr "جلسات چهره به چهره" + +msgid "File loaded" +msgstr "پرونده بارگیری شده است" + +msgid "File size greater than 500k" +msgstr "اندازه پرونده بیشتر از 500k" + +msgid "Flyer" +msgstr "پروانه دار" + +msgid "Font Size: " +msgstr "اندازه قلم:" + +msgid "Format of meetings in the additional list: " +msgstr "قالب جلسات در لیست اضافی:" + +msgid "Front Page" +msgstr "صفحه اول" + +msgid "Front Page Content" +msgstr "محتوای صفحه اول" + +msgid "Full Page" +msgstr "صفحه کامل" + +msgid "Generate Meeting List" +msgstr "لیست جلسات را تولید کنید" + +msgid "Getting Started" +msgstr "شروع" + +msgid "Greyscale" +msgstr "گودال" + +msgid "Group" +msgstr "گروه" + +msgid "Group Meetings By: " +msgstr "جلسات گروهی توسط:" + +msgid "Half-Fold" +msgstr "نیمی" + +msgid "Header Margin Top: " +msgstr "بالای حاشیه هدر:" + +msgid "Header Text: " +msgstr "متن هدر:" + +msgid "Hint: Type a group name, weekday or area to narrow down your choices." +msgstr "" +"نکته: برای محدود کردن انتخاب های خود ، نام گروهی ، روز هفته یا منطقه را تایپ " +"کنید." + +#. URI of the plugin +msgid "https://bmlt.app" +msgstr "https://bmlt.app" + +#. Author URI of the plugin +msgid "https://bmlt.app/" +msgstr "https://bmlt.app/" + +msgid "" +"If you wish to define different contents for the additional list, use this " +"template." +msgstr "" +"اگر می خواهید مطالب مختلف را برای لیست اضافی تعریف کنید ، از این الگوی " +"استفاده کنید." + +msgid "Import" +msgstr "وارد کردن" + +msgid "Import Configuration" +msgstr "پیکربندی واردات" + +msgid "Import meeting list settings from a previously exported meeting list." +msgstr "تنظیمات لیست جلسه واردات از لیست جلسه قبلی صادر شده." + +msgid "Include Extra Meetings" +msgstr "شامل جلسات اضافی" + +msgid "Include Extra Meetings from Another Service Body." +msgstr "شامل جلسات اضافی از بدنه سرویس دیگر." + +msgid "Include meetings with this format in the main list" +msgstr "جلسات با این قالب را در لیست اصلی قرار دهید" + +msgid "Include Only This Meeting Format" +msgstr "فقط این قالب جلسه را درج کنید" + +msgid "Landscape" +msgstr "چشم انداز" + +msgid "Large Area, Region, Metro" +msgstr "منطقه بزرگ ، منطقه ، مترو" + +msgid "Ledger" +msgstr "پیشخدمت" + +msgid "Left: " +msgstr "سمت چپ:" + +msgid "Legal" +msgstr "حقوقی" + +msgid "Letter" +msgstr "نامه" + +msgid "Line Height: " +msgstr "ارتفاع خط:" + +msgid "Load Configuration" +msgstr "پیکربندی بار" + +msgid "Main Grouping: " +msgstr "گروه بندی اصلی:" + +#. Description of the plugin +msgid "Maintains and generates PDF Meeting Lists from BMLT." +msgstr "لیست های جلسات PDF را از BMLT حفظ و تولید می کند." + +msgid "Margin Footer: " +msgstr "پاورقی حاشیه:" + +msgid "Medium Area" +msgstr "منطقه متوسط" + +msgid "Meeting Format: " +msgstr "قالب جلسه:" + +msgid "Meeting Group [Column] Header" +msgstr "گروه جلسات [ستون]" + +msgid "Meeting List Author(s)" +msgstr "لیست جلسه نویسنده (ها)" + +msgid "Meeting List Cache" +msgstr "حافظه پنهان لیست جلسه" + +msgid "Meeting List ID: " +msgstr "شناسه لیست جلسه:" + +msgid "Meeting List Size" +msgstr "اندازه لیست جلسه" + +msgid "Meeting Template" +msgstr "الگوی جلسه" + +msgid "Meetings" +msgstr "جلسات" + +msgid "Neighborhood" +msgstr "محاصره" + +msgid "Neighborhood Suffix: " +msgstr "پسوند محله:" + +msgid "Neighborhood+City" +msgstr "محله+شهر" + +msgid "No header for subgroups" +msgstr "بدون هدر برای زیر گروه ها" + +msgid "None" +msgstr "هیچ کدام" + +msgid "Not Used" +msgstr "استفاده نشده" + +msgid "Note: Be sure to select all meetings for each group." +msgstr "توجه: حتماً تمام جلسات را برای هر گروه انتخاب کنید." + +msgid "Note: Encrypted PDFs cannot be opened in MS Word at all." +msgstr "توجه: PDF های رمزگذاری شده به هیچ وجه نمی توانند در MS Word باز شوند." + +msgid "Optimize/Debug mPDF" +msgstr "MPDF بهینه سازی/اشکال زدایی" + +msgid "Optional Password to allow editing in a PDF editor." +msgstr "رمزعبور اختیاری برای ویرایش در ویرایشگر PDF." + +msgid "Orientation" +msgstr "جهت گیری" + +msgid "Pack Table Data" +msgstr "داده های جدول بسته بندی" + +msgid "Page Decorations" +msgstr "دکوراسیون صفحه" + +msgid "Page Height" +msgstr "ارتفاع صفحه" + +msgid "Page Layout" +msgstr "چیدمان صفحه" + +msgid "Page Layout Defaults" +msgstr "پیش فرض طرح بندی صفحه" + +msgid "Page Margin Top: " +msgstr "بالای صفحه بالای صفحه:" + +msgid "Page Numbers Font Size: " +msgstr "شماره صفحه اندازه فونت:" + +msgid "Page Size:" +msgstr "اندازه صفحه:" + +msgid "Paper Size" +msgstr "اندازه کاغذ" + +msgid "Password Protection" +msgstr "محافظت از رمز عبور" + +msgid "Password: " +msgstr "رمز عبور:" + +msgid "Please Choose a File." +msgstr "لطفا یک پرونده را انتخاب کنید." + +msgid "Please upload a file to import" +msgstr "لطفا یک پرونده را برای واردات بارگذاری کنید" + +msgid "Please upload a valid .json file" +msgstr "لطفاً یک پرونده معتبر .json بارگذاری کنید" + +msgid "Portrait" +msgstr "تصویر" + +msgid "Portrait, Landscape" +msgstr "پرتره ، منظره" + +msgid "Preview" +msgstr "پیش نمایش" + +msgid "Quad-Fold" +msgstr "چهار برابر" + +msgid "Recurse Service Bodies" +msgstr "مجدداً اجسام خدمات" + +msgid "Remove White Space" +msgstr "فضای سفید را بردارید" + +msgid "RGB" +msgstr "RGB" + +msgid "Right: " +msgstr "سمت راست:" + +msgid "Same as main list" +msgstr "همان لیست اصلی" + +msgid "Save Changes" +msgstr "تغییرات را ذخیره کنید" + +msgid "Save Changes before Generating Meeting List." +msgstr "قبل از تولید لیست جلسات ، تغییرات را ذخیره کنید." + +msgid "Save Configuration Name" +msgstr "نام پیکربندی را ذخیره کنید" + +msgid "Select Configuration: " +msgstr "پیکربندی را انتخاب کنید:" + +msgid "Select language for the additional list" +msgstr "برای لیست اضافی زبان را انتخاب کنید" + +msgid "Select sort order for the additional list" +msgstr "برای لیست اضافی ترتیب مرتب سازی را انتخاب کنید" + +msgid "Separator: " +msgstr "جداکننده:" + +msgid "Service Body %s" +msgstr "بدنه سرویس %s" + +msgid "Single Page" +msgstr "یک صفحه" + +msgid "Smaller Areas" +msgstr "مناطق کوچکتر" + +msgid "Start Time Format" +msgstr "قالب زمان شروع" + +msgid "State" +msgstr "حالت" + +msgid "State+City" +msgstr "ایالت+شهر" + +msgid "Sub-Grouping: " +msgstr "زیر گروهی:" + +msgid "Suppress Heading: " +msgstr "سرکوب عنوان:" + +msgid "Text Color:" +msgstr "رنگ متن:" + +msgid "The Meetings you select will be merged into your meeting list." +msgstr "جلساتی که انتخاب می کنید در لیست جلسات شما ادغام می شوند." + +msgid "" +"The page header is a title that goes across the entire page above the " +"meetings." +msgstr "عنوان صفحه عنوانی است که در کل صفحه بالاتر از جلسات قرار می گیرد." + +msgid "" +"This allows you to easily import meeting list settings into another site." +msgstr "" +"این به شما امکان می دهد تنظیمات لیست جلسه را به راحتی در سایت دیگری وارد " +"کنید." + +msgid "" +"This section allows the definition of an additional meeting list, containing " +"meetings that should not be included in the main\n" +" list. This is typically virtual meetings, but it can " +"be any group of meetings identified by a format." +msgstr "" +"این بخش اجازه می دهد تا تعریف یک لیست جلسات اضافی ، شامل جلساتی که نباید در " +"قسمت اصلی گنجانده شوند\n" +" لیست این معمولاً جلسات مجازی است ، اما می تواند هر " +"گروهی از جلسات باشد که با یک فرمت مشخص می شود." + +msgid "" +"This section describes things on the page other than the contents. Headers, " +"footers, page numbers." +msgstr "" +"در این بخش مواردی در صفحه غیر از محتویات شرح داده شده است. هدرها ، پاورقی ها " +"، شماره صفحه." + +msgid "This site is using an external object cache." +msgstr "این سایت از حافظه نهان خارجی استفاده می کند." + +msgid "" +"This will be executed as part of the meeting search query. This will " +"override any setting in the Service Body dropdowns." +msgstr "" +"این به عنوان بخشی از پرس و جو جستجوی جلسه اجرا می شود. این امر باعث غلبه بر " +"هر تنظیم در کشویی بدنه سرویس می شود." + +msgid "Times" +msgstr "بار" + +msgid "Tri-Fold" +msgstr "سه برابر" + +msgid "Try a different user agent or \"None\" for Wordpress default: " +msgstr "یک عامل کاربر متفاوت یا \"هیچ\" را برای پیش فرض وردپرس امتحان کنید:" + +msgid "Unrestricted" +msgstr "بدون محدودیت" + +msgid "Uppercase: " +msgstr "حروف بزرگ:" + +msgid "Use Aggregator 🍅" +msgstr "از Aggregator 🍅 ؛" + +msgid "User Defined" +msgstr "کاربر تعریف شده" + +msgid "Using Tomato Server" +msgstr "با استفاده از سرور گوجه فرنگی" + +msgid "Virtual Meetings" +msgstr "جلسات مجازی" + +msgid "Watermark: " +msgstr "علامت علامت:" + +msgid "Weekday" +msgstr "روز هفته" + +msgid "Weekday Language: " +msgstr "زبان روز هفته:" + +msgid "Weekday Start: " +msgstr "شروع روز هفته:" + +msgid "Weekday+Area" +msgstr "روز هفته+منطقه" + +msgid "Weekday+City" +msgstr "روز هفته+شهر" + +msgid "Weekday+County " +msgstr "روز هفته+شهرستان" + +msgid "What options you see will be dependant on the layout selected." +msgstr "چه گزینه هایی را می بینید که به طرح انتخاب شده بستگی دارد." + +msgid "Wheelchair Icon Size: " +msgstr "اندازه نماد ویلچر:" + +msgid "" +"When a layout is clicked defaults are reset for orientation, paper size and " +"page height." +msgstr "" +"هنگامی که یک طرح کلیک می شود پیش فرض برای جهت گیری ، اندازه کاغذ و ارتفاع " +"صفحه تنظیم مجدد می شود." + +msgid "" +"You can get help formulating a query using your sites " +"semantic interface." +msgstr "" +"شما می توانید با استفاده از سایت های خود semantic " +"Interface کمک کنید." + +msgid "You do not have permission to save this configuation!" +msgstr "شما اجازه ذخیره این پیکربندی را ندارید!" + +msgid "Your BMLT Server is running %s" +msgstr "سرور BMLT شما در حال اجرا %s است" + +msgid "Your changes were successfully saved!" +msgstr "تغییرات شما با موفقیت ذخیره شد!" + +msgid "Your current meeting list settings will be replaced and lost forever." +msgstr "تنظیمات لیست فعلی جلسه شما برای همیشه جایگزین و از بین می رود." diff --git a/languages/bread-domain.pot b/languages/bread-domain.pot new file mode 100644 index 0000000..05c84bb --- /dev/null +++ b/languages/bread-domain.pot @@ -0,0 +1,940 @@ +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Bread\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-08-28 12:15+0000\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: \n" +"Language: \n" +"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Loco https://localise.biz/\n" +"X-Loco-Version: 2.8.0; wp-6.8.2; php-8.2.0\n" +"X-Domain: bread-domain" + +#: admin/partials/_custom_section_setup.php:10 +msgid "" +"\n" +"

          The Custom Content can be customized with text, " +"graphics, tables, shortcodes, etc.

          \n" +"

          Default Font Size can be changed " +"for specific text in the editor.

          \n" +"

          Add Media button - upload and " +"add graphics.

          \n" +"

          Meeting List Shortcodes dropdown " +"- insert variable data.

          \n" +"

          The Custom Content will print immediately " +"after the meetings in the meeting list.

          " +msgstr "" + +#: admin/partials/_front_page_setup.php:10 +msgid "" +"\n" +"

          The Front Page can be customized with text, " +"graphics, tables, shortcodes, ect.

          \n" +"

          Add Media button - upload and " +"add graphics.

          \n" +"

          Meeting List Shortcodes dropdown " +"- insert custom data.

          \n" +"

          Default Font Size can be changed " +"for specific text.

          " +msgstr "" + +#: admin/partials/bread-admin-display.php:102 +#, php-format +msgid "%s Cache entries deleted" +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:166 +msgid "0 - 999 Hours (0 = disable cache)" +msgstr "" + +#: admin/partials/_meetings_setup.php:241 +msgid "12 Hour" +msgstr "" + +#: admin/partials/_meetings_setup.php:253 +msgid "24 Hour" +msgstr "" + +#: admin/partials/_meetings_setup.php:265 +msgid "24 Hour French" +msgstr "" + +#: admin/partials/_layout_setup.php:76 +msgid "5 inch" +msgstr "" + +#: admin/partials/_layout_setup.php:25 admin/partials/_layout_setup.php:32 +#: admin/partials/_layout_setup.php:46 admin/partials/_layout_setup.php:80 +msgid "A4" +msgstr "" + +#: admin/partials/_layout_setup.php:39 admin/partials/_layout_setup.php:81 +msgid "A5" +msgstr "" + +#: admin/partials/_layout_setup.php:82 +msgid "A6" +msgstr "" + +#: admin/partials/_layout_setup.php:70 +msgid "Add extra pages for booklet" +msgstr "" + +#: admin/partials/_meetings_setup.php:248 +msgid "Add White Space" +msgstr "" + +#: admin/partials/_meetings_setup.php:301 +msgid "Additional List" +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:87 +msgid "All Meetings from your BMLT Server are shown in the list." +msgstr "" + +#: admin/partials/_backup_restore_setup.php:56 +msgid "" +"Also useful for backing up before making significant changes to the meeting " +"list settings." +msgstr "" + +#: admin/partials/_layout_setup.php:43 +msgid "Anything" +msgstr "" + +#: admin/partials/_layout_setup.php:153 +msgid "Arial" +msgstr "" + +#: admin/partials/_meetings_setup.php:213 +msgid "" +"Avoid using tables which will greatly slow down the generation time. Use CSS " +"instead to get table-like effects if need be." +msgstr "" + +#: admin/partials/_layout_setup.php:113 admin/partials/_meetings_setup.php:29 +msgid "Background Color:" +msgstr "" + +#: admin/partials/bread-admin-display.php:118 +msgid "Backup/ Restore" +msgstr "" + +#: admin/partials/_layout_setup.php:148 +msgid "Base Font: " +msgstr "" + +#: admin/partials/_layout_setup.php:144 +msgid "Base Fonts and Colors" +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:18 +#: admin/partials/bread-admin-display.php:125 +msgid "BMLT Server" +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:21 +msgid "BMLT Server URL: " +msgstr "" + +#. Author of the plugin +msgid "bmlt-enabled" +msgstr "" + +#: admin/partials/_meetings_setup.php:37 +msgid "Bold: " +msgstr "" + +#: admin/partials/_layout_setup.php:39 +msgid "Booklet" +msgstr "" + +#: admin/partials/_layout_setup.php:66 +msgid "Booklets" +msgstr "" + +#: admin/partials/_meetings_setup.php:52 admin/partials/_meetings_setup.php:106 +#: admin/partials/_meetings_setup.php:127 +msgid "Borough" +msgstr "" + +#: admin/partials/_meetings_setup.php:65 +msgid "Borough Suffix: " +msgstr "" + +#: admin/partials/_meetings_setup.php:53 +msgid "Borough+County" +msgstr "" + +#: admin/partials/_layout_setup.php:85 +msgid "Bottom: " +msgstr "" + +#. Name of the plugin +msgid "Bread" +msgstr "" + +#: admin/partials/_backup_restore_setup.php:11 +msgid "" +"Bread can support multiple meeting lists. Each meeting list has an integer " +"ID and a text description that help the user to identify\n" +" the configuration (or \\'settings\\') that will be " +"used to generate the meeting list. The ID of the configuration is used in " +"the link\n" +" that generates the meeting list (eg, ?current-" +"meeting-list=2 generates the meeting list with ID 2)." +msgstr "" + +#: admin/partials/_meetings_setup.php:330 +msgid "By Day and Time" +msgstr "" + +#: admin/partials/_meetings_setup.php:329 +msgid "By Name" +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:169 +msgid "CACHE is DELETED when you Save Changes." +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:165 +msgid "Cache Time: " +msgstr "" + +#: admin/partials/_meetings_setup.php:49 admin/partials/_meetings_setup.php:102 +#: admin/partials/_meetings_setup.php:123 +msgid "City" +msgstr "" + +#: admin/partials/_meetings_setup.php:92 +msgid "City Suffix: " +msgstr "" + +#: admin/partials/_layout_setup.php:161 +msgid "CMYK" +msgstr "" + +#: admin/partials/_layout_setup.php:156 +msgid "Color space: " +msgstr "" + +#: admin/partials/_layout_setup.php:135 +msgid "Color:" +msgstr "" + +#: admin/partials/_layout_setup.php:130 +msgid "Column Gap Width: " +msgstr "" + +#: admin/partials/_meetings_setup.php:152 +msgid "Combine main and subgroup into a single header" +msgstr "" + +#: admin/partials/_backup_restore_setup.php:9 +msgid "Configuration Manager" +msgstr "" + +#: admin/partials/_backup_restore_setup.php:20 +msgid "Configuration Name: " +msgstr "" + +#: admin/partials/_backup_restore_setup.php:25 +msgid "Configuration Selection" +msgstr "" + +#: admin/partials/_backup_restore_setup.php:79 +msgid "Consider backing up your settings by using the Export function." +msgstr "" + +#: admin/partials/_meetings_setup.php:51 admin/partials/_meetings_setup.php:105 +#: admin/partials/_meetings_setup.php:126 +msgid "County" +msgstr "" + +#: admin/partials/_meetings_setup.php:74 +msgid "County Suffix: " +msgstr "" + +#: admin/partials/_layout_setup.php:151 +msgid "Courier" +msgstr "" + +#: admin/partials/_backup_restore_setup.php:14 +msgid "Current Meeting List" +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:114 +msgid "Current Meeting List Link" +msgstr "" + +#: admin/partials/bread-admin-display.php:129 +msgid "Custom Content" +msgstr "" + +#: admin/partials/_layout_setup.php:119 admin/partials/_meetings_setup.php:187 +msgid "Custom Footer: " +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:77 +msgid "Custom Query" +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:79 +#: admin/partials/_meetings_setup.php:362 +msgid "Custom Query: " +msgstr "" + +#: admin/partials/_custom_section_setup.php:18 +msgid "Custom Section Content" +msgstr "" + +#: admin/partials/_meetings_setup.php:11 +msgid "" +"Customize how meetings are grouped and the headline that each group has." +msgstr "" + +#: admin/partials/bread-admin-display.php:117 +msgid "Customizer" +msgstr "" + +#: admin/partials/_custom_section_setup.php:20 +#: admin/partials/_front_page_setup.php:19 +#: admin/partials/_meetings_setup.php:210 +msgid "Default Font Size: " +msgstr "" + +#: admin/partials/_layout_setup.php:150 +msgid "DejaVu Sans Condensed" +msgstr "" + +#: admin/partials/_backup_restore_setup.php:44 +msgid "Delete Current Configuration" +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:31 +#: admin/partials/_bmlt_server_setup.php:39 +#: admin/partials/_bmlt_server_setup.php:52 +msgid "Disable SSL verification of server" +msgstr "" + +#: admin/partials/_meetings_setup.php:40 +msgid "Display (Cont) Header: " +msgstr "" + +#: admin/partials/_meetings_setup.php:149 +msgid "Display each subgroup with its own header" +msgstr "" + +#: admin/partials/_meetings_setup.php:143 +msgid "Display Subgrouping: " +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:144 +msgid "Download Log Files" +msgstr "" + +#: admin/partials/_backup_restore_setup.php:42 +msgid "Duplicate Current Configuration" +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:134 +msgid "Enable Logging" +msgstr "" + +#: admin/partials/_layout_setup.php:173 +msgid "Enable PDF Protection." +msgstr "" + +#: admin/partials/_layout_setup.php:187 +msgid "Enable Protection" +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:137 +msgid "Enable SimpleTables" +msgstr "" + +#: admin/partials/_layout_setup.php:176 +msgid "Encrypted PDFs can be opened and printed." +msgstr "" + +#: admin/partials/_layout_setup.php:174 +msgid "Encrypts and sets the PDF document permissions for the PDF file." +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:34 +msgid "ERROR: Please enter a BMLT Server" +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:44 +msgid "ERROR: Problem Connecting to BMLT Server" +msgstr "" + +#: admin/partials/_backup_restore_setup.php:61 +msgid "Export" +msgstr "" + +#: admin/partials/_backup_restore_setup.php:52 +msgid "Export Configuration" +msgstr "" + +#: admin/partials/_backup_restore_setup.php:54 +msgid "Export or backup meeting list settings." +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:108 +msgid "Extra Meetings Enabled" +msgstr "" + +#: admin/partials/_meetings_setup.php:313 +msgid "Face-to-Face Meetings" +msgstr "" + +#: admin/partials/bread-admin-display.php:95 +msgid "File loaded" +msgstr "" + +#: admin/class-bread-admin.php:367 +msgid "File size greater than 500k" +msgstr "" + +#: admin/partials/_layout_setup.php:59 +msgid "Flyer" +msgstr "" + +#: admin/partials/_layout_setup.php:111 admin/partials/_meetings_setup.php:21 +msgid "Font Size: " +msgstr "" + +#: admin/partials/_meetings_setup.php:308 +msgid "Format of meetings in the additional list: " +msgstr "" + +#: admin/partials/bread-admin-display.php:127 +msgid "Front Page" +msgstr "" + +#: admin/partials/_front_page_setup.php:17 +msgid "Front Page Content" +msgstr "" + +#: admin/partials/_layout_setup.php:44 admin/partials/_layout_setup.php:68 +msgid "Full Page" +msgstr "" + +#: admin/partials/_backup_restore_setup.php:90 +msgid "Generate Meeting List" +msgstr "" + +#: admin/partials/bread-admin-display.php:116 +msgid "Getting Started" +msgstr "" + +#: admin/partials/_layout_setup.php:159 +msgid "Greyscale" +msgstr "" + +#: admin/partials/_meetings_setup.php:50 admin/partials/_meetings_setup.php:104 +#: admin/partials/_meetings_setup.php:125 +msgid "Group" +msgstr "" + +#: admin/partials/_meetings_setup.php:46 +msgid "Group Meetings By: " +msgstr "" + +#: admin/partials/_layout_setup.php:37 admin/partials/_layout_setup.php:67 +msgid "Half-Fold" +msgstr "" + +#: admin/partials/_layout_setup.php:114 +msgid "Header Margin Top: " +msgstr "" + +#: admin/partials/_layout_setup.php:115 +msgid "Header Text: " +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:105 +msgid "Hint: Type a group name, weekday or area to narrow down your choices." +msgstr "" + +#. URI of the plugin +msgid "https://bmlt.app" +msgstr "" + +#. Author URI of the plugin +msgid "https://bmlt.app/" +msgstr "" + +#: admin/partials/_meetings_setup.php:367 +msgid "" +"If you wish to define different contents for the additional list, use this " +"template." +msgstr "" + +#: admin/partials/_backup_restore_setup.php:75 +msgid "Import" +msgstr "" + +#: admin/partials/_backup_restore_setup.php:67 +msgid "Import Configuration" +msgstr "" + +#: admin/partials/_backup_restore_setup.php:69 +msgid "Import meeting list settings from a previously exported meeting list." +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:92 +msgid "Include Extra Meetings" +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:86 +msgid "Include Extra Meetings from Another Service Body." +msgstr "" + +#: admin/partials/_meetings_setup.php:366 +msgid "Include meetings with this format in the main list" +msgstr "" + +#: admin/partials/_meetings_setup.php:277 +msgid "Include Only This Meeting Format" +msgstr "" + +#: admin/partials/_layout_setup.php:24 admin/partials/_layout_setup.php:31 +#: admin/partials/_layout_setup.php:38 admin/partials/_layout_setup.php:64 +msgid "Landscape" +msgstr "" + +#: admin/partials/_layout_setup.php:36 +msgid "Large Area, Region, Metro" +msgstr "" + +#: admin/partials/_layout_setup.php:79 +msgid "Ledger" +msgstr "" + +#: admin/partials/_layout_setup.php:86 +msgid "Left: " +msgstr "" + +#: admin/partials/_layout_setup.php:32 admin/partials/_layout_setup.php:46 +#: admin/partials/_layout_setup.php:78 +msgid "Legal" +msgstr "" + +#: admin/partials/_layout_setup.php:25 admin/partials/_layout_setup.php:46 +#: admin/partials/_layout_setup.php:77 +msgid "Letter" +msgstr "" + +#: admin/partials/_custom_section_setup.php:21 +#: admin/partials/_front_page_setup.php:20 +#: admin/partials/_meetings_setup.php:211 +msgid "Line Height: " +msgstr "" + +#: admin/partials/_backup_restore_setup.php:34 +msgid "Load Configuration" +msgstr "" + +#: admin/partials/_meetings_setup.php:99 +msgid "Main Grouping: " +msgstr "" + +#. Description of the plugin +msgid "Maintains and generates PDF Meeting Lists from BMLT." +msgstr "" + +#: admin/partials/_layout_setup.php:122 +msgid "Margin Footer: " +msgstr "" + +#: admin/partials/_layout_setup.php:29 +msgid "Medium Area" +msgstr "" + +#: admin/partials/_meetings_setup.php:279 +msgid "Meeting Format: " +msgstr "" + +#: admin/partials/_meetings_setup.php:14 +msgid "Meeting Group [Column] Header" +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:121 +msgid "Meeting List Author(s)" +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:157 +msgid "Meeting List Cache" +msgstr "" + +#: admin/partials/_backup_restore_setup.php:16 +msgid "Meeting List ID: " +msgstr "" + +#: admin/partials/_layout_setup.php:15 +msgid "Meeting List Size" +msgstr "" + +#: admin/partials/_meetings_setup.php:207 +msgid "Meeting Template" +msgstr "" + +#: admin/partials/bread-admin-display.php:128 +msgid "Meetings" +msgstr "" + +#: admin/partials/_meetings_setup.php:103 +#: admin/partials/_meetings_setup.php:124 +msgid "Neighborhood" +msgstr "" + +#: admin/partials/_meetings_setup.php:83 +msgid "Neighborhood Suffix: " +msgstr "" + +#: admin/partials/_meetings_setup.php:54 +msgid "Neighborhood+City" +msgstr "" + +#: admin/partials/_meetings_setup.php:146 +msgid "No header for subgroups" +msgstr "" + +#: admin/partials/_layout_setup.php:47 admin/partials/_meetings_setup.php:121 +msgid "None" +msgstr "" + +#: admin/partials/_meetings_setup.php:310 +msgid "Not Used" +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:89 +msgid "Note: Be sure to select all meetings for each group." +msgstr "" + +#: admin/partials/_layout_setup.php:180 +msgid "Note: Encrypted PDFs cannot be opened in MS Word at all." +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:131 +msgid "Optimize/Debug mPDF" +msgstr "" + +#: admin/partials/_layout_setup.php:178 +msgid "Optional Password to allow editing in a PDF editor." +msgstr "" + +#: admin/partials/_layout_setup.php:17 +msgid "Orientation" +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:140 +msgid "Pack Table Data" +msgstr "" + +#: admin/partials/_layout_setup.php:106 +msgid "Page Decorations" +msgstr "" + +#: admin/partials/_layout_setup.php:19 +msgid "Page Height" +msgstr "" + +#: admin/partials/_layout_setup.php:16 admin/partials/_layout_setup.php:54 +#: admin/partials/bread-admin-display.php:126 +msgid "Page Layout" +msgstr "" + +#: admin/partials/_layout_setup.php:11 +msgid "Page Layout Defaults" +msgstr "" + +#: admin/partials/_layout_setup.php:84 +msgid "Page Margin Top: " +msgstr "" + +#: admin/partials/_layout_setup.php:127 +msgid "Page Numbers Font Size: " +msgstr "" + +#: admin/partials/_layout_setup.php:75 +msgid "Page Size:" +msgstr "" + +#: admin/partials/_layout_setup.php:18 +msgid "Paper Size" +msgstr "" + +#: admin/partials/_layout_setup.php:183 +msgid "Password Protection" +msgstr "" + +#: admin/partials/_layout_setup.php:192 +msgid "Password: " +msgstr "" + +#: admin/partials/_backup_restore_setup.php:82 +msgid "Please Choose a File." +msgstr "" + +#: admin/class-bread-admin.php:363 +msgid "Please upload a file to import" +msgstr "" + +#: admin/class-bread-admin.php:359 +msgid "Please upload a valid .json file" +msgstr "" + +#: admin/partials/_layout_setup.php:63 +msgid "Portrait" +msgstr "" + +#: admin/partials/_layout_setup.php:45 +msgid "Portrait, Landscape" +msgstr "" + +#: admin/partials/bread-admin-display.php:154 +msgid "Preview" +msgstr "" + +#: admin/partials/_layout_setup.php:30 admin/partials/_layout_setup.php:61 +msgid "Quad-Fold" +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:64 +msgid "Recurse Service Bodies" +msgstr "" + +#: admin/partials/_meetings_setup.php:259 +msgid "Remove White Space" +msgstr "" + +#: admin/partials/_layout_setup.php:160 +msgid "RGB" +msgstr "" + +#: admin/partials/_layout_setup.php:87 +msgid "Right: " +msgstr "" + +#: admin/partials/_meetings_setup.php:331 +#: admin/partials/_meetings_setup.php:339 +#: admin/partials/_meetings_setup.php:341 +msgid "Same as main list" +msgstr "" + +#: admin/partials/bread-admin-display.php:153 +msgid "Save Changes" +msgstr "" + +#: admin/partials/bread-admin-display.php:156 +msgid "Save Changes before Generating Meeting List." +msgstr "" + +#: admin/partials/_backup_restore_setup.php:21 +msgid "Save Configuration Name" +msgstr "" + +#: admin/partials/_backup_restore_setup.php:27 +msgid "Select Configuration: " +msgstr "" + +#: admin/partials/_meetings_setup.php:335 +msgid "Select language for the additional list" +msgstr "" + +#: admin/partials/_meetings_setup.php:327 +msgid "Select sort order for the additional list" +msgstr "" + +#: admin/partials/_layout_setup.php:134 +msgid "Separator: " +msgstr "" + +#: admin/partials/bread-admin-display.php:46 +#, php-format +msgid "Service Body %s" +msgstr "" + +#: admin/partials/_layout_setup.php:58 +msgid "Single Page" +msgstr "" + +#: admin/partials/_layout_setup.php:22 +msgid "Smaller Areas" +msgstr "" + +#: admin/partials/_meetings_setup.php:236 +msgid "Start Time Format" +msgstr "" + +#: admin/partials/_meetings_setup.php:107 +#: admin/partials/_meetings_setup.php:128 +msgid "State" +msgstr "" + +#: admin/partials/_meetings_setup.php:55 +msgid "State+City" +msgstr "" + +#: admin/partials/_meetings_setup.php:119 +msgid "Sub-Grouping: " +msgstr "" + +#: admin/partials/_meetings_setup.php:18 +msgid "Suppress Heading: " +msgstr "" + +#: admin/partials/_layout_setup.php:112 admin/partials/_meetings_setup.php:24 +msgid "Text Color:" +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:88 +msgid "The Meetings you select will be merged into your meeting list." +msgstr "" + +#: admin/partials/_layout_setup.php:109 +msgid "" +"The page header is a title that goes across the entire page above the " +"meetings." +msgstr "" + +#: admin/partials/_backup_restore_setup.php:55 +msgid "" +"This allows you to easily import meeting list settings into another site." +msgstr "" + +#: admin/partials/_meetings_setup.php:304 +msgid "" +"This section allows the definition of an additional meeting list, containing " +"meetings that should not be included in the main\n" +" list. This is typically virtual meetings, but it can " +"be any group of meetings identified by a format." +msgstr "" + +#: admin/partials/_layout_setup.php:100 +msgid "" +"This section describes things on the page other than the contents. Headers, " +"footers, page numbers." +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:161 +msgid "This site is using an external object cache." +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:72 +msgid "" +"This will be executed as part of the meeting search query. This will " +"override any setting in the Service Body dropdowns." +msgstr "" + +#: admin/partials/_layout_setup.php:152 +msgid "Times" +msgstr "" + +#: admin/partials/_layout_setup.php:23 admin/partials/_layout_setup.php:60 +msgid "Tri-Fold" +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:47 +msgid "Try a different user agent or \"None\" for Wordpress default: " +msgstr "" + +#: admin/partials/_layout_setup.php:158 +msgid "Unrestricted" +msgstr "" + +#: admin/partials/_meetings_setup.php:34 +msgid "Uppercase: " +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:59 +msgid "Use Aggregator 🍅" +msgstr "" + +#: admin/partials/_meetings_setup.php:59 +msgid "User Defined" +msgstr "" + +#: admin/partials/bread-admin-display.php:37 +msgid "Using Tomato Server" +msgstr "" + +#: admin/partials/_meetings_setup.php:312 +msgid "Virtual Meetings" +msgstr "" + +#: admin/partials/_layout_setup.php:116 +msgid "Watermark: " +msgstr "" + +#: admin/partials/_meetings_setup.php:48 admin/partials/_meetings_setup.php:101 +#: admin/partials/_meetings_setup.php:122 +msgid "Weekday" +msgstr "" + +#: admin/partials/_meetings_setup.php:158 +msgid "Weekday Language: " +msgstr "" + +#: admin/partials/_meetings_setup.php:173 +msgid "Weekday Start: " +msgstr "" + +#: admin/partials/_meetings_setup.php:56 +msgid "Weekday+Area" +msgstr "" + +#: admin/partials/_meetings_setup.php:57 +msgid "Weekday+City" +msgstr "" + +#: admin/partials/_meetings_setup.php:58 +msgid "Weekday+County " +msgstr "" + +#: admin/partials/_layout_setup.php:102 +msgid "What options you see will be dependant on the layout selected." +msgstr "" + +#: admin/partials/_meetings_setup.php:212 +msgid "Wheelchair Icon Size: " +msgstr "" + +#: admin/partials/_layout_setup.php:51 +msgid "" +"When a layout is clicked defaults are reset for orientation, paper size and " +"page height." +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:73 +#, php-format +msgid "" +"You can get help formulating a query using your sites " +"semantic interface." +msgstr "" + +#: admin/partials/bread-admin-display.php:93 +msgid "You do not have permission to save this configuation!" +msgstr "" + +#: admin/partials/bread-admin-display.php:39 +#, php-format +msgid "Your BMLT Server is running %s" +msgstr "" + +#: admin/partials/bread-admin-display.php:99 +msgid "Your changes were successfully saved!" +msgstr "" + +#: admin/partials/_backup_restore_setup.php:78 +msgid "Your current meeting list settings will be replaced and lost forever." +msgstr "" diff --git a/languages/bread.pot b/languages/bread.pot deleted file mode 100644 index e69de29..0000000 diff --git a/public/class-bread-content-generator.php b/public/class-bread-content-generator.php index df4385d..43ff717 100644 --- a/public/class-bread-content-generator.php +++ b/public/class-bread-content-generator.php @@ -162,11 +162,14 @@ public function generate(int $num_columns): void $this->mpdf->WriteHTML('td{font-size: ' . $this->options['content_font_size'] . "pt;line-height:" . $this->options['content_line_height'] . ';background-color:#ffffff00;}', 1); $this->mpdf->SetDefaultBodyCSS('font-size', $this->options['content_font_size'] . 'pt'); $this->mpdf->SetDefaultBodyCSS('line-height', $this->options['content_line_height']); + $lang = $this->options['weekday_language']; + if ($lang == 'fa') { + $this->mpdf->SetDefaultBodyCSS('direction', 'rtl'); + } $this->mpdf->SetDefaultBodyCSS('background-color', '#ffffff00'); if ($this->options['page_fold'] == 'half' || $this->options['page_fold'] == 'full') { $this->WriteHTML(''); } - $lang = $this->options['weekday_language']; $this->meetingEnhancer = new Bread_Meeting_Enhancer($this->bread, $this->bread->bmlt()->get_areas()); foreach ($this->result_meetings as &$value) { $value = $this->meetingEnhancer->enhance_meeting($value, $lang, $this->formatsManager); @@ -242,7 +245,7 @@ private function locale_month_replacement(string $data, string $case): string IntlDateFormatter::FULL ); $fmt->setPattern('LLLL'); - $month = ucfirst(mb_convert_encoding($fmt->format(time()), 'UTF-8', 'ISO-8859-1')); + $month = $fmt->format(time()); if ($case == 'upper') { $month = mb_strtoupper($month, 'UTF-8'); } diff --git a/readme.txt b/readme.txt index af569d3..0cdf57b 100644 --- a/readme.txt +++ b/readme.txt @@ -5,7 +5,7 @@ Tags: meeting list, bmlt, narcotics anonymous, na Requires PHP: 8.1 Requires at least: 6.2 Tested up to: 6.8 -Stable tag: 2.9.5 +Stable tag: 2.9.6 License: GPLv2 or later License URI: http://www.gnu.org/licenses/gpl-2.0.html @@ -55,6 +55,9 @@ Follow all these steps, keep in mind that once you start using bread, it's not g == Changelog == += 2.9.6 = +* Farsi Translation + = 2.9.5 = * Bug fix TinyMCE dropdowns From ab6b28081ee495db9ff37bdca7e9b6c3cb3cf7d2 Mon Sep 17 00:00:00 2001 From: otrok7 <50595291+otrok7@users.noreply.github.com> Date: Thu, 28 Aug 2025 15:18:29 +0200 Subject: [PATCH 02/15] Lint --- admin/partials/_bmlt_server_setup.php | 8 ++++---- admin/partials/bread-admin-display.php | 2 +- readme.txt | 1 + 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/admin/partials/_bmlt_server_setup.php b/admin/partials/_bmlt_server_setup.php index 32eb7a4..ba10019 100644 --- a/admin/partials/_bmlt_server_setup.php +++ b/admin/partials/_bmlt_server_setup.php @@ -96,10 +96,10 @@ bread->bmlt()->get_all_meetings(); echo ""; - foreach ($extra_meetings_array as $id => $descr) { - $selected = $this->bread->getOption('extra_meetings') != '' && in_array($id, $this->bread->getOption('extra_meetings')) ? 'selected' : ''; - echo ""; - } + foreach ($extra_meetings_array as $id => $descr) { + $selected = $this->bread->getOption('extra_meetings') != '' && in_array($id, $this->bread->getOption('extra_meetings')) ? 'selected' : ''; + echo ""; + } ?>

          diff --git a/admin/partials/bread-admin-display.php b/admin/partials/bread-admin-display.php index 882121b..074233f 100644 --- a/admin/partials/bread-admin-display.php +++ b/admin/partials/bread-admin-display.php @@ -99,7 +99,7 @@ function admin_options_page() echo '

          '.__('Your changes were successfully saved!', 'bread-domain').'

          '; $num = delete_transient($this->bread->get_TransientKey($this->bread->getRequestedSetting())); if ($num > 0) { - echo "

          " . sprintf( __('%s Cache entries deleted', 'bread-domain'), esc_attr($num))."

          "; + echo "

          " . sprintf(__('%s Cache entries deleted', 'bread-domain'), esc_attr($num))."

          "; } } echo ''; diff --git a/readme.txt b/readme.txt index 0cdf57b..f3386ad 100644 --- a/readme.txt +++ b/readme.txt @@ -57,6 +57,7 @@ Follow all these steps, keep in mind that once you start using bread, it's not g = 2.9.6 = * Farsi Translation +* Replaced deprecated "chosen" with "select2" = 2.9.5 = * Bug fix TinyMCE dropdowns From e781ae6c0e307068d23130d107be9e00d73cef0c Mon Sep 17 00:00:00 2001 From: otrok7 <50595291+otrok7@users.noreply.github.com> Date: Thu, 28 Aug 2025 15:49:32 +0200 Subject: [PATCH 03/15] Security Checks --- admin/class-bread-admin.php | 6 +- admin/partials/_backup_restore_setup.php | 48 ++--- admin/partials/_bmlt_server_setup.php | 66 +++---- admin/partials/_custom_section_setup.php | 10 +- admin/partials/_front_page_setup.php | 10 +- admin/partials/_layout_setup.php | 164 +++++++++--------- admin/partials/_meetings_setup.php | 160 ++++++++--------- admin/partials/bread-admin-display.php | 38 ++-- bmlt-meeting-list.php | 2 +- includes/class-bread-i18n.php | 2 +- ...in-fa_IR.l10n.php => bread-fa_IR.l10n.php} | 2 +- .../{bread-domain-fa_IR.mo => bread-fa_IR.mo} | Bin .../{bread-domain-fa_IR.po => bread-fa_IR.po} | 2 +- languages/{bread-domain.pot => bread.pot} | 2 +- 14 files changed, 256 insertions(+), 256 deletions(-) rename languages/{bread-domain-fa_IR.l10n.php => bread-fa_IR.l10n.php} (99%) rename languages/{bread-domain-fa_IR.mo => bread-fa_IR.mo} (100%) rename languages/{bread-domain-fa_IR.po => bread-fa_IR.po} (99%) rename languages/{bread-domain.pot => bread.pot} (99%) diff --git a/admin/class-bread-admin.php b/admin/class-bread-admin.php index 1830432..c69b877 100644 --- a/admin/class-bread-admin.php +++ b/admin/class-bread-admin.php @@ -356,15 +356,15 @@ function pwsix_process_settings_import() $tmp = explode('.', $file_name); $extension = end($tmp); if ($extension != 'json') { - wp_die(esc_html(__('Please upload a valid .json file', 'bread-domain'))); + wp_die(esc_html(__('Please upload a valid .json file', 'bread'))); } $import_file = $_FILES['import_file']['tmp_name']; if (empty($import_file)) { - wp_die(esc_html(__('Please upload a file to import', 'bread-domain'))); + wp_die(esc_html(__('Please upload a file to import', 'bread'))); } $file_size = $_FILES['import_file']['size']; if ($file_size > 500000) { - wp_die(esc_html(__('File size greater than 500k', 'bread-domain'))); + wp_die(esc_html(__('File size greater than 500k', 'bread'))); } $encode_options = (new WP_Filesystem_Direct(null))->get_contents($import_file); while (0 === strpos(bin2hex($encode_options), 'efbbbf')) { diff --git a/admin/partials/_backup_restore_setup.php b/admin/partials/_backup_restore_setup.php index f0c58f7..296ee49 100644 --- a/admin/partials/_backup_restore_setup.php +++ b/admin/partials/_backup_restore_setup.php @@ -6,32 +6,32 @@
          -

          +

          -

          -

          + that generates the meeting list (eg, ?current-meeting-list=2 generates the meeting list with ID 2).", 'bread') ?>

          +

          -

          bread->getRequestedSetting()) ?> +

          bread->getRequestedSetting()) ?>

          -
          - +
          +

          bread->getSettingNames()) > 1) { ?> -

          +

          - + - +

          @@ -39,9 +39,9 @@

          - + bread->getRequestedSetting()) { ?> - +
          @@ -49,37 +49,37 @@
          -

          +

          -

          -

          -

          +

          +

          +

          - +

          -

          +

          -

          +

          - 'submit_import_file')); ?> + 'submit_import_file')); ?>

          -

          -

          +

          +

          -
          +
          @@ -87,5 +87,5 @@

          -

          +

          \ No newline at end of file diff --git a/admin/partials/_bmlt_server_setup.php b/admin/partials/_bmlt_server_setup.php index ba10019..b5c4542 100644 --- a/admin/partials/_bmlt_server_setup.php +++ b/admin/partials/_bmlt_server_setup.php @@ -15,10 +15,10 @@
          -

          (?)

          +

          (?)

          - +

          bread->getOption('sslverify') == '1') { ?>

          - + bread->emptyOption('root_server')) { - echo "

          ".__('ERROR: Please enter a BMLT Server', 'bread-domain').""; + echo "
          ".__('ERROR: Please enter a BMLT Server', 'bread')."
          "; echo ''; if ($this->bread->getOption('sslverify') == '1') { ?>

          - +

          -

          bread->bmlt()->connection_error); ?> +

          bread->bmlt()->connection_error); ?>

          - +

          bread->getOption('sslverify') ? 'checked' : ''; ?> /> - +

          - +

            select_service_bodies(); ?>
          - bread->getOption('recurse_service_bodies') == 1 ? 'checked' : '') ?> /> + bread->getOption('recurse_service_bodies') == 1 ? 'checked' : '') ?> />
          @@ -69,27 +69,27 @@

          - -
          semantic interface.', 'bread-domain'), esc_url($this->bread->getOption('root_server')).'/semantic') ?> + +
          semantic interface.', 'bread'), esc_url($this->bread->getOption('root_server')).'/semantic') ?>

          -

          (?)

          +

          (?)

          - +
          -

          -

          -

          -

          +

          +

          +

          +

          -

          (?)

          +

          (?)

          connected && $this->bread->getOption('extra_meetings_enabled') == 1) {?> -

          +

          - bread->emptyOption('extra_meetings_enabled') && $this->bread->getOption('extra_meetings_enabled') == 1 ? 'checked' : '') ?> /> + bread->emptyOption('extra_meetings_enabled') && $this->bread->getOption('extra_meetings_enabled') == 1 ? 'checked' : '') ?> />
          -

          (?)

          +

          (?)

          bread->getRequestedSetting() ?>

          -

          +

          bread->emptyOption('logging') ? '' : 'checked'; ?>> - +
          bread->emptyOption('simpleTables') ? '' : 'checked'; ?>> - +
          bread->emptyOption('packTabledata') ? '' : 'checked'; ?>> - + -

          +

          @@ -154,19 +154,19 @@
          -

          (?)

          +

          (?)

          -

          +

          • - -      + +     
          -

          +

          diff --git a/admin/partials/_custom_section_setup.php b/admin/partials/_custom_section_setup.php index b637f60..bd0504e 100644 --- a/admin/partials/_custom_section_setup.php +++ b/admin/partials/_custom_section_setup.php @@ -7,18 +7,18 @@
          -
          The Custom Content can be customized with text, graphics, tables, shortcodes, etc.

          Default Font Size can be changed for specific text in the editor.

          Add Media button - upload and add graphics.

          Meeting List Shortcodes dropdown - insert variable data.

          -

          The Custom Content will print immediately after the meetings in the meeting list.

          ", 'bread-domain')?> +

          The Custom Content will print immediately after the meetings in the meeting list.

          ", 'bread'))?>
          -

          (?)

          +

          (?)

          -

             -

          +

             +

          -
          The Front Page can be customized with text, graphics, tables, shortcodes, ect.

          Add Media button - upload and add graphics.

          Meeting List Shortcodes dropdown - insert custom data.

          -

          Default Font Size can be changed for specific text.

          ", 'bread-domain') ?> +

          Default Font Size can be changed for specific text.

          ", 'bread')) ?>
          -

          (?)

          +

          (?)

          -

             -

          +

             +

          -

          +

          - - - - - + + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - - + + + + +
          , , 195, 180
          , , 195, 180
          , , 250, 260
          , , , ,
          -

          +

          -

          (?)

          +

          (?)

          type="hidden">
          -

          - bread->getOption('page_fold') == 'flyer' ? 'checked' : '') ?>> - bread->getOption('page_fold') == 'tri' ? 'checked' : '') ?>> - bread->getOption('page_fold') == 'quad' ? 'checked' : '') ?>> +

          + bread->getOption('page_fold') == 'flyer' ? 'checked' : '') ?>> + bread->getOption('page_fold') == 'tri' ? 'checked' : '') ?>> + bread->getOption('page_fold') == 'quad' ? 'checked' : '') ?>>
          - bread->getOption('page_orientation') == 'P' ? 'checked' : '') ?>> - bread->getOption('page_orientation') == 'L' ? 'checked' : '') ?>> + bread->getOption('page_orientation') == 'P' ? 'checked' : '') ?>> + bread->getOption('page_orientation') == 'L' ? 'checked' : '') ?>>
          -

          - bread->getOption('page_fold') == 'half' ? 'checked' : '') ?>> - bread->getOption('page_fold') == 'full' ? 'checked' : '') ?>> +

          + bread->getOption('page_fold') == 'half' ? 'checked' : '') ?>> + bread->getOption('page_fold') == 'full' ? 'checked' : '') ?>>
          - bread->getOption('booklet_pages') == '1' ? 'checked' : '') ?> /> + bread->getOption('booklet_pages') == '1' ? 'checked' : '') ?> />

          -
          - bread->getOption('page_size') == '5inch' ? 'checked' : '') ?>> - bread->getOption('page_size') == 'letter' ? 'checked' : '') ?>> - bread->getOption('page_size') == 'legal' ? 'checked' : '') ?>> - bread->getOption('page_size') == 'ledger' ? 'checked' : '') ?>> - bread->getOption('page_size') == 'A4' ? 'checked' : '') ?>> - bread->getOption('page_size') == 'A5' ? 'checked' : '') ?>> - bread->getOption('page_size') == 'A6' ? 'checked' : '') ?>> +
          + bread->getOption('page_size') == '5inch' ? 'checked' : '') ?>> + bread->getOption('page_size') == 'letter' ? 'checked' : '') ?>> + bread->getOption('page_size') == 'legal' ? 'checked' : '') ?>> + bread->getOption('page_size') == 'ledger' ? 'checked' : '') ?>> + bread->getOption('page_size') == 'A4' ? 'checked' : '') ?>> + bread->getOption('page_size') == 'A5' ? 'checked' : '') ?>> + bread->getOption('page_size') == 'A6' ? 'checked' : '') ?>>
          -     -     -     -     +     +     +     +    
          @@ -97,42 +97,42 @@

          - +
          - +

          -

          (?)

          +

          (?)

          - +
          - - - -     -
              -
              + + + +     +
              +
             
          - +
          - +
          - +
          - +
          - bread->getOption('column_line') == '1' ? 'checked' : '') ?> />
          - + + + +
          - +
          - +
          - bread->getOption('header_uppercase') == '1' ? 'checked' : '') ?>>bread->getOption('header_uppercase') == '1' ? 'checked' : '') ?>> - bread->getOption('header_bold') == '1' ? 'checked' : '') ?>>bread->getOption('header_bold') == '1' ? 'checked' : '') ?>> - bread->getOption('cont_header_shown') == '1' ? 'checked' : '') ?>>bread->getOption('cont_header_shown') == '1' ? 'checked' : '') ?>>

          - +

          - +

          @@ -71,7 +71,7 @@

          - +

          @@ -80,7 +80,7 @@

          - +

          @@ -89,22 +89,22 @@

          - +

          - + - +

          - +
          @@ -204,13 +204,13 @@
          -

          (?)

          +

          (?)

          -    -    -    -

          +    +    +    +
          -

          (?)

          +

          (?)

          -
          bread->getOption('time_clock') == '12' || $this->bread->getOption('time_clock') == '' ? 'checked' : '') ?>>
          +
          bread->getOption('time_clock') == '12' || $this->bread->getOption('time_clock') == '' ? 'checked' : '') ?>>
          bread->getOption('time_option') == '1' || $this->bread->getOption('time_option') == '' ? 'checked' : '') ?>>
          bread->getOption('remove_space') == '0' || $this->bread->getOption('remove_space') == '' ? 'checked' : ''; ?> -
          >
          +
          >
          -
          bread->getOption('time_clock') == '24' ? 'checked' : '') ?>>
          +
          bread->getOption('time_clock') == '24' ? 'checked' : '') ?>>
          bread->getOption('time_option') == '2' ? 'checked' : '') ?>>
          -
          bread->getOption('remove_space') == '1') ? 'checked' : ''; ?>>
          +
          bread->getOption('remove_space') == '1') ? 'checked' : ''; ?>>
          -
          bread->getOption('time_clock') == '24fr' ? 'checked' : '') ?>>
          +
          bread->getOption('time_clock') == '24fr' ? 'checked' : '') ?>>
          bread->getOption('time_option') == '3' ? 'checked' : '') ?>>
          @@ -274,9 +274,9 @@
          -

          (?)

          +

          (?)

          - + - + connected) { ?> - - + + bread->bmlt()->getFormatsForSelect(true); $countmax = count($used_formats); for ($count = 0; $count < $countmax; $count++) { @@ -324,21 +324,21 @@

          - +

          - +

          -

          bread->getOption('include_additional_list') == '1' ? 'checked' : '') ?>>

          - +

          bread->getOption('include_additional_list') == '1' ? 'checked' : '') ?>>

          +
          unique_areas = $this->bread->bmlt()->get_areas(); asort($this->unique_areas); if ($serverInfo[0]["aggregator_mode_enabled"] ?? false) { - $this->server_version = "
          ".__('Using Tomato Server', 'bread-domain')."
          "; + $this->server_version = "
          ".__('Using Tomato Server', 'bread')."
          "; } elseif ($this->connected) { - $this->server_version = "
          ".sprintf(__('Your BMLT Server is running %s', 'bread-domain'), esc_html($this->connected)). "
          "; + $this->server_version = "
          ".sprintf(__('Your BMLT Server is running %s', 'bread'), esc_html($this->connected)). "
          "; } } } private function select_service_bodies() { for ($i = 1; $i <= 5; $i++) { ?> -
        • +
        • @@ -150,10 +150,10 @@ function admin_options_page()
        • admin->current_user_can_modify()) { ?> - - -

          -
            
          + + +

          +
            

          diff --git a/bmlt-meeting-list.php b/bmlt-meeting-list.php index 050f51e..006a439 100644 --- a/bmlt-meeting-list.php +++ b/bmlt-meeting-list.php @@ -16,7 +16,7 @@ * Author URI: https://bmlt.app/ * License: GPL-2.0+ * License URI: http://www.gnu.org/licenses/gpl-2.0.txt - * Text Domain: bread-domain + * Text Domain: bread * Domain Path: /languages */ diff --git a/includes/class-bread-i18n.php b/includes/class-bread-i18n.php index cd6ed13..514f96d 100644 --- a/includes/class-bread-i18n.php +++ b/includes/class-bread-i18n.php @@ -37,7 +37,7 @@ public function load_plugin_textdomain() { load_plugin_textdomain( - 'bread-domain', + 'bread', false, dirname(dirname(plugin_basename(__FILE__))) . '/languages/' ); diff --git a/languages/bread-domain-fa_IR.l10n.php b/languages/bread-fa_IR.l10n.php similarity index 99% rename from languages/bread-domain-fa_IR.l10n.php rename to languages/bread-fa_IR.l10n.php index 01737d3..907d44d 100644 --- a/languages/bread-domain-fa_IR.l10n.php +++ b/languages/bread-fa_IR.l10n.php @@ -1,5 +1,5 @@ 'Bread','report-msgid-bugs-to'=>'','pot-creation-date'=>'2025-08-28 12:15+0000','po-revision-date'=>'2025-08-28 13:07+0000','last-translator'=>'','language-team'=>'Persian','language'=>'fa_IR','mime-version'=>'1.0','content-type'=>'text/plain; charset=UTF-8','content-transfer-encoding'=>'8bit','plural-forms'=>'nplurals=2; plural=n != 1;','x-domain'=>'bread-domain','x-generator'=>'Loco https://localise.biz/','x-loco-version'=>'2.8.0; wp-6.8.2; php-8.2.0','messages'=>[' +return ['project-id-version'=>'Bread','report-msgid-bugs-to'=>'','pot-creation-date'=>'2025-08-28 12:15+0000','po-revision-date'=>'2025-08-28 13:07+0000','last-translator'=>'','language-team'=>'Persian','language'=>'fa_IR','mime-version'=>'1.0','content-type'=>'text/plain; charset=UTF-8','content-transfer-encoding'=>'8bit','plural-forms'=>'nplurals=2; plural=n != 1;','x-domain'=>'bread','x-generator'=>'Loco https://localise.biz/','x-loco-version'=>'2.8.0; wp-6.8.2; php-8.2.0','messages'=>['

          The Custom Content can be customized with text, graphics, tables, shortcodes, etc.

          Default Font Size can be changed for specific text in the editor.

          Add Media button - upload and add graphics.

          diff --git a/languages/bread-domain-fa_IR.mo b/languages/bread-fa_IR.mo similarity index 100% rename from languages/bread-domain-fa_IR.mo rename to languages/bread-fa_IR.mo diff --git a/languages/bread-domain-fa_IR.po b/languages/bread-fa_IR.po similarity index 99% rename from languages/bread-domain-fa_IR.po rename to languages/bread-fa_IR.po index 5405b27..39e92bc 100644 --- a/languages/bread-domain-fa_IR.po +++ b/languages/bread-fa_IR.po @@ -11,7 +11,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Domain: bread-domain\n" +"X-Domain: bread\n" "X-Generator: Loco https://localise.biz/\n" "X-Loco-Version: 2.8.0; wp-6.8.2; php-8.2.0" diff --git a/languages/bread-domain.pot b/languages/bread.pot similarity index 99% rename from languages/bread-domain.pot rename to languages/bread.pot index 05c84bb..14d7316 100644 --- a/languages/bread-domain.pot +++ b/languages/bread.pot @@ -14,7 +14,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Loco https://localise.biz/\n" "X-Loco-Version: 2.8.0; wp-6.8.2; php-8.2.0\n" -"X-Domain: bread-domain" +"X-Domain: bread" #: admin/partials/_custom_section_setup.php:10 msgid "" From 26af20caa2398243b75b2646d933d4503694df92 Mon Sep 17 00:00:00 2001 From: otrok7 <50595291+otrok7@users.noreply.github.com> Date: Thu, 28 Aug 2025 23:02:30 +0200 Subject: [PATCH 04/15] More security issues --- admin/partials/_bmlt_server_setup.php | 7 +++++-- admin/partials/_custom_section_setup.php | 2 +- admin/partials/_front_page_setup.php | 2 +- admin/partials/_meetings_setup.php | 4 ++-- admin/partials/bread-admin-display.php | 14 +++++++++----- includes/class-bread-i18n.php | 4 ++-- 6 files changed, 20 insertions(+), 13 deletions(-) diff --git a/admin/partials/_bmlt_server_setup.php b/admin/partials/_bmlt_server_setup.php index b5c4542..f75d035 100644 --- a/admin/partials/_bmlt_server_setup.php +++ b/admin/partials/_bmlt_server_setup.php @@ -31,7 +31,7 @@ bread->emptyOption('root_server')) { - echo "
          ".__('ERROR: Please enter a BMLT Server', 'bread')."
          "; + echo "
          ".esc_html(__('ERROR: Please enter a BMLT Server', 'bread'))."
          "; echo ''; if ($this->bread->getOption('sslverify') == '1') { ?>

          @@ -70,7 +70,10 @@

          -
          semantic interface.', 'bread'), esc_url($this->bread->getOption('root_server')).'/semantic') ?> + /* translators: draft saved date format, see http://php.net/date */ +
          semantic interface.', 'bread'), esc_url($this->bread->getOption('root_server'))).'/semantic') ?>

          diff --git a/admin/partials/_custom_section_setup.php b/admin/partials/_custom_section_setup.php index bd0504e..a8f4569 100644 --- a/admin/partials/_custom_section_setup.php +++ b/admin/partials/_custom_section_setup.php @@ -7,7 +7,7 @@
          -
          The Custom Content can be customized with text, graphics, tables, shortcodes, etc.

          Default Font Size can be changed for specific text in the editor.

          Add Media button - upload and add graphics.

          diff --git a/admin/partials/_front_page_setup.php b/admin/partials/_front_page_setup.php index 9562b8c..fd187b2 100644 --- a/admin/partials/_front_page_setup.php +++ b/admin/partials/_front_page_setup.php @@ -7,7 +7,7 @@
          -
          The Front Page can be customized with text, graphics, tables, shortcodes, ect.

          Add Media button - upload and add graphics.

          Meeting List Shortcodes dropdown - insert custom data.

          diff --git a/admin/partials/_meetings_setup.php b/admin/partials/_meetings_setup.php index a04d47a..57e9111 100644 --- a/admin/partials/_meetings_setup.php +++ b/admin/partials/_meetings_setup.php @@ -336,9 +336,9 @@ connected) { $this->select_service_body_options($i); @@ -90,16 +93,17 @@ function admin_options_page() set_transient('admin_notice', 'Please put down your weapon. You have 20 seconds to comply.'); echo '
          '; if (!$this->admin->current_user_can_modify()) { - echo '

          '.__('You do not have permission to save this configuation!', 'bread').'

          '; + echo '

          '.esc_html(__('You do not have permission to save this configuation!', 'bread')).'

          '; } elseif (isset($_COOKIE['bread_import_file'])) { - echo '

          '.__('File loaded', 'bread').'

          '; + echo '

          '.esc_html(__('File loaded', 'bread')).'

          '; delete_transient($this->bread->get_TransientKey($this->bread->getRequestedSetting())); } elseif (isset($_POST['bmltmeetinglistsave']) && $_POST['bmltmeetinglistsave']) { $this->admin->save_admin_options(); - echo '

          '.__('Your changes were successfully saved!', 'bread').'

          '; + echo '

          '.esc_html(__('Your changes were successfully saved!', 'bread')).'

          '; $num = delete_transient($this->bread->get_TransientKey($this->bread->getRequestedSetting())); if ($num > 0) { - echo "

          " . sprintf(__('%s Cache entries deleted', 'bread'), esc_attr($num))."

          "; + /* translators: string is number of cache entries deleted */ + echo "

          " . esc_html(sprintf(__('%s Cache entries deleted', 'bread')), esc_attr($num))."

          "; } } echo '
          '; diff --git a/includes/class-bread-i18n.php b/includes/class-bread-i18n.php index 514f96d..231c911 100644 --- a/includes/class-bread-i18n.php +++ b/includes/class-bread-i18n.php @@ -35,11 +35,11 @@ class Bread_i18n */ public function load_plugin_textdomain() { - +/* load_plugin_textdomain( 'bread', false, dirname(dirname(plugin_basename(__FILE__))) . '/languages/' - ); + ); */ } } From 2fb5c94f78f2d6ec4ee58a74428c128de4828c38 Mon Sep 17 00:00:00 2001 From: otrok7 <50595291+otrok7@users.noreply.github.com> Date: Fri, 29 Aug 2025 12:54:59 +0200 Subject: [PATCH 05/15] Translated Wizard --- admin/js/bread-wizard.js | 6 +- admin/partials/_bread_wizard.php | 126 +++--- admin/partials/_meeting_list_setup.php | 2 +- languages/bread-fa_IR.l10n.php | 51 ++- languages/bread-fa_IR.mo | Bin 21373 -> 32855 bytes languages/bread-fa_IR.po | 570 ++++++++++++++++++++++++- languages/bread.pot | 331 ++++++++++++-- 7 files changed, 948 insertions(+), 138 deletions(-) diff --git a/admin/js/bread-wizard.js b/admin/js/bread-wizard.js index 712e1ec..cce5720 100644 --- a/admin/js/bread-wizard.js +++ b/admin/js/bread-wizard.js @@ -63,11 +63,11 @@ jQuery(document).ready(function($){ ask_bmlt("switcher=GetServerInfo", (info) => { $('#wizard_root_server_result').removeClass('invalid-feedback dashicons-dismiss') - .addClass('valid-feedback dashicons-before dashicons-yes-alt').html('Connected! - BMLT Server version '+info[0]['version']); + .addClass('valid-feedback dashicons-before dashicons-yes-alt').html($('#wizard_connected_message').html()+info[0].version); }, (error) => { $('#wizard_root_server_result').removeClass('valid-feedback dashicons-yes-alt') - .addClass('invalid-feedback dashicons-before dashicons-dismiss').html('Could not connect: Check spelling and internet connection.'); + .addClass('invalid-feedback dashicons-before dashicons-dismiss').html($('#wizard_disconnected_message').html()); }); } BreadWizard.prototype.root_server_keypress = function(event) { @@ -75,7 +75,7 @@ jQuery(document).ready(function($){ } BreadWizard.prototype.root_server_changed = function() { $('#wizard_root_server_result').removeClass('valid-feedback').addClass('invalid-feedback dashicons-before dashicons-dismiss') - .html('Test that this is valid root server URL before continuing'); + .html($('#wizard_testnow_message').html()); } BreadWizard.prototype.finish = function() { $('#bread-wizard').smartWizard("reset"); diff --git a/admin/partials/_bread_wizard.php b/admin/partials/_bread_wizard.php index 34fe838..f49b5e1 100644 --- a/admin/partials/_bread_wizard.php +++ b/admin/partials/_bread_wizard.php @@ -3,31 +3,31 @@ @@ -37,32 +37,42 @@
          -

          Step 1: Enter your BMLT root server

          +

          -

          This wizard guides you through the initial configuation of a meeting list. If you have already created one or more meeting lists, - don't worry, this process alway creates a new configuration, and never overwrites old ones.

          -

          Bread is highly customizable, as areas often try to maintain the appearance of their old meeting lists. This wizard only attempts to give you a reasonable - starting point, not an end product. At the end of the wizard we make a few suggestions for possible next steps.

          -

          The first thing we need is the location of your BMLT root server. Once you have entered it, you need check that the URL is correct - by clicking the "Test Connection" button.

          +

          +

          +

          -

          Visit Do I have the BMLT? to find your BMLT server
          - +

          Do I have the BMLT? to find your BMLT server', 'bread')) ?>
          + - + + + + +

          - Verify that this is valid root server URL before continuing +

          -

          Step 2: Select a service body

          +

          -

          Next, we need to know which meetings are going to be on the meeting list. This will help the wizard when it - tries to choose an a appropriate layout for you.

          +

          - @@ -75,80 +85,80 @@
          -

          If you want to limit the meeting list to a particular format, for instance, to create a language-specific meeting list, you can enter it here. +


          -

          Step 3: Page Layout

          +

          -

          Most areas try to fit their meetings onto a single sheet of paper. And it is particularly adventageous to +

          -

          In this step we suggest suitible formats based on your meeting count. Having the meetings fit on a single side has the advantage + meeting list is readable. For many areas, a booklet format is better, even if the reqire more effort or expense to print.", 'bread') ?>

          +

          above layout - that the wizard pre-selects for you.

          + also wish to have the meetings 'overflow' on to the back side of the paper. If so, select a layout above layout + that the wizard pre-selects for you.", 'bread') ?>

          -

          Number of meetings on list:

          -

          Select one of the layouts appropriate to the number of meetings

          +

          +

          -

          Step 4: Select Options

          -

          Choose a language (only applies to names of days and format code descriptions):

          +

          +


          - Where should virtual meetings be included: +
          -
          +
          -
          +
          -
          +
          -

          Organize the meetings by: +

          -

          In this step, we create the meeting list settings. If you already have a meeting list defined - on this site, the old settings will not be overwriten, rather, a new setting will be created.

          -

          Before creating the meeting list configuration, you are given the opportunity to give the configuration +

          +

          -

          After creating the configuration, you will be able to view the resulting meeting list. Note that this is not usually + configuration is which.", 'bread') ?>

          +

          -

          You may also want to adjust the font sizes on your meeting list so that it fits on a single sheet or is more readable. This is only - of the many options available in the "Customizer".

          + collect phone numbers etc. To do this, click on the 'Customize' tab to the left, and then go to either the 'Front Page' or + 'Custom Section' tabs. The editors there contain a 'Meeting List Shortcodes' dropdown menu. Using these, new structures can + be added with only a few mouse clicks.", 'bread') ?>

          +

          .

          -

          +

          - +
          -

          Congratulations! The meeting list configuration has been created!

          -

          The first thing you probably want to do is have a look at the meeting list:

          - +

          +

          +

          - To add a link to the meeting list on your website, use the following link. +

          -

          If you want to try a different layout: +

          -

          You probably want to add some content to the first page or the custom content:

          - +

          +
          diff --git a/admin/partials/_meeting_list_setup.php b/admin/partials/_meeting_list_setup.php index 03ebc4c..78705b6 100644 --- a/admin/partials/_meeting_list_setup.php +++ b/admin/partials/_meeting_list_setup.php @@ -12,7 +12,7 @@
          -

          Start Here: Meeting List Setup Wizard

          +

          Multiple Meeting Lists

          diff --git a/languages/bread-fa_IR.l10n.php b/languages/bread-fa_IR.l10n.php index 907d44d..d52fcb5 100644 --- a/languages/bread-fa_IR.l10n.php +++ b/languages/bread-fa_IR.l10n.php @@ -1,24 +1,51 @@ 'Bread','report-msgid-bugs-to'=>'','pot-creation-date'=>'2025-08-28 12:15+0000','po-revision-date'=>'2025-08-28 13:07+0000','last-translator'=>'','language-team'=>'Persian','language'=>'fa_IR','mime-version'=>'1.0','content-type'=>'text/plain; charset=UTF-8','content-transfer-encoding'=>'8bit','plural-forms'=>'nplurals=2; plural=n != 1;','x-domain'=>'bread','x-generator'=>'Loco https://localise.biz/','x-loco-version'=>'2.8.0; wp-6.8.2; php-8.2.0','messages'=>[' +return ['project-id-version'=>'Bread','report-msgid-bugs-to'=>'','pot-creation-date'=>'2025-08-29 09:53+0000','po-revision-date'=>'2025-08-29 10:52+0000','last-translator'=>'','language-team'=>'Persian','language'=>'fa_IR','mime-version'=>'1.0','content-type'=>'text/plain; charset=UTF-8','content-transfer-encoding'=>'8bit','plural-forms'=>'nplurals=2; plural=n != 1;','x-domain'=>'bread','x-generator'=>'Loco https://localise.biz/','x-loco-version'=>'2.8.0; wp-6.8.2; php-8.2.0','messages'=>['

          The Custom Content can be customized with text, graphics, tables, shortcodes, etc.

          Default Font Size can be changed for specific text in the editor.

          Add Media button - upload and add graphics.

          Meeting List Shortcodes dropdown - insert variable data.

          -

          The Custom Content will print immediately after the meetings in the meeting list.

          '=>'

          محتوای سفارشی را می توان با متن ، گرافیک ، جداول ، کد کوتاه و غیره سفارشی کرد .___ html_1___ -

          default font size برای متن خاص در ویرایشگر قابل تغییر است .___ html_1___ -

          add media دکمه - بارگذاری و اضافه کردن گرافیک .___ html_1___ -

          Meeting لیست کوتاه کد های کشویی - داده های متغیر را وارد کنید .___ html_1___ -

          محتوای سفارشی بلافاصله پس از جلسات در لیست جلسه چاپ می شود .___ html_16___

          ',' +

          The Custom Content will print immediately after the meetings in the meeting list.

          '=>'

          محتوای سفارشی را می توان با متن ، گرافیک ، جداول ، کد کوتاه و غیره سفارشی کرد .','

          The Front Page can be customized with text, graphics, tables, shortcodes, ect.

          Add Media button - upload and add graphics.

          Meeting List Shortcodes dropdown - insert custom data.

          -

          Default Font Size can be changed for specific text.

          '=>'

          صفحه اول را می توان با متن ، گرافیک ، جداول ، کد کوتاه ، ect .___ html_1___ سفارشی سازی کرد. -

          add media دکمه - بارگذاری و اضافه کردن گرافیک .___ html_1___ -

          meeting لیست کوتاه کد های کشویی - داده های سفارشی را وارد کنید .___ html_1___ -

          default font size برای متن خاص قابل تغییر است .___ html_1___','%s Cache entries deleted'=>'%s ورودی های حافظه نهان حذف شده','0 - 999 Hours (0 = disable cache)'=>'0 - 999 ساعت (0 = غیرفعال کردن حافظه پنهان)','12 Hour'=>'12 ساعته','24 Hour'=>'24 ساعته','24 Hour French'=>'24 ساعته فرانسوی','5 inch'=>'5 اینچ','A4'=>'A4','A5'=>'A5','A6'=>'A6','Add extra pages for booklet'=>'صفحات اضافی را برای جزوه اضافه کنید','Add White Space'=>'فضای سفید را اضافه کنید','Additional List'=>'لیست اضافی','All Meetings from your BMLT Server are shown in the list.'=>'تمام جلسات از سرور BMLT شما در لیست نشان داده شده است.','Also useful for backing up before making significant changes to the meeting list settings.'=>'همچنین برای تهیه نسخه پشتیبان از قبل از ایجاد تغییرات مهم در تنظیمات لیست جلسه مفید است.','Anything'=>'هر چیزی','Arial'=>'عیاشی','Avoid using tables which will greatly slow down the generation time. Use CSS instead to get table-like effects if need be.'=>'از استفاده از جداول خودداری کنید که زمان تولید را به شدت کاهش می دهد. به جای آن از CSS استفاده کنید تا در صورت لزوم جلوه های جدول مانند را بدست آورید.','Background Color:'=>'رنگ پس زمینه:','Backup/ Restore'=>'پشتیبان گیری/ بازیابی','Base Font: '=>'قلم پایه:','Base Fonts and Colors'=>'قلم ها و رنگ های پایه','BMLT Server'=>'سرور BMLT','BMLT Server URL: '=>'URL سرور BMLT:','bmlt-enabled'=>'BMLT فعال','Bold: '=>'پررنگ:','Booklet'=>'کتاب','Booklets'=>'کتابفروشی','Borough'=>'ولگرد','Borough Suffix: '=>'پسوند بورو:','Borough+County'=>'ولسوالی+شهرستان','Bottom: '=>'پایین:','Bread'=>'نان','Bread can support multiple meeting lists. Each meeting list has an integer ID and a text description that help the user to identify +

          Default Font Size can be changed for specific text.

          '=>' صفحه اول را می توان با متن ، گرافیک ، جداول ، کد کوتاه و غیره سفارشی کرد .','%s Cache entries deleted'=>'%s ورودی های حافظه نهان حذف شده','0 - 999 Hours (0 = disable cache)'=>'0 - 999 ساعت (0 = غیرفعال کردن حافظه پنهان)','12 Hour'=>'12 ساعته','24 Hour'=>'24 ساعته','24 Hour French'=>'24 ساعته فرانسوی','5 inch'=>'5 اینچ','A4'=>'A4','A5'=>'A5','A6'=>'A6','Add extra pages for booklet'=>'صفحات اضافی را برای جزوه اضافه کنید','Add White Space'=>'فضای سفید را اضافه کنید','Additional List'=>'لیست اضافی','After creating the configuration, you will be able to view the resulting meeting list. Note that this is not usually + ready to be printed. Users almost always want to add content, such as service meetings, help lines, place for people to + collect phone numbers etc. To do this, click on the \'Customize\' tab to the left, and then go to either the \'Front Page\' or + \'Custom Section\' tabs. The editors there contain a \'Meeting List Shortcodes\' dropdown menu. Using these, new structures can + be added with only a few mouse clicks.'=>'پس از ایجاد پیکربندی ، می توانید لیست جلسه حاصل را مشاهده کنید. توجه داشته باشید که این معمولاً نیست + آماده چاپ کاربران تقریباً همیشه می خواهند محتوا را اضافه کنند ، مانند جلسات خدمات ، خطوط کمک ، مکان برای افراد + برای انجام این کار ، شماره تلفن و غیره را جمع آوری کنید ، روی برگه "سفارشی سازی" در سمت چپ کلیک کنید ، و سپس به "صفحه اول" بروید + برگه های بخش سفارشی. ویراستاران موجود در منوی کشویی "لیست جلسات" هستند. با استفاده از این ، ساختارهای جدید می توانند + فقط با چند کلیک ماوس اضافه می شود.','All Meetings from your BMLT Server are shown in the list.'=>'تمام جلسات از سرور BMLT شما در لیست نشان داده شده است.','Also useful for backing up before making significant changes to the meeting list settings.'=>'همچنین برای تهیه نسخه پشتیبان از قبل از ایجاد تغییرات مهم در تنظیمات لیست جلسه مفید است.','Anything'=>'هر چیزی','Arial'=>'عیاشی','Avoid using tables which will greatly slow down the generation time. Use CSS instead to get table-like effects if need be.'=>'از استفاده از جداول خودداری کنید که زمان تولید را به شدت کاهش می دهد. به جای آن از CSS استفاده کنید تا در صورت لزوم جلوه های جدول مانند را بدست آورید.','Background Color:'=>'رنگ پس زمینه:','Backup/ Restore'=>'پشتیبان گیری/ بازیابی','Base Font: '=>'قلم پایه:','Base Fonts and Colors'=>'قلم ها و رنگ های پایه','Before creating the meeting list configuration, you are given the opportunity to give the configuration + a mnemonic name. If you are managing multiple meeting lists on this same, this name can help you keep track of which + configuration is which.'=>'قبل از ایجاد پیکربندی لیست جلسه ، به شما فرصتی داده می شود که پیکربندی را ارائه دهید + یک نام Mnemonic. اگر در حال مدیریت لیست های مختلف جلسه در همین مورد هستید ، این نام می تواند به شما در پیگیری کدام یک کمک کند + پیکربندی کدام است.','BMLT Server'=>'سرور BMLT','BMLT Server URL: '=>'URL سرور BMLT:','bmlt-enabled'=>'BMLT فعال','Bold: '=>'پررنگ:','Booklet'=>'کتاب','Booklets'=>'کتابفروشی','Borough'=>'ولگرد','Borough Suffix: '=>'پسوند بورو:','Borough+County'=>'ولسوالی+شهرستان','Bottom: '=>'پایین:','Bread'=>'نان','Bread can support multiple meeting lists. Each meeting list has an integer ID and a text description that help the user to identify the configuration (or \\\'settings\\\') that will be used to generate the meeting list. The ID of the configuration is used in the link that generates the meeting list (eg, ?current-meeting-list=2 generates the meeting list with ID 2).'=>'نان می تواند از لیست های جلسات مختلف پشتیبانی کند. هر لیست جلسه دارای شناسه عدد صحیح و توضیحات متن است که به کاربر کمک می کند تا شناسایی کند پیکربندی (یا "تنظیمات \\") که برای تولید لیست جلسه استفاده می شود. شناسه پیکربندی در لینک استفاده می شود - این لیست جلسه را ایجاد می کند (به عنوان مثال ، لیست شماره فعلی = 2 لیست جلسه را با شناسه 2 تولید می کند).','By Day and Time'=>'روز و زمان','By Name'=>'با نام','CACHE is DELETED when you Save Changes.'=>'حافظه پنهان هنگام ذخیره تغییرات حذف می شود.','Cache Time: '=>'زمان حافظه نهان:','City'=>'شهر','City Suffix: '=>'پسوند شهر:','CMYK'=>'cmyk','Color space: '=>'فضای رنگ:','Color:'=>'رنگ:','Column Gap Width: '=>'عرض شکاف ستون:','Combine main and subgroup into a single header'=>'اصلی و زیر گروه را در یک هدر واحد ترکیب کنید','Configuration Manager'=>'مدیر پیکربندی','Configuration Name: '=>'نام پیکربندی:','Configuration Selection'=>'انتخاب پیکربندی','Consider backing up your settings by using the Export function.'=>'با استفاده از عملکرد صادرات ، از تنظیمات خود نسخه پشتیبان تهیه کنید.','County'=>'شهرستان','County Suffix: '=>'پسوند شهرستان:','Courier'=>'پیک','Current Meeting List'=>'لیست جلسه فعلی','Current Meeting List Link'=>'پیوند لیست جلسه فعلی','Custom Content'=>'محتوای سفارشی','Custom Footer: '=>'پاورقی سفارشی:','Custom Query'=>'پرس و جو سفارشی','Custom Query: '=>'پرس و جو سفارشی:','Custom Section Content'=>'محتوای بخش سفارشی','Customize how meetings are grouped and the headline that each group has.'=>'نحوه گروه بندی جلسات و تیتر هر گروه را سفارشی کنید.','Customizer'=>'سفارشی ساز','Default Font Size: '=>'اندازه فونت پیش فرض:','DejaVu Sans Condensed'=>'dejavu sans متراکم','Delete Current Configuration'=>'پیکربندی فعلی را حذف کنید','Disable SSL verification of server'=>'تأیید SSL سرور را غیرفعال کنید','Display (Cont) Header: '=>'هدر نمایش (ادامه):','Display each subgroup with its own header'=>'هر زیر گروه را با عنوان خود نمایش دهید','Display Subgrouping: '=>'نمایش زیر گروه:','Download Log Files'=>'بارگیری پرونده های log','Duplicate Current Configuration'=>'پیکربندی فعلی کپی','Enable Logging'=>'ورود به سیستم را فعال کنید','Enable PDF Protection.'=>'محافظت از PDF را فعال کنید.','Enable Protection'=>'محافظت','Enable SimpleTables'=>'Simpleables را فعال کنید','Encrypted PDFs can be opened and printed.'=>'PDF های رمزگذاری شده را می توان باز و چاپ کرد.','Encrypts and sets the PDF document permissions for the PDF file.'=>'مجوزهای سند PDF را برای پرونده PDF رمزگذاری و تنظیم می کند.','ERROR: Please enter a BMLT Server'=>'خطا: لطفاً یک سرور BMLT وارد کنید','ERROR: Problem Connecting to BMLT Server'=>'خطا: اتصال به سرور BMLT','Export'=>'صادر کردن','Export Configuration'=>'پیکربندی صادرات','Export or backup meeting list settings.'=>'تنظیمات لیست جلسات صادرات یا پشتیبان گیری.','Extra Meetings Enabled'=>'جلسات اضافی فعال شده است','Face-to-Face Meetings'=>'جلسات چهره به چهره','File loaded'=>'پرونده بارگیری شده است','File size greater than 500k'=>'اندازه پرونده بیشتر از 500k','Flyer'=>'پروانه دار','Font Size: '=>'اندازه قلم:','Format of meetings in the additional list: '=>'قالب جلسات در لیست اضافی:','Front Page'=>'صفحه اول','Front Page Content'=>'محتوای صفحه اول','Full Page'=>'صفحه کامل','Generate Meeting List'=>'لیست جلسات را تولید کنید','Getting Started'=>'شروع','Greyscale'=>'گودال','Group'=>'گروه','Group Meetings By: '=>'جلسات گروهی توسط:','Half-Fold'=>'نیمی','Header Margin Top: '=>'بالای حاشیه هدر:','Header Text: '=>'متن هدر:','Hint: Type a group name, weekday or area to narrow down your choices.'=>'نکته: برای محدود کردن انتخاب های خود ، نام گروهی ، روز هفته یا منطقه را تایپ کنید.','https://bmlt.app'=>'https://bmlt.app','https://bmlt.app/'=>'https://bmlt.app/','If you wish to define different contents for the additional list, use this template.'=>'اگر می خواهید مطالب مختلف را برای لیست اضافی تعریف کنید ، از این الگوی استفاده کنید.','Import'=>'وارد کردن','Import Configuration'=>'پیکربندی واردات','Import meeting list settings from a previously exported meeting list.'=>'تنظیمات لیست جلسه واردات از لیست جلسه قبلی صادر شده.','Include Extra Meetings'=>'شامل جلسات اضافی','Include Extra Meetings from Another Service Body.'=>'شامل جلسات اضافی از بدنه سرویس دیگر.','Include meetings with this format in the main list'=>'جلسات با این قالب را در لیست اصلی قرار دهید','Include Only This Meeting Format'=>'فقط این قالب جلسه را درج کنید','Landscape'=>'چشم انداز','Large Area, Region, Metro'=>'منطقه بزرگ ، منطقه ، مترو','Ledger'=>'پیشخدمت','Left: '=>'سمت چپ:','Legal'=>'حقوقی','Letter'=>'نامه','Line Height: '=>'ارتفاع خط:','Load Configuration'=>'پیکربندی بار','Main Grouping: '=>'گروه بندی اصلی:','Maintains and generates PDF Meeting Lists from BMLT.'=>'لیست های جلسات PDF را از BMLT حفظ و تولید می کند.','Margin Footer: '=>'پاورقی حاشیه:','Medium Area'=>'منطقه متوسط','Meeting Format: '=>'قالب جلسه:','Meeting Group [Column] Header'=>'گروه جلسات [ستون]','Meeting List Author(s)'=>'لیست جلسه نویسنده (ها)','Meeting List Cache'=>'حافظه پنهان لیست جلسه','Meeting List ID: '=>'شناسه لیست جلسه:','Meeting List Size'=>'اندازه لیست جلسه','Meeting Template'=>'الگوی جلسه','Meetings'=>'جلسات','Neighborhood'=>'محاصره','Neighborhood Suffix: '=>'پسوند محله:','Neighborhood+City'=>'محله+شهر','No header for subgroups'=>'بدون هدر برای زیر گروه ها','None'=>'هیچ کدام','Not Used'=>'استفاده نشده','Note: Be sure to select all meetings for each group.'=>'توجه: حتماً تمام جلسات را برای هر گروه انتخاب کنید.','Note: Encrypted PDFs cannot be opened in MS Word at all.'=>'توجه: PDF های رمزگذاری شده به هیچ وجه نمی توانند در MS Word باز شوند.','Optimize/Debug mPDF'=>'MPDF بهینه سازی/اشکال زدایی','Optional Password to allow editing in a PDF editor.'=>'رمزعبور اختیاری برای ویرایش در ویرایشگر PDF.','Orientation'=>'جهت گیری','Pack Table Data'=>'داده های جدول بسته بندی','Page Decorations'=>'دکوراسیون صفحه','Page Height'=>'ارتفاع صفحه','Page Layout'=>'چیدمان صفحه','Page Layout Defaults'=>'پیش فرض طرح بندی صفحه','Page Margin Top: '=>'بالای صفحه بالای صفحه:','Page Numbers Font Size: '=>'شماره صفحه اندازه فونت:','Page Size:'=>'اندازه صفحه:','Paper Size'=>'اندازه کاغذ','Password Protection'=>'محافظت از رمز عبور','Password: '=>'رمز عبور:','Please Choose a File.'=>'لطفا یک پرونده را انتخاب کنید.','Please upload a file to import'=>'لطفا یک پرونده را برای واردات بارگذاری کنید','Please upload a valid .json file'=>'لطفاً یک پرونده معتبر .json بارگذاری کنید','Portrait'=>'تصویر','Portrait, Landscape'=>'پرتره ، منظره','Preview'=>'پیش نمایش','Quad-Fold'=>'چهار برابر','Recurse Service Bodies'=>'مجدداً اجسام خدمات','Remove White Space'=>'فضای سفید را بردارید','RGB'=>'RGB','Right: '=>'سمت راست:','Same as main list'=>'همان لیست اصلی','Save Changes'=>'تغییرات را ذخیره کنید','Save Changes before Generating Meeting List.'=>'قبل از تولید لیست جلسات ، تغییرات را ذخیره کنید.','Save Configuration Name'=>'نام پیکربندی را ذخیره کنید','Select Configuration: '=>'پیکربندی را انتخاب کنید:','Select language for the additional list'=>'برای لیست اضافی زبان را انتخاب کنید','Select sort order for the additional list'=>'برای لیست اضافی ترتیب مرتب سازی را انتخاب کنید','Separator: '=>'جداکننده:','Service Body %s'=>'بدنه سرویس %s','Single Page'=>'یک صفحه','Smaller Areas'=>'مناطق کوچکتر','Start Time Format'=>'قالب زمان شروع','State'=>'حالت','State+City'=>'ایالت+شهر','Sub-Grouping: '=>'زیر گروهی:','Suppress Heading: '=>'سرکوب عنوان:','Text Color:'=>'رنگ متن:','The Meetings you select will be merged into your meeting list.'=>'جلساتی که انتخاب می کنید در لیست جلسات شما ادغام می شوند.','The page header is a title that goes across the entire page above the meetings.'=>'عنوان صفحه عنوانی است که در کل صفحه بالاتر از جلسات قرار می گیرد.','This allows you to easily import meeting list settings into another site.'=>'این به شما امکان می دهد تنظیمات لیست جلسه را به راحتی در سایت دیگری وارد کنید.','This section allows the definition of an additional meeting list, containing meetings that should not be included in the main + این لیست جلسه را ایجاد می کند (به عنوان مثال ، لیست شماره فعلی = 2 لیست جلسه را با شناسه 2 تولید می کند).','Bread is highly customizable, as areas often try to maintain the appearance of their old meeting lists. This wizard only attempts to give you a reasonable + starting point, not an end product. At the end of the wizard we make a few suggestions for possible next steps.'=>'نان بسیار قابل تنظیم است ، زیرا مناطقی که اغلب سعی می کنند ظاهر لیست های قدیمی خود را حفظ کنند. این جادوگر فقط سعی می کند به شما معقول بدهد + نقطه شروع ، یک محصول نهایی نیست. در پایان جادوگر ما چند پیشنهاد برای مراحل بعدی احتمالی ارائه می دهیم.','By Day and Time'=>'روز و زمان','By Name'=>'با نام','CACHE is DELETED when you Save Changes.'=>'حافظه پنهان هنگام ذخیره تغییرات حذف می شود.','Cache Time: '=>'زمان حافظه نهان:','Choose a language (only applies to names of days and format code descriptions): '=>'یک زبان را انتخاب کنید (فقط در مورد نام روزها و توضیحات کد فرمت اعمال می شود):','Choose Layout'=>'طرح را انتخاب کنید','Choose up to 5 service bodies'=>'حداکثر 5 نهاد خدماتی را انتخاب کنید','City'=>'شهر','City Suffix: '=>'پسوند شهر:','CMYK'=>'cmyk','Color space: '=>'فضای رنگ:','Color:'=>'رنگ:','Column Gap Width: '=>'عرض شکاف ستون:','Combine main and subgroup into a single header'=>'اصلی و زیر گروه را در یک هدر واحد ترکیب کنید','Configuration Manager'=>'مدیر پیکربندی','Configuration Name: '=>'نام پیکربندی:','Configuration Selection'=>'انتخاب پیکربندی','Congratulations! The meeting list configuration has been created!'=>'تبریک می گویم! پیکربندی لیست جلسه ایجاد شده است!','Connected! - BMLT Server version '=>'متصل! - نسخه سرور BMLT','Consider backing up your settings by using the Export function.'=>'با استفاده از عملکرد صادرات ، از تنظیمات خود نسخه پشتیبان تهیه کنید.','Could not connect: Check spelling and internet connection.'=>'اتصال نمی تواند: اتصال املا و اتصال به اینترنت را بررسی کنید.','County'=>'شهرستان','County Suffix: '=>'پسوند شهرستان:','Courier'=>'پیک','Create Meeting List'=>'لیست جلسه ایجاد کنید','Current Meeting List'=>'لیست جلسه فعلی','Current Meeting List Link'=>'پیوند لیست جلسه فعلی','Custom Content'=>'محتوای سفارشی','Custom Footer: '=>'پاورقی سفارشی:','Custom Query'=>'پرس و جو سفارشی','Custom Query: '=>'پرس و جو سفارشی:','Custom Section Content'=>'محتوای بخش سفارشی','Customize how meetings are grouped and the headline that each group has.'=>'نحوه گروه بندی جلسات و تیتر هر گروه را سفارشی کنید.','Customizer'=>'سفارشی ساز','Day'=>'روز','Default Font Size: '=>'اندازه فونت پیش فرض:','DejaVu Sans Condensed'=>'dejavu sans متراکم','Delete Current Configuration'=>'پیکربندی فعلی را حذف کنید','Disable SSL verification of server'=>'تأیید SSL سرور را غیرفعال کنید','Display (Cont) Header: '=>'هدر نمایش (ادامه):','Display each subgroup with its own header'=>'هر زیر گروه را با عنوان خود نمایش دهید','Display Subgrouping: '=>'نمایش زیر گروه:','Don\'t include virtual meetings at all.'=>'اصلاً جلسات مجازی را شامل نمی شود.','Download Log Files'=>'بارگیری پرونده های log','Duplicate Current Configuration'=>'پیکربندی فعلی کپی','Enable Logging'=>'ورود به سیستم را فعال کنید','Enable PDF Protection.'=>'محافظت از PDF را فعال کنید.','Enable Protection'=>'محافظت','Enable SimpleTables'=>'Simpleables را فعال کنید','Encrypted PDFs can be opened and printed.'=>'PDF های رمزگذاری شده را می توان باز و چاپ کرد.','Encrypts and sets the PDF document permissions for the PDF file.'=>'مجوزهای سند PDF را برای پرونده PDF رمزگذاری و تنظیم می کند.','Enter a custom name for this configuration: '=>'برای این پیکربندی یک نام سفارشی وارد کنید:','ERROR: Please enter a BMLT Server'=>'خطا: لطفاً یک سرور BMLT وارد کنید','ERROR: Problem Connecting to BMLT Server'=>'خطا: اتصال به سرور BMLT','Export'=>'صادر کردن','Export Configuration'=>'پیکربندی صادرات','Export or backup meeting list settings.'=>'تنظیمات لیست جلسات صادرات یا پشتیبان گیری.','Extra Meetings Enabled'=>'جلسات اضافی فعال شده است','Face-to-Face Meetings'=>'جلسات چهره به چهره','File loaded'=>'پرونده بارگیری شده است','File size greater than 500k'=>'اندازه پرونده بیشتر از 500k','Flyer'=>'پروانه دار','Font Size: '=>'اندازه قلم:','Format of meetings in the additional list: '=>'قالب جلسات در لیست اضافی:','Front Page'=>'صفحه اول','Front Page Content'=>'محتوای صفحه اول','Full Page'=>'صفحه کامل','Generate Meeting List'=>'لیست جلسات را تولید کنید','Getting Started'=>'شروع','Go Back'=>'بازگشت','Greyscale'=>'گودال','Group'=>'گروه','Group Meetings By: '=>'جلسات گروهی توسط:','Half-Fold'=>'نیمی','Header Margin Top: '=>'بالای حاشیه هدر:','Header Text: '=>'متن هدر:','Hint: Type a group name, weekday or area to narrow down your choices.'=>'نکته: برای محدود کردن انتخاب های خود ، نام گروهی ، روز هفته یا منطقه را تایپ کنید.','https://bmlt.app'=>'https://bmlt.app','https://bmlt.app/'=>'https://bmlt.app/','If you want to limit the meeting list to a particular format, for instance, to create a language-specific meeting list, you can enter it here.'=>'اگر می خواهید لیست جلسه را به یک قالب خاص محدود کنید ، به عنوان مثال ، برای ایجاد یک لیست جلسه خاص زبان ، می توانید آن را در اینجا وارد کنید.','If you want to try a different layout: '=>'اگر می خواهید یک طرح متفاوت را امتحان کنید:','If you wish to define different contents for the additional list, use this template.'=>'اگر می خواهید مطالب مختلف را برای لیست اضافی تعریف کنید ، از این الگوی استفاده کنید.','Import'=>'وارد کردن','Import Configuration'=>'پیکربندی واردات','Import meeting list settings from a previously exported meeting list.'=>'تنظیمات لیست جلسه واردات از لیست جلسه قبلی صادر شده.','In this step we suggest suitible formats based on your meeting count. Having the meetings fit on a single side has the advantage + that the list can be posted on a bulleitin board, and this will be used when suggesting a page layout. However, you may + also wish to have the meetings \'overflow\' on to the back side of the paper. If so, select a layout above layout + that the wizard pre-selects for you.'=>'در این مرحله قالب های مناسب را بر اساس تعداد جلسه شما پیشنهاد می کنیم. مناسب بودن جلسات در یک طرف این مزیت را دارد + که این لیست را می توان در یک صفحه بوللیتین ارسال کرد و این هنگام پیشنهاد طرح صفحه مورد استفاده قرار می گیرد. با این حال ، شما ممکن است + همچنین آرزو می کنم جلسات "سرریز" در قسمت پشتی کاغذ باشد. اگر چنین است ، یک طرح above طرح را انتخاب کنید + که جادوگر از قبل انتخاب می کند.','In this step, we create the meeting list settings. If you already have a meeting list defined + on this site, the old settings will not be overwriten, rather, a new setting will be created.'=>'در این مرحله تنظیمات لیست جلسه را ایجاد می کنیم. اگر قبلاً لیست جلسه را تعریف کرده اید + در این سایت ، تنظیمات قدیمی رونویسی نخواهد شد ، بلکه یک تنظیم جدید ایجاد می شود.','Include Extra Meetings'=>'شامل جلسات اضافی','Include Extra Meetings from Another Service Body.'=>'شامل جلسات اضافی از بدنه سرویس دیگر.','Include meetings with this format in the main list'=>'جلسات با این قالب را در لیست اصلی قرار دهید','Include Only This Meeting Format'=>'فقط این قالب جلسه را درج کنید','Include virtual meetings in main meeting list.'=>'جلسات مجازی را در لیست جلسه اصلی قرار دهید.','Landscape'=>'چشم انداز','Large Area, Region, Metro'=>'منطقه بزرگ ، منطقه ، مترو','Ledger'=>'پیشخدمت','Left: '=>'سمت چپ:','Legal'=>'حقوقی','Letter'=>'نامه','Line Height: '=>'ارتفاع خط:','Load Configuration'=>'پیکربندی بار','Main Grouping: '=>'گروه بندی اصلی:','Maintains and generates PDF Meeting Lists from BMLT.'=>'لیست های جلسات PDF را از BMLT حفظ و تولید می کند.','Margin Footer: '=>'پاورقی حاشیه:','Medium Area'=>'منطقه متوسط','Meeting Format: '=>'قالب جلسه:','Meeting Group [Column] Header'=>'گروه جلسات [ستون]','Meeting List Author(s)'=>'لیست جلسه نویسنده (ها)','Meeting List Cache'=>'حافظه پنهان لیست جلسه','Meeting List ID: '=>'شناسه لیست جلسه:','Meeting List Options'=>'گزینه های لیست جلسه','Meeting List Size'=>'اندازه لیست جلسه','Meeting Template'=>'الگوی جلسه','Meetings'=>'جلسات','Most areas try to fit their meetings onto a single sheet of paper. And it is particularly adventageous to + use a tri-fold format, so that the list can be printed at home and placed along side the pamphlets. The priority should always be that the + meeting list is readable. For many areas, a booklet format is better, even if the reqire more effort or expense to print.'=>'بیشتر مناطق سعی می کنند جلسات خود را روی یک برگه واحد قرار دهند. و به ویژه ماجراجویانه است + از یک قالب سه برابر استفاده کنید تا لیست در خانه چاپ شود و در کنار جزوه ها قرار گیرد. اولویت همیشه باید این باشد که + لیست جلسه قابل خواندن است. برای بسیاری از زمینه ها ، یک قالب جزوه بهتر است ، حتی اگر تلاش یا هزینه بیشتری برای چاپ مجدد داشته باشید.','Neighborhood'=>'محاصره','Neighborhood Suffix: '=>'پسوند محله:','Neighborhood+City'=>'محله+شهر','Next, we need to know which meetings are going to be on the meeting list. This will help the wizard when it + tries to choose an a appropriate layout for you.'=>'در مرحله بعد ، ما باید بدانیم که کدام جلسات در لیست جلسه برگزار می شود. این به جادوگر در هنگام آن کمک می کند + سعی می کند یک طرح مناسب برای شما انتخاب کند.','No header for subgroups'=>'بدون هدر برای زیر گروه ها','None'=>'هیچ کدام','Not Used'=>'استفاده نشده','Note: Be sure to select all meetings for each group.'=>'توجه: حتماً تمام جلسات را برای هر گروه انتخاب کنید.','Note: Encrypted PDFs cannot be opened in MS Word at all.'=>'توجه: PDF های رمزگذاری شده به هیچ وجه نمی توانند در MS Word باز شوند.','Number of meetings on list: '=>'تعداد جلسات در لیست:','Open customizer'=>'سفارشی ساز باز','Optimize/Debug mPDF'=>'MPDF بهینه سازی/اشکال زدایی','Optional Password to allow editing in a PDF editor.'=>'رمزعبور اختیاری برای ویرایش در ویرایشگر PDF.','Organize the meetings by:'=>'جلسات را توسط:','Orientation'=>'جهت گیری','Pack Table Data'=>'داده های جدول بسته بندی','Page Decorations'=>'دکوراسیون صفحه','Page Height'=>'ارتفاع صفحه','Page Layout'=>'چیدمان صفحه','Page Layout Defaults'=>'پیش فرض طرح بندی صفحه','Page Margin Top: '=>'بالای صفحه بالای صفحه:','Page Numbers Font Size: '=>'شماره صفحه اندازه فونت:','Page Size:'=>'اندازه صفحه:','Paper Size'=>'اندازه کاغذ','Password Protection'=>'محافظت از رمز عبور','Password: '=>'رمز عبور:','Place virtual meetings in a separate list, with specialized format.'=>'جلسات مجازی را در یک لیست جداگانه و با فرمت تخصصی قرار دهید.','Please Choose a File.'=>'لطفا یک پرونده را انتخاب کنید.','Please upload a file to import'=>'لطفا یک پرونده را برای واردات بارگذاری کنید','Please upload a valid .json file'=>'لطفاً یک پرونده معتبر .json بارگذاری کنید','Portrait'=>'تصویر','Portrait, Landscape'=>'پرتره ، منظره','Preview'=>'پیش نمایش','Quad-Fold'=>'چهار برابر','Recurse Service Bodies'=>'مجدداً اجسام خدمات','Remove White Space'=>'فضای سفید را بردارید','RGB'=>'RGB','Right: '=>'سمت راست:','Same as main list'=>'همان لیست اصلی','Save Changes'=>'تغییرات را ذخیره کنید','Save Changes before Generating Meeting List.'=>'قبل از تولید لیست جلسات ، تغییرات را ذخیره کنید.','Save Configuration Name'=>'نام پیکربندی را ذخیره کنید','Select Configuration: '=>'پیکربندی را انتخاب کنید:','Select language for the additional list'=>'برای لیست اضافی زبان را انتخاب کنید','Select one of the layouts appropriate to the number of meetings'=>'یکی از طرح بندی های متناسب با تعداد جلسات را انتخاب کنید','Select Service Bodies'=>'نهادهای سرویس را انتخاب کنید','Select sort order for the additional list'=>'برای لیست اضافی ترتیب مرتب سازی را انتخاب کنید','Separator: '=>'جداکننده:','Service Body %s'=>'بدنه سرویس %s','Single Page'=>'یک صفحه','Smaller Areas'=>'مناطق کوچکتر','Start Here: Meeting List Setup Wizard'=>'از اینجا شروع کنید: جادوگر تنظیم لیست جلسه','Start Time Format'=>'قالب زمان شروع','State'=>'حالت','State+City'=>'ایالت+شهر','Step 1: Enter your BMLT root server'=>'مرحله 1: سرور ریشه BMLT خود را وارد کنید','Step 2: Select a service body'=>'مرحله 2: یک بدنه سرویس را انتخاب کنید','Step 3: Page Layout'=>'مرحله 3: چیدمان صفحه','Step 4: Select Option'=>'مرحله 4: گزینه را انتخاب کنید','Sub-Grouping: '=>'زیر گروهی:','Suppress Heading: '=>'سرکوب عنوان:','Test Server Connection'=>'اتصال سرور تست','Test that this is valid root server URL before continuing'=>'آزمایش کنید که این URL سرور ریشه معتبر قبل از ادامه است','Text Color:'=>'رنگ متن:','The first thing we need is the location of your BMLT root server. Once you have entered it, you need check that the URL is correct + by clicking the \'Test Connection\' button.'=>'اولین چیزی که ما نیاز داریم مکان سرور Root BMLT شما است. پس از ورود به آن ، باید بررسی کنید که URL صحیح است + با کلیک بر روی دکمه "تست اتصال".','The first thing you probably want to do is have a look at the meeting list:'=>'اولین کاری که احتمالاً می خواهید انجام دهید این است که به لیست جلسه نگاهی بیندازید:','The Meetings you select will be merged into your meeting list.'=>'جلساتی که انتخاب می کنید در لیست جلسات شما ادغام می شوند.','The page header is a title that goes across the entire page above the meetings.'=>'عنوان صفحه عنوانی است که در کل صفحه بالاتر از جلسات قرار می گیرد.','This allows you to easily import meeting list settings into another site.'=>'این به شما امکان می دهد تنظیمات لیست جلسه را به راحتی در سایت دیگری وارد کنید.','This section allows the definition of an additional meeting list, containing meetings that should not be included in the main list. This is typically virtual meetings, but it can be any group of meetings identified by a format.'=>'این بخش اجازه می دهد تا تعریف یک لیست جلسات اضافی ، شامل جلساتی که نباید در قسمت اصلی گنجانده شوند - لیست این معمولاً جلسات مجازی است ، اما می تواند هر گروهی از جلسات باشد که با یک فرمت مشخص می شود.','This section describes things on the page other than the contents. Headers, footers, page numbers.'=>'در این بخش مواردی در صفحه غیر از محتویات شرح داده شده است. هدرها ، پاورقی ها ، شماره صفحه.','This site is using an external object cache.'=>'این سایت از حافظه نهان خارجی استفاده می کند.','This will be executed as part of the meeting search query. This will override any setting in the Service Body dropdowns.'=>'این به عنوان بخشی از پرس و جو جستجوی جلسه اجرا می شود. این امر باعث غلبه بر هر تنظیم در کشویی بدنه سرویس می شود.','Times'=>'بار','Tri-Fold'=>'سه برابر','Try a different user agent or "None" for Wordpress default: '=>'یک عامل کاربر متفاوت یا "هیچ" را برای پیش فرض وردپرس امتحان کنید:','Unrestricted'=>'بدون محدودیت','Uppercase: '=>'حروف بزرگ:','Use Aggregator 🍅'=>'از Aggregator 🍅 ؛','User Defined'=>'کاربر تعریف شده','Using Tomato Server'=>'با استفاده از سرور گوجه فرنگی','Virtual Meetings'=>'جلسات مجازی','Watermark: '=>'علامت علامت:','Weekday'=>'روز هفته','Weekday Language: '=>'زبان روز هفته:','Weekday Start: '=>'شروع روز هفته:','Weekday+Area'=>'روز هفته+منطقه','Weekday+City'=>'روز هفته+شهر','Weekday+County '=>'روز هفته+شهرستان','What options you see will be dependant on the layout selected.'=>'چه گزینه هایی را می بینید که به طرح انتخاب شده بستگی دارد.','Wheelchair Icon Size: '=>'اندازه نماد ویلچر:','When a layout is clicked defaults are reset for orientation, paper size and page height.'=>'هنگامی که یک طرح کلیک می شود پیش فرض برای جهت گیری ، اندازه کاغذ و ارتفاع صفحه تنظیم مجدد می شود.','You can get help formulating a query using your sites semantic interface.'=>'شما می توانید با استفاده از سایت های خود semantic Interface کمک کنید.','You do not have permission to save this configuation!'=>'شما اجازه ذخیره این پیکربندی را ندارید!','Your BMLT Server is running %s'=>'سرور BMLT شما در حال اجرا %s است','Your changes were successfully saved!'=>'تغییرات شما با موفقیت ذخیره شد!','Your current meeting list settings will be replaced and lost forever.'=>'تنظیمات لیست فعلی جلسه شما برای همیشه جایگزین و از بین می رود.']]; + لیست این معمولاً جلسات مجازی است ، اما می تواند هر گروهی از جلسات باشد که با یک فرمت مشخص می شود.','This section describes things on the page other than the contents. Headers, footers, page numbers.'=>'در این بخش مواردی در صفحه غیر از محتویات شرح داده شده است. هدرها ، پاورقی ها ، شماره صفحه.','This site is using an external object cache.'=>'این سایت از حافظه نهان خارجی استفاده می کند.','This will be executed as part of the meeting search query. This will override any setting in the Service Body dropdowns.'=>'این به عنوان بخشی از پرس و جو جستجوی جلسه اجرا می شود. این امر باعث غلبه بر هر تنظیم در کشویی بدنه سرویس می شود.','This wizard guides you through the initial configuation of a meeting list. If you have already created one or more meeting lists, + don\'t worry, this process alway creates a new configuration, and never overwrites old ones.'=>'این جادوگر شما را از طریق پیکربندی اولیه لیست جلسه راهنمایی می کند. اگر قبلاً یک یا چند لیست جلسه ایجاد کرده اید ، + نگران نباشید ، این فرآیند همیشه پیکربندی جدیدی را ایجاد می کند و هرگز موارد قدیمی را بازنویسی نمی کند.','Times'=>'بار','To add a link to the meeting list on your website, use the following link.'=>'برای افزودن پیوندی به لیست جلسه در وب سایت خود ، از لینک زیر استفاده کنید.','Tri-Fold'=>'سه برابر','Try a different user agent or "None" for Wordpress default: '=>'یک عامل کاربر متفاوت یا "هیچ" را برای پیش فرض وردپرس امتحان کنید:','Unrestricted'=>'بدون محدودیت','Uppercase: '=>'حروف بزرگ:','Use Aggregator 🍅'=>'از Aggregator 🍅 ؛','User Defined'=>'کاربر تعریف شده','Using Tomato Server'=>'با استفاده از سرور گوجه فرنگی','Verify that this is valid root server URL before continuing'=>'تأیید کنید که این URL سرور ریشه معتبر قبل از ادامه است','Virtual Meetings'=>'جلسات مجازی','Visit Do I have the BMLT? to find your BMLT server'=>'برای یافتن سرور BMLT خود به do من BMLT؟ مراجعه کنید','Watermark: '=>'علامت علامت:','Weekday'=>'روز هفته','Weekday Language: '=>'زبان روز هفته:','Weekday Start: '=>'شروع روز هفته:','Weekday+Area'=>'روز هفته+منطقه','Weekday+City'=>'روز هفته+شهر','Weekday+County '=>'روز هفته+شهرستان','What options you see will be dependant on the layout selected.'=>'چه گزینه هایی را می بینید که به طرح انتخاب شده بستگی دارد.','Wheelchair Icon Size: '=>'اندازه نماد ویلچر:','When a layout is clicked defaults are reset for orientation, paper size and page height.'=>'هنگامی که یک طرح کلیک می شود پیش فرض برای جهت گیری ، اندازه کاغذ و ارتفاع صفحه تنظیم مجدد می شود.','Where should virtual meetings be included:'=>'جلسات مجازی از کجا باید گنجانده شود:','You can get help formulating a query using your sites semantic interface.'=>'شما می توانید با استفاده از سایت های خود semantic Interface کمک کنید.','You do not have permission to save this configuation!'=>'شما اجازه ذخیره این پیکربندی را ندارید!','You may also want to adjust the font sizes on your meeting list so that it fits on a single sheet or is more readable. This is only + of the many options available in the \'Customizer\'.'=>'همچنین ممکن است بخواهید اندازه قلم را در لیست جلسات خود تنظیم کنید تا روی یک برگه قرار بگیرد یا قابل خواندن تر باشد. این فقط است + از بسیاری از گزینه های موجود در "سفارشی".','You probably want to add some content to the first page or the custom content:'=>'احتمالاً می خواهید برخی از مطالب را به صفحه اول یا محتوای سفارشی اضافه کنید:','Your BMLT Server is running %s'=>'سرور BMLT شما در حال اجرا %s است','Your changes were successfully saved!'=>'تغییرات شما با موفقیت ذخیره شد!','Your current meeting list settings will be replaced and lost forever.'=>'تنظیمات لیست فعلی جلسه شما برای همیشه جایگزین و از بین می رود.']]; diff --git a/languages/bread-fa_IR.mo b/languages/bread-fa_IR.mo index ea8a42d2633f2e3b456aedfe69eb01251ea1d8fb..f6247347675bf173fb37d6caf05d52428229900d 100644 GIT binary patch literal 32855 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 Custom Content can be customized with text, " @@ -29,16 +30,20 @@ msgid "" "after the meetings in the meeting list.

          " msgstr "" "

          محتوای سفارشی را می توان با متن ، گرافیک ، جداول ، کد کوتاه و غیره " -"سفارشی کرد .___ html_1___\n" -"

          default font size برای متن خاص " -"در ویرایشگر قابل تغییر است .___ html_1___\n" -"

          add media دکمه - بارگذاری و " -"اضافه کردن گرافیک .___ html_1___\n" -"

          Meeting لیست کوتاه کد های کشویی " -"- داده های متغیر را وارد کنید .___ html_1___\n" -"

          محتوای سفارشی بلافاصله پس از جلسات در لیست " -"جلسه چاپ می شود .___ html_16___

          " - +"سفارشی کرد ." + +#: admin/partials/_front_page_setup.php:10 +#, fuzzy +#| msgid "" +#| "\n" +#| "

          The Front Page can be customized with text, " +#| "graphics, tables, shortcodes, etc.

          \n" +#| "

          Add Media button - upload and " +#| "add graphics.

          \n" +#| "

          Meeting List Shortcodes " +#| "dropdown - insert custom data.

          \n" +#| "

          Default Font Size can be " +#| "changed for specific text.

          " msgid "" "\n" "

          The Front Page can be customized with text, " @@ -50,54 +55,86 @@ msgid "" "

          Default Font Size can be changed " "for specific text.

          " msgstr "" -"

          صفحه اول را می توان با متن ، گرافیک ، جداول ، کد کوتاه ، ect .___ " -"html_1___ سفارشی سازی کرد.\n" -"

          add media دکمه - بارگذاری و " -"اضافه کردن گرافیک .___ html_1___\n" -"

          meeting لیست کوتاه کد های کشویی " -"- داده های سفارشی را وارد کنید .___ html_1___\n" -"

          default font size برای متن خاص " -"قابل تغییر است .___ html_1___" +" صفحه اول را می توان با متن ، گرافیک ، جداول ، کد کوتاه و غیره سفارشی کرد ." +#. string is number of cache entries deleted +#: admin/partials/bread-admin-display.php:106 +#, php-format msgid "%s Cache entries deleted" msgstr "%s ورودی های حافظه نهان حذف شده" +#: admin/partials/_bmlt_server_setup.php:169 msgid "0 - 999 Hours (0 = disable cache)" msgstr "0 - 999 ساعت (0 = غیرفعال کردن حافظه پنهان)" +#: admin/partials/_meetings_setup.php:241 msgid "12 Hour" msgstr "12 ساعته" +#: admin/partials/_meetings_setup.php:253 msgid "24 Hour" msgstr "24 ساعته" +#: admin/partials/_meetings_setup.php:265 msgid "24 Hour French" msgstr "24 ساعته فرانسوی" +#: admin/partials/_layout_setup.php:76 msgid "5 inch" msgstr "5 اینچ" +#: admin/partials/_layout_setup.php:25 admin/partials/_layout_setup.php:32 +#: admin/partials/_layout_setup.php:46 admin/partials/_layout_setup.php:80 msgid "A4" msgstr "A4" +#: admin/partials/_layout_setup.php:39 admin/partials/_layout_setup.php:81 msgid "A5" msgstr "A5" +#: admin/partials/_layout_setup.php:82 msgid "A6" msgstr "A6" +#: admin/partials/_layout_setup.php:70 msgid "Add extra pages for booklet" msgstr "صفحات اضافی را برای جزوه اضافه کنید" +#: admin/partials/_meetings_setup.php:248 msgid "Add White Space" msgstr "فضای سفید را اضافه کنید" +#: admin/partials/_meetings_setup.php:301 msgid "Additional List" msgstr "لیست اضافی" +#: admin/partials/_bread_wizard.php:138 +msgid "" +"After creating the configuration, you will be able to view the resulting " +"meeting list. Note that this is not usually\n" +" ready to be printed. Users almost always want to add content, " +"such as service meetings, help lines, place for people to\n" +" collect phone numbers etc. To do this, click on the " +"'Customize' tab to the left, and then go to either the 'Front Page' or\n" +" 'Custom Section' tabs. The editors there contain a 'Meeting " +"List Shortcodes' dropdown menu. Using these, new structures can\n" +" be added with only a few mouse clicks." +msgstr "" +"پس از ایجاد پیکربندی ، می توانید لیست جلسه حاصل را مشاهده کنید. توجه داشته " +"باشید که این معمولاً نیست\n" +" آماده چاپ کاربران تقریباً همیشه می خواهند محتوا را اضافه کنند " +"، مانند جلسات خدمات ، خطوط کمک ، مکان برای افراد\n" +" برای انجام این کار ، شماره تلفن و غیره را جمع آوری کنید ، روی " +"برگه \"سفارشی سازی\" در سمت چپ کلیک کنید ، و سپس به \"صفحه اول\" بروید\n" +" برگه های بخش سفارشی. ویراستاران موجود در منوی کشویی \"لیست " +"جلسات\" هستند. با استفاده از این ، ساختارهای جدید می توانند\n" +" فقط با چند کلیک ماوس اضافه می شود." + +#: admin/partials/_bmlt_server_setup.php:90 msgid "All Meetings from your BMLT Server are shown in the list." msgstr "تمام جلسات از سرور BMLT شما در لیست نشان داده شده است." +#: admin/partials/_backup_restore_setup.php:56 msgid "" "Also useful for backing up before making significant changes to the meeting " "list settings." @@ -105,12 +142,15 @@ msgstr "" "همچنین برای تهیه نسخه پشتیبان از قبل از ایجاد تغییرات مهم در تنظیمات لیست " "جلسه مفید است." +#: admin/partials/_layout_setup.php:43 msgid "Anything" msgstr "هر چیزی" +#: admin/partials/_layout_setup.php:153 msgid "Arial" msgstr "عیاشی" +#: admin/partials/_meetings_setup.php:213 msgid "" "Avoid using tables which will greatly slow down the generation time. Use CSS " "instead to get table-like effects if need be." @@ -118,21 +158,42 @@ msgstr "" "از استفاده از جداول خودداری کنید که زمان تولید را به شدت کاهش می دهد. به جای " "آن از CSS استفاده کنید تا در صورت لزوم جلوه های جدول مانند را بدست آورید." +#: admin/partials/_layout_setup.php:113 admin/partials/_meetings_setup.php:29 msgid "Background Color:" msgstr "رنگ پس زمینه:" +#: admin/partials/bread-admin-display.php:122 msgid "Backup/ Restore" msgstr "پشتیبان گیری/ بازیابی" +#: admin/partials/_layout_setup.php:148 msgid "Base Font: " msgstr "قلم پایه:" +#: admin/partials/_layout_setup.php:144 msgid "Base Fonts and Colors" msgstr "قلم ها و رنگ های پایه" +#: admin/partials/_bread_wizard.php:135 +msgid "" +"Before creating the meeting list configuration, you are given the " +"opportunity to give the configuration\n" +" a mnemonic name. If you are managing multiple meeting lists " +"on this same, this name can help you keep track of which\n" +" configuration is which." +msgstr "" +"قبل از ایجاد پیکربندی لیست جلسه ، به شما فرصتی داده می شود که پیکربندی را " +"ارائه دهید\n" +" یک نام Mnemonic. اگر در حال مدیریت لیست های مختلف جلسه در " +"همین مورد هستید ، این نام می تواند به شما در پیگیری کدام یک کمک کند\n" +" پیکربندی کدام است." + +#: admin/partials/_bread_wizard.php:6 admin/partials/_bmlt_server_setup.php:18 +#: admin/partials/bread-admin-display.php:129 msgid "BMLT Server" msgstr "سرور BMLT" +#: admin/partials/_bread_wizard.php:50 admin/partials/_bmlt_server_setup.php:21 msgid "BMLT Server URL: " msgstr "URL سرور BMLT:" @@ -140,24 +201,32 @@ msgstr "URL سرور BMLT:" msgid "bmlt-enabled" msgstr "BMLT فعال" +#: admin/partials/_meetings_setup.php:37 msgid "Bold: " msgstr "پررنگ:" +#: admin/partials/_layout_setup.php:39 msgid "Booklet" msgstr "کتاب" +#: admin/partials/_layout_setup.php:66 msgid "Booklets" msgstr "کتابفروشی" +#: admin/partials/_meetings_setup.php:52 admin/partials/_meetings_setup.php:106 +#: admin/partials/_meetings_setup.php:127 msgid "Borough" msgstr "ولگرد" +#: admin/partials/_meetings_setup.php:65 msgid "Borough Suffix: " msgstr "پسوند بورو:" +#: admin/partials/_meetings_setup.php:53 msgid "Borough+County" msgstr "ولسوالی+شهرستان" +#: admin/partials/_layout_setup.php:85 msgid "Bottom: " msgstr "پایین:" @@ -165,6 +234,7 @@ msgstr "پایین:" msgid "Bread" msgstr "نان" +#: admin/partials/_backup_restore_setup.php:11 msgid "" "Bread can support multiple meeting lists. Each meeting list has an integer " "ID and a text description that help the user to identify\n" @@ -181,202 +251,341 @@ msgstr "" " این لیست جلسه را ایجاد می کند (به عنوان مثال ، لیست " "شماره فعلی = 2 لیست جلسه را با شناسه 2 تولید می کند)." +#: admin/partials/_bread_wizard.php:44 +msgid "" +"Bread is highly customizable, as areas often try to maintain the appearance " +"of their old meeting lists. This wizard only attempts to give you a " +"reasonable\n" +" starting point, not an end product. At the end of the wizard we " +"make a few suggestions for possible next steps." +msgstr "" +"نان بسیار قابل تنظیم است ، زیرا مناطقی که اغلب سعی می کنند ظاهر لیست های " +"قدیمی خود را حفظ کنند. این جادوگر فقط سعی می کند به شما معقول بدهد\n" +" نقطه شروع ، یک محصول نهایی نیست. در پایان جادوگر ما چند پیشنهاد " +"برای مراحل بعدی احتمالی ارائه می دهیم." + +#: admin/partials/_meetings_setup.php:330 msgid "By Day and Time" msgstr "روز و زمان" +#: admin/partials/_meetings_setup.php:329 msgid "By Name" msgstr "با نام" +#: admin/partials/_bmlt_server_setup.php:172 msgid "CACHE is DELETED when you Save Changes." msgstr "حافظه پنهان هنگام ذخیره تغییرات حذف می شود." +#: admin/partials/_bmlt_server_setup.php:168 msgid "Cache Time: " msgstr "زمان حافظه نهان:" +#: admin/partials/_bread_wizard.php:111 +msgid "" +"Choose a language (only applies to names of days and format code " +"descriptions): " +msgstr "" +"یک زبان را انتخاب کنید (فقط در مورد نام روزها و توضیحات کد فرمت اعمال می شود)" +":" + +#: admin/partials/_bread_wizard.php:18 +msgid "Choose Layout" +msgstr "طرح را انتخاب کنید" + +#: admin/partials/_bread_wizard.php:75 +msgid "Choose up to 5 service bodies" +msgstr "حداکثر 5 نهاد خدماتی را انتخاب کنید" + +#: admin/partials/_bread_wizard.php:127 admin/partials/_meetings_setup.php:49 +#: admin/partials/_meetings_setup.php:102 +#: admin/partials/_meetings_setup.php:123 msgid "City" msgstr "شهر" +#: admin/partials/_meetings_setup.php:92 msgid "City Suffix: " msgstr "پسوند شهر:" +#: admin/partials/_layout_setup.php:161 msgid "CMYK" msgstr "cmyk" +#: admin/partials/_layout_setup.php:156 msgid "Color space: " msgstr "فضای رنگ:" +#: admin/partials/_layout_setup.php:135 msgid "Color:" msgstr "رنگ:" +#: admin/partials/_layout_setup.php:130 msgid "Column Gap Width: " msgstr "عرض شکاف ستون:" +#: admin/partials/_meetings_setup.php:152 msgid "Combine main and subgroup into a single header" msgstr "اصلی و زیر گروه را در یک هدر واحد ترکیب کنید" +#: admin/partials/_backup_restore_setup.php:9 msgid "Configuration Manager" msgstr "مدیر پیکربندی" +#: admin/partials/_backup_restore_setup.php:20 msgid "Configuration Name: " msgstr "نام پیکربندی:" +#: admin/partials/_backup_restore_setup.php:25 msgid "Configuration Selection" msgstr "انتخاب پیکربندی" +#: admin/partials/_bread_wizard.php:152 +msgid "Congratulations! The meeting list configuration has been created!" +msgstr "تبریک می گویم! پیکربندی لیست جلسه ایجاد شده است!" + +#: admin/partials/_bread_wizard.php:58 +msgid "Connected! - BMLT Server version " +msgstr "متصل! - نسخه سرور BMLT" + +#: admin/partials/_backup_restore_setup.php:79 msgid "Consider backing up your settings by using the Export function." msgstr "با استفاده از عملکرد صادرات ، از تنظیمات خود نسخه پشتیبان تهیه کنید." +#: admin/partials/_bread_wizard.php:61 +msgid "Could not connect: Check spelling and internet connection." +msgstr "اتصال نمی تواند: اتصال املا و اتصال به اینترنت را بررسی کنید." + +#: admin/partials/_meetings_setup.php:51 admin/partials/_meetings_setup.php:105 +#: admin/partials/_meetings_setup.php:126 msgid "County" msgstr "شهرستان" +#: admin/partials/_meetings_setup.php:74 msgid "County Suffix: " msgstr "پسوند شهرستان:" +#: admin/partials/_layout_setup.php:151 msgid "Courier" msgstr "پیک" +#: admin/partials/_bread_wizard.php:30 admin/partials/_bread_wizard.php:149 +msgid "Create Meeting List" +msgstr "لیست جلسه ایجاد کنید" + +#: admin/partials/_backup_restore_setup.php:14 msgid "Current Meeting List" msgstr "لیست جلسه فعلی" +#: admin/partials/_bmlt_server_setup.php:117 msgid "Current Meeting List Link" msgstr "پیوند لیست جلسه فعلی" +#: admin/partials/bread-admin-display.php:133 msgid "Custom Content" msgstr "محتوای سفارشی" +#: admin/partials/_layout_setup.php:119 admin/partials/_meetings_setup.php:187 msgid "Custom Footer: " msgstr "پاورقی سفارشی:" +#: admin/partials/_bmlt_server_setup.php:80 msgid "Custom Query" msgstr "پرس و جو سفارشی" +#: admin/partials/_bmlt_server_setup.php:82 +#: admin/partials/_meetings_setup.php:362 msgid "Custom Query: " msgstr "پرس و جو سفارشی:" +#: admin/partials/_custom_section_setup.php:18 msgid "Custom Section Content" msgstr "محتوای بخش سفارشی" +#: admin/partials/_meetings_setup.php:11 msgid "" "Customize how meetings are grouped and the headline that each group has." msgstr "نحوه گروه بندی جلسات و تیتر هر گروه را سفارشی کنید." +#: admin/partials/bread-admin-display.php:121 msgid "Customizer" msgstr "سفارشی ساز" +#: admin/partials/_bread_wizard.php:126 +msgid "Day" +msgstr "روز" + +#: admin/partials/_custom_section_setup.php:20 +#: admin/partials/_front_page_setup.php:19 +#: admin/partials/_meetings_setup.php:210 msgid "Default Font Size: " msgstr "اندازه فونت پیش فرض:" +#: admin/partials/_layout_setup.php:150 msgid "DejaVu Sans Condensed" msgstr "dejavu sans متراکم" +#: admin/partials/_backup_restore_setup.php:44 msgid "Delete Current Configuration" msgstr "پیکربندی فعلی را حذف کنید" +#: admin/partials/_bmlt_server_setup.php:31 +#: admin/partials/_bmlt_server_setup.php:39 +#: admin/partials/_bmlt_server_setup.php:52 msgid "Disable SSL verification of server" msgstr "تأیید SSL سرور را غیرفعال کنید" +#: admin/partials/_meetings_setup.php:40 msgid "Display (Cont) Header: " msgstr "هدر نمایش (ادامه):" +#: admin/partials/_meetings_setup.php:149 msgid "Display each subgroup with its own header" msgstr "هر زیر گروه را با عنوان خود نمایش دهید" +#: admin/partials/_meetings_setup.php:143 msgid "Display Subgrouping: " msgstr "نمایش زیر گروه:" +#: admin/partials/_bread_wizard.php:122 +msgid "Don't include virtual meetings at all." +msgstr "اصلاً جلسات مجازی را شامل نمی شود." + +#: admin/partials/_bmlt_server_setup.php:147 msgid "Download Log Files" msgstr "بارگیری پرونده های log" +#: admin/partials/_backup_restore_setup.php:42 msgid "Duplicate Current Configuration" msgstr "پیکربندی فعلی کپی" +#: admin/partials/_bmlt_server_setup.php:137 msgid "Enable Logging" msgstr "ورود به سیستم را فعال کنید" +#: admin/partials/_layout_setup.php:173 msgid "Enable PDF Protection." msgstr "محافظت از PDF را فعال کنید." +#: admin/partials/_layout_setup.php:187 msgid "Enable Protection" msgstr "محافظت" +#: admin/partials/_bmlt_server_setup.php:140 msgid "Enable SimpleTables" msgstr "Simpleables را فعال کنید" +#: admin/partials/_layout_setup.php:176 msgid "Encrypted PDFs can be opened and printed." msgstr "PDF های رمزگذاری شده را می توان باز و چاپ کرد." +#: admin/partials/_layout_setup.php:174 msgid "Encrypts and sets the PDF document permissions for the PDF file." msgstr "مجوزهای سند PDF را برای پرونده PDF رمزگذاری و تنظیم می کند." +#: admin/partials/_bread_wizard.php:147 +msgid "Enter a custom name for this configuration: " +msgstr "برای این پیکربندی یک نام سفارشی وارد کنید:" + +#: admin/partials/_bmlt_server_setup.php:34 msgid "ERROR: Please enter a BMLT Server" msgstr "خطا: لطفاً یک سرور BMLT وارد کنید" +#: admin/partials/_bmlt_server_setup.php:44 msgid "ERROR: Problem Connecting to BMLT Server" msgstr "خطا: اتصال به سرور BMLT" +#: admin/partials/_backup_restore_setup.php:61 msgid "Export" msgstr "صادر کردن" +#: admin/partials/_backup_restore_setup.php:52 msgid "Export Configuration" msgstr "پیکربندی صادرات" +#: admin/partials/_backup_restore_setup.php:54 msgid "Export or backup meeting list settings." msgstr "تنظیمات لیست جلسات صادرات یا پشتیبان گیری." +#: admin/partials/_bmlt_server_setup.php:111 msgid "Extra Meetings Enabled" msgstr "جلسات اضافی فعال شده است" +#: admin/partials/_meetings_setup.php:313 msgid "Face-to-Face Meetings" msgstr "جلسات چهره به چهره" +#: admin/partials/bread-admin-display.php:98 msgid "File loaded" msgstr "پرونده بارگیری شده است" +#: admin/class-bread-admin.php:367 msgid "File size greater than 500k" msgstr "اندازه پرونده بیشتر از 500k" +#: admin/partials/_layout_setup.php:59 msgid "Flyer" msgstr "پروانه دار" +#: admin/partials/_layout_setup.php:111 admin/partials/_meetings_setup.php:21 msgid "Font Size: " msgstr "اندازه قلم:" +#: admin/partials/_meetings_setup.php:308 msgid "Format of meetings in the additional list: " msgstr "قالب جلسات در لیست اضافی:" +#: admin/partials/bread-admin-display.php:131 msgid "Front Page" msgstr "صفحه اول" +#: admin/partials/_front_page_setup.php:17 msgid "Front Page Content" msgstr "محتوای صفحه اول" +#: admin/partials/_layout_setup.php:44 admin/partials/_layout_setup.php:68 msgid "Full Page" msgstr "صفحه کامل" +#: admin/partials/_bread_wizard.php:154 +#: admin/partials/bread-admin-display.php:159 +#: admin/partials/_backup_restore_setup.php:90 msgid "Generate Meeting List" msgstr "لیست جلسات را تولید کنید" +#: admin/partials/bread-admin-display.php:120 msgid "Getting Started" msgstr "شروع" +#: admin/partials/_bread_wizard.php:158 +msgid "Go Back" +msgstr "بازگشت" + +#: admin/partials/_layout_setup.php:159 msgid "Greyscale" msgstr "گودال" +#: admin/partials/_bread_wizard.php:128 admin/partials/_meetings_setup.php:50 +#: admin/partials/_meetings_setup.php:104 +#: admin/partials/_meetings_setup.php:125 msgid "Group" msgstr "گروه" +#: admin/partials/_meetings_setup.php:46 msgid "Group Meetings By: " msgstr "جلسات گروهی توسط:" +#: admin/partials/_layout_setup.php:37 admin/partials/_layout_setup.php:67 msgid "Half-Fold" msgstr "نیمی" +#: admin/partials/_layout_setup.php:114 msgid "Header Margin Top: " msgstr "بالای حاشیه هدر:" +#: admin/partials/_layout_setup.php:115 msgid "Header Text: " msgstr "متن هدر:" +#: admin/partials/_bmlt_server_setup.php:108 msgid "Hint: Type a group name, weekday or area to narrow down your choices." msgstr "" "نکته: برای محدود کردن انتخاب های خود ، نام گروهی ، روز هفته یا منطقه را تایپ " @@ -390,6 +599,19 @@ msgstr "https://bmlt.app" msgid "https://bmlt.app/" msgstr "https://bmlt.app/" +#: admin/partials/_bread_wizard.php:88 +msgid "" +"If you want to limit the meeting list to a particular format, for instance, " +"to create a language-specific meeting list, you can enter it here." +msgstr "" +"اگر می خواهید لیست جلسه را به یک قالب خاص محدود کنید ، به عنوان مثال ، برای " +"ایجاد یک لیست جلسه خاص زبان ، می توانید آن را در اینجا وارد کنید." + +#: admin/partials/_bread_wizard.php:158 +msgid "If you want to try a different layout: " +msgstr "اگر می خواهید یک طرح متفاوت را امتحان کنید:" + +#: admin/partials/_meetings_setup.php:367 msgid "" "If you wish to define different contents for the additional list, use this " "template." @@ -397,51 +619,106 @@ msgstr "" "اگر می خواهید مطالب مختلف را برای لیست اضافی تعریف کنید ، از این الگوی " "استفاده کنید." +#: admin/partials/_backup_restore_setup.php:75 msgid "Import" msgstr "وارد کردن" +#: admin/partials/_backup_restore_setup.php:67 msgid "Import Configuration" msgstr "پیکربندی واردات" +#: admin/partials/_backup_restore_setup.php:69 msgid "Import meeting list settings from a previously exported meeting list." msgstr "تنظیمات لیست جلسه واردات از لیست جلسه قبلی صادر شده." +#: admin/partials/_bread_wizard.php:99 +msgid "" +"In this step we suggest suitible formats based on your meeting count. " +"Having the meetings fit on a single side has the advantage\n" +" that the list can be posted on a bulleitin board, and this will " +"be used when suggesting a page layout. However, you may\n" +" also wish to have the meetings 'overflow' on to the back side of " +"the paper. If so, select a layout above layout\n" +" that the wizard pre-selects for you." +msgstr "" +"در این مرحله قالب های مناسب را بر اساس تعداد جلسه شما پیشنهاد می کنیم. " +"مناسب بودن جلسات در یک طرف این مزیت را دارد\n" +" که این لیست را می توان در یک صفحه بوللیتین ارسال کرد و این هنگام " +"پیشنهاد طرح صفحه مورد استفاده قرار می گیرد. با این حال ، شما ممکن است\n" +" همچنین آرزو می کنم جلسات \"سرریز\" در قسمت پشتی کاغذ باشد. اگر " +"چنین است ، یک طرح above طرح را انتخاب کنید\n" +" که جادوگر از قبل انتخاب می کند." + +#: admin/partials/_bread_wizard.php:133 +msgid "" +"In this step, we create the meeting list settings. If you already have a " +"meeting list defined\n" +" on this site, the old settings will not be overwriten, rather, " +"a new setting will be created." +msgstr "" +"در این مرحله تنظیمات لیست جلسه را ایجاد می کنیم. اگر قبلاً لیست جلسه را " +"تعریف کرده اید\n" +" در این سایت ، تنظیمات قدیمی رونویسی نخواهد شد ، بلکه یک تنظیم " +"جدید ایجاد می شود." + +#: admin/partials/_bmlt_server_setup.php:95 msgid "Include Extra Meetings" msgstr "شامل جلسات اضافی" +#: admin/partials/_bmlt_server_setup.php:89 msgid "Include Extra Meetings from Another Service Body." msgstr "شامل جلسات اضافی از بدنه سرویس دیگر." +#: admin/partials/_meetings_setup.php:366 msgid "Include meetings with this format in the main list" msgstr "جلسات با این قالب را در لیست اصلی قرار دهید" +#: admin/partials/_meetings_setup.php:277 msgid "Include Only This Meeting Format" msgstr "فقط این قالب جلسه را درج کنید" +#: admin/partials/_bread_wizard.php:120 +msgid "Include virtual meetings in main meeting list." +msgstr "جلسات مجازی را در لیست جلسه اصلی قرار دهید." + +#: admin/partials/_layout_setup.php:24 admin/partials/_layout_setup.php:31 +#: admin/partials/_layout_setup.php:38 admin/partials/_layout_setup.php:64 msgid "Landscape" msgstr "چشم انداز" +#: admin/partials/_layout_setup.php:36 msgid "Large Area, Region, Metro" msgstr "منطقه بزرگ ، منطقه ، مترو" +#: admin/partials/_layout_setup.php:79 msgid "Ledger" msgstr "پیشخدمت" +#: admin/partials/_layout_setup.php:86 msgid "Left: " msgstr "سمت چپ:" +#: admin/partials/_layout_setup.php:32 admin/partials/_layout_setup.php:46 +#: admin/partials/_layout_setup.php:78 msgid "Legal" msgstr "حقوقی" +#: admin/partials/_layout_setup.php:25 admin/partials/_layout_setup.php:46 +#: admin/partials/_layout_setup.php:77 msgid "Letter" msgstr "نامه" +#: admin/partials/_custom_section_setup.php:21 +#: admin/partials/_front_page_setup.php:20 +#: admin/partials/_meetings_setup.php:211 msgid "Line Height: " msgstr "ارتفاع خط:" +#: admin/partials/_backup_restore_setup.php:34 msgid "Load Configuration" msgstr "پیکربندی بار" +#: admin/partials/_meetings_setup.php:99 msgid "Main Grouping: " msgstr "گروه بندی اصلی:" @@ -449,200 +726,370 @@ msgstr "گروه بندی اصلی:" msgid "Maintains and generates PDF Meeting Lists from BMLT." msgstr "لیست های جلسات PDF را از BMLT حفظ و تولید می کند." +#: admin/partials/_layout_setup.php:122 msgid "Margin Footer: " msgstr "پاورقی حاشیه:" +#: admin/partials/_layout_setup.php:29 msgid "Medium Area" msgstr "منطقه متوسط" +#: admin/partials/_meetings_setup.php:279 msgid "Meeting Format: " msgstr "قالب جلسه:" +#: admin/partials/_meetings_setup.php:14 msgid "Meeting Group [Column] Header" msgstr "گروه جلسات [ستون]" +#: admin/partials/_bmlt_server_setup.php:124 msgid "Meeting List Author(s)" msgstr "لیست جلسه نویسنده (ها)" +#: admin/partials/_bmlt_server_setup.php:160 msgid "Meeting List Cache" msgstr "حافظه پنهان لیست جلسه" +#: admin/partials/_backup_restore_setup.php:16 msgid "Meeting List ID: " msgstr "شناسه لیست جلسه:" +#: admin/partials/_bread_wizard.php:24 +msgid "Meeting List Options" +msgstr "گزینه های لیست جلسه" + +#: admin/partials/_layout_setup.php:15 msgid "Meeting List Size" msgstr "اندازه لیست جلسه" +#: admin/partials/_meetings_setup.php:207 msgid "Meeting Template" msgstr "الگوی جلسه" +#: admin/partials/bread-admin-display.php:132 msgid "Meetings" msgstr "جلسات" +#: admin/partials/_bread_wizard.php:96 +msgid "" +"Most areas try to fit their meetings onto a single sheet of paper. And it " +"is particularly adventageous to\n" +" use a tri-fold format, so that the list can be printed at home " +"and placed along side the pamphlets. The priority should always be that the\n" +" meeting list is readable. For many areas, a booklet format is " +"better, even if the reqire more effort or expense to print." +msgstr "" +"بیشتر مناطق سعی می کنند جلسات خود را روی یک برگه واحد قرار دهند. و به ویژه " +"ماجراجویانه است\n" +" از یک قالب سه برابر استفاده کنید تا لیست در خانه چاپ شود و در " +"کنار جزوه ها قرار گیرد. اولویت همیشه باید این باشد که\n" +" لیست جلسه قابل خواندن است. برای بسیاری از زمینه ها ، یک قالب " +"جزوه بهتر است ، حتی اگر تلاش یا هزینه بیشتری برای چاپ مجدد داشته باشید." + +#: admin/partials/_meetings_setup.php:103 +#: admin/partials/_meetings_setup.php:124 msgid "Neighborhood" msgstr "محاصره" +#: admin/partials/_meetings_setup.php:83 msgid "Neighborhood Suffix: " msgstr "پسوند محله:" +#: admin/partials/_meetings_setup.php:54 msgid "Neighborhood+City" msgstr "محله+شهر" +#: admin/partials/_bread_wizard.php:72 +msgid "" +"Next, we need to know which meetings are going to be on the meeting list. " +"This will help the wizard when it\n" +" tries to choose an a appropriate layout for you." +msgstr "" +"در مرحله بعد ، ما باید بدانیم که کدام جلسات در لیست جلسه برگزار می شود. این " +"به جادوگر در هنگام آن کمک می کند\n" +" سعی می کند یک طرح مناسب برای شما انتخاب کند." + +#: admin/partials/_meetings_setup.php:146 msgid "No header for subgroups" msgstr "بدون هدر برای زیر گروه ها" +#: admin/partials/_layout_setup.php:47 admin/partials/_meetings_setup.php:121 msgid "None" msgstr "هیچ کدام" +#: admin/partials/_meetings_setup.php:310 msgid "Not Used" msgstr "استفاده نشده" +#: admin/partials/_bmlt_server_setup.php:92 msgid "Note: Be sure to select all meetings for each group." msgstr "توجه: حتماً تمام جلسات را برای هر گروه انتخاب کنید." +#: admin/partials/_layout_setup.php:180 msgid "Note: Encrypted PDFs cannot be opened in MS Word at all." msgstr "توجه: PDF های رمزگذاری شده به هیچ وجه نمی توانند در MS Word باز شوند." +#: admin/partials/_bread_wizard.php:104 +msgid "Number of meetings on list: " +msgstr "تعداد جلسات در لیست:" + +#: admin/partials/_bread_wizard.php:161 +msgid "Open customizer" +msgstr "سفارشی ساز باز" + +#: admin/partials/_bmlt_server_setup.php:134 msgid "Optimize/Debug mPDF" msgstr "MPDF بهینه سازی/اشکال زدایی" +#: admin/partials/_layout_setup.php:178 msgid "Optional Password to allow editing in a PDF editor." msgstr "رمزعبور اختیاری برای ویرایش در ویرایشگر PDF." +#: admin/partials/_bread_wizard.php:124 +msgid "Organize the meetings by:" +msgstr "جلسات را توسط:" + +#: admin/partials/_layout_setup.php:17 msgid "Orientation" msgstr "جهت گیری" +#: admin/partials/_bmlt_server_setup.php:143 msgid "Pack Table Data" msgstr "داده های جدول بسته بندی" +#: admin/partials/_layout_setup.php:106 msgid "Page Decorations" msgstr "دکوراسیون صفحه" +#: admin/partials/_layout_setup.php:19 msgid "Page Height" msgstr "ارتفاع صفحه" +#: admin/partials/_layout_setup.php:16 admin/partials/_layout_setup.php:54 +#: admin/partials/bread-admin-display.php:130 msgid "Page Layout" msgstr "چیدمان صفحه" +#: admin/partials/_layout_setup.php:11 msgid "Page Layout Defaults" msgstr "پیش فرض طرح بندی صفحه" +#: admin/partials/_layout_setup.php:84 msgid "Page Margin Top: " msgstr "بالای صفحه بالای صفحه:" +#: admin/partials/_layout_setup.php:127 msgid "Page Numbers Font Size: " msgstr "شماره صفحه اندازه فونت:" +#: admin/partials/_layout_setup.php:75 msgid "Page Size:" msgstr "اندازه صفحه:" +#: admin/partials/_layout_setup.php:18 msgid "Paper Size" msgstr "اندازه کاغذ" +#: admin/partials/_layout_setup.php:183 msgid "Password Protection" msgstr "محافظت از رمز عبور" +#: admin/partials/_layout_setup.php:192 msgid "Password: " msgstr "رمز عبور:" +#: admin/partials/_bread_wizard.php:118 +msgid "Place virtual meetings in a separate list, with specialized format." +msgstr "جلسات مجازی را در یک لیست جداگانه و با فرمت تخصصی قرار دهید." + +#: admin/partials/_backup_restore_setup.php:82 msgid "Please Choose a File." msgstr "لطفا یک پرونده را انتخاب کنید." +#: admin/class-bread-admin.php:363 msgid "Please upload a file to import" msgstr "لطفا یک پرونده را برای واردات بارگذاری کنید" +#: admin/class-bread-admin.php:359 msgid "Please upload a valid .json file" msgstr "لطفاً یک پرونده معتبر .json بارگذاری کنید" +#: admin/partials/_layout_setup.php:63 msgid "Portrait" msgstr "تصویر" +#: admin/partials/_layout_setup.php:45 msgid "Portrait, Landscape" msgstr "پرتره ، منظره" +#: admin/partials/bread-admin-display.php:158 msgid "Preview" msgstr "پیش نمایش" +#: admin/partials/_layout_setup.php:30 admin/partials/_layout_setup.php:61 msgid "Quad-Fold" msgstr "چهار برابر" +#: admin/partials/_bmlt_server_setup.php:64 msgid "Recurse Service Bodies" msgstr "مجدداً اجسام خدمات" +#: admin/partials/_meetings_setup.php:259 msgid "Remove White Space" msgstr "فضای سفید را بردارید" +#: admin/partials/_layout_setup.php:160 msgid "RGB" msgstr "RGB" +#: admin/partials/_layout_setup.php:87 msgid "Right: " msgstr "سمت راست:" +#: admin/partials/_meetings_setup.php:331 +#: admin/partials/_meetings_setup.php:339 +#: admin/partials/_meetings_setup.php:341 msgid "Same as main list" msgstr "همان لیست اصلی" +#: admin/partials/bread-admin-display.php:157 msgid "Save Changes" msgstr "تغییرات را ذخیره کنید" +#: admin/partials/bread-admin-display.php:160 msgid "Save Changes before Generating Meeting List." msgstr "قبل از تولید لیست جلسات ، تغییرات را ذخیره کنید." +#: admin/partials/_backup_restore_setup.php:21 msgid "Save Configuration Name" msgstr "نام پیکربندی را ذخیره کنید" +#: admin/partials/_backup_restore_setup.php:27 msgid "Select Configuration: " msgstr "پیکربندی را انتخاب کنید:" +#: admin/partials/_meetings_setup.php:335 msgid "Select language for the additional list" msgstr "برای لیست اضافی زبان را انتخاب کنید" +#: admin/partials/_bread_wizard.php:105 +msgid "Select one of the layouts appropriate to the number of meetings" +msgstr "یکی از طرح بندی های متناسب با تعداد جلسات را انتخاب کنید" + +#: admin/partials/_bread_wizard.php:12 +msgid "Select Service Bodies" +msgstr "نهادهای سرویس را انتخاب کنید" + +#: admin/partials/_meetings_setup.php:327 msgid "Select sort order for the additional list" msgstr "برای لیست اضافی ترتیب مرتب سازی را انتخاب کنید" +#: admin/partials/_layout_setup.php:134 msgid "Separator: " msgstr "جداکننده:" +#. Bread can query up to five servers, the string is the number 1-5 +#: admin/partials/bread-admin-display.php:49 +#, php-format msgid "Service Body %s" msgstr "بدنه سرویس %s" +#: admin/partials/_layout_setup.php:58 msgid "Single Page" msgstr "یک صفحه" +#: admin/partials/_layout_setup.php:22 msgid "Smaller Areas" msgstr "مناطق کوچکتر" +#: admin/partials/_meeting_list_setup.php:15 +msgid "Start Here: Meeting List Setup Wizard" +msgstr "از اینجا شروع کنید: جادوگر تنظیم لیست جلسه" + +#: admin/partials/_meetings_setup.php:236 msgid "Start Time Format" msgstr "قالب زمان شروع" +#: admin/partials/_meetings_setup.php:107 +#: admin/partials/_meetings_setup.php:128 msgid "State" msgstr "حالت" +#: admin/partials/_meetings_setup.php:55 msgid "State+City" msgstr "ایالت+شهر" +#: admin/partials/_bread_wizard.php:40 +msgid "Step 1: Enter your BMLT root server" +msgstr "مرحله 1: سرور ریشه BMLT خود را وارد کنید" + +#: admin/partials/_bread_wizard.php:70 +msgid "Step 2: Select a service body" +msgstr "مرحله 2: یک بدنه سرویس را انتخاب کنید" + +#: admin/partials/_bread_wizard.php:94 +msgid "Step 3: Page Layout" +msgstr "مرحله 3: چیدمان صفحه" + +#: admin/partials/_bread_wizard.php:110 +msgid "Step 4: Select Option" +msgstr "مرحله 4: گزینه را انتخاب کنید" + +#: admin/partials/_meetings_setup.php:119 msgid "Sub-Grouping: " msgstr "زیر گروهی:" +#: admin/partials/_meetings_setup.php:18 msgid "Suppress Heading: " msgstr "سرکوب عنوان:" +#: admin/partials/_bread_wizard.php:53 +msgid "Test Server Connection" +msgstr "اتصال سرور تست" + +#: admin/partials/_bread_wizard.php:55 +msgid "Test that this is valid root server URL before continuing" +msgstr "آزمایش کنید که این URL سرور ریشه معتبر قبل از ادامه است" + +#: admin/partials/_layout_setup.php:112 admin/partials/_meetings_setup.php:24 msgid "Text Color:" msgstr "رنگ متن:" +#: admin/partials/_bread_wizard.php:46 +msgid "" +"The first thing we need is the location of your BMLT root server. Once you " +"have entered it, you need check that the URL is correct\n" +" by clicking the 'Test Connection' button." +msgstr "" +"اولین چیزی که ما نیاز داریم مکان سرور Root BMLT شما است. پس از ورود به آن ، " +"باید بررسی کنید که URL صحیح است\n" +" با کلیک بر روی دکمه \"تست اتصال\"." + +#: admin/partials/_bread_wizard.php:153 +msgid "" +"The first thing you probably want to do is have a look at the meeting list:" +msgstr "" +"اولین کاری که احتمالاً می خواهید انجام دهید این است که به لیست جلسه نگاهی " +"بیندازید:" + +#: admin/partials/_bmlt_server_setup.php:91 msgid "The Meetings you select will be merged into your meeting list." msgstr "جلساتی که انتخاب می کنید در لیست جلسات شما ادغام می شوند." +#: admin/partials/_layout_setup.php:109 msgid "" "The page header is a title that goes across the entire page above the " "meetings." msgstr "عنوان صفحه عنوانی است که در کل صفحه بالاتر از جلسات قرار می گیرد." +#: admin/partials/_backup_restore_setup.php:55 msgid "" "This allows you to easily import meeting list settings into another site." msgstr "" "این به شما امکان می دهد تنظیمات لیست جلسه را به راحتی در سایت دیگری وارد " "کنید." +#: admin/partials/_meetings_setup.php:304 msgid "" "This section allows the definition of an additional meeting list, containing " "meetings that should not be included in the main\n" @@ -654,6 +1101,7 @@ msgstr "" " لیست این معمولاً جلسات مجازی است ، اما می تواند هر " "گروهی از جلسات باشد که با یک فرمت مشخص می شود." +#: admin/partials/_layout_setup.php:100 msgid "" "This section describes things on the page other than the contents. Headers, " "footers, page numbers." @@ -661,9 +1109,11 @@ msgstr "" "در این بخش مواردی در صفحه غیر از محتویات شرح داده شده است. هدرها ، پاورقی ها " "، شماره صفحه." +#: admin/partials/_bmlt_server_setup.php:164 msgid "This site is using an external object cache." msgstr "این سایت از حافظه نهان خارجی استفاده می کند." +#: admin/partials/_bmlt_server_setup.php:72 msgid "" "This will be executed as part of the meeting search query. This will " "override any setting in the Service Body dropdowns." @@ -671,60 +1121,110 @@ msgstr "" "این به عنوان بخشی از پرس و جو جستجوی جلسه اجرا می شود. این امر باعث غلبه بر " "هر تنظیم در کشویی بدنه سرویس می شود." +#: admin/partials/_bread_wizard.php:42 +msgid "" +"This wizard guides you through the initial configuation of a meeting list. " +"If you have already created one or more meeting lists,\n" +" don't worry, this process alway creates a new configuration, and " +"never overwrites old ones." +msgstr "" +"این جادوگر شما را از طریق پیکربندی اولیه لیست جلسه راهنمایی می کند. اگر " +"قبلاً یک یا چند لیست جلسه ایجاد کرده اید ،\n" +" نگران نباشید ، این فرآیند همیشه پیکربندی جدیدی را ایجاد می کند و " +"هرگز موارد قدیمی را بازنویسی نمی کند." + +#: admin/partials/_layout_setup.php:152 msgid "Times" msgstr "بار" +#: admin/partials/_bread_wizard.php:156 +msgid "" +"To add a link to the meeting list on your website, use the following link." +msgstr "" +"برای افزودن پیوندی به لیست جلسه در وب سایت خود ، از لینک زیر استفاده کنید." + +#: admin/partials/_layout_setup.php:23 admin/partials/_layout_setup.php:60 msgid "Tri-Fold" msgstr "سه برابر" +#: admin/partials/_bmlt_server_setup.php:47 msgid "Try a different user agent or \"None\" for Wordpress default: " msgstr "یک عامل کاربر متفاوت یا \"هیچ\" را برای پیش فرض وردپرس امتحان کنید:" +#: admin/partials/_layout_setup.php:158 msgid "Unrestricted" msgstr "بدون محدودیت" +#: admin/partials/_meetings_setup.php:34 msgid "Uppercase: " msgstr "حروف بزرگ:" +#: admin/partials/_bmlt_server_setup.php:59 msgid "Use Aggregator 🍅" msgstr "از Aggregator 🍅 ؛" +#: admin/partials/_meetings_setup.php:59 msgid "User Defined" msgstr "کاربر تعریف شده" +#: admin/partials/bread-admin-display.php:37 msgid "Using Tomato Server" msgstr "با استفاده از سرور گوجه فرنگی" +#: admin/partials/_bread_wizard.php:65 +msgid "Verify that this is valid root server URL before continuing" +msgstr "تأیید کنید که این URL سرور ریشه معتبر قبل از ادامه است" + +#: admin/partials/_meetings_setup.php:312 msgid "Virtual Meetings" msgstr "جلسات مجازی" +#: admin/partials/_bread_wizard.php:49 +msgid "" +"Visit Do I have " +"the BMLT? to find your BMLT server" +msgstr "" +"برای یافتن سرور BMLT خود به do من BMLT؟ مراجعه کنید" + +#: admin/partials/_layout_setup.php:116 msgid "Watermark: " msgstr "علامت علامت:" +#: admin/partials/_meetings_setup.php:48 admin/partials/_meetings_setup.php:101 +#: admin/partials/_meetings_setup.php:122 msgid "Weekday" msgstr "روز هفته" +#: admin/partials/_meetings_setup.php:158 msgid "Weekday Language: " msgstr "زبان روز هفته:" +#: admin/partials/_meetings_setup.php:173 msgid "Weekday Start: " msgstr "شروع روز هفته:" +#: admin/partials/_meetings_setup.php:56 msgid "Weekday+Area" msgstr "روز هفته+منطقه" +#: admin/partials/_meetings_setup.php:57 msgid "Weekday+City" msgstr "روز هفته+شهر" +#: admin/partials/_meetings_setup.php:58 msgid "Weekday+County " msgstr "روز هفته+شهرستان" +#: admin/partials/_layout_setup.php:102 msgid "What options you see will be dependant on the layout selected." msgstr "چه گزینه هایی را می بینید که به طرح انتخاب شده بستگی دارد." +#: admin/partials/_meetings_setup.php:212 msgid "Wheelchair Icon Size: " msgstr "اندازه نماد ویلچر:" +#: admin/partials/_layout_setup.php:51 msgid "" "When a layout is clicked defaults are reset for orientation, paper size and " "page height." @@ -732,6 +1232,13 @@ msgstr "" "هنگامی که یک طرح کلیک می شود پیش فرض برای جهت گیری ، اندازه کاغذ و ارتفاع " "صفحه تنظیم مجدد می شود." +#: admin/partials/_bread_wizard.php:115 +msgid "Where should virtual meetings be included:" +msgstr "جلسات مجازی از کجا باید گنجانده شود:" + +#. the string is a link to the semantic interface of the BMLT server +#: admin/partials/_bmlt_server_setup.php:76 +#, php-format msgid "" "You can get help formulating a query using your sites " "semantic interface." @@ -739,14 +1246,37 @@ msgstr "" "شما می توانید با استفاده از سایت های خود semantic " "Interface کمک کنید." +#: admin/partials/bread-admin-display.php:96 msgid "You do not have permission to save this configuation!" msgstr "شما اجازه ذخیره این پیکربندی را ندارید!" +#: admin/partials/_bread_wizard.php:143 +msgid "" +"You may also want to adjust the font sizes on your meeting list so that it " +"fits on a single sheet or is more readable. This is only\n" +" of the many options available in the 'Customizer'." +msgstr "" +"همچنین ممکن است بخواهید اندازه قلم را در لیست جلسات خود تنظیم کنید تا روی یک " +"برگه قرار بگیرد یا قابل خواندن تر باشد. این فقط است\n" +" از بسیاری از گزینه های موجود در \"سفارشی\"." + +#: admin/partials/_bread_wizard.php:160 +msgid "" +"You probably want to add some content to the first page or the custom " +"content:" +msgstr "" +"احتمالاً می خواهید برخی از مطالب را به صفحه اول یا محتوای سفارشی اضافه کنید:" + +#. string is the version number of the BMLT Server +#: admin/partials/bread-admin-display.php:40 +#, php-format msgid "Your BMLT Server is running %s" msgstr "سرور BMLT شما در حال اجرا %s است" +#: admin/partials/bread-admin-display.php:102 msgid "Your changes were successfully saved!" msgstr "تغییرات شما با موفقیت ذخیره شد!" +#: admin/partials/_backup_restore_setup.php:78 msgid "Your current meeting list settings will be replaced and lost forever." msgstr "تنظیمات لیست فعلی جلسه شما برای همیشه جایگزین و از بین می رود." diff --git a/languages/bread.pot b/languages/bread.pot index 14d7316..1c63194 100644 --- a/languages/bread.pot +++ b/languages/bread.pot @@ -3,7 +3,7 @@ msgid "" msgstr "" "Project-Id-Version: Bread\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-08-28 12:15+0000\n" +"POT-Creation-Date: 2025-08-29 10:51+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: \n" @@ -44,12 +44,13 @@ msgid "" "for specific text.

          " msgstr "" -#: admin/partials/bread-admin-display.php:102 +#. string is number of cache entries deleted +#: admin/partials/bread-admin-display.php:106 #, php-format msgid "%s Cache entries deleted" msgstr "" -#: admin/partials/_bmlt_server_setup.php:166 +#: admin/partials/_bmlt_server_setup.php:169 msgid "0 - 999 Hours (0 = disable cache)" msgstr "" @@ -94,7 +95,20 @@ msgstr "" msgid "Additional List" msgstr "" -#: admin/partials/_bmlt_server_setup.php:87 +#: admin/partials/_bread_wizard.php:138 +msgid "" +"After creating the configuration, you will be able to view the resulting " +"meeting list. Note that this is not usually\n" +" ready to be printed. Users almost always want to add content, " +"such as service meetings, help lines, place for people to\n" +" collect phone numbers etc. To do this, click on the " +"'Customize' tab to the left, and then go to either the 'Front Page' or\n" +" 'Custom Section' tabs. The editors there contain a 'Meeting " +"List Shortcodes' dropdown menu. Using these, new structures can\n" +" be added with only a few mouse clicks." +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:90 msgid "All Meetings from your BMLT Server are shown in the list." msgstr "" @@ -122,7 +136,7 @@ msgstr "" msgid "Background Color:" msgstr "" -#: admin/partials/bread-admin-display.php:118 +#: admin/partials/bread-admin-display.php:122 msgid "Backup/ Restore" msgstr "" @@ -134,12 +148,21 @@ msgstr "" msgid "Base Fonts and Colors" msgstr "" -#: admin/partials/_bmlt_server_setup.php:18 -#: admin/partials/bread-admin-display.php:125 +#: admin/partials/_bread_wizard.php:135 +msgid "" +"Before creating the meeting list configuration, you are given the " +"opportunity to give the configuration\n" +" a mnemonic name. If you are managing multiple meeting lists " +"on this same, this name can help you keep track of which\n" +" configuration is which." +msgstr "" + +#: admin/partials/_bread_wizard.php:6 admin/partials/_bmlt_server_setup.php:18 +#: admin/partials/bread-admin-display.php:129 msgid "BMLT Server" msgstr "" -#: admin/partials/_bmlt_server_setup.php:21 +#: admin/partials/_bread_wizard.php:50 admin/partials/_bmlt_server_setup.php:21 msgid "BMLT Server URL: " msgstr "" @@ -191,6 +214,15 @@ msgid "" "meeting-list=2 generates the meeting list with ID 2)." msgstr "" +#: admin/partials/_bread_wizard.php:44 +msgid "" +"Bread is highly customizable, as areas often try to maintain the appearance " +"of their old meeting lists. This wizard only attempts to give you a " +"reasonable\n" +" starting point, not an end product. At the end of the wizard we " +"make a few suggestions for possible next steps." +msgstr "" + #: admin/partials/_meetings_setup.php:330 msgid "By Day and Time" msgstr "" @@ -199,15 +231,30 @@ msgstr "" msgid "By Name" msgstr "" -#: admin/partials/_bmlt_server_setup.php:169 +#: admin/partials/_bmlt_server_setup.php:172 msgid "CACHE is DELETED when you Save Changes." msgstr "" -#: admin/partials/_bmlt_server_setup.php:165 +#: admin/partials/_bmlt_server_setup.php:168 msgid "Cache Time: " msgstr "" -#: admin/partials/_meetings_setup.php:49 admin/partials/_meetings_setup.php:102 +#: admin/partials/_bread_wizard.php:111 +msgid "" +"Choose a language (only applies to names of days and format code " +"descriptions): " +msgstr "" + +#: admin/partials/_bread_wizard.php:18 +msgid "Choose Layout" +msgstr "" + +#: admin/partials/_bread_wizard.php:75 +msgid "Choose up to 5 service bodies" +msgstr "" + +#: admin/partials/_bread_wizard.php:127 admin/partials/_meetings_setup.php:49 +#: admin/partials/_meetings_setup.php:102 #: admin/partials/_meetings_setup.php:123 msgid "City" msgstr "" @@ -248,10 +295,22 @@ msgstr "" msgid "Configuration Selection" msgstr "" +#: admin/partials/_bread_wizard.php:152 +msgid "Congratulations! The meeting list configuration has been created!" +msgstr "" + +#: admin/partials/_bread_wizard.php:58 +msgid "Connected! - BMLT Server version " +msgstr "" + #: admin/partials/_backup_restore_setup.php:79 msgid "Consider backing up your settings by using the Export function." msgstr "" +#: admin/partials/_bread_wizard.php:61 +msgid "Could not connect: Check spelling and internet connection." +msgstr "" + #: admin/partials/_meetings_setup.php:51 admin/partials/_meetings_setup.php:105 #: admin/partials/_meetings_setup.php:126 msgid "County" @@ -265,15 +324,19 @@ msgstr "" msgid "Courier" msgstr "" +#: admin/partials/_bread_wizard.php:30 admin/partials/_bread_wizard.php:149 +msgid "Create Meeting List" +msgstr "" + #: admin/partials/_backup_restore_setup.php:14 msgid "Current Meeting List" msgstr "" -#: admin/partials/_bmlt_server_setup.php:114 +#: admin/partials/_bmlt_server_setup.php:117 msgid "Current Meeting List Link" msgstr "" -#: admin/partials/bread-admin-display.php:129 +#: admin/partials/bread-admin-display.php:133 msgid "Custom Content" msgstr "" @@ -281,11 +344,11 @@ msgstr "" msgid "Custom Footer: " msgstr "" -#: admin/partials/_bmlt_server_setup.php:77 +#: admin/partials/_bmlt_server_setup.php:80 msgid "Custom Query" msgstr "" -#: admin/partials/_bmlt_server_setup.php:79 +#: admin/partials/_bmlt_server_setup.php:82 #: admin/partials/_meetings_setup.php:362 msgid "Custom Query: " msgstr "" @@ -299,10 +362,14 @@ msgid "" "Customize how meetings are grouped and the headline that each group has." msgstr "" -#: admin/partials/bread-admin-display.php:117 +#: admin/partials/bread-admin-display.php:121 msgid "Customizer" msgstr "" +#: admin/partials/_bread_wizard.php:126 +msgid "Day" +msgstr "" + #: admin/partials/_custom_section_setup.php:20 #: admin/partials/_front_page_setup.php:19 #: admin/partials/_meetings_setup.php:210 @@ -335,7 +402,11 @@ msgstr "" msgid "Display Subgrouping: " msgstr "" -#: admin/partials/_bmlt_server_setup.php:144 +#: admin/partials/_bread_wizard.php:122 +msgid "Don't include virtual meetings at all." +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:147 msgid "Download Log Files" msgstr "" @@ -343,7 +414,7 @@ msgstr "" msgid "Duplicate Current Configuration" msgstr "" -#: admin/partials/_bmlt_server_setup.php:134 +#: admin/partials/_bmlt_server_setup.php:137 msgid "Enable Logging" msgstr "" @@ -355,7 +426,7 @@ msgstr "" msgid "Enable Protection" msgstr "" -#: admin/partials/_bmlt_server_setup.php:137 +#: admin/partials/_bmlt_server_setup.php:140 msgid "Enable SimpleTables" msgstr "" @@ -367,6 +438,10 @@ msgstr "" msgid "Encrypts and sets the PDF document permissions for the PDF file." msgstr "" +#: admin/partials/_bread_wizard.php:147 +msgid "Enter a custom name for this configuration: " +msgstr "" + #: admin/partials/_bmlt_server_setup.php:34 msgid "ERROR: Please enter a BMLT Server" msgstr "" @@ -387,7 +462,7 @@ msgstr "" msgid "Export or backup meeting list settings." msgstr "" -#: admin/partials/_bmlt_server_setup.php:108 +#: admin/partials/_bmlt_server_setup.php:111 msgid "Extra Meetings Enabled" msgstr "" @@ -395,7 +470,7 @@ msgstr "" msgid "Face-to-Face Meetings" msgstr "" -#: admin/partials/bread-admin-display.php:95 +#: admin/partials/bread-admin-display.php:98 msgid "File loaded" msgstr "" @@ -415,7 +490,7 @@ msgstr "" msgid "Format of meetings in the additional list: " msgstr "" -#: admin/partials/bread-admin-display.php:127 +#: admin/partials/bread-admin-display.php:131 msgid "Front Page" msgstr "" @@ -427,19 +502,26 @@ msgstr "" msgid "Full Page" msgstr "" +#: admin/partials/_bread_wizard.php:154 +#: admin/partials/bread-admin-display.php:159 #: admin/partials/_backup_restore_setup.php:90 msgid "Generate Meeting List" msgstr "" -#: admin/partials/bread-admin-display.php:116 +#: admin/partials/bread-admin-display.php:120 msgid "Getting Started" msgstr "" +#: admin/partials/_bread_wizard.php:158 +msgid "Go Back" +msgstr "" + #: admin/partials/_layout_setup.php:159 msgid "Greyscale" msgstr "" -#: admin/partials/_meetings_setup.php:50 admin/partials/_meetings_setup.php:104 +#: admin/partials/_bread_wizard.php:128 admin/partials/_meetings_setup.php:50 +#: admin/partials/_meetings_setup.php:104 #: admin/partials/_meetings_setup.php:125 msgid "Group" msgstr "" @@ -460,7 +542,7 @@ msgstr "" msgid "Header Text: " msgstr "" -#: admin/partials/_bmlt_server_setup.php:105 +#: admin/partials/_bmlt_server_setup.php:108 msgid "Hint: Type a group name, weekday or area to narrow down your choices." msgstr "" @@ -472,6 +554,16 @@ msgstr "" msgid "https://bmlt.app/" msgstr "" +#: admin/partials/_bread_wizard.php:88 +msgid "" +"If you want to limit the meeting list to a particular format, for instance, " +"to create a language-specific meeting list, you can enter it here." +msgstr "" + +#: admin/partials/_bread_wizard.php:158 +msgid "If you want to try a different layout: " +msgstr "" + #: admin/partials/_meetings_setup.php:367 msgid "" "If you wish to define different contents for the additional list, use this " @@ -490,11 +582,30 @@ msgstr "" msgid "Import meeting list settings from a previously exported meeting list." msgstr "" -#: admin/partials/_bmlt_server_setup.php:92 +#: admin/partials/_bread_wizard.php:99 +msgid "" +"In this step we suggest suitible formats based on your meeting count. " +"Having the meetings fit on a single side has the advantage\n" +" that the list can be posted on a bulleitin board, and this will " +"be used when suggesting a page layout. However, you may\n" +" also wish to have the meetings 'overflow' on to the back side of " +"the paper. If so, select a layout above layout\n" +" that the wizard pre-selects for you." +msgstr "" + +#: admin/partials/_bread_wizard.php:133 +msgid "" +"In this step, we create the meeting list settings. If you already have a " +"meeting list defined\n" +" on this site, the old settings will not be overwriten, rather, " +"a new setting will be created." +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:95 msgid "Include Extra Meetings" msgstr "" -#: admin/partials/_bmlt_server_setup.php:86 +#: admin/partials/_bmlt_server_setup.php:89 msgid "Include Extra Meetings from Another Service Body." msgstr "" @@ -506,6 +617,10 @@ msgstr "" msgid "Include Only This Meeting Format" msgstr "" +#: admin/partials/_bread_wizard.php:120 +msgid "Include virtual meetings in main meeting list." +msgstr "" + #: admin/partials/_layout_setup.php:24 admin/partials/_layout_setup.php:31 #: admin/partials/_layout_setup.php:38 admin/partials/_layout_setup.php:64 msgid "Landscape" @@ -567,11 +682,11 @@ msgstr "" msgid "Meeting Group [Column] Header" msgstr "" -#: admin/partials/_bmlt_server_setup.php:121 +#: admin/partials/_bmlt_server_setup.php:124 msgid "Meeting List Author(s)" msgstr "" -#: admin/partials/_bmlt_server_setup.php:157 +#: admin/partials/_bmlt_server_setup.php:160 msgid "Meeting List Cache" msgstr "" @@ -579,6 +694,10 @@ msgstr "" msgid "Meeting List ID: " msgstr "" +#: admin/partials/_bread_wizard.php:24 +msgid "Meeting List Options" +msgstr "" + #: admin/partials/_layout_setup.php:15 msgid "Meeting List Size" msgstr "" @@ -587,10 +706,20 @@ msgstr "" msgid "Meeting Template" msgstr "" -#: admin/partials/bread-admin-display.php:128 +#: admin/partials/bread-admin-display.php:132 msgid "Meetings" msgstr "" +#: admin/partials/_bread_wizard.php:96 +msgid "" +"Most areas try to fit their meetings onto a single sheet of paper. And it " +"is particularly adventageous to\n" +" use a tri-fold format, so that the list can be printed at home " +"and placed along side the pamphlets. The priority should always be that the\n" +" meeting list is readable. For many areas, a booklet format is " +"better, even if the reqire more effort or expense to print." +msgstr "" + #: admin/partials/_meetings_setup.php:103 #: admin/partials/_meetings_setup.php:124 msgid "Neighborhood" @@ -604,6 +733,13 @@ msgstr "" msgid "Neighborhood+City" msgstr "" +#: admin/partials/_bread_wizard.php:72 +msgid "" +"Next, we need to know which meetings are going to be on the meeting list. " +"This will help the wizard when it\n" +" tries to choose an a appropriate layout for you." +msgstr "" + #: admin/partials/_meetings_setup.php:146 msgid "No header for subgroups" msgstr "" @@ -616,7 +752,7 @@ msgstr "" msgid "Not Used" msgstr "" -#: admin/partials/_bmlt_server_setup.php:89 +#: admin/partials/_bmlt_server_setup.php:92 msgid "Note: Be sure to select all meetings for each group." msgstr "" @@ -624,7 +760,15 @@ msgstr "" msgid "Note: Encrypted PDFs cannot be opened in MS Word at all." msgstr "" -#: admin/partials/_bmlt_server_setup.php:131 +#: admin/partials/_bread_wizard.php:104 +msgid "Number of meetings on list: " +msgstr "" + +#: admin/partials/_bread_wizard.php:161 +msgid "Open customizer" +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:134 msgid "Optimize/Debug mPDF" msgstr "" @@ -632,11 +776,15 @@ msgstr "" msgid "Optional Password to allow editing in a PDF editor." msgstr "" +#: admin/partials/_bread_wizard.php:124 +msgid "Organize the meetings by:" +msgstr "" + #: admin/partials/_layout_setup.php:17 msgid "Orientation" msgstr "" -#: admin/partials/_bmlt_server_setup.php:140 +#: admin/partials/_bmlt_server_setup.php:143 msgid "Pack Table Data" msgstr "" @@ -649,7 +797,7 @@ msgid "Page Height" msgstr "" #: admin/partials/_layout_setup.php:16 admin/partials/_layout_setup.php:54 -#: admin/partials/bread-admin-display.php:126 +#: admin/partials/bread-admin-display.php:130 msgid "Page Layout" msgstr "" @@ -681,6 +829,10 @@ msgstr "" msgid "Password: " msgstr "" +#: admin/partials/_bread_wizard.php:118 +msgid "Place virtual meetings in a separate list, with specialized format." +msgstr "" + #: admin/partials/_backup_restore_setup.php:82 msgid "Please Choose a File." msgstr "" @@ -701,7 +853,7 @@ msgstr "" msgid "Portrait, Landscape" msgstr "" -#: admin/partials/bread-admin-display.php:154 +#: admin/partials/bread-admin-display.php:158 msgid "Preview" msgstr "" @@ -731,11 +883,11 @@ msgstr "" msgid "Same as main list" msgstr "" -#: admin/partials/bread-admin-display.php:153 +#: admin/partials/bread-admin-display.php:157 msgid "Save Changes" msgstr "" -#: admin/partials/bread-admin-display.php:156 +#: admin/partials/bread-admin-display.php:160 msgid "Save Changes before Generating Meeting List." msgstr "" @@ -751,6 +903,14 @@ msgstr "" msgid "Select language for the additional list" msgstr "" +#: admin/partials/_bread_wizard.php:105 +msgid "Select one of the layouts appropriate to the number of meetings" +msgstr "" + +#: admin/partials/_bread_wizard.php:12 +msgid "Select Service Bodies" +msgstr "" + #: admin/partials/_meetings_setup.php:327 msgid "Select sort order for the additional list" msgstr "" @@ -759,7 +919,8 @@ msgstr "" msgid "Separator: " msgstr "" -#: admin/partials/bread-admin-display.php:46 +#. Bread can query up to five servers, the string is the number 1-5 +#: admin/partials/bread-admin-display.php:49 #, php-format msgid "Service Body %s" msgstr "" @@ -772,6 +933,10 @@ msgstr "" msgid "Smaller Areas" msgstr "" +#: admin/partials/_meeting_list_setup.php:15 +msgid "Start Here: Meeting List Setup Wizard" +msgstr "" + #: admin/partials/_meetings_setup.php:236 msgid "Start Time Format" msgstr "" @@ -785,6 +950,22 @@ msgstr "" msgid "State+City" msgstr "" +#: admin/partials/_bread_wizard.php:40 +msgid "Step 1: Enter your BMLT root server" +msgstr "" + +#: admin/partials/_bread_wizard.php:70 +msgid "Step 2: Select a service body" +msgstr "" + +#: admin/partials/_bread_wizard.php:94 +msgid "Step 3: Page Layout" +msgstr "" + +#: admin/partials/_bread_wizard.php:110 +msgid "Step 4: Select Option" +msgstr "" + #: admin/partials/_meetings_setup.php:119 msgid "Sub-Grouping: " msgstr "" @@ -793,11 +974,31 @@ msgstr "" msgid "Suppress Heading: " msgstr "" +#: admin/partials/_bread_wizard.php:53 +msgid "Test Server Connection" +msgstr "" + +#: admin/partials/_bread_wizard.php:55 +msgid "Test that this is valid root server URL before continuing" +msgstr "" + #: admin/partials/_layout_setup.php:112 admin/partials/_meetings_setup.php:24 msgid "Text Color:" msgstr "" -#: admin/partials/_bmlt_server_setup.php:88 +#: admin/partials/_bread_wizard.php:46 +msgid "" +"The first thing we need is the location of your BMLT root server. Once you " +"have entered it, you need check that the URL is correct\n" +" by clicking the 'Test Connection' button." +msgstr "" + +#: admin/partials/_bread_wizard.php:153 +msgid "" +"The first thing you probably want to do is have a look at the meeting list:" +msgstr "" + +#: admin/partials/_bmlt_server_setup.php:91 msgid "The Meetings you select will be merged into your meeting list." msgstr "" @@ -826,7 +1027,7 @@ msgid "" "footers, page numbers." msgstr "" -#: admin/partials/_bmlt_server_setup.php:161 +#: admin/partials/_bmlt_server_setup.php:164 msgid "This site is using an external object cache." msgstr "" @@ -836,10 +1037,23 @@ msgid "" "override any setting in the Service Body dropdowns." msgstr "" +#: admin/partials/_bread_wizard.php:42 +msgid "" +"This wizard guides you through the initial configuation of a meeting list. " +"If you have already created one or more meeting lists,\n" +" don't worry, this process alway creates a new configuration, and " +"never overwrites old ones." +msgstr "" + #: admin/partials/_layout_setup.php:152 msgid "Times" msgstr "" +#: admin/partials/_bread_wizard.php:156 +msgid "" +"To add a link to the meeting list on your website, use the following link." +msgstr "" + #: admin/partials/_layout_setup.php:23 admin/partials/_layout_setup.php:60 msgid "Tri-Fold" msgstr "" @@ -868,10 +1082,20 @@ msgstr "" msgid "Using Tomato Server" msgstr "" +#: admin/partials/_bread_wizard.php:65 +msgid "Verify that this is valid root server URL before continuing" +msgstr "" + #: admin/partials/_meetings_setup.php:312 msgid "Virtual Meetings" msgstr "" +#: admin/partials/_bread_wizard.php:49 +msgid "" +"Visit Do I have " +"the BMLT? to find your BMLT server" +msgstr "" + #: admin/partials/_layout_setup.php:116 msgid "Watermark: " msgstr "" @@ -915,23 +1139,42 @@ msgid "" "page height." msgstr "" -#: admin/partials/_bmlt_server_setup.php:73 +#: admin/partials/_bread_wizard.php:115 +msgid "Where should virtual meetings be included:" +msgstr "" + +#. the string is a link to the semantic interface of the BMLT server +#: admin/partials/_bmlt_server_setup.php:76 #, php-format msgid "" "You can get help formulating a query using your sites " "semantic interface." msgstr "" -#: admin/partials/bread-admin-display.php:93 +#: admin/partials/bread-admin-display.php:96 msgid "You do not have permission to save this configuation!" msgstr "" -#: admin/partials/bread-admin-display.php:39 +#: admin/partials/_bread_wizard.php:143 +msgid "" +"You may also want to adjust the font sizes on your meeting list so that it " +"fits on a single sheet or is more readable. This is only\n" +" of the many options available in the 'Customizer'." +msgstr "" + +#: admin/partials/_bread_wizard.php:160 +msgid "" +"You probably want to add some content to the first page or the custom " +"content:" +msgstr "" + +#. string is the version number of the BMLT Server +#: admin/partials/bread-admin-display.php:40 #, php-format msgid "Your BMLT Server is running %s" msgstr "" -#: admin/partials/bread-admin-display.php:99 +#: admin/partials/bread-admin-display.php:102 msgid "Your changes were successfully saved!" msgstr "" From 1718c300bf03ad102d99087d3a6dc165a2549fac Mon Sep 17 00:00:00 2001 From: otrok7 <50595291+otrok7@users.noreply.github.com> Date: Sun, 31 Aug 2025 12:35:15 +0200 Subject: [PATCH 06/15] Small fixes --- admin/partials/_bmlt_server_setup.php | 1 - admin/partials/bread-admin-display.php | 5 +++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/admin/partials/_bmlt_server_setup.php b/admin/partials/_bmlt_server_setup.php index f75d035..13f78e1 100644 --- a/admin/partials/_bmlt_server_setup.php +++ b/admin/partials/_bmlt_server_setup.php @@ -70,7 +70,6 @@

          - /* translators: draft saved date format, see http://php.net/date */
          semantic interface.', 'bread'), esc_url($this->bread->getOption('root_server'))).'/semantic') ?> diff --git a/admin/partials/bread-admin-display.php b/admin/partials/bread-admin-display.php index be12bf9..bf58045 100644 --- a/admin/partials/bread-admin-display.php +++ b/admin/partials/bread-admin-display.php @@ -44,9 +44,9 @@ private function refresh_status() private function select_service_bodies() { for ($i = 1; $i <= 5; $i++) { ?> -

        • + esc_html_e(sprintf(__('Service Body %s', 'bread'), $i)) ?>: connected) { $this->select_service_body_options($i); From f37eba1a8e9a3510f6c92bbd78c95ab82b05d621 Mon Sep 17 00:00:00 2001 From: otrok7 <50595291+otrok7@users.noreply.github.com> Date: Thu, 4 Sep 2025 21:43:56 +0200 Subject: [PATCH 08/15] small fix --- admin/partials/bread-admin-display.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/admin/partials/bread-admin-display.php b/admin/partials/bread-admin-display.php index 3b6e510..548b098 100644 --- a/admin/partials/bread-admin-display.php +++ b/admin/partials/bread-admin-display.php @@ -46,7 +46,7 @@ private function select_service_bodies() for ($i = 1; $i <= 5; $i++) { ?>
        • + echo esc_html(sprintf(__('Service Body %d', 'bread'), $i)) ?>: + + + + " name="service_body_">connected) { $this->select_service_body_options($i); } else { ?> From f923b5c2d91c1b2162e2d7558ec9cce53b8d04c9 Mon Sep 17 00:00:00 2001 From: otrok7 <50595291+otrok7@users.noreply.github.com> Date: Mon, 13 Oct 2025 11:25:56 +0200 Subject: [PATCH 14/15] Fixes to Permissions --- admin/class-bread-admin.php | 32 ++++++++++++++++++++------------ bmlt-meeting-list.php | 2 +- readme.txt | 5 ++++- 3 files changed, 25 insertions(+), 14 deletions(-) diff --git a/admin/class-bread-admin.php b/admin/class-bread-admin.php index 68b7bfb..33dc102 100644 --- a/admin/class-bread-admin.php +++ b/admin/class-bread-admin.php @@ -248,9 +248,6 @@ function pwsix_process_settings_export() if (!isset($_POST['pwsix_export_nonce']) || ! wp_verify_nonce($_POST['pwsix_export_nonce'], 'pwsix_export_nonce')) { return; } - if (! current_user_can('manage_bread')) { // TODO: Is this necessary? Why not let the user make a copy - return; - } $this->download_settings_inner(); } function download_settings() @@ -317,13 +314,13 @@ function exportLogFile($file) } function current_user_can_modify() { - if (! current_user_can('manage_bread')) { - return false; - } $user = wp_get_current_user(); if (in_array('administrator', $user->roles)) { return true; } + if (! current_user_can('manage_bread')) { + return false; + } $authors_safe = $this->bread->getOption('authors'); if (!is_array($authors_safe) || empty($authors_safe)) { return true; @@ -335,10 +332,17 @@ function current_user_can_modify() } function current_user_can_create() { - if (! current_user_can('manage_bread')) { - return false; + $user = wp_get_current_user(); + if (in_array('administrator', $user->roles)) { + return true; + } + if (current_user_can('manage_options')) { + return true; + } + if (current_user_can('manage_bread')) { + return true; } - return true; + return false; } /** * Process a settings import from a json file @@ -348,7 +352,7 @@ function pwsix_process_settings_import() if (empty($_REQUEST['pwsix_import_nonce']) || !wp_verify_nonce($_REQUEST['pwsix_import_nonce'], 'pwsix_import_nonce')) { return; } - if (! current_user_can('manage_bread')) { + if (! $this->current_user_can_modify()) { return; } $this->bread->getConfigurationForSettingId($this->bread->getRequestedSetting()); @@ -376,7 +380,7 @@ function pwsix_process_settings_import() update_option($this->bread->getOptionsName(), $this->bread->getOptions()); setcookie('current-meeting-list', $this->bread->getRequestedSetting(), time() + 10); setcookie('bread_import_file', $import_file, time() + 10); - wp_safe_redirect(admin_url('?page=class-bread-admin.php')); + wp_safe_redirect(admin_url('?page=bmlt-enabled-bread')); } function my_theme_add_editor_styles() { @@ -433,11 +437,15 @@ function admin_submenu_link($parent_slug) activate_bread(); $this->bmltEnabled_admin->createMenu(); + $cap = 'manage_options'; + if (!current_user_can($cap)) { + $cap = 'manage_bread'; + } $this->hook = add_submenu_page( $parent_slug, 'Printable Meeting Lists', 'Printable Meeting Lists', - 'manage_bread', + $cap, 'bmlt-enabled-bread', array(&$this, 'admin_options_page'), 2 diff --git a/bmlt-meeting-list.php b/bmlt-meeting-list.php index 006a439..93e6fa1 100644 --- a/bmlt-meeting-list.php +++ b/bmlt-meeting-list.php @@ -11,7 +11,7 @@ * Plugin Name: Bread * Plugin URI: https://bmlt.app * Description: Maintains and generates PDF Meeting Lists from BMLT. - * Version: 2.9.6 + * Version: 2.9.7 * Author: bmlt-enabled * Author URI: https://bmlt.app/ * License: GPL-2.0+ diff --git a/readme.txt b/readme.txt index f3386ad..70032b0 100644 --- a/readme.txt +++ b/readme.txt @@ -5,7 +5,7 @@ Tags: meeting list, bmlt, narcotics anonymous, na Requires PHP: 8.1 Requires at least: 6.2 Tested up to: 6.8 -Stable tag: 2.9.6 +Stable tag: 2.9.7 License: GPLv2 or later License URI: http://www.gnu.org/licenses/gpl-2.0.html @@ -55,6 +55,9 @@ Follow all these steps, keep in mind that once you start using bread, it's not g == Changelog == += 2.9.7 = +* Bug fixes to permission stuff. + = 2.9.6 = * Farsi Translation * Replaced deprecated "chosen" with "select2" From 1d279fe618199386ee1ac5acc82e57250cba57b5 Mon Sep 17 00:00:00 2001 From: otrok7 <50595291+otrok7@users.noreply.github.com> Date: Thu, 18 Dec 2025 08:56:22 +0100 Subject: [PATCH 15/15] Recognise virtual meetings also by venue_type --- bmlt-meeting-list.php | 2 +- includes/lang/translate_el.php | 9 +++++++++ includes/lang/translate_sk.php | 6 +++--- public/class-bread-meetingslist-structure.php | 6 ++++++ 4 files changed, 19 insertions(+), 4 deletions(-) create mode 100644 includes/lang/translate_el.php diff --git a/bmlt-meeting-list.php b/bmlt-meeting-list.php index 93e6fa1..9289737 100644 --- a/bmlt-meeting-list.php +++ b/bmlt-meeting-list.php @@ -30,7 +30,7 @@ * Start at version 2.8.0 and use SemVer - https://semver.org * Rename this for your plugin and update it as you release new versions. */ -define('BREAD_VERSION', '2.9.6'); +define('BREAD_VERSION', '2.9.7'); /** * The code that runs during plugin activation. diff --git a/includes/lang/translate_el.php b/includes/lang/translate_el.php new file mode 100644 index 0000000..8e5c2b5 --- /dev/null +++ b/includes/lang/translate_el.php @@ -0,0 +1,9 @@ + "Ελληνικά", + "LOCALE" => "el_GR", + "WEEKDAYS" => array( 'ERROR', 'Κυριακή', 'Δευτέρα', 'Τρίτη', 'Τετάρτη', 'Πέμπτη', 'Παρασκευή', 'Σάββατο'), + "WKDYS" => array( 'ERR', 'Κυρ', 'Δευ', 'Τρι', 'Τετ', 'Πεμ', 'Παρ', 'Σαβ' ), + "PAGE" => "σελίδα", + "CONT" => "Συνέχισε" +); diff --git a/includes/lang/translate_sk.php b/includes/lang/translate_sk.php index 9462396..3692853 100644 --- a/includes/lang/translate_sk.php +++ b/includes/lang/translate_sk.php @@ -1,9 +1,9 @@ "Czech", - "LOCALE" => "cz_CZ", + "LANG_NAME" => "Slovak", + "LOCALE" => "sk_SK", "WEEKDAYS" => array( 'ERROR', 'nedeľa', 'pondelok', 'utorok', 'streda', 'štvrtok', 'piatok', 'sobota' ), "WKDYS" => array( 'ERR', 'Ne', 'Po', 'Ut', 'St', 'Čt', 'Pá', 'So' ), "PAGE" => "Seite", - "CONT" => "Pokračoval" + "CONT" => "Pokračovanie" ); diff --git a/public/class-bread-meetingslist-structure.php b/public/class-bread-meetingslist-structure.php index 7d3758e..57d304e 100644 --- a/public/class-bread-meetingslist-structure.php +++ b/public/class-bread-meetingslist-structure.php @@ -416,6 +416,9 @@ private function additional_list_test(array $value, $flag = false): bool } private function isHybrid(array $value): bool { + if ($value['venue_type'] == 3) { + return true; + } if (empty($value['formats'])) { return false; } @@ -424,6 +427,9 @@ private function isHybrid(array $value): bool } private function isVirtual(array $value): bool { + if ($value['venue_type'] == 2) { + return true; + } if (empty($value['formats'])) { return false; }