var/cache/dev/twig/62/62bc10383f1e3571c0eeb09a53b4dc4d.php line 46

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\Sandbox\SecurityNotAllowedTestError;
  13. use Twig\Source;
  14. use Twig\Template;
  15. use Twig\TemplateWrapper;
  16. /* @UVDeskCoreFramework/Templates/layout.html.twig */
  17. class __TwigTemplate_8cfa0a7f8f70e8eaabebc5fb27778255 extends Template
  18. {
  19. private Source $source;
  20. /**
  21. * @var array<string, Template>
  22. */
  23. private array $macros = [];
  24. public function __construct(Environment $env)
  25. {
  26. parent::__construct($env);
  27. $this->source = $this->getSourceContext();
  28. $this->parent = false;
  29. $this->blocks = [
  30. 'title' => [$this, 'block_title'],
  31. 'templateCSS' => [$this, 'block_templateCSS'],
  32. 'sidebar' => [$this, 'block_sidebar'],
  33. 'pageWrapper' => [$this, 'block_pageWrapper'],
  34. 'pageHeader' => [$this, 'block_pageHeader'],
  35. 'pageContent' => [$this, 'block_pageContent'],
  36. 'footer' => [$this, 'block_footer'],
  37. ];
  38. }
  39. protected function doDisplay(array $context, array $blocks = []): iterable
  40. {
  41. $macros = $this->macros;
  42. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  43. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "@UVDeskCoreFramework/Templates/layout.html.twig"));
  44. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  45. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "@UVDeskCoreFramework/Templates/layout.html.twig"));
  46. // line 1
  47. yield "<!DOCTYPE html>
  48. <html>
  49. <head>
  50. <title>";
  51. // line 4
  52. yield from $this->unwrap()->yieldBlock('title', $context, $blocks);
  53. yield "</title>
  54. <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">
  55. <link rel=\"icon\" type=\"image/x-icon\" sizes=\"16x16 32x32 48x48\" href=\"";
  56. // line 6
  57. yield (string) $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("favicon.ico"), "html", null, true);
  58. yield "\" />
  59. <!-- Stylesheets -->
  60. <link href=\"";
  61. // line 9
  62. yield (string) $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("bundles/uvdeskcoreframework/css/_uikit.css"), "html", null, true);
  63. yield "\" type=\"text/css\" rel=\"stylesheet\" media=\"all\" />
  64. <link href=\"";
  65. // line 10
  66. yield (string) $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("bundles/uvdeskcoreframework/css/_custom.css"), "html", null, true);
  67. yield "\" type=\"text/css\" rel=\"stylesheet\" media=\"all\" />
  68. <link href=\"//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css\" type=\"text/css\" rel=\"stylesheet\">
  69. <link href=\"https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.17.47/css/bootstrap-datetimepicker.min.css\" type=\"text/css\" rel=\"stylesheet\">
  70. <!-- Custom CSS -->
  71. ";
  72. // line 15
  73. $context["websiteConfiguration"] = CoreExtension::getAttribute($this->env, $this->source, (isset($context["user_service"]) || array_key_exists("user_service", $context) ? $context["user_service"] : (function () { throw new RuntimeError('Variable "user_service" does not exist.', 15, $this->source); })()), "getWebsiteConfiguration", ["knowledgebase"], "method", false, false, false, 15);
  74. // line 16
  75. yield " ";
  76. $context["website"] = CoreExtension::getAttribute($this->env, $this->source, (isset($context["user_service"]) || array_key_exists("user_service", $context) ? $context["user_service"] : (function () { throw new RuntimeError('Variable "user_service" does not exist.', 16, $this->source); })()), "getWebsiteDetails", ["helpdesk"], "method", false, false, false, 16);
  77. // line 17
  78. yield "
  79. ";
  80. // line 18
  81. yield (string) Twig\Extension\CoreExtension::include($this->env, $context, "@UVDeskCoreFramework/Templates/lightskin.html.twig");
  82. yield "
  83. <!-- Custom Stylesheets -->
  84. ";
  85. // line 21
  86. $context['_parent'] = $context;
  87. $context['_seq'] = CoreExtension::ensureTraversable(CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["uvdesk_extensibles"]) || array_key_exists("uvdesk_extensibles", $context) ? $context["uvdesk_extensibles"] : (function () { throw new RuntimeError('Variable "uvdesk_extensibles" does not exist.', 21, $this->source); })()), "getRegisteredComponent", ["Webkul\\UVDesk\\CoreFrameworkBundle\\Dashboard\\Dashboard"], "method", false, false, false, 21), "getDashboardTemplate", [], "method", false, false, false, 21), "getStylesheetResources", [], "method", false, false, false, 21));
  88. foreach ($context['_seq'] as $context["_key"] => $context["stylesheet"]) {
  89. // line 22
  90. yield " <link href=\"";
  91. yield (string) $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl($context["stylesheet"]), "html", null, true);
  92. yield "\" type=\"text/css\" rel=\"stylesheet\" media=\"all\" />
  93. ";
  94. }
  95. $_parent = $context['_parent'];
  96. unset($context['_seq'], $context['_key'], $context['stylesheet'], $context['_parent']);
  97. $context = array_intersect_key($context, $_parent);
  98. $context += $_parent;
  99. // line 24
  100. yield "
  101. ";
  102. // line 25
  103. yield from $this->unwrap()->yieldBlock('templateCSS', $context, $blocks);
  104. // line 26
  105. yield "
  106. <!-- Scripts -->
  107. <script src=\"https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js\"></script>
  108. <script src=\"https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.13.1/underscore-min.js\"></script>
  109. <script src=\"https://cdnjs.cloudflare.com/ajax/libs/backbone.js/1.4.0/backbone-min.js\"></script>
  110. <script src=\"https://cdnjs.cloudflare.com/ajax/libs/backbone.validation/0.11.5/backbone-validation-min.js\"></script>
  111. <script src=\"https://cdnjs.cloudflare.com/ajax/libs/backbone.paginator/2.0.8/backbone.paginator.min.js\"></script>
  112. <script src=\"";
  113. // line 33
  114. yield (string) $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("bundles/uvdeskcoreframework/js/_dropdown.js"), "html", null, true);
  115. yield "\"></script>
  116. <script src=\"https://cdnjs.cloudflare.com/ajax/libs/d3/6.2.0/d3.min.js\"></script>
  117. <script src=\"";
  118. // line 35
  119. yield (string) $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("bundles/uvdeskcoreframework/js/viewer.js"), "html", null, true);
  120. yield "\"></script>
  121. <script src=\"https://code.jquery.com/ui/1.12.1/jquery-ui.js\"></script>
  122. <script src=\"https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.0/moment.min.js\"></script>\t
  123. <script src=\"https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.17.47/js/bootstrap-datetimepicker.min.js\"></script>
  124. </head>
  125. ";
  126. // line 41
  127. $context["bodyClass"] = "";
  128. // line 42
  129. yield " ";
  130. $context["bodySkinClass"] = "";
  131. // line 43
  132. yield "
  133. ";
  134. // line 44
  135. if ((CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["app"]) || array_key_exists("app", $context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.', 44, $this->source); })()), "request", [], "any", false, false, false, 44), "locale", [], "any", false, false, false, 44) == "ar")) {
  136. // line 45
  137. yield " ";
  138. $context["bodyClass"] = "uv-rtl";
  139. // line 46
  140. yield " ";
  141. }
  142. // line 47
  143. yield "
  144. <body class=\"";
  145. // line 48
  146. yield (string) $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape((((isset($context["bodySkinClass"]) || array_key_exists("bodySkinClass", $context) ? $context["bodySkinClass"] : (function () { throw new RuntimeError('Variable "bodySkinClass" does not exist.', 48, $this->source); })()) . " ") . (isset($context["bodyClass"]) || array_key_exists("bodyClass", $context) ? $context["bodyClass"] : (function () { throw new RuntimeError('Variable "bodyClass" does not exist.', 48, $this->source); })())), "html", null, true);
  147. yield "\">
  148. <div class=\"uv-notifications-wrapper\">
  149. <noscript>
  150. <div class=\"uv-notification page-load uv-error\">
  151. <p>";
  152. // line 52
  153. yield $this->env->getExtension('Symfony\Bridge\Twig\Extension\TranslationExtension')->trans("Your browser does not support JavaScript or You disabled JavaScript, Please enable those !", [], "messages");
  154. yield "</p>
  155. </div>
  156. <style>.uv-loader-view {display: none;}</style>
  157. </noscript>
  158. ";
  159. // line 57
  160. if ((CoreExtension::getAttribute($this->env, $this->source, (isset($context["uvdesk_service"]) || array_key_exists("uvdesk_service", $context) ? $context["uvdesk_service"] : (function () { throw new RuntimeError('Variable "uvdesk_service" does not exist.', 57, $this->source); })()), "requestHeadersSent", [], "method", false, false, false, 57) == false)) {
  161. // line 58
  162. yield " ";
  163. $context['_parent'] = $context;
  164. $context['_seq'] = CoreExtension::ensureTraversable(CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["app"]) || array_key_exists("app", $context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.', 58, $this->source); })()), "session", [], "any", false, false, false, 58), "flashbag", [], "any", false, false, false, 58), "get", ["success"], "method", false, false, false, 58));
  165. foreach ($context['_seq'] as $context["_key"] => $context["flashMessage"]) {
  166. // line 59
  167. yield " <div class=\"uv-notification page-load uv-success\">
  168. <span class=\"uv-notification-close\"></span>
  169. <p>";
  170. // line 61
  171. yield (string) $context["flashMessage"];
  172. yield "</p>
  173. </div>
  174. ";
  175. }
  176. $_parent = $context['_parent'];
  177. unset($context['_seq'], $context['_key'], $context['flashMessage'], $context['_parent']);
  178. $context = array_intersect_key($context, $_parent);
  179. $context += $_parent;
  180. // line 64
  181. yield "
  182. ";
  183. // line 65
  184. $context['_parent'] = $context;
  185. $context['_seq'] = CoreExtension::ensureTraversable(CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["app"]) || array_key_exists("app", $context) ? $context["app"] : (function () { throw new RuntimeError('Variable "app" does not exist.', 65, $this->source); })()), "session", [], "any", false, false, false, 65), "flashbag", [], "any", false, false, false, 65), "get", ["warning"], "method", false, false, false, 65));
  186. foreach ($context['_seq'] as $context["_key"] => $context["flashMessage"]) {
  187. // line 66
  188. yield " <div class=\"uv-notification page-load uv-error\">
  189. <span class=\"uv-notification-close\"></span>
  190. <p>";
  191. // line 68
  192. yield (string) $context["flashMessage"];
  193. yield "</p>
  194. </div>
  195. ";
  196. }
  197. $_parent = $context['_parent'];
  198. unset($context['_seq'], $context['_key'], $context['flashMessage'], $context['_parent']);
  199. $context = array_intersect_key($context, $_parent);
  200. $context += $_parent;
  201. // line 71
  202. yield " ";
  203. }
  204. // line 72
  205. yield " </div>
  206. <div class=\"uv-loader-view\">
  207. <div class=\"uv-loader\">
  208. <span></span>
  209. <span></span>
  210. <span></span>
  211. </div>
  212. </div>
  213. <div class=\"uv-pop-up-overlay\" id=\"confirm-modal\">
  214. <div class=\"uv-pop-up-box uv-pop-up-slim\">
  215. <span class=\"uv-pop-up-close\"></span>
  216. <h2>";
  217. // line 85
  218. yield (string) $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("Confirm Action"), "html", null, true);
  219. yield "</h2>
  220. <p>";
  221. // line 86
  222. yield (string) $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("Are you sure? You want to perform this action."), "html", null, true);
  223. yield "</p>
  224. <div class=\"uv-pop-up-actions\">
  225. <a href=\"#\" class=\"uv-btn uv-btn-error confirm\">";
  226. // line 89
  227. yield (string) $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("Confirm"), "html", null, true);
  228. yield "</a>
  229. <a href=\"#\" class=\"uv-btn cancel\">";
  230. // line 90
  231. yield (string) $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("Cancel"), "html", null, true);
  232. yield "</a>
  233. </div>
  234. </div>
  235. </div>
  236. ";
  237. // line 95
  238. $context["currentUser"] = CoreExtension::getAttribute($this->env, $this->source, (isset($context["user_service"]) || array_key_exists("user_service", $context) ? $context["user_service"] : (function () { throw new RuntimeError('Variable "user_service" does not exist.', 95, $this->source); })()), "getSessionUser", [], "method", false, false, false, 95);
  239. // line 96
  240. yield " ";
  241. if (( !Twig\Extension\CoreExtension::testEmpty((isset($context["currentUser"]) || array_key_exists("currentUser", $context) ? $context["currentUser"] : (function () { throw new RuntimeError('Variable "currentUser" does not exist.', 96, $this->source); })())) && !Twig\Extension\CoreExtension::testEmpty(CoreExtension::getAttribute($this->env, $this->source, (isset($context["currentUser"]) || array_key_exists("currentUser", $context) ? $context["currentUser"] : (function () { throw new RuntimeError('Variable "currentUser" does not exist.', 96, $this->source); })()), "getAgentInstance", [], "method", false, false, false, 96)))) {
  242. // line 97
  243. yield " ";
  244. $context["currentUserDetails"] = CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["currentUser"]) || array_key_exists("currentUser", $context) ? $context["currentUser"] : (function () { throw new RuntimeError('Variable "currentUser" does not exist.', 97, $this->source); })()), "getAgentInstance", [], "method", false, false, false, 97), "getPartialDetails", [], "method", false, false, false, 97);
  245. // line 98
  246. yield " ";
  247. }
  248. // line 99
  249. yield "
  250. ";
  251. // line 100
  252. yield from $this->unwrap()->yieldBlock('sidebar', $context, $blocks);
  253. // line 105
  254. yield "
  255. ";
  256. // line 106
  257. yield from $this->unwrap()->yieldBlock('pageWrapper', $context, $blocks);
  258. // line 119
  259. yield "
  260. ";
  261. // line 120
  262. yield from $this->unwrap()->yieldBlock('footer', $context, $blocks);
  263. // line 213
  264. yield "
  265. ";
  266. // line 215
  267. yield " ";
  268. $context['_parent'] = $context;
  269. $context['_seq'] = CoreExtension::ensureTraversable(CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, CoreExtension::getAttribute($this->env, $this->source, (isset($context["uvdesk_extensibles"]) || array_key_exists("uvdesk_extensibles", $context) ? $context["uvdesk_extensibles"] : (function () { throw new RuntimeError('Variable "uvdesk_extensibles" does not exist.', 215, $this->source); })()), "getRegisteredComponent", ["Webkul\\UVDesk\\CoreFrameworkBundle\\Dashboard\\Dashboard"], "method", false, false, false, 215), "getDashboardTemplate", [], "method", false, false, false, 215), "getJavascriptResources", [], "method", false, false, false, 215));
  270. foreach ($context['_seq'] as $context["_key"] => $context["javascript"]) {
  271. // line 216
  272. yield " <script src=\"";
  273. yield (string) $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl($context["javascript"]), "html", null, true);
  274. yield "\" type=\"text/javascript\"></script>
  275. ";
  276. }
  277. $_parent = $context['_parent'];
  278. unset($context['_seq'], $context['_key'], $context['javascript'], $context['_parent']);
  279. $context = array_intersect_key($context, $_parent);
  280. $context += $_parent;
  281. // line 218
  282. yield " </body>
  283. </html>";
  284. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  285. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  286. yield from [];
  287. }
  288. // line 4
  289. /**
  290. * @return iterable<null|scalar|\Stringable>
  291. */
  292. public function block_title(array $context, array $blocks = []): iterable
  293. {
  294. $macros = $this->macros;
  295. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  296. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "title"));
  297. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  298. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "title"));
  299. yield "HelpDesk";
  300. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  301. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  302. yield from [];
  303. }
  304. // line 25
  305. /**
  306. * @return iterable<null|scalar|\Stringable>
  307. */
  308. public function block_templateCSS(array $context, array $blocks = []): iterable
  309. {
  310. $macros = $this->macros;
  311. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  312. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "templateCSS"));
  313. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  314. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "templateCSS"));
  315. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  316. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  317. yield from [];
  318. }
  319. // line 100
  320. /**
  321. * @return iterable<null|scalar|\Stringable>
  322. */
  323. public function block_sidebar(array $context, array $blocks = []): iterable
  324. {
  325. $macros = $this->macros;
  326. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  327. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "sidebar"));
  328. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  329. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "sidebar"));
  330. // line 101
  331. yield " ";
  332. if ((array_key_exists("currentUser", $context) && !Twig\Extension\CoreExtension::testEmpty((isset($context["currentUser"]) || array_key_exists("currentUser", $context) ? $context["currentUser"] : (function () { throw new RuntimeError('Variable "currentUser" does not exist.', 101, $this->source); })())))) {
  333. // line 102
  334. yield " ";
  335. yield from $this->load("@UVDeskCoreFramework/Templates/sidebar.html.twig", 102)->unwrap()->yield($context);
  336. // line 103
  337. yield " ";
  338. }
  339. // line 104
  340. yield " ";
  341. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  342. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  343. yield from [];
  344. }
  345. // line 106
  346. /**
  347. * @return iterable<null|scalar|\Stringable>
  348. */
  349. public function block_pageWrapper(array $context, array $blocks = []): iterable
  350. {
  351. $macros = $this->macros;
  352. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  353. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "pageWrapper"));
  354. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  355. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "pageWrapper"));
  356. // line 107
  357. yield " <div class=\"uv-paper\">
  358. ";
  359. // line 108
  360. yield from $this->unwrap()->yieldBlock('pageHeader', $context, $blocks);
  361. // line 111
  362. yield "
  363. <div class=\"uv-wrapper\">
  364. <div class=\"uv-container\">
  365. ";
  366. // line 114
  367. yield from $this->unwrap()->yieldBlock('pageContent', $context, $blocks);
  368. // line 115
  369. yield " </div>
  370. </div>
  371. </div>
  372. ";
  373. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  374. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  375. yield from [];
  376. }
  377. // line 108
  378. /**
  379. * @return iterable<null|scalar|\Stringable>
  380. */
  381. public function block_pageHeader(array $context, array $blocks = []): iterable
  382. {
  383. $macros = $this->macros;
  384. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  385. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "pageHeader"));
  386. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  387. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "pageHeader"));
  388. // line 109
  389. yield " ";
  390. yield from $this->load("@UVDeskCoreFramework/Templates/header.html.twig", 109)->unwrap()->yield($context);
  391. // line 110
  392. yield " ";
  393. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  394. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  395. yield from [];
  396. }
  397. // line 114
  398. /**
  399. * @return iterable<null|scalar|\Stringable>
  400. */
  401. public function block_pageContent(array $context, array $blocks = []): iterable
  402. {
  403. $macros = $this->macros;
  404. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  405. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "pageContent"));
  406. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  407. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "pageContent"));
  408. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  409. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  410. yield from [];
  411. }
  412. // line 120
  413. /**
  414. * @return iterable<null|scalar|\Stringable>
  415. */
  416. public function block_footer(array $context, array $blocks = []): iterable
  417. {
  418. $macros = $this->macros;
  419. $__internal_5a27a8ba21ca79b61932376b2fa922d2 = $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  420. $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "footer"));
  421. $__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  422. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block", "footer"));
  423. // line 121
  424. yield " <script>
  425. // Show loader by default
  426. document.addEventListener(\x27DOMContentLoaded\x27, function() {
  427. // Ensure the loader is visible
  428. document.querySelector(\x27.uv-loader-view\x27).style.display = \x27block\x27;
  429. });
  430. // Hide loader once the page is fully loaded
  431. window.onload = function() {
  432. // Hide the loader
  433. if (document.querySelector(\x27.uv-loader-view\x27))
  434. document.querySelector(\x27.uv-loader-view\x27).style.display = \x27none\x27;
  435. };
  436. </script>
  437. <script src=\"";
  438. // line 136
  439. yield (string) $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\AssetExtension']->getAssetUrl("bundles/uvdeskcoreframework/js/_common.js"), "html", null, true);
  440. yield "\"></script>
  441. ";
  442. // line 137
  443. yield from $this->load("@UVDeskCoreFramework/Templates/pagination.html.twig", 137)->unwrap()->yield($context);
  444. // line 138
  445. yield "
  446. ";
  447. // line 140
  448. yield " <div class=\"uv-pop-up-overlay\" id=\"confirm-modal\">
  449. <div class=\"uv-pop-up-box uv-pop-up-slim\">
  450. <span class=\"uv-pop-up-close\"></span>
  451. <h2>";
  452. // line 143
  453. yield (string) $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("Confirm Action"), "html", null, true);
  454. yield "</h2>
  455. <p>";
  456. // line 144
  457. yield (string) $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("Are you sure? You want to perform this action."), "html", null, true);
  458. yield "</p>
  459. <div class=\"uv-pop-up-actions\">
  460. <a href=\"#\" class=\"uv-btn uv-btn-error confirm\">";
  461. // line 147
  462. yield (string) $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("Confirm"), "html", null, true);
  463. yield "</a>
  464. <a href=\"#\" class=\"uv-btn cancel\">";
  465. // line 148
  466. yield (string) $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("Cancel"), "html", null, true);
  467. yield "</a>
  468. </div>
  469. </div>
  470. </div>
  471. ";
  472. // line 154
  473. yield " <script type=\"text/template\" id=\"loader-tmp\">
  474. <div class=\"uv-loader\">
  475. <span></span>
  476. <span></span>
  477. <span></span>
  478. </div>
  479. </script>
  480. ";
  481. // line 163
  482. yield " <script type=\"text/template\" id=\"full-view-loader\">
  483. <div class=\"uv-loader-view\">
  484. <div class=\"uv-loader\">
  485. <span></span>
  486. <span></span>
  487. <span></span>
  488. </div>
  489. </div>
  490. </script>
  491. ";
  492. // line 174
  493. yield " <script type=\"text/template\" id=\"notification-template\">
  494. <div class=\"uv-notification <% if(alertClass == \x27danger\x27) { %>uv-error<% } else { %> <%= \x27uv-\x27 + alertClass %> <% } %>\">
  495. <span class=\"uv-notification-close\"></span>
  496. <p><%= alertMessage %> </p>
  497. </div>
  498. </script>
  499. <script type=\"text/javascript\">
  500. var warningResponse = {
  501. \x27alertClass\x27 : \x27danger\x27,
  502. \x27alertMessage\x27 : \x27";
  503. // line 184
  504. yield (string) $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("Error : Something went wrong, please try again later"), "html", null, true);
  505. yield "\x27,
  506. };
  507. </script>
  508. ";
  509. // line 187
  510. if ((array_key_exists("currentUser", $context) && !Twig\Extension\CoreExtension::testEmpty((isset($context["currentUser"]) || array_key_exists("currentUser", $context) ? $context["currentUser"] : (function () { throw new RuntimeError('Variable "currentUser" does not exist.', 187, $this->source); })())))) {
  511. // line 188
  512. yield " <script type=\"text/javascript\">
  513. setInterval(async () => {
  514. try {
  515. const response = await fetch(\x27";
  516. // line 191
  517. yield (string) $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("helpdesk_member_session_check");
  518. yield "\x27, {
  519. credentials: \x27include\x27
  520. });
  521. if (! response.ok) {
  522. if (
  523. response.status === 401
  524. || response.status === 440
  525. ) {
  526. window.location.href = \x27";
  527. // line 200
  528. yield (string) $this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("helpdesk_member_handle_login");
  529. yield "\x27;
  530. }
  531. } else {
  532. const data = await response.json();
  533. console.log(\x27Session status:\x27, data.session);
  534. }
  535. } catch (err) {
  536. console.error(\x27Error checking session:\x27, err);
  537. }
  538. }, 20 * 60 * 1000); // Every 20 minutes
  539. </script>
  540. ";
  541. }
  542. // line 212
  543. yield " ";
  544. $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  545. $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  546. yield from [];
  547. }
  548. /**
  549. * @codeCoverageIgnore
  550. */
  551. public function getTemplateName(): string
  552. {
  553. return "@UVDeskCoreFramework/Templates/layout.html.twig";
  554. }
  555. /**
  556. * @codeCoverageIgnore
  557. */
  558. public function isTraitable(): bool
  559. {
  560. return false;
  561. }
  562. /**
  563. * @codeCoverageIgnore
  564. */
  565. public function getDebugInfo(): array
  566. {
  567. return array ( 618 => 212, 603 => 200, 591 => 191, 586 => 188, 584 => 187, 578 => 184, 566 => 174, 554 => 163, 544 => 154, 536 => 148, 532 => 147, 526 => 144, 522 => 143, 517 => 140, 514 => 138, 512 => 137, 508 => 136, 491 => 121, 478 => 120, 456 => 114, 445 => 110, 442 => 109, 429 => 108, 415 => 115, 413 => 114, 408 => 111, 406 => 108, 403 => 107, 390 => 106, 379 => 104, 376 => 103, 373 => 102, 370 => 101, 357 => 100, 335 => 25, 312 => 4, 300 => 218, 290 => 216, 285 => 215, 282 => 213, 280 => 120, 277 => 119, 275 => 106, 272 => 105, 270 => 100, 267 => 99, 264 => 98, 261 => 97, 258 => 96, 256 => 95, 248 => 90, 244 => 89, 238 => 86, 234 => 85, 219 => 72, 216 => 71, 206 => 68, 202 => 66, 198 => 65, 195 => 64, 185 => 61, 181 => 59, 176 => 58, 174 => 57, 166 => 52, 159 => 48, 156 => 47, 153 => 46, 150 => 45, 148 => 44, 145 => 43, 142 => 42, 140 => 41, 131 => 35, 126 => 33, 117 => 26, 115 => 25, 112 => 24, 102 => 22, 98 => 21, 92 => 18, 89 => 17, 86 => 16, 84 => 15, 76 => 10, 72 => 9, 66 => 6, 61 => 4, 56 => 1,);
  568. }
  569. public function getSourceContext(): Source
  570. {
  571. return new Source("<!DOCTYPE html>
  572. <html>
  573. <head>
  574. <title>{% block title %}HelpDesk{% endblock %}</title>
  575. <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">
  576. <link rel=\"icon\" type=\"image/x-icon\" sizes=\"16x16 32x32 48x48\" href=\"{{ asset(\x27favicon.ico\x27) }}\" />
  577. <!-- Stylesheets -->
  578. <link href=\"{{ asset(\x27bundles/uvdeskcoreframework/css/_uikit.css\x27) }}\" type=\"text/css\" rel=\"stylesheet\" media=\"all\" />
  579. <link href=\"{{ asset(\x27bundles/uvdeskcoreframework/css/_custom.css\x27) }}\" type=\"text/css\" rel=\"stylesheet\" media=\"all\" />
  580. <link href=\"//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css\" type=\"text/css\" rel=\"stylesheet\">
  581. <link href=\"https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.17.47/css/bootstrap-datetimepicker.min.css\" type=\"text/css\" rel=\"stylesheet\">
  582. <!-- Custom CSS -->
  583. {% set websiteConfiguration = user_service.getWebsiteConfiguration(\x27knowledgebase\x27) %}
  584. {% set website = user_service.getWebsiteDetails(\x27helpdesk\x27) %}
  585. {{ include(\x27@UVDeskCoreFramework/Templates/lightskin.html.twig\x27) }}
  586. <!-- Custom Stylesheets -->
  587. {% for stylesheet in uvdesk_extensibles.getRegisteredComponent(\x27Webkul\\\\UVDesk\\\\CoreFrameworkBundle\\\\Dashboard\\\\Dashboard\x27).getDashboardTemplate().getStylesheetResources() %}
  588. <link href=\"{{ asset(stylesheet) }}\" type=\"text/css\" rel=\"stylesheet\" media=\"all\" />
  589. {% endfor %}
  590. {% block templateCSS %}{% endblock %}
  591. <!-- Scripts -->
  592. <script src=\"https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js\"></script>
  593. <script src=\"https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.13.1/underscore-min.js\"></script>
  594. <script src=\"https://cdnjs.cloudflare.com/ajax/libs/backbone.js/1.4.0/backbone-min.js\"></script>
  595. <script src=\"https://cdnjs.cloudflare.com/ajax/libs/backbone.validation/0.11.5/backbone-validation-min.js\"></script>
  596. <script src=\"https://cdnjs.cloudflare.com/ajax/libs/backbone.paginator/2.0.8/backbone.paginator.min.js\"></script>
  597. <script src=\"{{ asset(\x27bundles/uvdeskcoreframework/js/_dropdown.js\x27) }}\"></script>
  598. <script src=\"https://cdnjs.cloudflare.com/ajax/libs/d3/6.2.0/d3.min.js\"></script>
  599. <script src=\"{{ asset(\x27bundles/uvdeskcoreframework/js/viewer.js\x27) }}\"></script>
  600. <script src=\"https://code.jquery.com/ui/1.12.1/jquery-ui.js\"></script>
  601. <script src=\"https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.0/moment.min.js\"></script>\t
  602. <script src=\"https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.17.47/js/bootstrap-datetimepicker.min.js\"></script>
  603. </head>
  604. {% set bodyClass = \x27\x27 %}
  605. {% set bodySkinClass = \x27\x27 %}
  606. {% if app.request.locale == \"ar\" %}
  607. {% set bodyClass = \x27uv-rtl\x27 %}
  608. {% endif %}
  609. <body class=\"{{ bodySkinClass ~ \x27 \x27 ~ bodyClass }}\">
  610. <div class=\"uv-notifications-wrapper\">
  611. <noscript>
  612. <div class=\"uv-notification page-load uv-error\">
  613. <p>{% trans %}Your browser does not support JavaScript or You disabled JavaScript, Please enable those !{% endtrans %}</p>
  614. </div>
  615. <style>.uv-loader-view {display: none;}</style>
  616. </noscript>
  617. {% if uvdesk_service.requestHeadersSent() == false %}
  618. {% for flashMessage in app.session.flashbag.get(\x27success\x27) %}
  619. <div class=\"uv-notification page-load uv-success\">
  620. <span class=\"uv-notification-close\"></span>
  621. <p>{{ flashMessage|raw }}</p>
  622. </div>
  623. {% endfor %}
  624. {% for flashMessage in app.session.flashbag.get(\x27warning\x27) %}
  625. <div class=\"uv-notification page-load uv-error\">
  626. <span class=\"uv-notification-close\"></span>
  627. <p>{{ flashMessage|raw }}</p>
  628. </div>
  629. {% endfor %}
  630. {% endif %}
  631. </div>
  632. <div class=\"uv-loader-view\">
  633. <div class=\"uv-loader\">
  634. <span></span>
  635. <span></span>
  636. <span></span>
  637. </div>
  638. </div>
  639. <div class=\"uv-pop-up-overlay\" id=\"confirm-modal\">
  640. <div class=\"uv-pop-up-box uv-pop-up-slim\">
  641. <span class=\"uv-pop-up-close\"></span>
  642. <h2>{{ \x27Confirm Action\x27|trans }}</h2>
  643. <p>{{ \x27Are you sure? You want to perform this action.\x27|trans }}</p>
  644. <div class=\"uv-pop-up-actions\">
  645. <a href=\"#\" class=\"uv-btn uv-btn-error confirm\">{{ \x27Confirm\x27|trans }}</a>
  646. <a href=\"#\" class=\"uv-btn cancel\">{{ \x27Cancel\x27|trans }}</a>
  647. </div>
  648. </div>
  649. </div>
  650. {% set currentUser = user_service.getSessionUser() %}
  651. {% if currentUser is not empty and currentUser.getAgentInstance() is not empty %}
  652. {% set currentUserDetails = currentUser.getAgentInstance().getPartialDetails() %}
  653. {% endif %}
  654. {% block sidebar %}
  655. {% if currentUser is defined and currentUser is not empty %}
  656. {% include \"@UVDeskCoreFramework/Templates/sidebar.html.twig\" %}
  657. {% endif %}
  658. {% endblock %}
  659. {% block pageWrapper %}
  660. <div class=\"uv-paper\">
  661. {% block pageHeader %}
  662. {% include \"@UVDeskCoreFramework/Templates/header.html.twig\" %}
  663. {% endblock %}
  664. <div class=\"uv-wrapper\">
  665. <div class=\"uv-container\">
  666. {% block pageContent %}{% endblock %}
  667. </div>
  668. </div>
  669. </div>
  670. {% endblock %}
  671. {% block footer %}
  672. <script>
  673. // Show loader by default
  674. document.addEventListener(\x27DOMContentLoaded\x27, function() {
  675. // Ensure the loader is visible
  676. document.querySelector(\x27.uv-loader-view\x27).style.display = \x27block\x27;
  677. });
  678. // Hide loader once the page is fully loaded
  679. window.onload = function() {
  680. // Hide the loader
  681. if (document.querySelector(\x27.uv-loader-view\x27))
  682. document.querySelector(\x27.uv-loader-view\x27).style.display = \x27none\x27;
  683. };
  684. </script>
  685. <script src=\"{{ asset(\x27bundles/uvdeskcoreframework/js/_common.js\x27) }}\"></script>
  686. {% include \"@UVDeskCoreFramework/Templates/pagination.html.twig\" %}
  687. {# Confirm Action Dialog #}
  688. <div class=\"uv-pop-up-overlay\" id=\"confirm-modal\">
  689. <div class=\"uv-pop-up-box uv-pop-up-slim\">
  690. <span class=\"uv-pop-up-close\"></span>
  691. <h2>{{ \x27Confirm Action\x27|trans }}</h2>
  692. <p>{{ \x27Are you sure? You want to perform this action.\x27|trans }}</p>
  693. <div class=\"uv-pop-up-actions\">
  694. <a href=\"#\" class=\"uv-btn uv-btn-error confirm\">{{ \x27Confirm\x27|trans }}</a>
  695. <a href=\"#\" class=\"uv-btn cancel\">{{ \x27Cancel\x27|trans }}</a>
  696. </div>
  697. </div>
  698. </div>
  699. {# Loader Template #}
  700. <script type=\"text/template\" id=\"loader-tmp\">
  701. <div class=\"uv-loader\">
  702. <span></span>
  703. <span></span>
  704. <span></span>
  705. </div>
  706. </script>
  707. {# Full View Loader Template #}
  708. <script type=\"text/template\" id=\"full-view-loader\">
  709. <div class=\"uv-loader-view\">
  710. <div class=\"uv-loader\">
  711. <span></span>
  712. <span></span>
  713. <span></span>
  714. </div>
  715. </div>
  716. </script>
  717. {# Notification Template #}
  718. <script type=\"text/template\" id=\"notification-template\">
  719. <div class=\"uv-notification <% if(alertClass == \x27danger\x27) { %>uv-error<% } else { %> <%= \x27uv-\x27 + alertClass %> <% } %>\">
  720. <span class=\"uv-notification-close\"></span>
  721. <p><%= alertMessage %> </p>
  722. </div>
  723. </script>
  724. <script type=\"text/javascript\">
  725. var warningResponse = {
  726. \x27alertClass\x27 : \x27danger\x27,
  727. \x27alertMessage\x27 : \x27{{ \"Error : Something went wrong, please try again later\"|trans }}\x27,
  728. };
  729. </script>
  730. {% if currentUser is defined and currentUser is not empty %}
  731. <script type=\"text/javascript\">
  732. setInterval(async () => {
  733. try {
  734. const response = await fetch(\x27{{ path(\x27helpdesk_member_session_check\x27) }}\x27, {
  735. credentials: \x27include\x27
  736. });
  737. if (! response.ok) {
  738. if (
  739. response.status === 401
  740. || response.status === 440
  741. ) {
  742. window.location.href = \x27{{ path(\x27helpdesk_member_handle_login\x27) }}\x27;
  743. }
  744. } else {
  745. const data = await response.json();
  746. console.log(\x27Session status:\x27, data.session);
  747. }
  748. } catch (err) {
  749. console.error(\x27Error checking session:\x27, err);
  750. }
  751. }, 20 * 60 * 1000); // Every 20 minutes
  752. </script>
  753. {% endif %}
  754. {% endblock %}
  755. {# Custom Javascript #}
  756. {% for javascript in uvdesk_extensibles.getRegisteredComponent(\x27Webkul\\\\UVDesk\\\\CoreFrameworkBundle\\\\Dashboard\\\\Dashboard\x27).getDashboardTemplate().getJavascriptResources() %}
  757. <script src=\"{{ asset(javascript) }}\" type=\"text/javascript\"></script>
  758. {% endfor %}
  759. </body>
  760. </html>", "@UVDeskCoreFramework/Templates/layout.html.twig", "/var/www/html/uvdesk/vendor/uvdesk/core-framework/Resources/views/Templates/layout.html.twig");
  761. }
  762. }