<?php
use Twig\Environment;
use Twig\Error\LoaderError;
use Twig\Error\RuntimeError;
use Twig\Extension\SandboxExtension;
use Twig\Markup;
use Twig\Sandbox\SecurityError;
use Twig\Sandbox\SecurityNotAllowedTagError;
use Twig\Sandbox\SecurityNotAllowedFilterError;
use Twig\Sandbox\SecurityNotAllowedFunctionError;
use Twig\Source;
use Twig\Template;
/* Map/page.html.twig */
class __TwigTemplate_a28a045d3be3f3299f645cdfe29370c8 extends Template
{
private $source;
private $macros = [];
public function __construct(Environment $env)
{
parent::__construct($env);
$this->source = $this->getSourceContext();
$this->blocks = [
'title' => [$this, 'block_title'],
'metaDescription' => [$this, 'block_metaDescription'],
'stylesheet' => [$this, 'block_stylesheet'],
'preconnect' => [$this, 'block_preconnect'],
'name_page' => [$this, 'block_name_page'],
'mainContainer' => [$this, 'block_mainContainer'],
'javascripts' => [$this, 'block_javascripts'],
'modal' => [$this, 'block_modal'],
];
}
protected function doGetParent(array $context)
{
// line 1
return "grid.html.twig";
}
protected function doDisplay(array $context, array $blocks = [])
{
$macros = $this->macros;
$__internal_b91a4435ea3baf1e2b6bfda56133dace = $this->extensions["Sentry\\SentryBundle\\Tracing\\Twig\\TwigTracingExtension"];
$__internal_b91a4435ea3baf1e2b6bfda56133dace->enter($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "Map/page.html.twig"));
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "Map/page.html.twig"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "Map/page.html.twig"));
$this->parent = $this->loadTemplate("grid.html.twig", "Map/page.html.twig", 1);
$this->parent->display($context, array_merge($this->blocks, $blocks));
$__internal_b91a4435ea3baf1e2b6bfda56133dace->leave($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
}
// line 3
public function block_title($context, array $blocks = [])
{
$macros = $this->macros;
$__internal_b91a4435ea3baf1e2b6bfda56133dace = $this->extensions["Sentry\\SentryBundle\\Tracing\\Twig\\TwigTracingExtension"];
$__internal_b91a4435ea3baf1e2b6bfda56133dace->enter($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "title"));
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "title"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "title"));
// line 4
echo " ";
echo twig_escape_filter($this->env, $this->extensions['App\Twig\SeoExtension']->metaTitle(), "html", null, true);
echo "
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
$__internal_b91a4435ea3baf1e2b6bfda56133dace->leave($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof);
}
// line 7
public function block_metaDescription($context, array $blocks = [])
{
$macros = $this->macros;
$__internal_b91a4435ea3baf1e2b6bfda56133dace = $this->extensions["Sentry\\SentryBundle\\Tracing\\Twig\\TwigTracingExtension"];
$__internal_b91a4435ea3baf1e2b6bfda56133dace->enter($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "metaDescription"));
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "metaDescription"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "metaDescription"));
// line 8
echo " <meta name=\"description\" content=\"";
echo twig_escape_filter($this->env, $this->extensions['App\Twig\SeoExtension']->metaDescription(), "html", null, true);
echo "\">
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
$__internal_b91a4435ea3baf1e2b6bfda56133dace->leave($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof);
}
// line 11
public function block_stylesheet($context, array $blocks = [])
{
$macros = $this->macros;
$__internal_b91a4435ea3baf1e2b6bfda56133dace = $this->extensions["Sentry\\SentryBundle\\Tracing\\Twig\\TwigTracingExtension"];
$__internal_b91a4435ea3baf1e2b6bfda56133dace->enter($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "stylesheet"));
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "stylesheet"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "stylesheet"));
// line 12
echo " ";
$this->displayParentBlock("stylesheet", $context, $blocks);
echo "
";
// line 14
echo "
<style>
.ymaps-2-1-79-balloon__close+.ymaps-2-1-79-balloon__content {
margin-right: 0!important;
padding: 0!important;
}
.map-wrap {
width: 100%;
height: 700px;
border-radius: 20px;
overflow: hidden;
}
.map-model {
background-color: #1c1c1c;
box-shadow: 0 1px 10px rgba(28, 28, 28, .5);
margin-right: 0;
max-width: 220px;
position: relative;
}
.map-model__images {
margin-bottom: 10px !important;
display: block;
}
.map-model__images img{
max-width: 200px;
}
.map-model__info .info-title {
color: #fff;
font-size: 16px;
line-height: 19px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.map-model__info .info-phone {
padding-top: 5px;
}
[class\$=\"-balloon-pane\"] ymaps {
box-shadow: none !important;
border: none !important;
background: #000;
border-radius: 12px;
}
.map-model__info .info-phone .phone {
color: #ed0c34;
font-size: 14px;
font-weight: 700;
line-height: 16px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.map-model__info .info-phone span {
color: #ffb800;
font-size: 14px;
line-height: 16px;
}
.map-model-widget .map-model__info .info-phone span em,
.map-model__info .info-phone span em {
color: grey;
font-size: 12px;
font-style: normal;
line-height: 14px;
}
@media (max-width: 768px) {
.map-model {
max-width: 150px;
padding: 5px !important;
}
.map-model__images {margin-bottom: 3px !important;}
.map-model__images img{max-width: 140px;}
.map-model__info .info-phone{
padding-top: 3px;
}
.map-model__info .info-phone .phone {
font-size: 13px;
line-height: 15px;
}
.map-model__info .info-phone span {
font-size: 12px;
line-height: 14px;
}
.map-model__info .info-title {
font-size: 13px;
line-height: 15px;
}
}
[class\$=\"-balloon-pane\"] .ymaps-2-1-79-balloon__close-button {
border-radius: 20px;
}
[class\$=\"-balloon-pane\"] .ymaps-2-1-79-balloon__tail {
border-radius: 0;
}
[class\$=\"-balloon-pane\"] .map-model__images img {
border-radius: 12px;
}
[class\$=-balloon__close] {
position: absolute !important;
right: 0;
}
[class\$=-balloon__close] [class\$=-balloon__close-button] {
height: 25px;
position: relative;
width: 25px;
}
[class\$=-balloon__close] [class\$=-balloon__close-button]:before {
background: #000;
bottom: 0;
content: \"\";
filter: invert(1);
height: 2px;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
transform: rotate(45deg);
width: 70%;
}
[class\$=-balloon__close] [class\$=-balloon__close-button]:after {
background: #000;
bottom: 0;
content: \"\";
filter: invert(1);
height: 2px;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
transform: rotate(-45deg);
width: 70%;
}
.ymaps-2-1-79-balloon__tail:after {
background-color: #000 !important;
}
</style>
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
$__internal_b91a4435ea3baf1e2b6bfda56133dace->leave($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof);
}
// line 157
public function block_preconnect($context, array $blocks = [])
{
$macros = $this->macros;
$__internal_b91a4435ea3baf1e2b6bfda56133dace = $this->extensions["Sentry\\SentryBundle\\Tracing\\Twig\\TwigTracingExtension"];
$__internal_b91a4435ea3baf1e2b6bfda56133dace->enter($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "preconnect"));
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "preconnect"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "preconnect"));
// line 158
echo "\t";
$this->displayParentBlock("preconnect", $context, $blocks);
echo "
\t<link rel=\"preconnect\" href=\"https://yastatic.net\">
\t<link rel=\"preconnect\" href=\"https://api-maps.yandex.ru\">
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
$__internal_b91a4435ea3baf1e2b6bfda56133dace->leave($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof);
}
// line 163
public function block_name_page($context, array $blocks = [])
{
$macros = $this->macros;
$__internal_b91a4435ea3baf1e2b6bfda56133dace = $this->extensions["Sentry\\SentryBundle\\Tracing\\Twig\\TwigTracingExtension"];
$__internal_b91a4435ea3baf1e2b6bfda56133dace->enter($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "name_page"));
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "name_page"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "name_page"));
echo "map";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
$__internal_b91a4435ea3baf1e2b6bfda56133dace->leave($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof);
}
// line 165
public function block_mainContainer($context, array $blocks = [])
{
$macros = $this->macros;
$__internal_b91a4435ea3baf1e2b6bfda56133dace = $this->extensions["Sentry\\SentryBundle\\Tracing\\Twig\\TwigTracingExtension"];
$__internal_b91a4435ea3baf1e2b6bfda56133dace->enter($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "mainContainer"));
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "mainContainer"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "mainContainer"));
// line 166
echo " ";
if ((array_key_exists("city", $context) && twig_get_attribute($this->env, $this->source, twig_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.', 166, $this->source); })()), "mapCoordinate", [], "any", false, false, false, 166), "latitude", [], "any", false, false, false, 166))) {
// line 167
echo " ";
$context["lat"] = twig_get_attribute($this->env, $this->source, twig_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.', 167, $this->source); })()), "mapCoordinate", [], "any", false, false, false, 167), "latitude", [], "any", false, false, false, 167);
// line 168
echo " ";
$context["lon"] = twig_get_attribute($this->env, $this->source, twig_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.', 168, $this->source); })()), "mapCoordinate", [], "any", false, false, false, 168), "longitude", [], "any", false, false, false, 168);
// line 169
echo " ";
} else {
// line 170
echo " ";
$context["lat"] = "55.753215";
// line 171
echo " ";
$context["lon"] = "37.622504";
// line 172
echo " ";
}
// line 173
echo " <h1 class=\"border-line\">Интим карта</h1>
<p class=\"mb-lg-4\">
На карте обозначено местоположение зарегистрированных анкет.
Кликнув на маркер Вы узнаете краткую информацию о девушке.
</p>
<div class=\"map p-2 p-md-3 p-lg-4 mb-3 mb-md-4\">
<div class=\"d-flex justify-content-center justify-content-md-between mb-2 mb-md-3 mb-lg-4\">
<button class=\"btn btn-secondary btn-collapse-filter\" type=\"button\" id=\"filter-expand\">
<svg class=\"icon mr-1\">
<use xlink:href=\"";
// line 182
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets_domain/images/icons/svg-library.svg", "nodomainConfig"), "html", null, true);
echo "#icon-dropdown\"></use>
</svg>
Расширенный поиск
</button>
<div class=\"d-flex align-items-center collapse-reset ml-2\">
<span class=\"d-none d-md-block\" id=\"count-parameters\">Выбрано <em data-count-parameters>0</em> параметров</span>
<button class=\"btn btn-secondary btn-collapse-reset ml-md-2\" id=\"reset-form-2\" data-reset>
<svg class=\"icon mr-1\">
<use xlink:href=\"";
// line 190
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets_domain/images/icons/svg-library.svg", "nodomainConfig"), "html", null, true);
echo "#icon-reset\"></use>
</svg>
Сброс
</button>
</div>
</div>
<div id=\"collapseFilterContainer\"></div>
\t\t<div class=\"map-wrap skeleton skeleton--map loading\" id=\"map-wrap\"></div>
";
// line 218
echo " </div>
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
$__internal_b91a4435ea3baf1e2b6bfda56133dace->leave($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof);
}
// line 222
public function block_javascripts($context, array $blocks = [])
{
$macros = $this->macros;
$__internal_b91a4435ea3baf1e2b6bfda56133dace = $this->extensions["Sentry\\SentryBundle\\Tracing\\Twig\\TwigTracingExtension"];
$__internal_b91a4435ea3baf1e2b6bfda56133dace->enter($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "javascripts"));
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "javascripts"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "javascripts"));
// line 223
echo " ";
$this->displayParentBlock("javascripts", $context, $blocks);
echo "
\t";
// line 225
if ((array_key_exists("city", $context) && twig_get_attribute($this->env, $this->source, twig_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.', 225, $this->source); })()), "mapCoordinate", [], "any", false, false, false, 225), "latitude", [], "any", false, false, false, 225))) {
// line 226
echo "\t\t";
$context["lat"] = twig_get_attribute($this->env, $this->source, twig_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.', 226, $this->source); })()), "mapCoordinate", [], "any", false, false, false, 226), "latitude", [], "any", false, false, false, 226);
// line 227
echo "\t\t";
$context["lon"] = twig_get_attribute($this->env, $this->source, twig_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.', 227, $this->source); })()), "mapCoordinate", [], "any", false, false, false, 227), "longitude", [], "any", false, false, false, 227);
// line 228
echo "\t";
} else {
// line 229
echo "\t\t";
$context["lat"] = "55.753215";
// line 230
echo "\t\t";
$context["lon"] = "37.622504";
// line 231
echo "\t";
}
// line 232
echo "
\t<script src=\"";
// line 233
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("bundles/fosjsrouting/js/router.min.js"), "html", null, true);
echo "\" defer></script>
\t<script src=\"";
// line 234
echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("fos_js_routing_js", ["callback" => "fos.Router.setData"]);
echo "\" defer></script>";
// line 235
echo "\t<script src=\"https://api-maps.yandex.ru/2.1/?lang=ru_RU&onload=initMap&ns=ym\" defer></script>
\t<script>
const mapConfig = {
\t\t\tid:\"map-wrap\",
\t\t\tmultiple_cities:\"";
// line 240
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.', 240, $this->source); })()), "html", null, true);
echo "\",
\t\t\troutes_url: \"";
// line 241
echo ((((isset($context["multipleCities"]) || array_key_exists("multipleCities", $context) ? $context["multipleCities"] : (function () { throw new RuntimeError('Variable "multipleCities" does not exist.', 241, $this->source); })()) == 0)) ? ("/js/fos_js_routes.json") : ("/js/fos_js_routes_city_prefixed.json"));
echo "\",
\t\t\tcity_uri_identity:\"";
// line 242
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.', 242, $this->source); })()), "html", null, true);
echo "\",
\t\t\tcity_latitude:\"";
// line 243
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.', 243, $this->source); })()), "html", null, true);
echo "\",
\t\t\tcity_longitude:\"";
// line 244
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.', 244, $this->source); })()), "html", null, true);
echo "\",
\t\t\tlocale:\"";
// line 245
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, twig_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.', 245, $this->source); })()), "request", [], "any", false, false, false, 245), "locale", [], "any", false, false, false, 245), "html", null, true);
echo "\",
\t\t\tpath:\"";
// line 246
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.', 246, $this->source); })())]), "html", null, true);
echo "\",
\t\t\ticon_profile:\"";
// line 248
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/images/map/profile.svg"), "html", null, true);
echo "\",
\t\t\ticon_profile_active:\"";
// line 249
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/images/map/profile-active.svg"), "html", null, true);
echo "\",
\t\t\ticon_profile_hover:\"";
// line 250
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/images/map/profile-hover.svg"), "html", null, true);
echo "\",
\t\t\ticon_saloon:\"";
// line 252
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/images/map/saloon.svg"), "html", null, true);
echo "\",
\t\t\ticon_saloon_active:\"";
// line 253
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/images/map/saloon-active.svg"), "html", null, true);
echo "\",
\t\t\ticon_saloon_hover:\"";
// line 254
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/images/map/saloon-hover.svg"), "html", null, true);
echo "\",
\t\t\ticon_masseur:\"";
// line 256
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/images/map/masseur.svg"), "html", null, true);
echo "\",
\t\t\ticon_masseur_active:\"";
// line 257
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/images/map/masseur-active.svg"), "html", null, true);
echo "\",
\t\t\ticon_masseur_hover:\"";
// line 258
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/images/map/masseur-hover.svg"), "html", null, true);
echo "\",
\t\t\ticon_cluster_small:\"";
// line 260
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/images/map/cluster-small.svg"), "html", null, true);
echo "\",
\t\t\ticon_cluster_medium:\"";
// line 261
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/images/map/cluster-medium.svg"), "html", null, true);
echo "\",
\t\t\ticon_cluster_big:\"";
// line 262
echo twig_escape_filter($this->env, $this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("assets/images/map/cluster-big.svg"), "html", null, true);
echo "\",
\t\t\tavatar_path : \"";
// line 264
echo twig_escape_filter($this->env, $this->extensions['App\Twig\ResponsiveAssetExtension']->getResponsiveImageUrl("replace_path", "profile_media_avatar", "200x280", "jpg"), "html", null, true);
echo "\",
\t\t\tphoto_path : \"";
// line 265
echo twig_escape_filter($this->env, $this->extensions['App\Twig\ResponsiveAssetExtension']->getResponsiveImageUrl("replace_path", "profile_media", "200x280", "jpg"), "html", null, true);
echo "\",
\t\t\tthumb_path : \"";
// line 266
echo twig_escape_filter($this->env, $this->extensions['App\Twig\ResponsiveAssetExtension']->getResponsiveImageUrl("replace_path", "saloon_media_thumb", "200x280", "jpg"), "html", null, true);
echo "\",
\t\t\tprocess_profile_shows_url : \"";
// line 267
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.', 267, $this->source); })())) ? (["city" => (isset($context["cityUriIdentity"]) || array_key_exists("cityUriIdentity", $context) ? $context["cityUriIdentity"] : (function () { throw new RuntimeError('Variable "cityUriIdentity" does not exist.', 267, $this->source); })())]) : ([]))), "html", null, true);
echo "\"
\t\t};
var isMapInitialized = false;
\t\tvar yaMapLoaded = false;
function initMap() {
\t\t\twindow.ymap = new ym.Map(document.getElementById('map-wrap'), {
\t\t\t\tcenter: [\"";
// line 275
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.', 275, $this->source); })()), "html", null, true);
echo "\", \"";
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.', 275, $this->source); })()), "html", null, true);
echo "\"],
\t\t\t\tzoom: 8,
\t\t\t\tcontrols: ['zoomControl', 'typeSelector', 'fullscreenControl']
\t\t\t});
\t\t\tyaMapLoaded = true;
\t\t}
\t\twindow.profileShowed = function ({id}) {
\t\t\tif (!id) return;
\t\t\tfetch('";
// line 285
echo $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("profile_ctr.increase_shows");
echo "', {
\t\t\t\tmethod: \"POST\",
\t\t\t\tbody: JSON.stringify({ profiles: [id], source: 'map' }),
\t\t\t});
\t\t}
window.stations = {";
// line 292
$context['_parent'] = $context;
$context['_seq'] = twig_ensure_traversable($this->extensions['App\Twig\StationsExtension']->stations());
$context['loop'] = [
'parent' => $context['_parent'],
'index0' => 0,
'index' => 1,
'first' => true,
];
if (is_array($context['_seq']) || (is_object($context['_seq']) && $context['_seq'] instanceof \Countable)) {
$length = count($context['_seq']);
$context['loop']['revindex0'] = $length - 1;
$context['loop']['revindex'] = $length;
$context['loop']['length'] = $length;
$context['loop']['last'] = 1 === $length;
}
foreach ($context['_seq'] as $context["_key"] => $context["station"]) {
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, $context["station"], "id", [], "any", false, false, false, 292), "html", null, true);
echo ":{icon:`";
$this->loadTemplate("components/metro/icon_generate.partial.twig", "Map/page.html.twig", 292)->display(twig_array_merge($context, ["data" => $this->extensions['App\Twig\StationsExtension']->stationLines($context["station"])]));
echo "`,name:`";
echo twig_escape_filter($this->env, twig_get_attribute($this->env, $this->source, $context["station"], "name", [], "any", false, false, false, 292), "html", null, true);
echo "`},";
++$context['loop']['index0'];
++$context['loop']['index'];
$context['loop']['first'] = false;
if (isset($context['loop']['length'])) {
--$context['loop']['revindex0'];
--$context['loop']['revindex'];
$context['loop']['last'] = 0 === $context['loop']['revindex0'];
}
}
$_parent = $context['_parent'];
unset($context['_seq'], $context['_iterated'], $context['_key'], $context['station'], $context['_parent'], $context['loop']);
$context = array_intersect_key($context, $_parent) + $_parent;
// line 293
echo "};
document.addEventListener('DOMContentLoaded', function () {
\t\t\tfunction loadForm() {
\t\t\t\tfetch('";
// line 297
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.', 297, $this->source); })())]), "html", null, true);
echo "', {
\t\t\t\t\tmode: \"cors\",
\t\t\t\t\timportance: \"low\",
\t\t\t\t\tmethod: \"POST\",
\t\t\t\t\theaders: {
\t\t\t\t\t\t\"Content-Type\": \"application/x-www-form-urlencoded\",
\t\t\t\t\t\t\"X-Requested-With\": \"XMLHttpRequest\"
\t\t\t\t\t},
\t\t\t\t}).then(response => {
\t\t\t\t\tif (response.status < 300) {
\t\t\t\t\t\treturn response.text();
\t\t\t\t\t} else {
\t\t\t\t\t\tconsole.warn(\"🤔\");
\t\t\t\t\t\treturn null;
\t\t\t\t\t}
\t\t\t\t}).then(response => {
\t\t\t\t\tdocument.getElementById('collapseFilterContainer').innerHTML = response;
\t\t\t\t\tfilterLoader();
const expandButton = document.getElementById('filter-expand');
const expandElement = document.getElementById('collapseFilter');
expandButton.addEventListener('click', () => {
expandButton.classList.toggle('open');
expandElement.classList.toggle('show');
});
\t\t\t\t});
\t\t\t}
\t\t\tloadForm();
\t\t\tfunction filterLoader() {
\t\t\t\tconst stringifyData = `{\"city_id\":\"\${document.getElementById('filter_map_form_city_id').value}\",\"_token\":\"\${document.getElementById('filter_map_form__token').value}\"}`;
\t\t\t\tfetch(\"";
// line 331
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.', 331, $this->source); })())]), "html", null, true);
echo "\", {
\t\t\t\t\tmethod: \"POST\",
\t\t\t\t\theaders: {
\t\t\t\t\t\t'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
\t\t\t\t\t\t'X-Requested-With': 'XMLHttpRequest',
\t\t\t\t\t},
\t\t\t\t\tbody: new URLSearchParams({ form: stringifyData }).toString(),
\t\t\t\t})
\t\t\t\t\t.then(response => response.json())
\t\t\t\t\t.then(data => {
\t\t\t\t\t\tconst mapLoadedInterval = setInterval(()=>{
\t\t\t\t\t\t\tif (yaMapLoaded) {
\t\t\t\t\t\t\t\tnew MapPage(mapConfig);
\t\t\t\t\t\t\t\tdocument.dispatchEvent(new CustomEvent('map:data:loaded', { detail: { data, stringifyData } }));
\t\t\t\t\t\t\t\tclearInterval(mapLoadedInterval)
\t\t\t\t\t\t\t}
\t\t\t\t\t\t}, 200)
\t\t\t\t\t})
\t\t\t\t\t.catch(error => console.error(error));
\t\t\t}
\t\t});
\t</script>
";
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
$__internal_b91a4435ea3baf1e2b6bfda56133dace->leave($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof);
}
// line 358
public function block_modal($context, array $blocks = [])
{
$macros = $this->macros;
$__internal_b91a4435ea3baf1e2b6bfda56133dace = $this->extensions["Sentry\\SentryBundle\\Tracing\\Twig\\TwigTracingExtension"];
$__internal_b91a4435ea3baf1e2b6bfda56133dace->enter($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "modal"));
$__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
$__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "modal"));
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "modal"));
// line 359
$this->displayParentBlock("modal", $context, $blocks);
// line 360
echo twig_include($this->env, $context, "components/modals/map-filter.html.twig");
$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
$__internal_b91a4435ea3baf1e2b6bfda56133dace->leave($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof);
}
/**
* @codeCoverageIgnore
*/
public function getTemplateName()
{
return "Map/page.html.twig";
}
/**
* @codeCoverageIgnore
*/
public function isTraitable()
{
return false;
}
/**
* @codeCoverageIgnore
*/
public function getDebugInfo()
{
return array ( 756 => 360, 754 => 359, 741 => 358, 702 => 331, 665 => 297, 659 => 293, 624 => 292, 615 => 285, 600 => 275, 589 => 267, 585 => 266, 581 => 265, 577 => 264, 572 => 262, 568 => 261, 564 => 260, 559 => 258, 555 => 257, 551 => 256, 546 => 254, 542 => 253, 538 => 252, 533 => 250, 529 => 249, 525 => 248, 520 => 246, 516 => 245, 512 => 244, 508 => 243, 504 => 242, 500 => 241, 496 => 240, 489 => 235, 486 => 234, 482 => 233, 479 => 232, 476 => 231, 473 => 230, 470 => 229, 467 => 228, 464 => 227, 461 => 226, 459 => 225, 453 => 223, 440 => 222, 426 => 218, 413 => 190, 402 => 182, 391 => 173, 388 => 172, 385 => 171, 382 => 170, 379 => 169, 376 => 168, 373 => 167, 370 => 166, 357 => 165, 332 => 163, 314 => 158, 301 => 157, 147 => 14, 142 => 12, 129 => 11, 113 => 8, 100 => 7, 84 => 4, 71 => 3, 42 => 1,);
}
public function getSourceContext()
{
return new Source("{% extends 'grid.html.twig' %}
{% block title %}
{{ seo_title() }}
{% endblock %}
{% block metaDescription %}
<meta name=\"description\" content=\"{{ seo_description() }}\">
{% endblock %}
{% block stylesheet %}
{{ parent() }}
{# <link rel=\"stylesheet\" href=\"//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css\"> #}
<style>
.ymaps-2-1-79-balloon__close+.ymaps-2-1-79-balloon__content {
margin-right: 0!important;
padding: 0!important;
}
.map-wrap {
width: 100%;
height: 700px;
border-radius: 20px;
overflow: hidden;
}
.map-model {
background-color: #1c1c1c;
box-shadow: 0 1px 10px rgba(28, 28, 28, .5);
margin-right: 0;
max-width: 220px;
position: relative;
}
.map-model__images {
margin-bottom: 10px !important;
display: block;
}
.map-model__images img{
max-width: 200px;
}
.map-model__info .info-title {
color: #fff;
font-size: 16px;
line-height: 19px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.map-model__info .info-phone {
padding-top: 5px;
}
[class\$=\"-balloon-pane\"] ymaps {
box-shadow: none !important;
border: none !important;
background: #000;
border-radius: 12px;
}
.map-model__info .info-phone .phone {
color: #ed0c34;
font-size: 14px;
font-weight: 700;
line-height: 16px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.map-model__info .info-phone span {
color: #ffb800;
font-size: 14px;
line-height: 16px;
}
.map-model-widget .map-model__info .info-phone span em,
.map-model__info .info-phone span em {
color: grey;
font-size: 12px;
font-style: normal;
line-height: 14px;
}
@media (max-width: 768px) {
.map-model {
max-width: 150px;
padding: 5px !important;
}
.map-model__images {margin-bottom: 3px !important;}
.map-model__images img{max-width: 140px;}
.map-model__info .info-phone{
padding-top: 3px;
}
.map-model__info .info-phone .phone {
font-size: 13px;
line-height: 15px;
}
.map-model__info .info-phone span {
font-size: 12px;
line-height: 14px;
}
.map-model__info .info-title {
font-size: 13px;
line-height: 15px;
}
}
[class\$=\"-balloon-pane\"] .ymaps-2-1-79-balloon__close-button {
border-radius: 20px;
}
[class\$=\"-balloon-pane\"] .ymaps-2-1-79-balloon__tail {
border-radius: 0;
}
[class\$=\"-balloon-pane\"] .map-model__images img {
border-radius: 12px;
}
[class\$=-balloon__close] {
position: absolute !important;
right: 0;
}
[class\$=-balloon__close] [class\$=-balloon__close-button] {
height: 25px;
position: relative;
width: 25px;
}
[class\$=-balloon__close] [class\$=-balloon__close-button]:before {
background: #000;
bottom: 0;
content: \"\";
filter: invert(1);
height: 2px;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
transform: rotate(45deg);
width: 70%;
}
[class\$=-balloon__close] [class\$=-balloon__close-button]:after {
background: #000;
bottom: 0;
content: \"\";
filter: invert(1);
height: 2px;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
transform: rotate(-45deg);
width: 70%;
}
.ymaps-2-1-79-balloon__tail:after {
background-color: #000 !important;
}
</style>
{% endblock %}
{% block preconnect %}
\t{{ parent() }}
\t<link rel=\"preconnect\" href=\"https://yastatic.net\">
\t<link rel=\"preconnect\" href=\"https://api-maps.yandex.ru\">
{% endblock %}
{% block name_page %}map{% endblock %}
{% block mainContainer %}
{% if city is defined and city.mapCoordinate.latitude %}
{% set lat = city.mapCoordinate.latitude %}
{% set lon = city.mapCoordinate.longitude %}
{% else %}
{% set lat = '55.753215' %}
{% set lon = '37.622504' %}
{% endif %}
<h1 class=\"border-line\">Интим карта</h1>
<p class=\"mb-lg-4\">
На карте обозначено местоположение зарегистрированных анкет.
Кликнув на маркер Вы узнаете краткую информацию о девушке.
</p>
<div class=\"map p-2 p-md-3 p-lg-4 mb-3 mb-md-4\">
<div class=\"d-flex justify-content-center justify-content-md-between mb-2 mb-md-3 mb-lg-4\">
<button class=\"btn btn-secondary btn-collapse-filter\" type=\"button\" id=\"filter-expand\">
<svg class=\"icon mr-1\">
<use xlink:href=\"{{ asset('assets_domain/images/icons/svg-library.svg', 'nodomainConfig') }}#icon-dropdown\"></use>
</svg>
Расширенный поиск
</button>
<div class=\"d-flex align-items-center collapse-reset ml-2\">
<span class=\"d-none d-md-block\" id=\"count-parameters\">Выбрано <em data-count-parameters>0</em> параметров</span>
<button class=\"btn btn-secondary btn-collapse-reset ml-md-2\" id=\"reset-form-2\" data-reset>
<svg class=\"icon mr-1\">
<use xlink:href=\"{{ asset('assets_domain/images/icons/svg-library.svg', 'nodomainConfig') }}#icon-reset\"></use>
</svg>
Сброс
</button>
</div>
</div>
<div id=\"collapseFilterContainer\"></div>
\t\t<div class=\"map-wrap skeleton skeleton--map loading\" id=\"map-wrap\"></div>
{# <div class=\"map-wrap loading\" id=\"map-wrap\">
<img src=\"{{ asset('assets/images/preloader.svg','basicConfig') }}\" class=\"preloader\" id=\"preloader\" style=\"display: none;\" />
<div class=\"map\" id=\"map\" style=\"width: 100%; height: 700px;\"
data-multiple-cities=\"{{ multipleCities }}\"
data-city-uri-idenity=\"{{ cityUriIdentity }}\"
data-city-latitude=\"{{ lat }}\"
data-city-longitude=\"{{ lon }}\"
data-locale=\"{{ app.request.locale }}\"
data-path=\"{{ path('map.filter', {city:cityUriIdentity}) }}\"
data-icon-single=\"islands#redIcon\"
data-icon-saloon=\"islands#violetIcon\"
data-icon-cluster=\"islands#invertedRedClusterIcons\"
\t\t\t\tdata-avatar-path = \"{{ responsive_asset('replace-path', 'profile_media_avatar', \"200x280\", \"jpg\") }}\"
data-photo-path = \"{{ responsive_asset('replace-path', 'profile_media', \"200x280\", \"jpg\") }}\"
data-thumb-path = \"{{ responsive_asset('replace-path', 'saloon_media_thumb', \"200x280\", \"jpg\") }}\"
data-process-profile-shows-url = \"{{ path('map.increment_profile_shows', multipleCities ? {city:cityUriIdentity} : {}) }}\"
></div>
</div> #}
</div>
{% endblock %}
{% block javascripts %}
{{ parent() }}
\t{% if city is defined and city.mapCoordinate.latitude %}
\t\t{% set lat = city.mapCoordinate.latitude %}
\t\t{% set lon = city.mapCoordinate.longitude %}
\t{% else %}
\t\t{% set lat = '55.753215' %}
\t\t{% set lon = '37.622504' %}
\t{% endif %}
\t<script src=\"{{ asset('bundles/fosjsrouting/js/router.min.js') }}\" defer></script>
\t<script src=\"{{ path('fos_js_routing_js', { callback: 'fos.Router.setData' }) }}\" defer></script>{##}
\t<script src=\"https://api-maps.yandex.ru/2.1/?lang=ru_RU&onload=initMap&ns=ym\" defer></script>
\t<script>
const mapConfig = {
\t\t\tid:\"map-wrap\",
\t\t\tmultiple_cities:\"{{ multipleCities }}\",
\t\t\troutes_url: \"{{ multipleCities == 0 ? '/js/fos_js_routes.json' : '/js/fos_js_routes_city_prefixed.json' }}\",
\t\t\tcity_uri_identity:\"{{ cityUriIdentity }}\",
\t\t\tcity_latitude:\"{{ lat }}\",
\t\t\tcity_longitude:\"{{ lon }}\",
\t\t\tlocale:\"{{ app.request.locale }}\",
\t\t\tpath:\"{{ path('map.filter', {city:cityUriIdentity}) }}\",
\t\t\ticon_profile:\"{{ asset('assets/images/map/profile.svg') }}\",
\t\t\ticon_profile_active:\"{{ asset('assets/images/map/profile-active.svg') }}\",
\t\t\ticon_profile_hover:\"{{ asset('assets/images/map/profile-hover.svg') }}\",
\t\t\ticon_saloon:\"{{ asset('assets/images/map/saloon.svg') }}\",
\t\t\ticon_saloon_active:\"{{ asset('assets/images/map/saloon-active.svg') }}\",
\t\t\ticon_saloon_hover:\"{{ asset('assets/images/map/saloon-hover.svg') }}\",
\t\t\ticon_masseur:\"{{ asset('assets/images/map/masseur.svg') }}\",
\t\t\ticon_masseur_active:\"{{ asset('assets/images/map/masseur-active.svg') }}\",
\t\t\ticon_masseur_hover:\"{{ asset('assets/images/map/masseur-hover.svg') }}\",
\t\t\ticon_cluster_small:\"{{ asset('assets/images/map/cluster-small.svg') }}\",
\t\t\ticon_cluster_medium:\"{{ asset('assets/images/map/cluster-medium.svg') }}\",
\t\t\ticon_cluster_big:\"{{ asset('assets/images/map/cluster-big.svg') }}\",
\t\t\tavatar_path : \"{{ responsive_asset('replace_path', 'profile_media_avatar', \"200x280\", \"jpg\") }}\",
\t\t\tphoto_path : \"{{ responsive_asset('replace_path', 'profile_media', \"200x280\", \"jpg\") }}\",
\t\t\tthumb_path : \"{{ responsive_asset('replace_path', 'saloon_media_thumb', \"200x280\", \"jpg\") }}\",
\t\t\tprocess_profile_shows_url : \"{{ path('map.increment_profile_shows', multipleCities ? {city:cityUriIdentity} : {}) }}\"
\t\t};
var isMapInitialized = false;
\t\tvar yaMapLoaded = false;
function initMap() {
\t\t\twindow.ymap = new ym.Map(document.getElementById('map-wrap'), {
\t\t\t\tcenter: [\"{{ lat }}\", \"{{ lon }}\"],
\t\t\t\tzoom: 8,
\t\t\t\tcontrols: ['zoomControl', 'typeSelector', 'fullscreenControl']
\t\t\t});
\t\t\tyaMapLoaded = true;
\t\t}
\t\twindow.profileShowed = function ({id}) {
\t\t\tif (!id) return;
\t\t\tfetch('{{ path('profile_ctr.increase_shows') }}', {
\t\t\t\tmethod: \"POST\",
\t\t\t\tbody: JSON.stringify({ profiles: [id], source: 'map' }),
\t\t\t});
\t\t}
window.stations = {
\t\t\t{%- for station in stations() -%}{{- station.id -}}:{icon:`{%- include 'components/metro/icon_generate.partial.twig' with {data: station|station_lines} -%}`,name:`{{- station.name -}}`},{%- endfor -%}
\t\t};
document.addEventListener('DOMContentLoaded', function () {
\t\t\tfunction loadForm() {
\t\t\t\tfetch('{{ path('map.form', {city: cityUriIdentity}) }}', {
\t\t\t\t\tmode: \"cors\",
\t\t\t\t\timportance: \"low\",
\t\t\t\t\tmethod: \"POST\",
\t\t\t\t\theaders: {
\t\t\t\t\t\t\"Content-Type\": \"application/x-www-form-urlencoded\",
\t\t\t\t\t\t\"X-Requested-With\": \"XMLHttpRequest\"
\t\t\t\t\t},
\t\t\t\t}).then(response => {
\t\t\t\t\tif (response.status < 300) {
\t\t\t\t\t\treturn response.text();
\t\t\t\t\t} else {
\t\t\t\t\t\tconsole.warn(\"🤔\");
\t\t\t\t\t\treturn null;
\t\t\t\t\t}
\t\t\t\t}).then(response => {
\t\t\t\t\tdocument.getElementById('collapseFilterContainer').innerHTML = response;
\t\t\t\t\tfilterLoader();
const expandButton = document.getElementById('filter-expand');
const expandElement = document.getElementById('collapseFilter');
expandButton.addEventListener('click', () => {
expandButton.classList.toggle('open');
expandElement.classList.toggle('show');
});
\t\t\t\t});
\t\t\t}
\t\t\tloadForm();
\t\t\tfunction filterLoader() {
\t\t\t\tconst stringifyData = `{\"city_id\":\"\${document.getElementById('filter_map_form_city_id').value}\",\"_token\":\"\${document.getElementById('filter_map_form__token').value}\"}`;
\t\t\t\tfetch(\"{{ path('map.filter', {city:cityUriIdentity}) }}\", {
\t\t\t\t\tmethod: \"POST\",
\t\t\t\t\theaders: {
\t\t\t\t\t\t'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
\t\t\t\t\t\t'X-Requested-With': 'XMLHttpRequest',
\t\t\t\t\t},
\t\t\t\t\tbody: new URLSearchParams({ form: stringifyData }).toString(),
\t\t\t\t})
\t\t\t\t\t.then(response => response.json())
\t\t\t\t\t.then(data => {
\t\t\t\t\t\tconst mapLoadedInterval = setInterval(()=>{
\t\t\t\t\t\t\tif (yaMapLoaded) {
\t\t\t\t\t\t\t\tnew MapPage(mapConfig);
\t\t\t\t\t\t\t\tdocument.dispatchEvent(new CustomEvent('map:data:loaded', { detail: { data, stringifyData } }));
\t\t\t\t\t\t\t\tclearInterval(mapLoadedInterval)
\t\t\t\t\t\t\t}
\t\t\t\t\t\t}, 200)
\t\t\t\t\t})
\t\t\t\t\t.catch(error => console.error(error));
\t\t\t}
\t\t});
\t</script>
{% endblock %}
{% block modal %}
\t{{- parent() -}}
\t{{- include('components/modals/map-filter.html.twig') -}}
{% endblock %}
", "Map/page.html.twig", "/app/templates/Map/page.html.twig");
}
}