var/cache/dev/twig/d3/d363bff97154b10e753f7f28f900cd9b.php line 41

Open in your IDE?
  1. <?php
  2. use Twig\Environment;
  3. use Twig\Error\LoaderError;
  4. use Twig\Error\RuntimeError;
  5. use Twig\Extension\CoreExtension;
  6. use Twig\Extension\SandboxExtension;
  7. use Twig\Markup;
  8. use Twig\Sandbox\SecurityError;
  9. use Twig\Sandbox\SecurityNotAllowedTagError;
  10. use Twig\Sandbox\SecurityNotAllowedFilterError;
  11. use Twig\Sandbox\SecurityNotAllowedFunctionError;
  12. use Twig\Source;
  13. use Twig\Template;
  14. /* @FactorySupport/newsletter/index.html.twig */
  15. class __TwigTemplate_2a03caaf1472b1db5549d96d6ee50943 extends Template
  16. {
  17.     private $source;
  18.     private $macros = [];
  19.     public function __construct(Environment $env)
  20.     {
  21.         parent::__construct($env);
  22.         $this->source $this->getSourceContext();
  23.         $this->blocks = [
  24.             'contentBlock' => [$this'block_contentBlock'],
  25.         ];
  26.         $this->sandbox $this->env->getExtension(SandboxExtension::class);
  27.         $this->checkSecurity();
  28.     }
  29.     protected function doGetParent(array $context)
  30.     {
  31.         // line 1
  32.         return "layout/default.html.twig";
  33.     }
  34.     protected function doDisplay(array $context, array $blocks = [])
  35.     {
  36.         $macros $this->macros;
  37.         $__internal_b91a4435ea3baf1e2b6bfda56133dace $this->extensions["Sentry\\SentryBundle\\Tracing\\Twig\\TwigTracingExtension"];
  38.         $__internal_b91a4435ea3baf1e2b6bfda56133dace->enter($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template""@FactorySupport/newsletter/index.html.twig"));
  39.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  40.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template""@FactorySupport/newsletter/index.html.twig"));
  41.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  42.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template""@FactorySupport/newsletter/index.html.twig"));
  43.         $this->parent $this->loadTemplate("layout/default.html.twig""@FactorySupport/newsletter/index.html.twig"1);
  44.         yield from $this->parent->unwrap()->yield($contextarray_merge($this->blocks$blocks));
  45.         
  46.         $__internal_b91a4435ea3baf1e2b6bfda56133dace->leave($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof);
  47.         
  48.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  49.         
  50.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  51.     }
  52.     // line 3
  53.     public function block_contentBlock($context, array $blocks = [])
  54.     {
  55.         $macros $this->macros;
  56.         $__internal_b91a4435ea3baf1e2b6bfda56133dace $this->extensions["Sentry\\SentryBundle\\Tracing\\Twig\\TwigTracingExtension"];
  57.         $__internal_b91a4435ea3baf1e2b6bfda56133dace->enter($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""contentBlock"));
  58.         $__internal_5a27a8ba21ca79b61932376b2fa922d2 $this->extensions["Symfony\\Bundle\\WebProfilerBundle\\Twig\\WebProfilerExtension"];
  59.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->enter($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""contentBlock"));
  60.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  61.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "block""contentBlock"));
  62.         // line 4
  63.         yield "    <script src=\"https://www.google.com/recaptcha/api.js?render=";
  64.         yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->sandbox->ensureToStringAllowed((isset($context["recaptcha_v3_site_key"]) || array_key_exists("recaptcha_v3_site_key"$context) ? $context["recaptcha_v3_site_key"] : (function () { throw new RuntimeError('Variable "recaptcha_v3_site_key" does not exist.'4$this->source); })()), 4$this->source), "html"nulltrue);
  65.         yield "\"></script>
  66.     <main class=\"staticPage\">
  67.         <div class=\"container my-5 my-lg-5 my-md-5\">
  68.             ";
  69.         // line 8
  70.         yield         $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->renderBlock($this->sandbox->ensureToStringAllowed((isset($context["newsletterForm"]) || array_key_exists("newsletterForm"$context) ? $context["newsletterForm"] : (function () { throw new RuntimeError('Variable "newsletterForm" does not exist.'8$this->source); })()), 8$this->source), 'form_start', ["attr" => ["novalidate" => "novalidate""id" => "newsletter-form-type"]]);
  71.         yield "
  72.                 <div class=\"row\">
  73.                     <div class=\"col-lg-4 col-md-6 col-sm-9 offset-sm-1 offset-md-0 offset-lg-1\">
  74.                         <div class=\"d-flex flex-column\">
  75.                             <h1 class=\"font-weight-bold mb-4 mb-lg-4 mb-md-4 font-italic\">";
  76.         // line 12
  77.         yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("newsletter.heading"), "html"nulltrue);
  78.         yield "</h1>
  79.                             <h4 class=\"font-weight-bold mb-4 mb-lg-4 mb-md-4\">";
  80.         // line 13
  81.         yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->extensions['Symfony\Bridge\Twig\Extension\TranslationExtension']->trans("newsletter.sub.heading"), "html"nulltrue);
  82.         yield "</h4>
  83.                         </div>
  84.                         <div class=\"d-flex flex-column mb-3 mb-lg-3 mb-md-3 ";
  85.         // line 16
  86.         yield (($this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock($this->sandbox->ensureToStringAllowed(CoreExtension::getAttribute($this->env$this->source, (isset($context["newsletterForm"]) || array_key_exists("newsletterForm"$context) ? $context["newsletterForm"] : (function () { throw new RuntimeError('Variable "newsletterForm" does not exist.'16$this->source); })()), "Email", [], "any"falsefalsetrue16), 16$this->source), 'errors')) ? ("input-error") : (""));
  87.         yield "\">
  88.                             <div class=\"ml-3 ml-lg-3 ml-md-3 text-deepGray\">
  89.                                 ";
  90.         // line 18
  91.         yield $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock($this->sandbox->ensureToStringAllowed(CoreExtension::getAttribute($this->env$this->source, (isset($context["newsletterForm"]) || array_key_exists("newsletterForm"$context) ? $context["newsletterForm"] : (function () { throw new RuntimeError('Variable "newsletterForm" does not exist.'18$this->source); })()), "Email", [], "any"falsefalsetrue18), 18$this->source), 'label');
  92.         yield "
  93.                             </div>
  94.                             ";
  95.         // line 21
  96.         yield $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock($this->sandbox->ensureToStringAllowed(CoreExtension::getAttribute($this->env$this->source, (isset($context["newsletterForm"]) || array_key_exists("newsletterForm"$context) ? $context["newsletterForm"] : (function () { throw new RuntimeError('Variable "newsletterForm" does not exist.'21$this->source); })()), "Email", [], "any"falsefalsetrue21), 21$this->source), 'widget');
  97.         yield "
  98.                             ";
  99.         // line 22
  100.         yield $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock($this->sandbox->ensureToStringAllowed(CoreExtension::getAttribute($this->env$this->source, (isset($context["newsletterForm"]) || array_key_exists("newsletterForm"$context) ? $context["newsletterForm"] : (function () { throw new RuntimeError('Variable "newsletterForm" does not exist.'22$this->source); })()), "Email", [], "any"falsefalsetrue22), 22$this->source), 'errors');
  101.         yield "
  102.                         </div>
  103.                         <div class=\"d-flex flex-column mb-3 mb-lg-3 mb-md-3 ";
  104.         // line 25
  105.         yield (($this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock($this->sandbox->ensureToStringAllowed(CoreExtension::getAttribute($this->env$this->source, (isset($context["newsletterForm"]) || array_key_exists("newsletterForm"$context) ? $context["newsletterForm"] : (function () { throw new RuntimeError('Variable "newsletterForm" does not exist.'25$this->source); })()), "Firstname", [], "any"falsefalsetrue25), 25$this->source), 'errors')) ? ("input-error") : (""));
  106.         yield "\">
  107.                             <div class=\"ml-3 ml-lg-3 ml-md-3 text-deepGray\">
  108.                                 ";
  109.         // line 27
  110.         yield $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock($this->sandbox->ensureToStringAllowed(CoreExtension::getAttribute($this->env$this->source, (isset($context["newsletterForm"]) || array_key_exists("newsletterForm"$context) ? $context["newsletterForm"] : (function () { throw new RuntimeError('Variable "newsletterForm" does not exist.'27$this->source); })()), "Firstname", [], "any"falsefalsetrue27), 27$this->source), 'label');
  111.         yield "
  112.                             </div>
  113.                             ";
  114.         // line 30
  115.         yield $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock($this->sandbox->ensureToStringAllowed(CoreExtension::getAttribute($this->env$this->source, (isset($context["newsletterForm"]) || array_key_exists("newsletterForm"$context) ? $context["newsletterForm"] : (function () { throw new RuntimeError('Variable "newsletterForm" does not exist.'30$this->source); })()), "Firstname", [], "any"falsefalsetrue30), 30$this->source), 'widget');
  116.         yield "
  117.                             ";
  118.         // line 31
  119.         yield $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock($this->sandbox->ensureToStringAllowed(CoreExtension::getAttribute($this->env$this->source, (isset($context["newsletterForm"]) || array_key_exists("newsletterForm"$context) ? $context["newsletterForm"] : (function () { throw new RuntimeError('Variable "newsletterForm" does not exist.'31$this->source); })()), "Firstname", [], "any"falsefalsetrue31), 31$this->source), 'errors');
  120.         yield "
  121.                         </div>
  122.                     </div>
  123.                 </div>
  124.                 <div class=\"row\">
  125.                     <div class=\"col-lg-6 col-md-8 col-sm-9 offset-sm-1 offset-md-0 offset-lg-1\">
  126.                         <p class=\"mb-0 mt-4 mt-lg-4 mt-md-4\">Select Categories of interest</p>
  127.                         <p class=\"mb-3 mb-lg-3 mb-md-3\">
  128.                             <small>
  129.                                 Select all that apply.
  130.                             </small>
  131.                         </p>
  132.                         ";
  133.         // line 43
  134.         $context['_parent'] = $context;
  135.         $context['_seq'] = CoreExtension::ensureTraversable((isset($context["lists"]) || array_key_exists("lists"$context) ? $context["lists"] : (function () { throw new RuntimeError('Variable "lists" does not exist.'43$this->source); })()));
  136.         foreach ($context['_seq'] as $context["_key"] => $context["list"]) {
  137.             // line 44
  138.             yield "
  139.                             <div class=\"top-position-checkmark position-relative checkbox-container my-0 py-1 py-lg-1 py-md-1\">
  140.                                 <input type=\"checkbox\" name=\"lists[]\" id=\"";
  141.             // line 46
  142.             yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->sandbox->ensureToStringAllowed(CoreExtension::getAttribute($this->env$this->source$context["list"], "id", [], "any"falsefalsetrue46), 46$this->source), "html"nulltrue);
  143.             yield "\" value=\"";
  144.             yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->sandbox->ensureToStringAllowed(CoreExtension::getAttribute($this->env$this->source$context["list"], "id", [], "any"falsefalsetrue46), 46$this->source), "html"nulltrue);
  145.             yield "\">
  146.                                 <span class=\"checkmark\"></span>
  147.                                 <div class=\"d-flex ml-1 ml-lg-1 ml-md-1\">
  148.                                     <label for=\"";
  149.             // line 49
  150.             yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->sandbox->ensureToStringAllowed(CoreExtension::getAttribute($this->env$this->source$context["list"], "id", [], "any"falsefalsetrue49), 49$this->source), "html"nulltrue);
  151.             yield "\">
  152.                                         ";
  153.             // line 50
  154.             yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->sandbox->ensureToStringAllowed(CoreExtension::getAttribute($this->env$this->source$context["list"], "title", [], "any"falsefalsetrue50), 50$this->source), "html"nulltrue);
  155.             yield "
  156.                                     </label>
  157.                                 </div>
  158.                             </div>
  159.                         ";
  160.         }
  161.         $_parent $context['_parent'];
  162.         unset($context['_seq'], $context['_iterated'], $context['_key'], $context['list'], $context['_parent'], $context['loop']);
  163.         $context array_intersect_key($context$_parent) + $_parent;
  164.         // line 57
  165.         yield "                        <div class=\"d-flex flex-column align-items-start mt-4 mt-lg-4 mt-md-3 mb-3 mb-lg-3 mb-md-3\">
  166.                             ";
  167.         // line 58
  168.         yield $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->searchAndRenderBlock($this->sandbox->ensureToStringAllowed(CoreExtension::getAttribute($this->env$this->source, (isset($context["newsletterForm"]) || array_key_exists("newsletterForm"$context) ? $context["newsletterForm"] : (function () { throw new RuntimeError('Variable "newsletterForm" does not exist.'58$this->source); })()), "_submit", [], "any"falsefalsetrue58), 58$this->source), 'widget');
  169.         yield "
  170.                         </div>
  171.                     </div>
  172.                 </div>
  173.             ";
  174.         // line 62
  175.         yield         $this->env->getRuntime('Symfony\Component\Form\FormRenderer')->renderBlock($this->sandbox->ensureToStringAllowed((isset($context["newsletterForm"]) || array_key_exists("newsletterForm"$context) ? $context["newsletterForm"] : (function () { throw new RuntimeError('Variable "newsletterForm" does not exist.'62$this->source); })()), 62$this->source), 'form_end');
  176.         yield "
  177.         </div>
  178.     </main>
  179.     <script>
  180.     \$(\"#newsletter-form-type button[type=submit]\").on('click', function(e) {
  181.         e.preventDefault();
  182.         grecaptcha.ready(function() {
  183.             let action = document.getElementById('action').value;
  184.             grecaptcha.execute('";
  185.         // line 71
  186.         yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape($this->sandbox->ensureToStringAllowed((isset($context["recaptcha_v3_site_key"]) || array_key_exists("recaptcha_v3_site_key"$context) ? $context["recaptcha_v3_site_key"] : (function () { throw new RuntimeError('Variable "recaptcha_v3_site_key" does not exist.'71$this->source); })()), 71$this->source), "html"nulltrue);
  187.         yield "', { action: action })
  188.             .then(function(token) {
  189.                 // add token value to form
  190.                 document.getElementById('g-recaptcha-response').value = token;
  191.                 \$('#newsletter-form-type').submit();
  192.             });
  193.         });
  194.     });
  195.     </script>
  196. ";
  197.         
  198.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  199.         
  200.         $__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);
  201.         
  202.         $__internal_b91a4435ea3baf1e2b6bfda56133dace->leave($__internal_b91a4435ea3baf1e2b6bfda56133dace_prof);
  203.         return; yield '';
  204.     }
  205.     /**
  206.      * @codeCoverageIgnore
  207.      */
  208.     public function getTemplateName()
  209.     {
  210.         return "@FactorySupport/newsletter/index.html.twig";
  211.     }
  212.     /**
  213.      * @codeCoverageIgnore
  214.      */
  215.     public function isTraitable()
  216.     {
  217.         return false;
  218.     }
  219.     /**
  220.      * @codeCoverageIgnore
  221.      */
  222.     public function getDebugInfo()
  223.     {
  224.         return array (  211 => 71,  199 => 62,  192 => 58,  189 => 57,  176 => 50,  172 => 49,  164 => 46,  160 => 44,  156 => 43,  141 => 31,  137 => 30,  131 => 27,  126 => 25,  120 => 22,  116 => 21,  110 => 18,  105 => 16,  99 => 13,  95 => 12,  88 => 8,  80 => 4,  67 => 3,  38 => 1,);
  225.     }
  226.     public function getSourceContext()
  227.     {
  228.         return new Source("{% extends 'layout/default.html.twig' %}
  229. {% block contentBlock %}
  230.     <script src=\"https://www.google.com/recaptcha/api.js?render={{ recaptcha_v3_site_key }}\"></script>
  231.     <main class=\"staticPage\">
  232.         <div class=\"container my-5 my-lg-5 my-md-5\">
  233.             {{ form_start(newsletterForm,{'attr': {'novalidate': 'novalidate','id': 'newsletter-form-type'}}) }}
  234.                 <div class=\"row\">
  235.                     <div class=\"col-lg-4 col-md-6 col-sm-9 offset-sm-1 offset-md-0 offset-lg-1\">
  236.                         <div class=\"d-flex flex-column\">
  237.                             <h1 class=\"font-weight-bold mb-4 mb-lg-4 mb-md-4 font-italic\">{{ 'newsletter.heading' | trans }}</h1>
  238.                             <h4 class=\"font-weight-bold mb-4 mb-lg-4 mb-md-4\">{{ 'newsletter.sub.heading' | trans }}</h4>
  239.                         </div>
  240.                         <div class=\"d-flex flex-column mb-3 mb-lg-3 mb-md-3 {{ form_errors(newsletterForm.Email) ? 'input-error' }}\">
  241.                             <div class=\"ml-3 ml-lg-3 ml-md-3 text-deepGray\">
  242.                                 {{ form_label(newsletterForm.Email) }}
  243.                             </div>
  244.                             {{ form_widget(newsletterForm.Email) }}
  245.                             {{ form_errors(newsletterForm.Email) }}
  246.                         </div>
  247.                         <div class=\"d-flex flex-column mb-3 mb-lg-3 mb-md-3 {{ form_errors(newsletterForm.Firstname) ? 'input-error' }}\">
  248.                             <div class=\"ml-3 ml-lg-3 ml-md-3 text-deepGray\">
  249.                                 {{ form_label(newsletterForm.Firstname) }}
  250.                             </div>
  251.                             {{ form_widget(newsletterForm.Firstname) }}
  252.                             {{ form_errors(newsletterForm.Firstname) }}
  253.                         </div>
  254.                     </div>
  255.                 </div>
  256.                 <div class=\"row\">
  257.                     <div class=\"col-lg-6 col-md-8 col-sm-9 offset-sm-1 offset-md-0 offset-lg-1\">
  258.                         <p class=\"mb-0 mt-4 mt-lg-4 mt-md-4\">Select Categories of interest</p>
  259.                         <p class=\"mb-3 mb-lg-3 mb-md-3\">
  260.                             <small>
  261.                                 Select all that apply.
  262.                             </small>
  263.                         </p>
  264.                         {% for list in lists %}
  265.                             <div class=\"top-position-checkmark position-relative checkbox-container my-0 py-1 py-lg-1 py-md-1\">
  266.                                 <input type=\"checkbox\" name=\"lists[]\" id=\"{{ list.id }}\" value=\"{{ list.id }}\">
  267.                                 <span class=\"checkmark\"></span>
  268.                                 <div class=\"d-flex ml-1 ml-lg-1 ml-md-1\">
  269.                                     <label for=\"{{ list.id }}\">
  270.                                         {{ list.title }}
  271.                                     </label>
  272.                                 </div>
  273.                             </div>
  274.                         {% endfor %}
  275.                         <div class=\"d-flex flex-column align-items-start mt-4 mt-lg-4 mt-md-3 mb-3 mb-lg-3 mb-md-3\">
  276.                             {{ form_widget(newsletterForm._submit) }}
  277.                         </div>
  278.                     </div>
  279.                 </div>
  280.             {{ form_end(newsletterForm) }}
  281.         </div>
  282.     </main>
  283.     <script>
  284.     \$(\"#newsletter-form-type button[type=submit]\").on('click', function(e) {
  285.         e.preventDefault();
  286.         grecaptcha.ready(function() {
  287.             let action = document.getElementById('action').value;
  288.             grecaptcha.execute('{{ recaptcha_v3_site_key }}', { action: action })
  289.             .then(function(token) {
  290.                 // add token value to form
  291.                 document.getElementById('g-recaptcha-response').value = token;
  292.                 \$('#newsletter-form-type').submit();
  293.             });
  294.         });
  295.     });
  296.     </script>
  297. {% endblock %}""@FactorySupport/newsletter/index.html.twig""/var/www/webovi/stoelting/pimcore/templates/newsletter/index.html.twig");
  298.     }
  299.     
  300.     public function checkSecurity()
  301.     {
  302.         static $tags = array("for" => 43);
  303.         static $filters = array("escape" => 4"trans" => 12);
  304.         static $functions = array("form_start" => 8"form_errors" => 16"form_label" => 18"form_widget" => 21"form_end" => 62);
  305.         try {
  306.             $this->sandbox->checkSecurity(
  307.                 ['for'],
  308.                 ['escape''trans'],
  309.                 ['form_start''form_errors''form_label''form_widget''form_end'],
  310.                 $this->source
  311.             );
  312.         } catch (SecurityError $e) {
  313.             $e->setSourceContext($this->source);
  314.             if ($e instanceof SecurityNotAllowedTagError && isset($tags[$e->getTagName()])) {
  315.                 $e->setTemplateLine($tags[$e->getTagName()]);
  316.             } elseif ($e instanceof SecurityNotAllowedFilterError && isset($filters[$e->getFilterName()])) {
  317.                 $e->setTemplateLine($filters[$e->getFilterName()]);
  318.             } elseif ($e instanceof SecurityNotAllowedFunctionError && isset($functions[$e->getFunctionName()])) {
  319.                 $e->setTemplateLine($functions[$e->getFunctionName()]);
  320.             }
  321.             throw $e;
  322.         }
  323.     }
  324. }