var/cache/review/twig/fe/fe6ae84e185bac133a8df8c62c15d6de.php line 55

Open in your IDE?
  1. <?php
  2. use Twig\Environment;
  3. use Twig\Error\LoaderError;
  4. use Twig\Error\RuntimeError;
  5. use Twig\Extension\SandboxExtension;
  6. use Twig\Markup;
  7. use Twig\Sandbox\SecurityError;
  8. use Twig\Sandbox\SecurityNotAllowedTagError;
  9. use Twig\Sandbox\SecurityNotAllowedFilterError;
  10. use Twig\Sandbox\SecurityNotAllowedFunctionError;
  11. use Twig\Source;
  12. use Twig\Template;
  13. /* Map/page.html.twig */
  14. class __TwigTemplate_a28a045d3be3f3299f645cdfe29370c8 extends Template
  15. {
  16.     private $source;
  17.     private $macros = [];
  18.     public function __construct(Environment $env)
  19.     {
  20.         parent::__construct($env);
  21.         $this->source $this->getSourceContext();
  22.         $this->blocks = [
  23.             'preconnect' => [$this'block_preconnect'],
  24.             'wrapper_class' => [$this'block_wrapper_class'],
  25.             'mainContainer' => [$this'block_mainContainer'],
  26.             'javascripts' => [$this'block_javascripts'],
  27.             'modal' => [$this'block_modal'],
  28.         ];
  29.     }
  30.     protected function doGetParent(array $context)
  31.     {
  32.         // line 1
  33.         return "__design/v2023/grid-map.html.twig";
  34.     }
  35.     protected function doDisplay(array $context, array $blocks = [])
  36.     {
  37.         $macros $this->macros;
  38.         $__internal_b91a4435ea3baf1e2b6bfda56133dace $this->extensions["Sentry\\SentryBundle\\Tracing\\Twig\\TwigTracingExtension"];
  39.         $__internal_b91a4435ea3baf1e2b6bfda56133dace->enter($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template""Map/page.html.twig"));
  40.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  41.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template""Map/page.html.twig"));
  42.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  43.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template""Map/page.html.twig"));
  44.         $this->parent $this->loadTemplate("__design/v2023/grid-map.html.twig""Map/page.html.twig"1);
  45.         $this->parent->display($contextarray_merge($this->blocks$blocks));
  46.         
  47.         $__internal_b91a4435ea3baf1e2b6bfda56133dace->leave($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof);
  48.         
  49.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  50.         
  51.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  52.     }
  53.     // line 3
  54.     public function block_preconnect($context, array $blocks = [])
  55.     {
  56.         $macros $this->macros;
  57.         $__internal_b91a4435ea3baf1e2b6bfda56133dace $this->extensions["Sentry\\SentryBundle\\Tracing\\Twig\\TwigTracingExtension"];
  58.         $__internal_b91a4435ea3baf1e2b6bfda56133dace->enter($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""preconnect"));
  59.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  60.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""preconnect"));
  61.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  62.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""preconnect"));
  63.         // line 4
  64.         echo "\t";
  65.         $this->displayParentBlock("preconnect"$context$blocks);
  66.         echo "
  67. \t<link rel=\"preconnect\" href=\"https://yastatic.net\">
  68. \t<link rel=\"preconnect\" href=\"https://api-maps.yandex.ru\">
  69. ";
  70.         
  71.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  72.         
  73.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  74.         
  75.         $__internal_b91a4435ea3baf1e2b6bfda56133dace->leave($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof);
  76.     }
  77.     // line 11
  78.     public function block_wrapper_class($context, array $blocks = [])
  79.     {
  80.         $macros $this->macros;
  81.         $__internal_b91a4435ea3baf1e2b6bfda56133dace $this->extensions["Sentry\\SentryBundle\\Tracing\\Twig\\TwigTracingExtension"];
  82.         $__internal_b91a4435ea3baf1e2b6bfda56133dace->enter($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""wrapper_class"));
  83.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  84.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""wrapper_class"));
  85.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  86.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""wrapper_class"));
  87.         echo " wrapper--map";
  88.         
  89.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  90.         
  91.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  92.         
  93.         $__internal_b91a4435ea3baf1e2b6bfda56133dace->leave($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof);
  94.     }
  95.     // line 13
  96.     public function block_mainContainer($context, array $blocks = [])
  97.     {
  98.         $macros $this->macros;
  99.         $__internal_b91a4435ea3baf1e2b6bfda56133dace $this->extensions["Sentry\\SentryBundle\\Tracing\\Twig\\TwigTracingExtension"];
  100.         $__internal_b91a4435ea3baf1e2b6bfda56133dace->enter($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""mainContainer"));
  101.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  102.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""mainContainer"));
  103.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  104.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""mainContainer"));
  105.         // line 14
  106.         echo "\t";
  107.         // line 15
  108.         echo "
  109. \t<h1 class=\"d-none\">";
  110.         // line 16
  111.         echo (($this->extensions['App\Twig\SeoExtension']->pageHeading()) ? ($this->extensions['App\Twig\SeoExtension']->pageHeading()) : ("Интим карта"));
  112.         echo "</h1>
  113. \t<div class=\"map-page content\">
  114. \t\t<div class=\"map-heading container\">
  115. \t\t\t<button class=\"map-back btn btn-transparent\" type=\"button\" onclick=\"history.back()\">
  116. \t\t\t\t<svg class=\"btn-icon\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"><path fill=\"#2C2C2C\" d=\"m17.83 20.13-1.77 1.77-9.9-9.9 9.9-9.9 1.77 1.77L9.7 12l8.13 8.13Z\"/></svg>
  117. \t\t\t\t<span class=\"btn-text\">Назад</span>
  118. \t\t\t</button>
  119. \t\t\t<button class=\"map-btn btn btn-grey\" type=\"button\" data-a11y-dialog-show=\"filter-dialog\">
  120. \t\t\t\t<svg class=\"btn-icon\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\"><path d=\"M7.5 4.165a.833.833 0 1 0 0 1.666.833.833 0 0 0 0-1.666Zm-2.358 0a2.5 2.5 0 0 1 4.717 0h5.975a.833.833 0 1 1 0 1.666H9.859a2.5 2.5 0 0 1-4.717 0h-.975a.833.833 0 1 1 0-1.666h.975Zm7.359 5a.833.833 0 1 0 0 1.666.833.833 0 0 0 0-1.666Zm-2.359 0a2.501 2.501 0 0 1 4.717 0h.975a.833.833 0 1 1 0 1.667h-.975a2.502 2.502 0 0 1-4.717 0H4.167a.833.833 0 1 1 0-1.667h5.975Zm-2.641 5a.833.833 0 1 0 0 1.666.833.833 0 0 0 0-1.666Zm-2.359 0a2.5 2.5 0 0 1 4.717 0h5.975a.833.833 0 1 1 0 1.667H9.859a2.501 2.501 0 0 1-4.717 0h-.975a.833.833 0 1 1 0-1.667h.975Z\"/></svg>
  121. \t\t\t\t<span class=\"btn-text\">Фильтры</span>
  122. \t\t\t</button>
  123. \t\t</div>
  124. \t\t<div class=\"map-wrap skeleton skeleton--map loading\" id=\"map-wrap\"></div>
  125. \t</div>
  126. ";
  127.         
  128.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  129.         
  130.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  131.         
  132.         $__internal_b91a4435ea3baf1e2b6bfda56133dace->leave($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof);
  133.     }
  134.     // line 34
  135.     public function block_javascripts($context, array $blocks = [])
  136.     {
  137.         $macros $this->macros;
  138.         $__internal_b91a4435ea3baf1e2b6bfda56133dace $this->extensions["Sentry\\SentryBundle\\Tracing\\Twig\\TwigTracingExtension"];
  139.         $__internal_b91a4435ea3baf1e2b6bfda56133dace->enter($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""javascripts"));
  140.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  141.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""javascripts"));
  142.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  143.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""javascripts"));
  144.         // line 35
  145.         $this->displayParentBlock("javascripts"$context$blocks);
  146.         echo "
  147. \t";
  148.         // line 37
  149.         if ((array_key_exists("city"$context) && twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["city"]) || array_key_exists("city"$context) ? $context["city"] : (function () { throw new RuntimeError('Variable "city" does not exist.'37$this->source); })()), "mapCoordinate", [], "any"falsefalsefalse37), "latitude", [], "any"falsefalsefalse37))) {
  150.             // line 38
  151.             echo "\t\t";
  152.             $context["lat"] = twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["city"]) || array_key_exists("city"$context) ? $context["city"] : (function () { throw new RuntimeError('Variable "city" does not exist.'38$this->source); })()), "mapCoordinate", [], "any"falsefalsefalse38), "latitude", [], "any"falsefalsefalse38);
  153.             // line 39
  154.             echo "\t\t";
  155.             $context["lon"] = twig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["city"]) || array_key_exists("city"$context) ? $context["city"] : (function () { throw new RuntimeError('Variable "city" does not exist.'39$this->source); })()), "mapCoordinate", [], "any"falsefalsefalse39), "longitude", [], "any"falsefalsefalse39);
  156.             // line 40
  157.             echo "\t";
  158.         } else {
  159.             // line 41
  160.             echo "\t\t";
  161.             $context["lat"] = "55.753215";
  162.             // line 42
  163.             echo "\t\t";
  164.             $context["lon"] = "37.622504";
  165.             // line 43
  166.             echo "\t";
  167.         }
  168.         // line 44
  169.         echo "
  170. \t<script src=\"";
  171.         // line 45
  172.         echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("bundles/fosjsrouting/js/router.min.js"), "html"nulltrue);
  173.         echo "\" defer></script>
  174. \t<script src=\"";
  175.         // line 46
  176.         echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("fos_js_routing_js", ["callback" => "fos.Router.setData"]);
  177.         echo "\" defer></script>
  178. \t<script src=\"https://api-maps.yandex.ru/2.1/?lang=ru_RU&onload=initMap&ns=ym\" defer></script>
  179. \t<script>
  180. \t\twindow.mapConfig = {
  181. \t\t\tid:\"map-wrap\",
  182. \t\t\tmultiple_cities:\"";
  183.         // line 52
  184.         echo twig_escape_filter($this->env, (isset($context["multipleCities"]) || array_key_exists("multipleCities"$context) ? $context["multipleCities"] : (function () { throw new RuntimeError('Variable "multipleCities" does not exist.'52$this->source); })()), "html"nulltrue);
  185.         echo "\",
  186. \t\t\troutes_url: \"";
  187.         // line 53
  188.         echo ((((isset($context["multipleCities"]) || array_key_exists("multipleCities"$context) ? $context["multipleCities"] : (function () { throw new RuntimeError('Variable "multipleCities" does not exist.'53$this->source); })()) == 0)) ? ("/js/fos_js_routes.json") : ("/js/fos_js_routes_city_prefixed.json"));
  189.         echo "\",
  190. \t\t\tcity_uri_identity:\"";
  191.         // line 54
  192.         echo twig_escape_filter($this->env, (isset($context["cityUriIdentity"]) || array_key_exists("cityUriIdentity"$context) ? $context["cityUriIdentity"] : (function () { throw new RuntimeError('Variable "cityUriIdentity" does not exist.'54$this->source); })()), "html"nulltrue);
  193.         echo "\",
  194. \t\t\tcity_latitude:\"";
  195.         // line 55
  196.         echo twig_escape_filter($this->env, (isset($context["lat"]) || array_key_exists("lat"$context) ? $context["lat"] : (function () { throw new RuntimeError('Variable "lat" does not exist.'55$this->source); })()), "html"nulltrue);
  197.         echo "\",
  198. \t\t\tcity_longitude:\"";
  199.         // line 56
  200.         echo twig_escape_filter($this->env, (isset($context["lon"]) || array_key_exists("lon"$context) ? $context["lon"] : (function () { throw new RuntimeError('Variable "lon" does not exist.'56$this->source); })()), "html"nulltrue);
  201.         echo "\",
  202. \t\t\tlocale:\"";
  203.         // line 57
  204.         echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->sourcetwig_get_attribute($this->env$this->source, (isset($context["app"]) || array_key_exists("app"$context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.'57$this->source); })()), "request", [], "any"falsefalsefalse57), "locale", [], "any"falsefalsefalse57), "html"nulltrue);
  205.         echo "\",
  206. \t\t\tpath:\"";
  207.         // line 58
  208.         echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("map.filter", ["city" => (isset($context["cityUriIdentity"]) || array_key_exists("cityUriIdentity"$context) ? $context["cityUriIdentity"] : (function () { throw new RuntimeError('Variable "cityUriIdentity" does not exist.'58$this->source); })())]), "html"nulltrue);
  209.         echo "\",
  210. \t\t\tdetail: \"";
  211.         // line 59
  212.         echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("map.detail", ["city" => (isset($context["cityUriIdentity"]) || array_key_exists("cityUriIdentity"$context) ? $context["cityUriIdentity"] : (function () { throw new RuntimeError('Variable "cityUriIdentity" does not exist.'59$this->source); })())]), "html"nulltrue);
  213.         echo "\",
  214. \t\t\t";
  215.         // line 76
  216.         echo "
  217. \t\t\t";
  218.         // line 85
  219.         echo "
  220. \t\t\tavatar_path : \"";
  221.         // line 86
  222.         echo twig_escape_filter($this->env$this->extensions['App\Twig\ResponsiveAssetExtension']->getResponsiveImageUrl("replace_path""profile_media_avatar""200x280""jpg"), "html"nulltrue);
  223.         echo "\",
  224. \t\t\tphoto_path : \"";
  225.         // line 87
  226.         echo twig_escape_filter($this->env$this->extensions['App\Twig\ResponsiveAssetExtension']->getResponsiveImageUrl("replace_path""profile_media""200x280""jpg"), "html"nulltrue);
  227.         echo "\",
  228. \t\t\tthumb_path : \"";
  229.         // line 88
  230.         echo twig_escape_filter($this->env$this->extensions['App\Twig\ResponsiveAssetExtension']->getResponsiveImageUrl("replace_path""saloon_media_thumb""200x280""jpg"), "html"nulltrue);
  231.         echo "\",
  232. \t\t\tprocess_profile_shows_url  : \"";
  233.         // line 89
  234.         echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("map.increment_profile_shows", (((isset($context["multipleCities"]) || array_key_exists("multipleCities"$context) ? $context["multipleCities"] : (function () { throw new RuntimeError('Variable "multipleCities" does not exist.'89$this->source); })())) ? (["city" => (isset($context["cityUriIdentity"]) || array_key_exists("cityUriIdentity"$context) ? $context["cityUriIdentity"] : (function () { throw new RuntimeError('Variable "cityUriIdentity" does not exist.'89$this->source); })())]) : ([]))), "html"nulltrue);
  235.         echo "\"
  236. \t\t};
  237. \t\twindow.map_filters = {
  238. \t\t\tmap_center: [";
  239.         // line 93
  240.         echo twig_escape_filter($this->env, (isset($context["lat"]) || array_key_exists("lat"$context) ? $context["lat"] : (function () { throw new RuntimeError('Variable "lat" does not exist.'93$this->source); })()), "html"nulltrue);
  241.         echo ", ";
  242.         echo twig_escape_filter($this->env, (isset($context["lon"]) || array_key_exists("lon"$context) ? $context["lon"] : (function () { throw new RuntimeError('Variable "lon" does not exist.'93$this->source); })()), "html"nulltrue);
  243.         echo "]
  244. \t\t};
  245. \t\twindow.isMapInitialized = false;
  246. \t\twindow.isYMapLoaded = false;
  247. \t\tfunction initMap() {
  248. \t\t\twindow.ymaps = ym;
  249. \t\t\t";
  250.         // line 106
  251.         echo "\t\t\twindow.isMapInitialized = true;
  252. \t\t\twindow.isYMapLoaded = true;
  253. \t\t}
  254. \t\twindow.profileShowed = function ({id}) {
  255. \t\t\tif (!id) return;
  256. \t\t\tfetch('";
  257.         // line 112
  258.         echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("profile_ctr.increase_shows");
  259.         echo "', {
  260. \t\t\t\tmethod: \"POST\",
  261. \t\t\t\tbody: JSON.stringify({ profiles: [id], source: 'map' }),
  262. \t\t\t});
  263. \t\t}
  264. \t\twindow.stations = {";
  265.         // line 119
  266.         $context['_parent'] = $context;
  267.         $context['_seq'] = twig_ensure_traversable($this->extensions['App\Twig\StationsExtension']->stations());
  268.         foreach ($context['_seq'] as $context["_key"] => $context["station"]) {
  269.             echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["station"], "id", [], "any"falsefalsefalse119), "html"nulltrue);
  270.             echo ":{name:`";
  271.             echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["station"], "name", [], "any"falsefalsefalse119), "html"nulltrue);
  272.             echo "`},";
  273.         }
  274.         $_parent $context['_parent'];
  275.         unset($context['_seq'], $context['_iterated'], $context['_key'], $context['station'], $context['_parent'], $context['loop']);
  276.         $context array_intersect_key($context$_parent) + $_parent;
  277.         // line 120
  278.         echo "};
  279. \t\tdocument.addEventListener('DOMContentLoaded', function () {
  280. \t\t\tfunction loadForm() {
  281. \t\t\t\tfetch('";
  282.         // line 123
  283.         echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("map.form", ["city" => (isset($context["cityUriIdentity"]) || array_key_exists("cityUriIdentity"$context) ? $context["cityUriIdentity"] : (function () { throw new RuntimeError('Variable "cityUriIdentity" does not exist.'123$this->source); })())]), "html"nulltrue);
  284.         echo "', {
  285. \t\t\t\t\tmode: \"cors\",
  286. \t\t\t\t\timportance: \"low\",
  287. \t\t\t\t\tmethod: \"POST\",
  288. \t\t\t\t\theaders: {
  289. \t\t\t\t\t\t\"Content-Type\": \"application/x-www-form-urlencoded\",
  290. \t\t\t\t\t\t\"X-Requested-With\": \"XMLHttpRequest\"
  291. \t\t\t\t\t},
  292. \t\t\t\t}).then(response => {
  293. \t\t\t\t\tif (response.status < 300) {
  294. \t\t\t\t\t\treturn response.text();
  295. \t\t\t\t\t} else {
  296. \t\t\t\t\t\tconsole.warn(\"🤔\");
  297. \t\t\t\t\t\treturn null;
  298. \t\t\t\t\t}
  299. \t\t\t\t}).then(response => {
  300. \t\t\t\t\tdocument.getElementById('dialog-form').innerHTML = response;
  301. \t\t\t\t\tdocument.dispatchEvent(new Event('form-html-load'));
  302. \t\t\t\t\tfilterLoader()
  303. \t\t\t\t});
  304. \t\t\t}
  305. \t\t\tloadForm();
  306. \t\t\tfunction filterLoader() {
  307. \t\t\t\tconst stringifyData = `{\"city_id\":\"\${document.getElementById('filter_map_form_city_id').value}\",\"_token\":\"\${document.getElementById('filter_map_form__token').value}\",\"scale\":10}`;
  308. \t\t\t\tfetch(\"";
  309.         // line 149
  310.         echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("map.filter", ["city" => (isset($context["cityUriIdentity"]) || array_key_exists("cityUriIdentity"$context) ? $context["cityUriIdentity"] : (function () { throw new RuntimeError('Variable "cityUriIdentity" does not exist.'149$this->source); })())]), "html"nulltrue);
  311.         echo "\", {
  312. \t\t\t\t\tmethod: \"POST\",
  313. \t\t\t\t\theaders: {
  314. \t\t\t\t\t\t'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
  315. \t\t\t\t\t\t'X-Requested-With': 'XMLHttpRequest',
  316. \t\t\t\t\t},
  317. \t\t\t\t\tbody: new URLSearchParams({ form: stringifyData, scale: 12 }).toString(),
  318. \t\t\t\t})
  319. \t\t\t\t.then(response => response.json())
  320. \t\t\t\t.then(data => {
  321. \t\t\t\t\t//console.log('map-data-loaded')
  322. \t\t\t\t\tconst mapLoadedInterval = setInterval(()=>{
  323. \t\t\t\t\t\tif (window.isYMapLoaded) {
  324. \t\t\t\t\t\t\tdocument.dispatchEvent(new CustomEvent('map:data:loaded', { detail: { data, stringifyData, mapConfig: window.mapConfig } }));
  325. \t\t\t\t\t\t\tclearInterval(mapLoadedInterval)
  326. \t\t\t\t\t\t}
  327. \t\t\t\t\t}, 200)
  328. \t\t\t\t})
  329. \t\t\t\t.catch(error => console.error(error));
  330. \t\t\t}
  331. \t\t})
  332. \t</script>
  333.     ";
  334.         // line 173
  335.         echo $this->extensions['Symfony\WebpackEncoreBundle\Twig\EntryFilesTwigExtension']->renderWebpackScriptTags("scripts/v2026/map-page"null"basicConfig");
  336.         echo "
  337. ";
  338.         
  339.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  340.         
  341.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  342.         
  343.         $__internal_b91a4435ea3baf1e2b6bfda56133dace->leave($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof);
  344.     }
  345.     // line 176
  346.     public function block_modal($context, array $blocks = [])
  347.     {
  348.         $macros $this->macros;
  349.         $__internal_b91a4435ea3baf1e2b6bfda56133dace $this->extensions["Sentry\\SentryBundle\\Tracing\\Twig\\TwigTracingExtension"];
  350.         $__internal_b91a4435ea3baf1e2b6bfda56133dace->enter($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""modal"));
  351.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  352.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""modal"));
  353.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  354.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""modal"));
  355.         // line 177
  356.         $this->displayParentBlock("modal"$context$blocks);
  357.         // line 178
  358.         echo twig_include($this->env$context"__design/v2023/components/modal/filter.html.twig");
  359.         
  360.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  361.         
  362.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  363.         
  364.         $__internal_b91a4435ea3baf1e2b6bfda56133dace->leave($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof);
  365.     }
  366.     /**
  367.      * @codeCoverageIgnore
  368.      */
  369.     public function getTemplateName()
  370.     {
  371.         return "Map/page.html.twig";
  372.     }
  373.     /**
  374.      * @codeCoverageIgnore
  375.      */
  376.     public function isTraitable()
  377.     {
  378.         return false;
  379.     }
  380.     /**
  381.      * @codeCoverageIgnore
  382.      */
  383.     public function getDebugInfo()
  384.     {
  385.         return array (  416 => 178,  414 => 177,  401 => 176,  386 => 173,  359 => 149,  330 => 123,  325 => 120,  313 => 119,  304 => 112,  296 => 106,  284 => 93,  277 => 89,  273 => 88,  269 => 87,  265 => 86,  262 => 85,  259 => 76,  254 => 59,  250 => 58,  246 => 57,  242 => 56,  238 => 55,  234 => 54,  230 => 53,  226 => 52,  217 => 46,  213 => 45,  210 => 44,  207 => 43,  204 => 42,  201 => 41,  198 => 40,  195 => 39,  192 => 38,  190 => 37,  185 => 35,  172 => 34,  142 => 16,  139 => 15,  137 => 14,  124 => 13,  99 => 11,  81 => 4,  68 => 3,  39 => 1,);
  386.     }
  387.     public function getSourceContext()
  388.     {
  389.         return new Source("{% extends '__design/v2023/grid-map.html.twig' %}
  390. {% block preconnect %}
  391. \t{{ parent() }}
  392. \t<link rel=\"preconnect\" href=\"https://yastatic.net\">
  393. \t<link rel=\"preconnect\" href=\"https://api-maps.yandex.ru\">
  394. {% endblock %}
  395. {# {% block stylesheet_postload %}{{ encore_entry_link_tags(\"styles/public-map-page\") }}{{ parent() }} #}
  396. \t{# <link rel=\"stylesheet\" href=\"//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css\">{% endblock %} #}
  397. {% block wrapper_class %} wrapper--map{% endblock %}
  398. {% block mainContainer %}
  399. \t{# {{- knp_menu_render('breadcrumbs', {'template': '__design/v2023/_menu/breadcrumbs.html.twig' }) -}} #}
  400. \t<h1 class=\"d-none\">{{ seo_heading() ? seo_heading() : 'Интим карта' }}</h1>
  401. \t<div class=\"map-page content\">
  402. \t\t<div class=\"map-heading container\">
  403. \t\t\t<button class=\"map-back btn btn-transparent\" type=\"button\" onclick=\"history.back()\">
  404. \t\t\t\t<svg class=\"btn-icon\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"><path fill=\"#2C2C2C\" d=\"m17.83 20.13-1.77 1.77-9.9-9.9 9.9-9.9 1.77 1.77L9.7 12l8.13 8.13Z\"/></svg>
  405. \t\t\t\t<span class=\"btn-text\">Назад</span>
  406. \t\t\t</button>
  407. \t\t\t<button class=\"map-btn btn btn-grey\" type=\"button\" data-a11y-dialog-show=\"filter-dialog\">
  408. \t\t\t\t<svg class=\"btn-icon\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\"><path d=\"M7.5 4.165a.833.833 0 1 0 0 1.666.833.833 0 0 0 0-1.666Zm-2.358 0a2.5 2.5 0 0 1 4.717 0h5.975a.833.833 0 1 1 0 1.666H9.859a2.5 2.5 0 0 1-4.717 0h-.975a.833.833 0 1 1 0-1.666h.975Zm7.359 5a.833.833 0 1 0 0 1.666.833.833 0 0 0 0-1.666Zm-2.359 0a2.501 2.501 0 0 1 4.717 0h.975a.833.833 0 1 1 0 1.667h-.975a2.502 2.502 0 0 1-4.717 0H4.167a.833.833 0 1 1 0-1.667h5.975Zm-2.641 5a.833.833 0 1 0 0 1.666.833.833 0 0 0 0-1.666Zm-2.359 0a2.5 2.5 0 0 1 4.717 0h5.975a.833.833 0 1 1 0 1.667H9.859a2.501 2.501 0 0 1-4.717 0h-.975a.833.833 0 1 1 0-1.667h.975Z\"/></svg>
  409. \t\t\t\t<span class=\"btn-text\">Фильтры</span>
  410. \t\t\t</button>
  411. \t\t</div>
  412. \t\t<div class=\"map-wrap skeleton skeleton--map loading\" id=\"map-wrap\"></div>
  413. \t</div>
  414. {% endblock %}
  415. {%- block javascripts -%}
  416. \t{{ parent() }}
  417. \t{% if city is defined and city.mapCoordinate.latitude %}
  418. \t\t{% set lat = city.mapCoordinate.latitude %}
  419. \t\t{% set lon = city.mapCoordinate.longitude %}
  420. \t{% else %}
  421. \t\t{% set lat = '55.753215' %}
  422. \t\t{% set lon = '37.622504' %}
  423. \t{% endif %}
  424. \t<script src=\"{{ asset('bundles/fosjsrouting/js/router.min.js') }}\" defer></script>
  425. \t<script src=\"{{ path('fos_js_routing_js', { callback: 'fos.Router.setData' }) }}\" defer></script>
  426. \t<script src=\"https://api-maps.yandex.ru/2.1/?lang=ru_RU&onload=initMap&ns=ym\" defer></script>
  427. \t<script>
  428. \t\twindow.mapConfig = {
  429. \t\t\tid:\"map-wrap\",
  430. \t\t\tmultiple_cities:\"{{ multipleCities }}\",
  431. \t\t\troutes_url: \"{{ multipleCities == 0 ? '/js/fos_js_routes.json' : '/js/fos_js_routes_city_prefixed.json' }}\",
  432. \t\t\tcity_uri_identity:\"{{ cityUriIdentity }}\",
  433. \t\t\tcity_latitude:\"{{ lat }}\",
  434. \t\t\tcity_longitude:\"{{ lon }}\",
  435. \t\t\tlocale:\"{{ app.request.locale }}\",
  436. \t\t\tpath:\"{{ path('map.filter', {city:cityUriIdentity}) }}\",
  437. \t\t\tdetail: \"{{ path('map.detail', {city:cityUriIdentity}) }}\",
  438. \t\t\t{# icon_profile:\"{{ asset('assets/images/map/profile.svg') }}\",
  439. \t\t\ticon_profile_active:\"{{ asset('assets/images/map/profile-active.svg') }}\",
  440. \t\t\ticon_profile_hover:\"{{ asset('assets/images/map/profile-hover.svg') }}\",
  441. \t\t\ticon_saloon:\"{{ asset('assets/images/map/saloon.svg') }}\",
  442. \t\t\ticon_saloon_active:\"{{ asset('assets/images/map/saloon-active.svg') }}\",
  443. \t\t\ticon_saloon_hover:\"{{ asset('assets/images/map/saloon-hover.svg') }}\",
  444. \t\t\ticon_masseur:\"{{ asset('assets/images/map/masseur.svg') }}\",
  445. \t\t\ticon_masseur_active:\"{{ asset('assets/images/map/masseur-active.svg') }}\",
  446. \t\t\ticon_masseur_hover:\"{{ asset('assets/images/map/masseur-hover.svg') }}\",
  447. \t\t\ticon_cluster_small:\"{{ asset('assets/images/map/cluster-small.svg') }}\",
  448. \t\t\ticon_cluster_medium:\"{{ asset('assets/images/map/cluster-medium.svg') }}\",
  449. \t\t\ticon_cluster_big:\"{{ asset('assets/images/map/cluster-big.svg') }}\", #}
  450. \t\t\t{# map_marker_cluster: '{{ absolute_url(asset('assets/images/map/mapMarker_g__cluster.svg')) }}',
  451. \t\t\tmap_marker_cluster_hover: '{{ absolute_url(asset('assets/images/map/mapMarker_g__cluster_hover.svg')) }}',
  452. \t\t\tmap_marker_build: '{{ absolute_url(asset('assets/images/map/mapMarker_b__build.svg')) }}',
  453. \t\t\tmap_marker_opened: '{{ absolute_url(asset('assets/images/map/mapMarker_b__hover_opened.svg')) }}',
  454. \t\t\tmap_marker_ready: '{{ absolute_url(asset('assets/images/map/mapMarker_g__ready.svg')) }}',
  455. \t\t\tmap_marker_ready_hover: '{{ absolute_url(asset('assets/images/map/mapMarker_g__ready_hover.svg')) }}',
  456. \t\t\tmap_marker_transparent: '{{ absolute_url(asset(\"assets/images/map/transparent_1px.png\")) }}',
  457. \t\t\tdefault_img: \"{{ asset('build/frontend/images/v2025/not-found/estate-no-avatar-x1.jpg') }}\", #}
  458. \t\t\tavatar_path : \"{{ responsive_asset('replace_path', 'profile_media_avatar', \"200x280\", \"jpg\") }}\",
  459. \t\t\tphoto_path : \"{{ responsive_asset('replace_path', 'profile_media', \"200x280\", \"jpg\") }}\",
  460. \t\t\tthumb_path : \"{{ responsive_asset('replace_path', 'saloon_media_thumb', \"200x280\", \"jpg\") }}\",
  461. \t\t\tprocess_profile_shows_url  : \"{{ path('map.increment_profile_shows', multipleCities ? {city:cityUriIdentity} : {}) }}\"
  462. \t\t};
  463. \t\twindow.map_filters = {
  464. \t\t\tmap_center: [{{ lat }}, {{ lon }}]
  465. \t\t};
  466. \t\twindow.isMapInitialized = false;
  467. \t\twindow.isYMapLoaded = false;
  468. \t\tfunction initMap() {
  469. \t\t\twindow.ymaps = ym;
  470. \t\t\t{# window.ymap = new ym.Map(document.getElementById('map-wrap'), {
  471. \t\t\t\tcenter: [\"{{ lat }}\", \"{{ lon }}\"],
  472. \t\t\t\tzoom: 12,
  473. \t\t\t\tbehaviors: [\"drag\", \"dblClickZoom\", \"rightMouseButtonMagnifier\", \"multiTouch\", \"scrollZoom\"],
  474. \t\t\t\tcontrols: ['zoomControl', 'typeSelector',  'fullscreenControl']
  475. \t\t\t}); #}
  476. \t\t\twindow.isMapInitialized = true;
  477. \t\t\twindow.isYMapLoaded = true;
  478. \t\t}
  479. \t\twindow.profileShowed = function ({id}) {
  480. \t\t\tif (!id) return;
  481. \t\t\tfetch('{{ path('profile_ctr.increase_shows') }}', {
  482. \t\t\t\tmethod: \"POST\",
  483. \t\t\t\tbody: JSON.stringify({ profiles: [id], source: 'map' }),
  484. \t\t\t});
  485. \t\t}
  486. \t\twindow.stations = {
  487. \t\t\t{%- for station in stations() -%}{{- station.id -}}:{name:`{{- station.name -}}`},{%- endfor -%}
  488. \t\t};
  489. \t\tdocument.addEventListener('DOMContentLoaded', function () {
  490. \t\t\tfunction loadForm() {
  491. \t\t\t\tfetch('{{ path('map.form', {city: cityUriIdentity}) }}', {
  492. \t\t\t\t\tmode: \"cors\",
  493. \t\t\t\t\timportance: \"low\",
  494. \t\t\t\t\tmethod: \"POST\",
  495. \t\t\t\t\theaders: {
  496. \t\t\t\t\t\t\"Content-Type\": \"application/x-www-form-urlencoded\",
  497. \t\t\t\t\t\t\"X-Requested-With\": \"XMLHttpRequest\"
  498. \t\t\t\t\t},
  499. \t\t\t\t}).then(response => {
  500. \t\t\t\t\tif (response.status < 300) {
  501. \t\t\t\t\t\treturn response.text();
  502. \t\t\t\t\t} else {
  503. \t\t\t\t\t\tconsole.warn(\"🤔\");
  504. \t\t\t\t\t\treturn null;
  505. \t\t\t\t\t}
  506. \t\t\t\t}).then(response => {
  507. \t\t\t\t\tdocument.getElementById('dialog-form').innerHTML = response;
  508. \t\t\t\t\tdocument.dispatchEvent(new Event('form-html-load'));
  509. \t\t\t\t\tfilterLoader()
  510. \t\t\t\t});
  511. \t\t\t}
  512. \t\t\tloadForm();
  513. \t\t\tfunction filterLoader() {
  514. \t\t\t\tconst stringifyData = `{\"city_id\":\"\${document.getElementById('filter_map_form_city_id').value}\",\"_token\":\"\${document.getElementById('filter_map_form__token').value}\",\"scale\":10}`;
  515. \t\t\t\tfetch(\"{{ path('map.filter', {city:cityUriIdentity}) }}\", {
  516. \t\t\t\t\tmethod: \"POST\",
  517. \t\t\t\t\theaders: {
  518. \t\t\t\t\t\t'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
  519. \t\t\t\t\t\t'X-Requested-With': 'XMLHttpRequest',
  520. \t\t\t\t\t},
  521. \t\t\t\t\tbody: new URLSearchParams({ form: stringifyData, scale: 12 }).toString(),
  522. \t\t\t\t})
  523. \t\t\t\t.then(response => response.json())
  524. \t\t\t\t.then(data => {
  525. \t\t\t\t\t//console.log('map-data-loaded')
  526. \t\t\t\t\tconst mapLoadedInterval = setInterval(()=>{
  527. \t\t\t\t\t\tif (window.isYMapLoaded) {
  528. \t\t\t\t\t\t\tdocument.dispatchEvent(new CustomEvent('map:data:loaded', { detail: { data, stringifyData, mapConfig: window.mapConfig } }));
  529. \t\t\t\t\t\t\tclearInterval(mapLoadedInterval)
  530. \t\t\t\t\t\t}
  531. \t\t\t\t\t}, 200)
  532. \t\t\t\t})
  533. \t\t\t\t.catch(error => console.error(error));
  534. \t\t\t}
  535. \t\t})
  536. \t</script>
  537.     {{ encore_entry_script_tags('scripts/v2026/map-page', null, 'basicConfig') }}
  538. {% endblock %}
  539. {% block modal %}
  540. \t{{- parent() -}}
  541. \t{{- include('__design/v2023/components/modal/filter.html.twig') -}}
  542. {% endblock %}""Map/page.html.twig""/app/templates/Map/page.html.twig");
  543.     }
  544. }