var/cache/dev/twig/c5/c505dabff3391b1b798ce2ece1f8855f.php line 323

Open in your IDE?
  1. <?php
  2. use Twig\Environment;
  3. use Twig\Error\LoaderError;
  4. use Twig\Error\RuntimeError;
  5. use Twig\Extension\CoreExtension;
  6. use Twig\Extension\SandboxExtension;
  7. use Twig\Markup;
  8. use Twig\Sandbox\SecurityError;
  9. use Twig\Sandbox\SecurityNotAllowedTagError;
  10. use Twig\Sandbox\SecurityNotAllowedFilterError;
  11. use Twig\Sandbox\SecurityNotAllowedFunctionError;
  12. use Twig\Source;
  13. use Twig\Template;
  14. /* base.html.twig */
  15. class __TwigTemplate_850aca646d4da9f8df82966602162387 extends Template
  16. {
  17.     private $source;
  18.     private $macros = [];
  19.     public function __construct(Environment $env)
  20.     {
  21.         parent::__construct($env);
  22.         $this->source $this->getSourceContext();
  23.         $this->parent false;
  24.         $this->blocks = [
  25.             'title' => [$this'block_title'],
  26.             'stylesheets' => [$this'block_stylesheets'],
  27.             'javascripts' => [$this'block_javascripts'],
  28.             'addHead' => [$this'block_addHead'],
  29.             'body' => [$this'block_body'],
  30.             'addJs' => [$this'block_addJs'],
  31.         ];
  32.     }
  33.     protected function doDisplay(array $context, array $blocks = [])
  34.     {
  35.         $macros $this->macros;
  36.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  37.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template""base.html.twig"));
  38.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  39.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template""base.html.twig"));
  40.         // line 1
  41.         yield "<!DOCTYPE html>
  42. <html>
  43.     <head>
  44.         <meta charset=\"UTF-8\">
  45.         <title>";
  46.         // line 5
  47.         yield from $this->unwrap()->yieldBlock('title'$context$blocks);
  48.         yield "</title>
  49.         <link rel=\"icon\" href=\"data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 128 128%22><text y=%221.2em%22 font-size=%2296%22>⚫️</text></svg>\">
  50.         ";
  51.         // line 8
  52.         yield "        ";
  53.         yield from $this->unwrap()->yieldBlock('stylesheets'$context$blocks);
  54.         // line 11
  55.         yield "
  56.         ";
  57.         // line 12
  58.         yield from $this->unwrap()->yieldBlock('javascripts'$context$blocks);
  59.         // line 15
  60.         yield "
  61.         <link href=\"/js/vendor/fontawesome-free/css/all.min.css\" rel=\"stylesheet\" type=\"text/css\">
  62.         <link
  63.             href=\"https://fonts.googleapis.com/css?family=Nunito:200,200i,300,300i,400,400i,600,600i,700,700i,800,800i,900,900i\"
  64.             rel=\"stylesheet\">
  65.         <link href=\"/css/attributes.css\" rel=\"stylesheet\">
  66.         <link href=\"/css/styles.css\" rel=\"stylesheet\">
  67.         <link href=\"https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css\" rel=\"stylesheet\" integrity=\"sha384-T3c6CoIi6uLrA9TneNEoa7RxnatzjcDSCmG1MXxSR1GAsXEV/Dwwykc2MPK8M2HN\" crossorigin=\"anonymous\">
  68.         <link href=\"/js/vendor/toastify/toastify.min.css\" rel=\"stylesheet\">
  69.         <!-- Custom styles for this template-->
  70.         <link href=\"/css/sb-admin-2.css\" rel=\"stylesheet\">
  71.         ";
  72.         // line 28
  73.         yield "        <link href=\"/js/vendor/datatables/dataTables.bootstrap4.min.css\" rel=\"stylesheet\">
  74.         <script src=\"/js/vendor/jquery/jquery.min.js\"></script>
  75. ";
  76.         // line 31
  77.         yield "        <script src=\"/js/vendor/toastify/toastify-js.js\"></script>
  78.         <link href=\"/css/overrides.css\" rel=\"stylesheet\">
  79.         <script src=\"/js/library/Utils.js\"></script>
  80.         <script>
  81.             ";
  82.         // line 37
  83.         yield from         $this->loadTemplate("/js/library/StringUtils.js""base.html.twig"37)->unwrap()->yield($context);
  84.         // line 38
  85.         yield "        </script>
  86.         <script src=\"/js/library/event_dispatcher/event_dispatcher.js\"></script>
  87.         <script>
  88.             ";
  89.         // line 41
  90.         yield from         $this->loadTemplate("/js/library/gallery_carousel/gallery_carousel.js.twig""base.html.twig"41)->unwrap()->yield($context);
  91.         // line 42
  92.         yield "        </script>
  93.         <script>
  94.             ";
  95.         // line 44
  96.         yield from         $this->loadTemplate("/js/library/month_range_slider/month_range_slider.js.twig""base.html.twig"44)->unwrap()->yield($context);
  97.         // line 45
  98.         yield "        </script>
  99.         <script src=\"/js/library/url_builder/url_builder.js\"></script>
  100.         <script>
  101.             ";
  102.         // line 48
  103.         yield from         $this->loadTemplate("/js/library/dropdown/dropdown.js.twig""base.html.twig"48)->unwrap()->yield($context);
  104.         // line 49
  105.         yield "        </script>
  106.         <script>
  107.             ";
  108.         // line 51
  109.         yield from         $this->loadTemplate("/js/library/dropdown_with_textarea/dropdown_with_textarea.js.twig""base.html.twig"51)->unwrap()->yield($context);
  110.         // line 52
  111.         yield "        </script>
  112.         <script>
  113.             ";
  114.         // line 54
  115.         yield from         $this->loadTemplate("/js/library/dropdown_with_input_filter/dropdown_with_input_filter.js.twig""base.html.twig"54)->unwrap()->yield($context);
  116.         // line 55
  117.         yield "        </script>
  118.         <script>
  119.             ";
  120.         // line 57
  121.         yield from         $this->loadTemplate("/js/library/month_range_slider_dropdown/month_range_slider_dropdown.js.twig""base.html.twig"57)->unwrap()->yield($context);
  122.         // line 58
  123.         yield "        </script>
  124.         <script src=\"/js/library/dropdown/file_dropdown.js\"></script>
  125.         <script src=\"/js/library/Dom.js\"></script>
  126.         <script src=\"/js/vendor/moment.js\"></script>
  127.         <script src=\"/js/vendor/daterangepicker.js\"></script>
  128.         <script src=\"/js/vendor/datepicker.js\"></script>
  129.         <link href=\"/css/daterangepicker.css\" rel=\"stylesheet\">
  130.         <script>
  131.             ";
  132.         // line 67
  133.         yield from         $this->loadTemplate("/js/library/daterangepicker-custom/daterangepicker-custom.js.twig""base.html.twig"67)->unwrap()->yield($context);
  134.         // line 68
  135.         yield "        </script>
  136.         <script>
  137.             ";
  138.         // line 70
  139.         yield from         $this->loadTemplate("/js/library/date_range_picker_with_button/date_range_picker_with_button.js.twig""base.html.twig"70)->unwrap()->yield($context);
  140.         // line 71
  141.         yield "        </script>
  142.         <script>
  143.             ";
  144.         // line 74
  145.         yield from         $this->loadTemplate("/js/library/DomDispatcher/DomDispatcher.js.twig""base.html.twig"74)->unwrap()->yield($context);
  146.         // line 75
  147.         yield "        </script>
  148.         <script>
  149.             ";
  150.         // line 78
  151.         yield from         $this->loadTemplate("/js/library/init_bearer/init_bearer.js.twig""base.html.twig"78)->unwrap()->yield($context);
  152.         // line 79
  153.         yield "            const initBearer = new InitBearer();
  154.             const INIT_BEARERS = {
  155.                 GLOBAL_DOM_DISPATCHER: \"initBearer.globalDomDispatcher\",
  156.                 GLOBAL_USER_SETTINGS_MODIFIER: \"initBearer.globalUserSettingsModifier\",
  157.                 GLOBAL_USER_SETTINGS_FORM_SAVER: \"initBearer.globalUserSettingsFormSaver\",
  158.                 GLOBAL_CALENDAR_EVENTS_SELECTOR_COMPONENT: \"initBearer.globalCalendarEventsSelectorComponent\",
  159.             };
  160.         </script>
  161.         <script>
  162.             ";
  163.         // line 89
  164.         yield from         $this->loadTemplate("/js/library/entity_collection/entity_collection.js.twig""base.html.twig"89)->unwrap()->yield($context);
  165.         // line 90
  166.         yield "        </script>
  167.         <script src=\"/js/vendor/jquery-easing/jquery.easing.min.js\"></script>
  168.         ";
  169.         // line 94
  170.         yield "
  171.         ";
  172.         // line 96
  173.         yield "        <script src=\"/js/vendor/bootstrap/js/4.6.0/bootstrap.bundle.min.js\"></script>
  174.         <script src=\"/js/vendor/datatables/jquery.dataTables.min.js\"></script>
  175.         <script src=\"/js/vendor/datatables/dataTables.bootstrap4.min.js\"></script>
  176.         <script src=\"/js/library/data_table/data_table_extensions.js\"></script>
  177.         <script>
  178.             ";
  179.         // line 102
  180.         yield from         $this->loadTemplate("/js/library/data_table/custom_data_table.js""base.html.twig"102)->unwrap()->yield($context);
  181.         // line 103
  182.         yield "        </script>
  183.         <script>
  184.             ";
  185.         // line 106
  186.         yield from         $this->loadTemplate("/js/library/symfony_form_data_builder/symfony_form_data_builder.js.twig""base.html.twig"106)->unwrap()->yield($context);
  187.         // line 107
  188.         yield "        </script>
  189.         <script>
  190.             ";
  191.         // line 110
  192.         yield from         $this->loadTemplate("/js/library/json_object_to_components_data_binder/json_object_to_components_data_binder.js.twig""base.html.twig"110)->unwrap()->yield($context);
  193.         // line 111
  194.         yield "        </script>
  195.         <script>
  196.             ";
  197.         // line 114
  198.         yield from         $this->loadTemplate("/js/library/json_form_saver/json_form_saver.js.twig""base.html.twig"114)->unwrap()->yield($context);
  199.         // line 115
  200.         yield "        </script>
  201.         <style>
  202.             .svg-ship {
  203.                 max-width: 70px;
  204.                 fill: white;
  205.                 /* transform: scaleX(-1); */
  206.                 height: 50px;
  207.             }
  208.         </style>
  209.         ";
  210.         // line 126
  211.         yield from $this->unwrap()->yieldBlock('addHead'$context$blocks);
  212.         // line 127
  213.         yield "    </head>
  214.     ";
  215.         // line 129
  216.         $context["bodyClass"] = ((        $this->unwrap()->hasBlock("bodyClass"$context$blocks)) ? (        $this->unwrap()->renderBlock("bodyClass"$context$blocks)) : (null));
  217.         // line 130
  218.         yield "    ";
  219.         $context["bodyAttrs"] = ((        $this->unwrap()->hasBlock("bodyAttrs"$context$blocks)) ? (        $this->unwrap()->renderBlock("bodyAttrs"$context$blocks)) : (null));
  220.         // line 131
  221.         yield "
  222.     <body";
  223.         // line 132
  224.         yield (((isset($context["bodyClass"]) || array_key_exists("bodyClass"$context) ? $context["bodyClass"] : (function () { throw new RuntimeError('Variable "bodyClass" does not exist.'132$this->source); })())) ? (((" class=\"" . (isset($context["bodyClass"]) || array_key_exists("bodyClass"$context) ? $context["bodyClass"] : (function () { throw new RuntimeError('Variable "bodyClass" does not exist.'132$this->source); })())) . "\"")) : (""));
  225.         yield (((isset($context["bodyAttrs"]) || array_key_exists("bodyAttrs"$context) ? $context["bodyAttrs"] : (function () { throw new RuntimeError('Variable "bodyAttrs" does not exist.'132$this->source); })())) ? ((" " . (isset($context["bodyAttrs"]) || array_key_exists("bodyAttrs"$context) ? $context["bodyAttrs"] : (function () { throw new RuntimeError('Variable "bodyAttrs" does not exist.'132$this->source); })()))) : (""));
  226.         yield ">
  227.         <!-- Logout Modal-->
  228.         <div class=\"modal fade\" id=\"logoutModal\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"exampleModalLabel\"
  229.             aria-hidden=\"true\">
  230.             <div class=\"modal-dialog\" role=\"document\">
  231.                 <div class=\"modal-content\">
  232.                     <div class=\"modal-header\">
  233.                         <h5 class=\"modal-title\" id=\"exampleModalLabel\">Выйти сейчас?</h5>
  234.                         <button class=\"close\" type=\"button\" data-dismiss=\"modal\" aria-label=\"Close\">
  235.                             <span aria-hidden=\"true\">×</span>
  236.                         </button>
  237.                     </div>
  238.                     <div class=\"modal-body\">Вы выйдете автоматически через 3 часа.</div>
  239.                     <div class=\"modal-footer\">
  240.                         <button class=\"btn btn-secondary\" type=\"button\" data-dismiss=\"modal\">Отмена</button>
  241.                         <a class=\"btn btn-primary\" href=\"";
  242.         // line 147
  243.         yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("logout");
  244.         yield "\">Выйти</a>
  245.                     </div>
  246.                 </div>
  247.             </div>
  248.         </div>
  249.         <!-- Window Modal-->
  250.         <div class=\"modal fade\" id=\"windowModal\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"windowModalLabel\"
  251.             aria-hidden=\"true\">
  252.             <div class=\"modal-dialog\" role=\"document\"
  253.                  style=\"max-width: 700px !important;\"
  254.             >
  255.                 <div class=\"modal-content\">
  256.                     <div class=\"modal-header\">
  257.                         <h5 class=\"modal-title\" id=\"windowModalLabel\">Question?</h5>
  258.                         <button class=\"close\" type=\"button\" data-dismiss=\"modal\" aria-label=\"Close\">
  259.                             <span aria-hidden=\"true\">×</span>
  260.                         </button>
  261.                     </div>
  262.                     <div class=\"modal-body\">Modal body</div>
  263.                     <div class=\"modal-footer\">
  264.                         <button class=\"btn btn-primary\">Yes</button>
  265.                         <button class=\"btn btn-secondary\" type=\"button\" data-dismiss=\"modal\">No</button>
  266.                     </div>
  267.                 </div>
  268.             </div>
  269.         </div>
  270.         ";
  271.         // line 175
  272.         if ($this->extensions['App\Twig\AppExtension']->getUser()) {
  273.             // line 176
  274.             yield "            ";
  275.             $context["reviewerSettings"] = CoreExtension::getAttribute($this->env$this->source, (isset($context["reviewerSettingsService"]) || array_key_exists("reviewerSettingsService"$context) ? $context["reviewerSettingsService"] : (function () { throw new RuntimeError('Variable "reviewerSettingsService" does not exist.'176$this->source); })()), "getCurrentReviewerSettings", [], "method"falsefalsefalse176);
  276.             // line 177
  277.             yield "            ";
  278.             $context["reviewerSettingsForm"] = CoreExtension::getAttribute($this->env$this->sourceCoreExtension::getAttribute($this->env$this->source, (isset($context["reviewerSettingsService"]) || array_key_exists("reviewerSettingsService"$context) ? $context["reviewerSettingsService"] : (function () { throw new RuntimeError('Variable "reviewerSettingsService" does not exist.'177$this->source); })()), "getCurrentReviewerSettingsForm", [], "method"falsefalsefalse177), "createView", [], "method"falsefalsefalse177);
  279.             // line 178
  280.             yield "            ";
  281.             $context["reviewerSettingsJsonStr"] = CoreExtension::getAttribute($this->env$this->source, (isset($context["reviewerSettingsService"]) || array_key_exists("reviewerSettingsService"$context) ? $context["reviewerSettingsService"] : (function () { throw new RuntimeError('Variable "reviewerSettingsService" does not exist.'178$this->source); })()), "getCurrentReviewerSettingsJsonStr", [], "method"falsefalsefalse178);
  282.             // line 179
  283.             yield "
  284.             ";
  285.             // line 180
  286.             $context["reviewerTipSettings"] = CoreExtension::getAttribute($this->env$this->source, (isset($context["tipSettingsService"]) || array_key_exists("tipSettingsService"$context) ? $context["tipSettingsService"] : (function () { throw new RuntimeError('Variable "tipSettingsService" does not exist.'180$this->source); })()), "getCurrentReviewerTipSettings", [], "method"falsefalsefalse180);
  287.             // line 181
  288.             yield "            ";
  289.             $context["reviewerTipSettingsForm"] = CoreExtension::getAttribute($this->env$this->sourceCoreExtension::getAttribute($this->env$this->source, (isset($context["tipSettingsService"]) || array_key_exists("tipSettingsService"$context) ? $context["tipSettingsService"] : (function () { throw new RuntimeError('Variable "tipSettingsService" does not exist.'181$this->source); })()), "getCurrentReviewerSettingsForm", [], "method"falsefalsefalse181), "createView", [], "method"falsefalsefalse181);
  290.             // line 182
  291.             yield "            ";
  292.             $context["reviewerTipSettingsJsonStr"] = CoreExtension::getAttribute($this->env$this->source, (isset($context["tipSettingsService"]) || array_key_exists("tipSettingsService"$context) ? $context["tipSettingsService"] : (function () { throw new RuntimeError('Variable "tipSettingsService" does not exist.'182$this->source); })()), "getCurrentReviewerTipSettingsStr", [], "method"falsefalsefalse182);
  293.             // line 183
  294.             yield "
  295.             ";
  296.             // line 184
  297.             $context["userTipSettings"] = CoreExtension::getAttribute($this->env$this->source, (isset($context["tipSettingsService"]) || array_key_exists("tipSettingsService"$context) ? $context["tipSettingsService"] : (function () { throw new RuntimeError('Variable "tipSettingsService" does not exist.'184$this->source); })()), "getCurrentUserTipSettings", [], "method"falsefalsefalse184);
  298.             // line 185
  299.             yield "            ";
  300.             $context["userTipSettingsForm"] = CoreExtension::getAttribute($this->env$this->sourceCoreExtension::getAttribute($this->env$this->source, (isset($context["tipSettingsService"]) || array_key_exists("tipSettingsService"$context) ? $context["tipSettingsService"] : (function () { throw new RuntimeError('Variable "tipSettingsService" does not exist.'185$this->source); })()), "getCurrentUserTipSettingsForm", [], "method"falsefalsefalse185), "createView", [], "method"falsefalsefalse185);
  301.             // line 186
  302.             yield "            ";
  303.             $context["userTipSettingsJsonStr"] = CoreExtension::getAttribute($this->env$this->source, (isset($context["tipSettingsService"]) || array_key_exists("tipSettingsService"$context) ? $context["tipSettingsService"] : (function () { throw new RuntimeError('Variable "tipSettingsService" does not exist.'186$this->source); })()), "getCurrentUserTipSettingsStr", [], "method"falsefalsefalse186);
  304.             // line 187
  305.             yield "
  306.             ";
  307.             // line 188
  308.             $context["userSettings"] = CoreExtension::getAttribute($this->env$this->source, (isset($context["userSettingsService"]) || array_key_exists("userSettingsService"$context) ? $context["userSettingsService"] : (function () { throw new RuntimeError('Variable "userSettingsService" does not exist.'188$this->source); })()), "getCurrentUserSettings", [], "method"falsefalsefalse188);
  309.             // line 189
  310.             yield "            ";
  311.             $context["userSettingsForm"] = CoreExtension::getAttribute($this->env$this->sourceCoreExtension::getAttribute($this->env$this->source, (isset($context["userSettingsService"]) || array_key_exists("userSettingsService"$context) ? $context["userSettingsService"] : (function () { throw new RuntimeError('Variable "userSettingsService" does not exist.'189$this->source); })()), "getCurrentUserSettingsForm", [], "method"falsefalsefalse189), "createView", [], "method"falsefalsefalse189);
  312.             // line 190
  313.             yield "            ";
  314.             $context["userSettingsJsonStr"] = CoreExtension::getAttribute($this->env$this->source, (isset($context["userSettingsService"]) || array_key_exists("userSettingsService"$context) ? $context["userSettingsService"] : (function () { throw new RuntimeError('Variable "userSettingsService" does not exist.'190$this->source); })()), "getCurrentUserSettingsJsonStr", ["user_settings_edit_ajax"], "method"falsefalsefalse190);
  315.             // line 191
  316.             yield "        ";
  317.         }
  318.         // line 192
  319.         yield "
  320.         ";
  321.         // line 193
  322.         yield from $this->unwrap()->yieldBlock('body'$context$blocks);
  323.         // line 194
  324.         yield "
  325.         <script>
  326.             function startLogoutOnSessionExpire() {
  327.                 let pageLoadedAt = Date.now();
  328.                 setInterval(() => {
  329.                     if (Date.now() - pageLoadedAt > 30 * 60 * 1000) {
  330.                         location.href = \"";
  331.         // line 200
  332.         yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("logout");
  333.         yield "\";
  334.                     }
  335.                 }, 5000);
  336.             }
  337.             startLogoutOnSessionExpire();
  338.         </script>
  339.         ";
  340.         // line 207
  341.         if ((array_key_exists("userSettings"$context) && CoreExtension::getAttribute($this->env$this->source, (isset($context["userSettings"]) || array_key_exists("userSettings"$context) ? $context["userSettings"] : (function () { throw new RuntimeError('Variable "userSettings" does not exist.'207$this->source); })()), "id", [], "any"falsefalsefalse207))) {
  342.             // line 208
  343.             yield "            <script>
  344.                 /** @type {JsonObjectToComponentsDataBinder|null} */
  345.                 let userSettingsModifier = null;
  346.                 let userSettings = null;
  347.                 /** @type {JsonFormSaver|null} */
  348.                 let userSettingsFormSaver = null;
  349.                 initBearer.wait([INIT_BEARERS.GLOBAL_DOM_DISPATCHER]).then(() => {
  350.                     /** @type {DomDispatcher} */
  351.                     const domDispatcher = initBearer.get(INIT_BEARERS.GLOBAL_DOM_DISPATCHER);
  352.                     userSettings = ";
  353.             // line 219
  354.             yield (isset($context["userSettingsJsonStr"]) || array_key_exists("userSettingsJsonStr"$context) ? $context["userSettingsJsonStr"] : (function () { throw new RuntimeError('Variable "userSettingsJsonStr" does not exist.'219$this->source); })());
  355.             yield ";
  356.                     console.log(userSettings)
  357.                     let userSettingsFormDataBuilder = new SymfonyFormDataBuilder(\"user_settings\");
  358.                     userSettingsModifier = new JsonObjectToComponentsDataBinder(userSettings, {
  359.                         domDispatcherListenGroups: [\"userSettingsModifier\"],
  360.                         domDispatcher: domDispatcher
  361.                     });
  362.                     initBearer.set(INIT_BEARERS.GLOBAL_USER_SETTINGS_MODIFIER, userSettingsModifier);
  363.                     let userSettingsSaverOptions = {
  364.                         saveOnChanges: true,
  365.                         jsonObject: userSettings,
  366.                         componentsDataBinder: userSettingsModifier,
  367.                         symfonyFormDataBuilder: userSettingsFormDataBuilder,
  368.                         url: \"";
  369.             // line 235
  370.             yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("user_settings_edit_ajax", ["id" => CoreExtension::getAttribute($this->env$this->source, (isset($context["userSettings"]) || array_key_exists("userSettings"$context) ? $context["userSettings"] : (function () { throw new RuntimeError('Variable "userSettings" does not exist.'235$this->source); })()), "id", [], "any"falsefalsefalse235)]), "html"nulltrue);
  371.             yield "\",
  372.                         csrfToken: ";
  373.             // line 236
  374.             yield json_encode(CoreExtension::getAttribute($this->env$this->sourceCoreExtension::getAttribute($this->env$this->sourceCoreExtension::getAttribute($this->env$this->source, (isset($context["userSettingsForm"]) || array_key_exists("userSettingsForm"$context) ? $context["userSettingsForm"] : (function () { throw new RuntimeError('Variable "userSettingsForm" does not exist.'236$this->source); })()), "_token", [], "any"falsefalsefalse236), "vars", [], "any"falsefalsefalse236), "value", [], "any"falsefalsefalse236));
  375.             yield ",
  376.                     };
  377.                     userSettingsFormSaver = new JsonFormSaver(userSettingsSaverOptions);
  378.                     userSettingsFormSaver.init();
  379.                     userSettingsFormSaver.eventDispatcher.on(userSettingsFormSaver.EVENTS.ON_SAVE_ERROR, () => {
  380.                         showToast(\"Ошибка при обновлении настроек.<br>Попробуйте обновить\"
  381.                             + \" страницу и совершить действие повторно.\", TOAST_TYPE.ERROR);
  382.                     });
  383.                     initBearer.set(INIT_BEARERS.GLOBAL_USER_SETTINGS_FORM_SAVER, userSettingsModifier);
  384.                 });
  385.             </script>
  386.         ";
  387.         }
  388.         // line 249
  389.         yield "
  390. ";
  391.         // line 251
  392.         yield "        ";
  393.         if ((array_key_exists("reviewerTipSettings"$context) && CoreExtension::getAttribute($this->env$this->source, (isset($context["reviewerTipSettings"]) || array_key_exists("reviewerTipSettings"$context) ? $context["reviewerTipSettings"] : (function () { throw new RuntimeError('Variable "reviewerTipSettings" does not exist.'251$this->source); })()), "id", [], "any"falsefalsefalse251))) {
  394.             // line 252
  395.             yield "            <script>
  396.                 let reviewerTipSettings = null;
  397.                 initBearer.wait([INIT_BEARERS.GLOBAL_DOM_DISPATCHER]).then(() => {
  398.                     const domDispatcher = initBearer.get(INIT_BEARERS.GLOBAL_DOM_DISPATCHER);
  399.                     reviewerTipSettings = ";
  400.             // line 257
  401.             yield (isset($context["reviewerTipSettingsJsonStr"]) || array_key_exists("reviewerTipSettingsJsonStr"$context) ? $context["reviewerTipSettingsJsonStr"] : (function () { throw new RuntimeError('Variable "reviewerTipSettingsJsonStr" does not exist.'257$this->source); })());
  402.             yield ";
  403.                     let reviewerTipSettingsFormDataBuilder = new SymfonyFormDataBuilder(\"tip_settings\");
  404.                     let reviewerTipSettingsModifier = new JsonObjectToComponentsDataBinder(reviewerTipSettings, {
  405.                         domDispatcherListenGroups: [\"reviewerTipSettingsModifier\"],
  406.                         domDispatcher: domDispatcher
  407.                     });
  408.                     reviewerTipSettingsModifier.setComponentBindOptions(\"showReviewerRecommendationsTip\",
  409.                         {invert: true});
  410.                     let reviewerTipSettingsSaverOptions = {
  411.                         saveOnChanges: true,
  412.                         jsonObject: reviewerTipSettings,
  413.                         componentsDataBinder: reviewerTipSettingsModifier,
  414.                         symfonyFormDataBuilder: reviewerTipSettingsFormDataBuilder,
  415.                         url: \"";
  416.             // line 272
  417.             yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("moderator_tip_settings_edit", ["id" => CoreExtension::getAttribute($this->env$this->source, (isset($context["reviewerTipSettings"]) || array_key_exists("reviewerTipSettings"$context) ? $context["reviewerTipSettings"] : (function () { throw new RuntimeError('Variable "reviewerTipSettings" does not exist.'272$this->source); })()), "id", [], "any"falsefalsefalse272)]), "html"nulltrue);
  418.             yield "\",
  419.                         csrfToken: ";
  420.             // line 273
  421.             yield json_encode(CoreExtension::getAttribute($this->env$this->sourceCoreExtension::getAttribute($this->env$this->sourceCoreExtension::getAttribute($this->env$this->source, (isset($context["reviewerTipSettingsForm"]) || array_key_exists("reviewerTipSettingsForm"$context) ? $context["reviewerTipSettingsForm"] : (function () { throw new RuntimeError('Variable "reviewerTipSettingsForm" does not exist.'273$this->source); })()), "_token", [], "any"falsefalsefalse273), "vars", [], "any"falsefalsefalse273), "value", [], "any"falsefalsefalse273));
  422.             yield ",
  423.                     };
  424.                     let reviewerTipSettingsFormSaver = new JsonFormSaver(reviewerTipSettingsSaverOptions);
  425.                     reviewerTipSettingsFormSaver.init();
  426.                 });
  427.             </script>
  428.         ";
  429.         }
  430.         // line 280
  431.         yield "
  432. ";
  433.         // line 282
  434.         yield "        ";
  435.         if ((array_key_exists("userTipSettings"$context) && CoreExtension::getAttribute($this->env$this->source, (isset($context["userTipSettings"]) || array_key_exists("userTipSettings"$context) ? $context["userTipSettings"] : (function () { throw new RuntimeError('Variable "userTipSettings" does not exist.'282$this->source); })()), "id", [], "any"falsefalsefalse282))) {
  436.             // line 283
  437.             yield "            <script>
  438.                 let userTipSettings = null;
  439.                 initBearer.wait([INIT_BEARERS.GLOBAL_DOM_DISPATCHER]).then(() => {
  440.                     const domDispatcher = initBearer.get(INIT_BEARERS.GLOBAL_DOM_DISPATCHER);
  441.                     userTipSettings = ";
  442.             // line 288
  443.             yield (isset($context["userTipSettingsJsonStr"]) || array_key_exists("userTipSettingsJsonStr"$context) ? $context["userTipSettingsJsonStr"] : (function () { throw new RuntimeError('Variable "userTipSettingsJsonStr" does not exist.'288$this->source); })());
  444.             yield ";
  445.                     let userTipSettingsFormDataBuilder = new SymfonyFormDataBuilder(\"tip_settings\");
  446.                     let userTipSettingsModifier = new JsonObjectToComponentsDataBinder(userTipSettings, {
  447.                         domDispatcherListenGroups: [\"userTipSettingsModifier\"],
  448.                         domDispatcher: domDispatcher
  449.                     });
  450.                     userTipSettingsModifier.setComponentBindOptions(\"showCalendarEventsPeriodTip\",
  451.                         {invert: true});
  452.                     let userTipSettingsSaverOptions = {
  453.                         saveOnChanges: true,
  454.                         jsonObject: userTipSettings,
  455.                         componentsDataBinder: userTipSettingsModifier,
  456.                         symfonyFormDataBuilder: userTipSettingsFormDataBuilder,
  457.                         url: \"";
  458.             // line 303
  459.             yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("moderator_tip_settings_edit", ["id" => CoreExtension::getAttribute($this->env$this->source, (isset($context["userTipSettings"]) || array_key_exists("userTipSettings"$context) ? $context["userTipSettings"] : (function () { throw new RuntimeError('Variable "userTipSettings" does not exist.'303$this->source); })()), "id", [], "any"falsefalsefalse303)]), "html"nulltrue);
  460.             yield "\",
  461.                         csrfToken: ";
  462.             // line 304
  463.             yield json_encode(CoreExtension::getAttribute($this->env$this->sourceCoreExtension::getAttribute($this->env$this->sourceCoreExtension::getAttribute($this->env$this->source, (isset($context["userTipSettingsForm"]) || array_key_exists("userTipSettingsForm"$context) ? $context["userTipSettingsForm"] : (function () { throw new RuntimeError('Variable "userTipSettingsForm" does not exist.'304$this->source); })()), "_token", [], "any"falsefalsefalse304), "vars", [], "any"falsefalsefalse304), "value", [], "any"falsefalsefalse304));
  464.             yield ",
  465.                     };
  466.                     let userTipSettingsFormSaver = new JsonFormSaver(userTipSettingsSaverOptions);
  467.                     userTipSettingsFormSaver.init();
  468.                 });
  469.             </script>
  470.         ";
  471.         }
  472.         // line 311
  473.         yield "
  474.         <script>
  475.             const API_COMPARE_DATA_URL = \"";
  476.         // line 313
  477.         yield $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("api_compare_data");
  478.         yield "\";
  479.         </script>
  480.         ";
  481.         // line 315
  482.         yield from $this->unwrap()->yieldBlock('addJs'$context$blocks);
  483.         // line 316
  484.         yield "
  485.         <!-- Core plugin JavaScript-->
  486.         <!-- Custom scripts for all pages-->
  487.         <script src=\"/js/vendor/sb-admin-2.min.js\"></script>
  488.         <script>
  489.             ";
  490.         // line 325
  491.         yield from         $this->loadTemplate("/js/app.js.twig""base.html.twig"325)->unwrap()->yield($context);
  492.         // line 326
  493.         yield "        </script>
  494.     </body>
  495. </html>
  496. ";
  497.         
  498.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  499.         
  500.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  501.         return; yield '';
  502.     }
  503.     // line 5
  504.     public function block_title($context, array $blocks = [])
  505.     {
  506.         $macros $this->macros;
  507.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  508.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""title"));
  509.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  510.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""title"));
  511.         
  512.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  513.         
  514.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  515.         return; yield '';
  516.     }
  517.     // line 8
  518.     public function block_stylesheets($context, array $blocks = [])
  519.     {
  520.         $macros $this->macros;
  521.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  522.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""stylesheets"));
  523.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  524.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""stylesheets"));
  525.         // line 9
  526.         yield "            ";
  527.         yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->env->getFunction('encore_entry_link_tags')->getCallable()("app"), "html"nulltrue);
  528.         yield "
  529.         ";
  530.         
  531.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  532.         
  533.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  534.         return; yield '';
  535.     }
  536.     // line 12
  537.     public function block_javascripts($context, array $blocks = [])
  538.     {
  539.         $macros $this->macros;
  540.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  541.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""javascripts"));
  542.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  543.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""javascripts"));
  544.         // line 13
  545.         yield "            ";
  546.         yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->env->getFunction('encore_entry_script_tags')->getCallable()("app"), "html"nulltrue);
  547.         yield "
  548.         ";
  549.         
  550.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  551.         
  552.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  553.         return; yield '';
  554.     }
  555.     // line 126
  556.     public function block_addHead($context, array $blocks = [])
  557.     {
  558.         $macros $this->macros;
  559.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  560.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""addHead"));
  561.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  562.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""addHead"));
  563.         
  564.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  565.         
  566.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  567.         return; yield '';
  568.     }
  569.     // line 193
  570.     public function block_body($context, array $blocks = [])
  571.     {
  572.         $macros $this->macros;
  573.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  574.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""body"));
  575.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  576.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""body"));
  577.         
  578.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  579.         
  580.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  581.         return; yield '';
  582.     }
  583.     // line 315
  584.     public function block_addJs($context, array $blocks = [])
  585.     {
  586.         $macros $this->macros;
  587.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  588.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""addJs"));
  589.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  590.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""addJs"));
  591.         
  592.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  593.         
  594.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  595.         return; yield '';
  596.     }
  597.     /**
  598.      * @codeCoverageIgnore
  599.      */
  600.     public function getTemplateName()
  601.     {
  602.         return "base.html.twig";
  603.     }
  604.     /**
  605.      * @codeCoverageIgnore
  606.      */
  607.     public function isTraitable()
  608.     {
  609.         return false;
  610.     }
  611.     /**
  612.      * @codeCoverageIgnore
  613.      */
  614.     public function getDebugInfo()
  615.     {
  616.         return array (  655 => 315,  636 => 193,  617 => 126,  603 => 13,  593 => 12,  579 => 9,  569 => 8,  550 => 5,  536 => 326,  534 => 325,  523 => 316,  521 => 315,  516 => 313,  512 => 311,  502 => 304,  498 => 303,  480 => 288,  473 => 283,  470 => 282,  467 => 280,  457 => 273,  453 => 272,  435 => 257,  428 => 252,  425 => 251,  422 => 249,  406 => 236,  402 => 235,  383 => 219,  370 => 208,  368 => 207,  358 => 200,  350 => 194,  348 => 193,  345 => 192,  342 => 191,  339 => 190,  336 => 189,  334 => 188,  331 => 187,  328 => 186,  325 => 185,  323 => 184,  320 => 183,  317 => 182,  314 => 181,  312 => 180,  309 => 179,  306 => 178,  303 => 177,  300 => 176,  298 => 175,  267 => 147,  248 => 132,  245 => 131,  242 => 130,  240 => 129,  236 => 127,  234 => 126,  221 => 115,  219 => 114,  214 => 111,  212 => 110,  207 => 107,  205 => 106,  200 => 103,  198 => 102,  190 => 96,  187 => 94,  182 => 90,  180 => 89,  168 => 79,  166 => 78,  161 => 75,  159 => 74,  154 => 71,  152 => 70,  148 => 68,  146 => 67,  135 => 58,  133 => 57,  129 => 55,  127 => 54,  123 => 52,  121 => 51,  117 => 49,  115 => 48,  110 => 45,  108 => 44,  104 => 42,  102 => 41,  97 => 38,  95 => 37,  87 => 31,  83 => 28,  69 => 15,  67 => 12,  64 => 11,  61 => 8,  56 => 5,  50 => 1,);
  617.     }
  618.     public function getSourceContext()
  619.     {
  620.         return new Source("<!DOCTYPE html>
  621. <html>
  622.     <head>
  623.         <meta charset=\"UTF-8\">
  624.         <title>{% block title %}{% endblock %}</title>
  625.         <link rel=\"icon\" href=\"data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 128 128%22><text y=%221.2em%22 font-size=%2296%22>⚫️</text></svg>\">
  626.         {# Run `composer require symfony/webpack-encore-bundle` to start using Symfony UX #}
  627.         {% block stylesheets %}
  628.             {{ encore_entry_link_tags('app') }}
  629.         {% endblock %}
  630.         {% block javascripts %}
  631.             {{ encore_entry_script_tags('app') }}
  632.         {% endblock %}
  633.         <link href=\"/js/vendor/fontawesome-free/css/all.min.css\" rel=\"stylesheet\" type=\"text/css\">
  634.         <link
  635.             href=\"https://fonts.googleapis.com/css?family=Nunito:200,200i,300,300i,400,400i,600,600i,700,700i,800,800i,900,900i\"
  636.             rel=\"stylesheet\">
  637.         <link href=\"/css/attributes.css\" rel=\"stylesheet\">
  638.         <link href=\"/css/styles.css\" rel=\"stylesheet\">
  639.         <link href=\"https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css\" rel=\"stylesheet\" integrity=\"sha384-T3c6CoIi6uLrA9TneNEoa7RxnatzjcDSCmG1MXxSR1GAsXEV/Dwwykc2MPK8M2HN\" crossorigin=\"anonymous\">
  640.         <link href=\"/js/vendor/toastify/toastify.min.css\" rel=\"stylesheet\">
  641.         <!-- Custom styles for this template-->
  642.         <link href=\"/css/sb-admin-2.css\" rel=\"stylesheet\">
  643.         {# <link href=\"/css/sb-admin-2.min.css\" rel=\"stylesheet\"> #}
  644.         <link href=\"/js/vendor/datatables/dataTables.bootstrap4.min.css\" rel=\"stylesheet\">
  645.         <script src=\"/js/vendor/jquery/jquery.min.js\"></script>
  646. {#        <script src=\"/js/vendor/jquery-3.4.1.min.js\"></script>#}
  647.         <script src=\"/js/vendor/toastify/toastify-js.js\"></script>
  648.         <link href=\"/css/overrides.css\" rel=\"stylesheet\">
  649.         <script src=\"/js/library/Utils.js\"></script>
  650.         <script>
  651.             {% include '/js/library/StringUtils.js' %}
  652.         </script>
  653.         <script src=\"/js/library/event_dispatcher/event_dispatcher.js\"></script>
  654.         <script>
  655.             {% include '/js/library/gallery_carousel/gallery_carousel.js.twig' %}
  656.         </script>
  657.         <script>
  658.             {% include '/js/library/month_range_slider/month_range_slider.js.twig' %}
  659.         </script>
  660.         <script src=\"/js/library/url_builder/url_builder.js\"></script>
  661.         <script>
  662.             {% include '/js/library/dropdown/dropdown.js.twig' %}
  663.         </script>
  664.         <script>
  665.             {% include '/js/library/dropdown_with_textarea/dropdown_with_textarea.js.twig' %}
  666.         </script>
  667.         <script>
  668.             {% include '/js/library/dropdown_with_input_filter/dropdown_with_input_filter.js.twig' %}
  669.         </script>
  670.         <script>
  671.             {% include '/js/library/month_range_slider_dropdown/month_range_slider_dropdown.js.twig' %}
  672.         </script>
  673.         <script src=\"/js/library/dropdown/file_dropdown.js\"></script>
  674.         <script src=\"/js/library/Dom.js\"></script>
  675.         <script src=\"/js/vendor/moment.js\"></script>
  676.         <script src=\"/js/vendor/daterangepicker.js\"></script>
  677.         <script src=\"/js/vendor/datepicker.js\"></script>
  678.         <link href=\"/css/daterangepicker.css\" rel=\"stylesheet\">
  679.         <script>
  680.             {% include '/js/library/daterangepicker-custom/daterangepicker-custom.js.twig' %}
  681.         </script>
  682.         <script>
  683.             {% include '/js/library/date_range_picker_with_button/date_range_picker_with_button.js.twig' %}
  684.         </script>
  685.         <script>
  686.             {% include '/js/library/DomDispatcher/DomDispatcher.js.twig' %}
  687.         </script>
  688.         <script>
  689.             {% include '/js/library/init_bearer/init_bearer.js.twig' %}
  690.             const initBearer = new InitBearer();
  691.             const INIT_BEARERS = {
  692.                 GLOBAL_DOM_DISPATCHER: \"initBearer.globalDomDispatcher\",
  693.                 GLOBAL_USER_SETTINGS_MODIFIER: \"initBearer.globalUserSettingsModifier\",
  694.                 GLOBAL_USER_SETTINGS_FORM_SAVER: \"initBearer.globalUserSettingsFormSaver\",
  695.                 GLOBAL_CALENDAR_EVENTS_SELECTOR_COMPONENT: \"initBearer.globalCalendarEventsSelectorComponent\",
  696.             };
  697.         </script>
  698.         <script>
  699.             {% include '/js/library/entity_collection/entity_collection.js.twig' %}
  700.         </script>
  701.         <script src=\"/js/vendor/jquery-easing/jquery.easing.min.js\"></script>
  702.         {# <script src=\"https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js\"></script> #}
  703.         {# <script src=\"/js/vendor/bootstrap/js/5.3.0/bootstrap.bundle.min.js\"></script> #}
  704.         <script src=\"/js/vendor/bootstrap/js/4.6.0/bootstrap.bundle.min.js\"></script>
  705.         <script src=\"/js/vendor/datatables/jquery.dataTables.min.js\"></script>
  706.         <script src=\"/js/vendor/datatables/dataTables.bootstrap4.min.js\"></script>
  707.         <script src=\"/js/library/data_table/data_table_extensions.js\"></script>
  708.         <script>
  709.             {% include '/js/library/data_table/custom_data_table.js' %}
  710.         </script>
  711.         <script>
  712.             {% include '/js/library/symfony_form_data_builder/symfony_form_data_builder.js.twig' %}
  713.         </script>
  714.         <script>
  715.             {% include '/js/library/json_object_to_components_data_binder/json_object_to_components_data_binder.js.twig' %}
  716.         </script>
  717.         <script>
  718.             {% include '/js/library/json_form_saver/json_form_saver.js.twig' %}
  719.         </script>
  720.         <style>
  721.             .svg-ship {
  722.                 max-width: 70px;
  723.                 fill: white;
  724.                 /* transform: scaleX(-1); */
  725.                 height: 50px;
  726.             }
  727.         </style>
  728.         {% block addHead %}{% endblock %}
  729.     </head>
  730.     {% set bodyClass = block('bodyClass') is defined ? block('bodyClass') : null %}
  731.     {% set bodyAttrs = block('bodyAttrs') is defined ? block('bodyAttrs') : null %}
  732.     <body{{ bodyClass ? (' class=\"' ~ bodyClass ~ '\"')|raw }}{{ bodyAttrs ? (' ' ~ bodyAttrs)|raw }}>
  733.         <!-- Logout Modal-->
  734.         <div class=\"modal fade\" id=\"logoutModal\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"exampleModalLabel\"
  735.             aria-hidden=\"true\">
  736.             <div class=\"modal-dialog\" role=\"document\">
  737.                 <div class=\"modal-content\">
  738.                     <div class=\"modal-header\">
  739.                         <h5 class=\"modal-title\" id=\"exampleModalLabel\">Выйти сейчас?</h5>
  740.                         <button class=\"close\" type=\"button\" data-dismiss=\"modal\" aria-label=\"Close\">
  741.                             <span aria-hidden=\"true\">×</span>
  742.                         </button>
  743.                     </div>
  744.                     <div class=\"modal-body\">Вы выйдете автоматически через 3 часа.</div>
  745.                     <div class=\"modal-footer\">
  746.                         <button class=\"btn btn-secondary\" type=\"button\" data-dismiss=\"modal\">Отмена</button>
  747.                         <a class=\"btn btn-primary\" href=\"{{ path('logout') }}\">Выйти</a>
  748.                     </div>
  749.                 </div>
  750.             </div>
  751.         </div>
  752.         <!-- Window Modal-->
  753.         <div class=\"modal fade\" id=\"windowModal\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"windowModalLabel\"
  754.             aria-hidden=\"true\">
  755.             <div class=\"modal-dialog\" role=\"document\"
  756.                  style=\"max-width: 700px !important;\"
  757.             >
  758.                 <div class=\"modal-content\">
  759.                     <div class=\"modal-header\">
  760.                         <h5 class=\"modal-title\" id=\"windowModalLabel\">Question?</h5>
  761.                         <button class=\"close\" type=\"button\" data-dismiss=\"modal\" aria-label=\"Close\">
  762.                             <span aria-hidden=\"true\">×</span>
  763.                         </button>
  764.                     </div>
  765.                     <div class=\"modal-body\">Modal body</div>
  766.                     <div class=\"modal-footer\">
  767.                         <button class=\"btn btn-primary\">Yes</button>
  768.                         <button class=\"btn btn-secondary\" type=\"button\" data-dismiss=\"modal\">No</button>
  769.                     </div>
  770.                 </div>
  771.             </div>
  772.         </div>
  773.         {% if getUser() %}
  774.             {% set reviewerSettings = reviewerSettingsService.getCurrentReviewerSettings() %}
  775.             {% set reviewerSettingsForm = reviewerSettingsService.getCurrentReviewerSettingsForm().createView() %}
  776.             {% set reviewerSettingsJsonStr = reviewerSettingsService.getCurrentReviewerSettingsJsonStr() %}
  777.             {% set reviewerTipSettings = tipSettingsService.getCurrentReviewerTipSettings() %}
  778.             {% set reviewerTipSettingsForm = tipSettingsService.getCurrentReviewerSettingsForm().createView() %}
  779.             {% set reviewerTipSettingsJsonStr = tipSettingsService.getCurrentReviewerTipSettingsStr() %}
  780.             {% set userTipSettings = tipSettingsService.getCurrentUserTipSettings() %}
  781.             {% set userTipSettingsForm = tipSettingsService.getCurrentUserTipSettingsForm().createView() %}
  782.             {% set userTipSettingsJsonStr = tipSettingsService.getCurrentUserTipSettingsStr() %}
  783.             {% set userSettings = userSettingsService.getCurrentUserSettings() %}
  784.             {% set userSettingsForm = userSettingsService.getCurrentUserSettingsForm().createView() %}
  785.             {% set userSettingsJsonStr = userSettingsService.getCurrentUserSettingsJsonStr('user_settings_edit_ajax') %}
  786.         {% endif %}
  787.         {% block body %}{% endblock %}
  788.         <script>
  789.             function startLogoutOnSessionExpire() {
  790.                 let pageLoadedAt = Date.now();
  791.                 setInterval(() => {
  792.                     if (Date.now() - pageLoadedAt > 30 * 60 * 1000) {
  793.                         location.href = \"{{ path('logout') }}\";
  794.                     }
  795.                 }, 5000);
  796.             }
  797.             startLogoutOnSessionExpire();
  798.         </script>
  799.         {% if userSettings is defined and userSettings.id %}
  800.             <script>
  801.                 /** @type {JsonObjectToComponentsDataBinder|null} */
  802.                 let userSettingsModifier = null;
  803.                 let userSettings = null;
  804.                 /** @type {JsonFormSaver|null} */
  805.                 let userSettingsFormSaver = null;
  806.                 initBearer.wait([INIT_BEARERS.GLOBAL_DOM_DISPATCHER]).then(() => {
  807.                     /** @type {DomDispatcher} */
  808.                     const domDispatcher = initBearer.get(INIT_BEARERS.GLOBAL_DOM_DISPATCHER);
  809.                     userSettings = {{ userSettingsJsonStr|raw }};
  810.                     console.log(userSettings)
  811.                     let userSettingsFormDataBuilder = new SymfonyFormDataBuilder(\"user_settings\");
  812.                     userSettingsModifier = new JsonObjectToComponentsDataBinder(userSettings, {
  813.                         domDispatcherListenGroups: [\"userSettingsModifier\"],
  814.                         domDispatcher: domDispatcher
  815.                     });
  816.                     initBearer.set(INIT_BEARERS.GLOBAL_USER_SETTINGS_MODIFIER, userSettingsModifier);
  817.                     let userSettingsSaverOptions = {
  818.                         saveOnChanges: true,
  819.                         jsonObject: userSettings,
  820.                         componentsDataBinder: userSettingsModifier,
  821.                         symfonyFormDataBuilder: userSettingsFormDataBuilder,
  822.                         url: \"{{ path('user_settings_edit_ajax', { id: userSettings.id }) }}\",
  823.                         csrfToken: {{ userSettingsForm._token.vars.value|json_encode|raw }},
  824.                     };
  825.                     userSettingsFormSaver = new JsonFormSaver(userSettingsSaverOptions);
  826.                     userSettingsFormSaver.init();
  827.                     userSettingsFormSaver.eventDispatcher.on(userSettingsFormSaver.EVENTS.ON_SAVE_ERROR, () => {
  828.                         showToast(\"Ошибка при обновлении настроек.<br>Попробуйте обновить\"
  829.                             + \" страницу и совершить действие повторно.\", TOAST_TYPE.ERROR);
  830.                     });
  831.                     initBearer.set(INIT_BEARERS.GLOBAL_USER_SETTINGS_FORM_SAVER, userSettingsModifier);
  832.                 });
  833.             </script>
  834.         {% endif %}
  835. {#        tipSettings:#}
  836.         {% if reviewerTipSettings is defined and reviewerTipSettings.id %}
  837.             <script>
  838.                 let reviewerTipSettings = null;
  839.                 initBearer.wait([INIT_BEARERS.GLOBAL_DOM_DISPATCHER]).then(() => {
  840.                     const domDispatcher = initBearer.get(INIT_BEARERS.GLOBAL_DOM_DISPATCHER);
  841.                     reviewerTipSettings = {{ reviewerTipSettingsJsonStr|raw }};
  842.                     let reviewerTipSettingsFormDataBuilder = new SymfonyFormDataBuilder(\"tip_settings\");
  843.                     let reviewerTipSettingsModifier = new JsonObjectToComponentsDataBinder(reviewerTipSettings, {
  844.                         domDispatcherListenGroups: [\"reviewerTipSettingsModifier\"],
  845.                         domDispatcher: domDispatcher
  846.                     });
  847.                     reviewerTipSettingsModifier.setComponentBindOptions(\"showReviewerRecommendationsTip\",
  848.                         {invert: true});
  849.                     let reviewerTipSettingsSaverOptions = {
  850.                         saveOnChanges: true,
  851.                         jsonObject: reviewerTipSettings,
  852.                         componentsDataBinder: reviewerTipSettingsModifier,
  853.                         symfonyFormDataBuilder: reviewerTipSettingsFormDataBuilder,
  854.                         url: \"{{ path('moderator_tip_settings_edit', { id: reviewerTipSettings.id }) }}\",
  855.                         csrfToken: {{ reviewerTipSettingsForm._token.vars.value|json_encode|raw }},
  856.                     };
  857.                     let reviewerTipSettingsFormSaver = new JsonFormSaver(reviewerTipSettingsSaverOptions);
  858.                     reviewerTipSettingsFormSaver.init();
  859.                 });
  860.             </script>
  861.         {% endif %}
  862. {#        userTipSettings:#}
  863.         {% if userTipSettings is defined and userTipSettings.id %}
  864.             <script>
  865.                 let userTipSettings = null;
  866.                 initBearer.wait([INIT_BEARERS.GLOBAL_DOM_DISPATCHER]).then(() => {
  867.                     const domDispatcher = initBearer.get(INIT_BEARERS.GLOBAL_DOM_DISPATCHER);
  868.                     userTipSettings = {{ userTipSettingsJsonStr|raw }};
  869.                     let userTipSettingsFormDataBuilder = new SymfonyFormDataBuilder(\"tip_settings\");
  870.                     let userTipSettingsModifier = new JsonObjectToComponentsDataBinder(userTipSettings, {
  871.                         domDispatcherListenGroups: [\"userTipSettingsModifier\"],
  872.                         domDispatcher: domDispatcher
  873.                     });
  874.                     userTipSettingsModifier.setComponentBindOptions(\"showCalendarEventsPeriodTip\",
  875.                         {invert: true});
  876.                     let userTipSettingsSaverOptions = {
  877.                         saveOnChanges: true,
  878.                         jsonObject: userTipSettings,
  879.                         componentsDataBinder: userTipSettingsModifier,
  880.                         symfonyFormDataBuilder: userTipSettingsFormDataBuilder,
  881.                         url: \"{{ path('moderator_tip_settings_edit', { id: userTipSettings.id }) }}\",
  882.                         csrfToken: {{ userTipSettingsForm._token.vars.value|json_encode|raw }},
  883.                     };
  884.                     let userTipSettingsFormSaver = new JsonFormSaver(userTipSettingsSaverOptions);
  885.                     userTipSettingsFormSaver.init();
  886.                 });
  887.             </script>
  888.         {% endif %}
  889.         <script>
  890.             const API_COMPARE_DATA_URL = \"{{ path('api_compare_data') }}\";
  891.         </script>
  892.         {% block addJs %}{% endblock %}
  893.         <!-- Core plugin JavaScript-->
  894.         <!-- Custom scripts for all pages-->
  895.         <script src=\"/js/vendor/sb-admin-2.min.js\"></script>
  896.         <script>
  897.             {% include '/js/app.js.twig' %}
  898.         </script>
  899.     </body>
  900. </html>
  901. ""base.html.twig""/home/sariato/www/dev.centr.sariato.ru/templates/base.html.twig");
  902.     }
  903. }