putyourlightson / craft-campaign

Send and manage email campaigns, contacts and mailing lists in Craft CMS.
https://putyourlightson.com/plugins/campaign
Other
64 stars 24 forks source link

Mailing list is missing its mailing list type ID #474

Closed alexanderloewe closed 3 months ago

alexanderloewe commented 4 months ago

Bug Report

When creating a new sendout we unfortunately get this error, it seems that the IDs are not assigned correctly.

Invalid Configuration – yii\base\InvalidConfigException Mailing list is missing its mailing list type ID

1. in /home/foqidexe/public_html/nektar/webV1/vendor/putyourlightson/craft-campaign/src/elements/MailingListElement.phpat line 474
465466467468469470471472473474475476477478479480481482483        return $this->getContactsBySubscriptionStatus('bounced');
    }

    /**
     * Returns the mailing list's mailing list type.
     */
    public function getMailingListType(): MailingListTypeModel
    {
        if ($this->mailingListTypeId === null) {
            throw new InvalidConfigException('Mailing list is missing its mailing list type ID');
        }

        $mailingListType = Campaign::$plugin->mailingListTypes->getMailingListTypeById($this->mailingListTypeId);

        if ($mailingListType === null) {
            throw new InvalidConfigException('Invalid mailing list type ID: ' . $this->mailingListTypeId);
        }

        return $mailingListType;

Plugin Version

Campaign 3.1.4

Craft CMS Version

Craft CMS 5.1.3

PHP Version

8.2

bencroker commented 4 months ago

Please provide the steps to replicate the issue, as well as the full stack trace, so I can investigate further.

alexanderloewe commented 4 months ago

The full stack trace looks like this:

Invalid Configuration – [yii\base\InvalidConfigException](https://www.yiiframework.com/doc-2.0/yii-base-invalidconfigexception.html)
Mailing list is missing its mailing list type ID
1. in /home/foqidexe/public_html/nektar/webV1/vendor/putyourlightson/craft-campaign/src/elements/MailingListElement.phpat line 474
465466467468469470471472473474475476477478479480481482483        return $this->getContactsBySubscriptionStatus('bounced');
    }

    /**
     * Returns the mailing list's mailing list type.
     */
    public function getMailingListType(): MailingListTypeModel
    {
        if ($this->mailingListTypeId === null) {
            throw new InvalidConfigException('Mailing list is missing its mailing list type ID');
        }

        $mailingListType = Campaign::$plugin->mailingListTypes->getMailingListTypeById($this->mailingListTypeId);

        if ($mailingListType === null) {
            throw new InvalidConfigException('Invalid mailing list type ID: ' . $this->mailingListTypeId);
        }

        return $mailingListType;
2. in /home/foqidexe/public_html/nektar/webV1/vendor/putyourlightson/craft-campaign/src/elements/MailingListElement.php at line 538– putyourlightson\campaign\elements\MailingListElement::getMailingListType()
532533534535536537538539540541542543544    {
        // Memoize the field layout to ensure we don't end up with duplicate extra tabs!
        if ($this->fieldLayout !== null) {
            return $this->fieldLayout;
        }

        $this->fieldLayout = parent::getFieldLayout() ?? $this->getMailingListType()->getFieldLayout();

        if (!Craft::$app->getRequest()->getIsCpRequest()) {
            return $this->fieldLayout;
        }

        if (!$this->getIsFresh()) {
3. in /home/foqidexe/public_html/nektar/webV1/vendor/craftcms/cms/src/base/Element.php at line 2454– putyourlightson\campaign\elements\MailingListElement::getFieldLayout()
2448244924502451245224532454245524562457245824592460     */
    public function getIterator(): Traversable
    {
        $attributes = $this->getAttributes();

        // Include custom fields
        $fieldLayout = $this->getFieldLayout();

        if ($fieldLayout !== null) {
            foreach ($fieldLayout->getCustomFieldElements() as $layoutElement) {
                $field = $layoutElement->getField();
                if (!isset($attributes[$field->handle])) {
                    $attributes[$field->handle] = $this->getFieldValue($field->handle);
4. craft\base\Element::getIterator()
5. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Extension/CoreExtension.php at line 1131– iterator_count(putyourlightson\campaign\elements\MailingListElement)
6. in /home/foqidexe/public_html/nektar/webV1/vendor/craftcms/cms/src/web/twig/Extension.php at line 1237– twig_length_filter(craft\web\twig\Environment, putyourlightson\campaign\elements\MailingListElement)
1231123212331234123512361237123812391240124112421243    public function lengthFilter(TwigEnvironment $env, mixed $value): int
    {
        if ($value instanceof QueryInterface) {
            return $value->count();
        }

        return twig_length_filter($env, $value);
    }

    /**
     * Escapes commas and asterisks in a string so they are not treated as special characters in
     * [[Db::parseParam()]].
     *
7. in /home/foqidexe/public_html/nektar/webV1/templates/newsletter/_includes/footerLower.html at line 87– craft\web\twig\Extension::lengthFilter(craft\web\twig\Environment, putyourlightson\campaign\elements\MailingListElement)
81828384858687888990919293                                                <table class="p100" style="margin: 0; mso-table-lspace: 0; mso-table-rspace: 0; padding: 0; width: 200px;" width="200" cellspacing="0" cellpadding="0" border="0" align="left">
                                                    <tr>
                                                        <td style="font-size: 1px; height: 25px; line-height: 25px; mso-line-height-rule: exactly;" valign="top" align="left">&nbsp;</td>
                                                    </tr>
                                                    <tr>
                                                        <td class="center" style="font-family: {{ fontFamily }}; {{ footerFontStyle }} mso-line-height-rule: exactly;" align="right" valign="top">
                                                            <a href="{{ unsubscribeUrl }}{% if contact is defined and contact | length %}&contactId={{ contact.id }}{% endif %}{% if mailingList is defined and mailingList | length %}&listId={{ mailingList.id }}{% endif %}" style="border: none; color: inherit; display: block; font-family: {{ fontFamily }}; font-size: inherit; outline: none; text-decoration: none;">{{ unsubText }}</a>
                                                        </td>
                                                    </tr>
                                                    <tr>
                                                        <td style="font-size: 1px; height: 25px; line-height: 25px; mso-line-height-rule: exactly;" valign="top" align="left">&nbsp;</td>
                                                    </tr>
                                                </table>
8. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 394– [__TwigTemplate_671c1c6f7e3fd00187cc33d45fe1c167::doDisplay](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_doDisplay)(['campaign' => putyourlightson\campaign\elements\CampaignElement, 'browserVersionUrl' => 'https://foqidexe.cyon.site/campa...', 'contact' => putyourlightson\campaign\elements\ContactElement, 'sendout' => putyourlightson\campaign\elements\SendoutElement, ...], [])
9. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 367– [Twig\Template::displayWithErrorHandling](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_displayWithErrorHandling)(['campaign' => putyourlightson\campaign\elements\CampaignElement, 'browserVersionUrl' => 'https://foqidexe.cyon.site/campa...', 'contact' => putyourlightson\campaign\elements\ContactElement, 'sendout' => putyourlightson\campaign\elements\SendoutElement, ...], [])
10. in /home/foqidexe/public_html/nektar/webV1/templates/newsletter/template/menuRich.html at line 116– [Twig\Template::display](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_display)(['campaign' => putyourlightson\campaign\elements\CampaignElement, 'browserVersionUrl' => 'https://foqidexe.cyon.site/campa...', 'contact' => putyourlightson\campaign\elements\ContactElement, 'sendout' => putyourlightson\campaign\elements\SendoutElement, ...])
110111112113114115116117                        </tr>
                    </table>
                </td>
            </tr>
        </table>

    {% include "newsletter/_includes/footerLower" %}                
{% endblock %}
11. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 171– [__TwigTemplate_ee8725d6bf90888a6b0c19f2a9186d8b::block_content](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_block_content)(['campaign' => putyourlightson\campaign\elements\CampaignElement, 'browserVersionUrl' => 'https://foqidexe.cyon.site/campa...', 'contact' => putyourlightson\campaign\elements\ContactElement, 'sendout' => putyourlightson\campaign\elements\SendoutElement, ...], ['email' => [__TwigTemplate_4ec8917c9324b5eda1ddb9a9b50ead2c, 'block_email'], 'content' => [__TwigTemplate_ee8725d6bf90888a6b0c19f2a9186d8b, 'block_content']])
12. in /home/foqidexe/public_html/nektar/webV1/templates/newsletter/_layouts/baseRich.html at line 57– [Twig\Template::displayBlock](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_displayBlock)('content', ['campaign' => putyourlightson\campaign\elements\CampaignElement, 'browserVersionUrl' => 'https://foqidexe.cyon.site/campa...', 'contact' => putyourlightson\campaign\elements\ContactElement, 'sendout' => putyourlightson\campaign\elements\SendoutElement, ...], ['email' => [__TwigTemplate_4ec8917c9324b5eda1ddb9a9b50ead2c, 'block_email'], 'content' => [__TwigTemplate_ee8725d6bf90888a6b0c19f2a9186d8b, 'block_content']])
51525354555657585960616263            <link rel="icon" rel="preload" type="image/x-icon" href="{{ siteUrl }}/a/i/favicon/favicon.ico">
            <title>{{ source.title }}</title>
            {% include "_includes/_baseParts/headLoadFont" %}
            {% include "newsletter/_includes/style" %}
        </head>
        <body style="-ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; background-color: {{ bodyBgColor }}; font-family: {{ fontFamily }}; margin: 0; padding: 0; width: 100% !important;">
            {% block content %}         
                {% include "newsletter/_includes/navBar" %}

                {% include "newsletter/_includes/builder" %}                

                {% include "newsletter/_includes/footerLower" %}                
            {% endblock %}
13. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 171– [__TwigTemplate_4ec8917c9324b5eda1ddb9a9b50ead2c::block_email](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_block_email)(['campaign' => putyourlightson\campaign\elements\CampaignElement, 'browserVersionUrl' => 'https://foqidexe.cyon.site/campa...', 'contact' => putyourlightson\campaign\elements\ContactElement, 'sendout' => putyourlightson\campaign\elements\SendoutElement, ...], ['email' => [__TwigTemplate_4ec8917c9324b5eda1ddb9a9b50ead2c, 'block_email'], 'content' => [__TwigTemplate_ee8725d6bf90888a6b0c19f2a9186d8b, 'block_content']])
14. in /home/foqidexe/public_html/nektar/webV1/templates/newsletter/_layouts/baseRich.html at line 41– [Twig\Template::displayBlock](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_displayBlock)('email', ['campaign' => putyourlightson\campaign\elements\CampaignElement, 'browserVersionUrl' => 'https://foqidexe.cyon.site/campa...', 'contact' => putyourlightson\campaign\elements\ContactElement, 'sendout' => putyourlightson\campaign\elements\SendoutElement, ...], ['email' => [__TwigTemplate_4ec8917c9324b5eda1ddb9a9b50ead2c, 'block_email'], 'content' => [__TwigTemplate_ee8725d6bf90888a6b0c19f2a9186d8b, 'block_content']])
35363738394041424344454647 
{# vars Links #}
    {% set browserText = "Im Browser ansehen" | t %}
    {% set unsubText = "Newsletter abbestellen" | t %}

{% block email %}       

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
            <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
15. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 394– [__TwigTemplate_4ec8917c9324b5eda1ddb9a9b50ead2c::doDisplay](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_doDisplay)(['campaign' => putyourlightson\campaign\elements\CampaignElement, 'browserVersionUrl' => 'https://foqidexe.cyon.site/campa...', 'contact' => putyourlightson\campaign\elements\ContactElement, 'sendout' => putyourlightson\campaign\elements\SendoutElement, ...], ['email' => [__TwigTemplate_4ec8917c9324b5eda1ddb9a9b50ead2c, 'block_email'], 'content' => [__TwigTemplate_ee8725d6bf90888a6b0c19f2a9186d8b, 'block_content']])
16. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 367– [Twig\Template::displayWithErrorHandling](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_displayWithErrorHandling)(['campaign' => putyourlightson\campaign\elements\CampaignElement, 'browserVersionUrl' => 'https://foqidexe.cyon.site/campa...', 'contact' => putyourlightson\campaign\elements\ContactElement, 'sendout' => putyourlightson\campaign\elements\SendoutElement, ...], ['email' => [__TwigTemplate_4ec8917c9324b5eda1ddb9a9b50ead2c, 'block_email'], 'content' => [__TwigTemplate_ee8725d6bf90888a6b0c19f2a9186d8b, 'block_content']])
17. in /home/foqidexe/public_html/nektar/webV1/templates/newsletter/template/menuRich.html at line 8– [Twig\Template::display](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_display)(['campaign' => putyourlightson\campaign\elements\CampaignElement, 'browserVersionUrl' => 'https://foqidexe.cyon.site/campa...', 'contact' => putyourlightson\campaign\elements\ContactElement, 'sendout' => putyourlightson\campaign\elements\SendoutElement, ...], ['content' => [__TwigTemplate_ee8725d6bf90888a6b0c19f2a9186d8b, 'block_content']])
234567891011121314    {% set source = campaign %}

    {% set browserUrl = browserVersionUrl %}
    {% set unsubscribeUrl = unsubscribeUrl %}

{# extend layout #}
    {% extends "newsletter/_layouts/baseRich" %}

{% block content %}         
    {% include "newsletter/_includes/navBar" %}

        <table style="background-color: {{ bodyBgColor }}; margin: 0; mso-table-lspace: 0; mso-table-rspace: 0; padding: 0; width: 100%;" cellspacing="0" cellpadding="0" border="0" bgcolor="{{ bodyBgColor }}" width="100%">
18. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 394– [__TwigTemplate_ee8725d6bf90888a6b0c19f2a9186d8b::doDisplay](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_doDisplay)(['campaign' => putyourlightson\campaign\elements\CampaignElement, 'browserVersionUrl' => 'https://foqidexe.cyon.site/campa...', 'contact' => putyourlightson\campaign\elements\ContactElement, 'sendout' => putyourlightson\campaign\elements\SendoutElement, ...], ['content' => [__TwigTemplate_ee8725d6bf90888a6b0c19f2a9186d8b, 'block_content']])
19. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 367– [Twig\Template::displayWithErrorHandling](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_displayWithErrorHandling)(['campaign' => putyourlightson\campaign\elements\CampaignElement, 'browserVersionUrl' => 'https://foqidexe.cyon.site/campa...', 'contact' => putyourlightson\campaign\elements\ContactElement, 'sendout' => putyourlightson\campaign\elements\SendoutElement, ...], ['content' => [__TwigTemplate_ee8725d6bf90888a6b0c19f2a9186d8b, 'block_content']])
20. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 379– [Twig\Template::display](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_display)(['campaign' => putyourlightson\campaign\elements\CampaignElement, 'browserVersionUrl' => 'https://foqidexe.cyon.site/campa...', 'contact' => putyourlightson\campaign\elements\ContactElement, 'sendout' => putyourlightson\campaign\elements\SendoutElement, ...])
21. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/TemplateWrapper.php at line 38– [Twig\Template::render](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_render)(['campaign' => putyourlightson\campaign\elements\CampaignElement, 'browserVersionUrl' => 'https://foqidexe.cyon.site/campa...', 'contact' => putyourlightson\campaign\elements\ContactElement, 'sendout' => putyourlightson\campaign\elements\SendoutElement, ...])
22. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Environment.php at line 280– [Twig\TemplateWrapper::render](http://twig.sensiolabs.org/api/2.x/Twig/TemplateWrapper.html#method_render)(['campaign' => putyourlightson\campaign\elements\CampaignElement, 'browserVersionUrl' => 'https://foqidexe.cyon.site/campa...', 'contact' => putyourlightson\campaign\elements\ContactElement, 'sendout' => putyourlightson\campaign\elements\SendoutElement, ...])
23. in /home/foqidexe/public_html/nektar/webV1/vendor/craftcms/cms/src/web/View.php at line 482– [Twig\Environment::render](http://twig.sensiolabs.org/api/2.x/Twig/Environment.html#method_render)('newsletter/template/menuRich', ['campaign' => putyourlightson\campaign\elements\CampaignElement, 'browserVersionUrl' => 'https://foqidexe.cyon.site/campa...', 'contact' => putyourlightson\campaign\elements\ContactElement, 'sendout' => putyourlightson\campaign\elements\SendoutElement, ...])
476477478479480481482483484485486487488 
        // Render and return
        $renderingTemplate = $this->_renderingTemplate;
        $this->_renderingTemplate = $template;

        try {
            $output = $this->getTwig()->render($template, $variables);
        } finally {
            $this->_renderingTemplate = $renderingTemplate;
            $this->setTemplateMode($oldTemplateMode);
        }

        $this->afterRenderTemplate($template, $variables, $templateMode, $output);
24. in /home/foqidexe/public_html/nektar/webV1/vendor/putyourlightson/craft-campaign/src/elements/CampaignElement.php at line 1020– craft\web\View::renderTemplate('newsletter/template/menuRich', ['campaign' => putyourlightson\campaign\elements\CampaignElement, 'browserVersionUrl' => 'https://foqidexe.cyon.site/campa...', 'contact' => putyourlightson\campaign\elements\ContactElement, 'sendout' => putyourlightson\campaign\elements\SendoutElement, ...], 'site')
1014101510161017101810191020102110221023102410251026 
        try {
            // Render the page template only for HTML, to prevent Yii block tags being left behind
            if ($templateType == 'html') {
                $body = Craft::$app->getView()->renderPageTemplate($template, $variables, View::TEMPLATE_MODE_SITE);
            } else {
                $body = Craft::$app->getView()->renderTemplate($template, $variables, View::TEMPLATE_MODE_SITE);
            }
        } catch (Error $exception) {
            Campaign::$plugin->log($exception->getMessage());

            throw $exception;
        }
25. in /home/foqidexe/public_html/nektar/webV1/vendor/putyourlightson/craft-campaign/src/elements/CampaignElement.php at line 640– putyourlightson\campaign\elements\CampaignElement::getBody('plaintext', putyourlightson\campaign\elements\ContactElement, putyourlightson\campaign\elements\SendoutElement, putyourlightson\campaign\elements\MailingListElement)
634635636637638639640641642643644645646 
    /**
     * Returns the campaign's plaintext body.
     */
    public function getPlaintextBody(ContactElement $contact = null, SendoutElement $sendout = null, MailingListElement $mailingList = null): string
    {
        return html_entity_decode($this->getBody('plaintext', $contact, $sendout, $mailingList), ENT_QUOTES);
    }

    /**
     * Returns the campaign's rate.
     */
    public function getRate(string $field): int
26. in /home/foqidexe/public_html/nektar/webV1/vendor/putyourlightson/craft-campaign/src/elements/SendoutElement.php at line 1038– putyourlightson\campaign\elements\CampaignElement::getPlaintextBody(putyourlightson\campaign\elements\ContactElement, putyourlightson\campaign\elements\SendoutElement)
1032103310341035103610371038103910401041104210431044        if ($campaign === null) {
            return '';
        }

        $contact = new ContactElement();

        return $campaign->getPlaintextBody($contact, $this);
    }

    /**
     * @inheritdoc
     */
    public function getStatus(): ?string
27. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Extension/CoreExtension.php at line 1635– putyourlightson\campaign\elements\SendoutElement::getPlaintextBody()
28. in /home/foqidexe/public_html/nektar/webV1/vendor/craftcms/cms/src/helpers/Template.php at line 141– twig_get_attribute(craft\web\twig\Environment, Twig\Source, putyourlightson\campaign\elements\SendoutElement, 'getPlaintextBody', ...)
135136137138139140141142143144145146147            if (is_object($value) && get_class($value) === Markup::class) {
                $arguments[$key] = (string)$value;
            }
        }

        try {
            return twig_get_attribute(
                $env,
                $source,
                $object,
                $item,
                $arguments,
                $type,
29. in /home/foqidexe/public_html/nektar/webV1/vendor/putyourlightson/craft-campaign/src/templates/sendouts/_preview.twig at line 75– craft\helpers\Template::attribute(craft\web\twig\Environment, Twig\Source, putyourlightson\campaign\elements\SendoutElement, 'getPlaintextBody', ...)
69707172737475767778798081            {{ forms.field({
                label: "HTML Body"|t('campaign'),
                instructions: "A preview of the HTML version of the email body."|t('campaign'),
            }, input) }}

            {% set input %}
                <textarea class="email-body" disabled>{{ sendout.getPlaintextBody() }}</textarea>
            {% endset %}
            {{ forms.field({
                label: "Plaintext Body"|t('campaign'),
                instructions: "A preview of the plaintext version of the email body."|t('campaign'),
            }, input) }}
        </div>
30. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 171– [__TwigTemplate_5357765b8e2bc5de04937723436c4359::block_content](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_block_content)(['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['head' => [__TwigTemplate_ea5e8dce805303fd06bc85d0687e8d61, 'block_head'], 'body' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_body'], 'foot' => [__TwigTemplate_3e02d5a0826b73a7075631dfd20d3ce9, 'block_foot'], 'mainFormAttributes' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_mainFormAttributes'], ...])
31. in /home/foqidexe/public_html/nektar/webV1/vendor/craftcms/cms/src/templates/_layouts/cp.twig at line 302– [Twig\Template::displayBlock](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_displayBlock)('content', ['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['head' => [__TwigTemplate_ea5e8dce805303fd06bc85d0687e8d61, 'block_head'], 'body' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_body'], 'foot' => [__TwigTemplate_3e02d5a0826b73a7075631dfd20d3ce9, 'block_foot'], 'mainFormAttributes' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_mainFormAttributes'], ...])
296297298299300301302303304305306307308                                                        },
                                                    } %}
                                                {% endif %}
                                            </header>
                                        {% endif %}

                                        {% block content %}
                                            {{ content is defined ? content|raw }}
                                        {% endblock %}

                                        {# footer #}
                                        {% if footer %}
                                            <div id="footer" class="flex flex-justify">
32. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 171– [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e::block_main](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_block_main)(['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['head' => [__TwigTemplate_ea5e8dce805303fd06bc85d0687e8d61, 'block_head'], 'body' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_body'], 'foot' => [__TwigTemplate_3e02d5a0826b73a7075631dfd20d3ce9, 'block_foot'], 'mainFormAttributes' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_mainFormAttributes'], ...])
33. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 191– [Twig\Template::displayBlock](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_displayBlock)('main', ['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['head' => [__TwigTemplate_ea5e8dce805303fd06bc85d0687e8d61, 'block_head'], 'body' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_body'], 'foot' => [__TwigTemplate_3e02d5a0826b73a7075631dfd20d3ce9, 'block_foot'], 'mainFormAttributes' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_mainFormAttributes'], ...], false, ...)
34. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 134– [Twig\Template::displayBlock](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_displayBlock)('main', ['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['head' => [__TwigTemplate_ea5e8dce805303fd06bc85d0687e8d61, 'block_head'], 'body' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_body'], 'foot' => [__TwigTemplate_3e02d5a0826b73a7075631dfd20d3ce9, 'block_foot'], 'mainFormAttributes' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_mainFormAttributes'], ...], false)
35. in /home/foqidexe/public_html/nektar/webV1/vendor/putyourlightson/craft-campaign/src/templates/sendouts/_preview.twig at line 48– [Twig\Template::displayParentBlock](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_displayParentBlock)('main', ['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['head' => [__TwigTemplate_ea5e8dce805303fd06bc85d0687e8d61, 'block_head'], 'body' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_body'], 'foot' => [__TwigTemplate_3e02d5a0826b73a7075631dfd20d3ce9, 'block_foot'], 'mainFormAttributes' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_mainFormAttributes'], ...])
42434445464748495051525354    {% if settings.testMode %}
        <div class="relative">
            <div class="testmode" title="Campaign is running in Test Mode."></div>
        </div>
    {% endif %}

    {{ parent() }}

{% endblock %}

{% block content %}

36. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 171– [__TwigTemplate_5357765b8e2bc5de04937723436c4359::block_main](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_block_main)(['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['head' => [__TwigTemplate_ea5e8dce805303fd06bc85d0687e8d61, 'block_head'], 'body' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_body'], 'foot' => [__TwigTemplate_3e02d5a0826b73a7075631dfd20d3ce9, 'block_foot'], 'mainFormAttributes' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_mainFormAttributes'], ...])
37. in /home/foqidexe/public_html/nektar/webV1/vendor/craftcms/cms/src/templates/_layouts/cp.twig at line 280– [Twig\Template::displayBlock](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_displayBlock)('main', ['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['head' => [__TwigTemplate_ea5e8dce805303fd06bc85d0687e8d61, 'block_head'], 'body' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_body'], 'foot' => [__TwigTemplate_3e02d5a0826b73a7075631dfd20d3ce9, 'block_foot'], 'mainFormAttributes' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_mainFormAttributes'], ...])
274275276277278279280281282283284285286 
                            {# content-container #}
                            <div id="content-container">
                                {% if sidebar %}
                                    <h2 id="content-heading"></h2>
                                {% endif %}
                                {% block main %}
                                    {% if errorSummary is not empty %}
                                        {{ errorSummary is defined ? errorSummary|raw }}
                                    {% endif %}
                                    <div id="content" class="content-pane">
                                        {% if contentNotice or tabs %}
                                            <header id="content-header" class="pane-header">
38. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 171– [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e::block_body](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_block_body)(['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['head' => [__TwigTemplate_ea5e8dce805303fd06bc85d0687e8d61, 'block_head'], 'body' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_body'], 'foot' => [__TwigTemplate_3e02d5a0826b73a7075631dfd20d3ce9, 'block_foot'], 'mainFormAttributes' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_mainFormAttributes'], ...])
39. in /home/foqidexe/public_html/nektar/webV1/vendor/craftcms/cms/src/templates/_layouts/base.twig at line 63– [Twig\Template::displayBlock](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_displayBlock)('body', ['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['head' => [__TwigTemplate_ea5e8dce805303fd06bc85d0687e8d61, 'block_head'], 'body' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_body'], 'foot' => [__TwigTemplate_3e02d5a0826b73a7075631dfd20d3ce9, 'block_foot'], 'mainFormAttributes' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_mainFormAttributes'], ...])
575859606162636465666768        // See: http://stackoverflow.com/questions/18943276/html-5-autofocus-messes-up-css-loading/18945951#18945951
    </script>
    {% endblock %}
</head>
<body {{ attr(bodyAttributes) }}>
    {{ beginBody() }}
    {% block body %}{% endblock %}
    {% include '_layouts/components/notifications' %}
    {% block foot %}{% endblock %}
    {{ endBody() }}
</body>
</html>
40. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 394– [__TwigTemplate_ea5e8dce805303fd06bc85d0687e8d61::doDisplay](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_doDisplay)(['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['head' => [__TwigTemplate_ea5e8dce805303fd06bc85d0687e8d61, 'block_head'], 'body' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_body'], 'foot' => [__TwigTemplate_3e02d5a0826b73a7075631dfd20d3ce9, 'block_foot'], 'mainFormAttributes' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_mainFormAttributes'], ...])
41. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 367– [Twig\Template::displayWithErrorHandling](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_displayWithErrorHandling)(['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['head' => [__TwigTemplate_ea5e8dce805303fd06bc85d0687e8d61, 'block_head'], 'body' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_body'], 'foot' => [__TwigTemplate_3e02d5a0826b73a7075631dfd20d3ce9, 'block_foot'], 'mainFormAttributes' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_mainFormAttributes'], ...])
42. in /home/foqidexe/public_html/nektar/webV1/vendor/craftcms/cms/src/templates/_layouts/basecp.twig at line 1– [Twig\Template::display](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_display)(['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['foot' => [__TwigTemplate_3e02d5a0826b73a7075631dfd20d3ce9, 'block_foot'], 'body' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_body'], 'mainFormAttributes' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_mainFormAttributes'], 'header' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_header'], ...])
1234567{% extends "_layouts/base" %}

{# Give the body a .mobile class for mobile devices #}
{% if craft.app.request.isMobileBrowser(true) %}
    {% set bodyClass = (bodyClass ?? [])|explodeClass|push('mobile') -%}
{% endif %}

43. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 394– [__TwigTemplate_3e02d5a0826b73a7075631dfd20d3ce9::doDisplay](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_doDisplay)(['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['foot' => [__TwigTemplate_3e02d5a0826b73a7075631dfd20d3ce9, 'block_foot'], 'body' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_body'], 'mainFormAttributes' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_mainFormAttributes'], 'header' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_header'], ...])
44. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 367– [Twig\Template::displayWithErrorHandling](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_displayWithErrorHandling)(['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['foot' => [__TwigTemplate_3e02d5a0826b73a7075631dfd20d3ce9, 'block_foot'], 'body' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_body'], 'mainFormAttributes' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_mainFormAttributes'], 'header' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_header'], ...])
45. in /home/foqidexe/public_html/nektar/webV1/vendor/craftcms/cms/src/templates/_layouts/cp.twig at line 42– [Twig\Template::display](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_display)(['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['body' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_body'], 'mainFormAttributes' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_mainFormAttributes'], 'header' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_header'], 'pageTitle' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_pageTitle'], ...])
36373839404142434445464748│   │     │   │   └──────────────────────────────────────────────────────────┘   │   │
│   └─────┘   └──────────────────────────────────────────────────────────────────┘   │
│                                                                                    │
└────────────────────────────────────────────────────────────────────────────────────┘
#}

{% extends '_layouts/basecp.twig' %}

{# The control panel only supports queue components that implement QueueInterface #}
{% set queue = craft.app.queue %}
{% js %}
{% if queue is instance of("craft\\queue\\QueueInterface") %}
    Craft.cp.setJobInfo({{ queue.getJobInfo(100)|json_encode|raw }}, false);
46. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 394– [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e::doDisplay](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_doDisplay)(['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['body' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_body'], 'mainFormAttributes' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_mainFormAttributes'], 'header' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_header'], 'pageTitle' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_pageTitle'], ...])
47. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 367– [Twig\Template::displayWithErrorHandling](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_displayWithErrorHandling)(['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['body' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_body'], 'mainFormAttributes' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_mainFormAttributes'], 'header' => [__TwigTemplate_bb3b9111315bdad2382703c0999a5d1e, 'block_header'], 'pageTitle' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_pageTitle'], ...])
48. in /home/foqidexe/public_html/nektar/webV1/vendor/putyourlightson/craft-campaign/src/templates/sendouts/_layout.twig at line 1– [Twig\Template::display](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_display)(['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['pageTitle' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_pageTitle'], 'actionButton' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_actionButton'], 'main' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_main'], 'content' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_content'], ...])
1234567{% extends elementType is defined ? '_layouts/elementindex' : '_layouts/cp' %}

{% set selectedSubnavItem = 'sendouts' %}
{% set baseCrumbs = [
    { label: 'Sendouts'|t('campaign'), url: url('campaign/sendouts') }
] %}
{% set crumbs = crumbs is defined ? baseCrumbs|merge(crumbs) : [] %}
49. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 394– [__TwigTemplate_20b21b8e8168745006b2c867ac018271::doDisplay](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_doDisplay)(['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['pageTitle' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_pageTitle'], 'actionButton' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_actionButton'], 'main' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_main'], 'content' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_content'], ...])
50. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 367– [Twig\Template::displayWithErrorHandling](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_displayWithErrorHandling)(['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['pageTitle' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_pageTitle'], 'actionButton' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_actionButton'], 'main' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_main'], 'content' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_content'], ...])
51. in /home/foqidexe/public_html/nektar/webV1/vendor/putyourlightson/craft-campaign/src/templates/sendouts/_preview.twig at line 1– [Twig\Template::display](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_display)(['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['pageTitle' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_pageTitle'], 'actionButton' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_actionButton'], 'main' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_main'], 'content' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_content'], ...])
1234567{% extends 'campaign/sendouts/_layout' %}

{% import '_includes/forms' as forms %}

{# @var sendout putyourlightson\campaign\elements\Sendout #}
{% set title = sendout.title %}
{% set crumbs = [
52. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 394– [__TwigTemplate_5357765b8e2bc5de04937723436c4359::doDisplay](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_doDisplay)(['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['pageTitle' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_pageTitle'], 'actionButton' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_actionButton'], 'main' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_main'], 'content' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_content'], ...])
53. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 367– [Twig\Template::displayWithErrorHandling](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_displayWithErrorHandling)(['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], ['pageTitle' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_pageTitle'], 'actionButton' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_actionButton'], 'main' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_main'], 'content' => [__TwigTemplate_5357765b8e2bc5de04937723436c4359, 'block_content'], ...])
54. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Template.php at line 379– [Twig\Template::display](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_display)(['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...])
55. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/TemplateWrapper.php at line 38– [Twig\Template::render](http://twig.sensiolabs.org/api/2.x/Twig/Template.html#method_render)(['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...])
56. in /home/foqidexe/public_html/nektar/webV1/vendor/twig/twig/src/Environment.php at line 280– [Twig\TemplateWrapper::render](http://twig.sensiolabs.org/api/2.x/Twig/TemplateWrapper.html#method_render)(['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...])
57. in /home/foqidexe/public_html/nektar/webV1/vendor/craftcms/cms/src/web/View.php at line 482– [Twig\Environment::render](http://twig.sensiolabs.org/api/2.x/Twig/Environment.html#method_render)('campaign/sendouts/_preview', ['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...])
476477478479480481482483484485486487488 
        // Render and return
        $renderingTemplate = $this->_renderingTemplate;
        $this->_renderingTemplate = $template;

        try {
            $output = $this->getTwig()->render($template, $variables);
        } finally {
            $this->_renderingTemplate = $renderingTemplate;
            $this->setTemplateMode($oldTemplateMode);
        }

        $this->afterRenderTemplate($template, $variables, $templateMode, $output);
58. in /home/foqidexe/public_html/nektar/webV1/vendor/craftcms/cms/src/web/View.php at line 535– craft\web\View::renderTemplate('campaign/sendouts/_preview', ['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...])
529530531532533534535536537538539540541 
        $isRenderingPageTemplate = $this->_isRenderingPageTemplate;
        $this->_isRenderingPageTemplate = true;

        try {
            $this->beginPage();
            echo $this->renderTemplate($template, $variables);
            $this->endPage();
        } finally {
            $this->_isRenderingPageTemplate = $isRenderingPageTemplate;
            $this->setTemplateMode($oldTemplateMode);
            $output = ob_get_clean();
        }
59. in /home/foqidexe/public_html/nektar/webV1/vendor/craftcms/cms/src/web/TemplateResponseFormatter.php at line 57– craft\web\View::renderPageTemplate('campaign/sendouts/_preview', ['sendout' => putyourlightson\campaign\elements\SendoutElement, 'schedule' => putyourlightson\campaign\models\RecurringScheduleModel, 'settings' => putyourlightson\campaign\models\SettingsModel, 'contactElementType' => 'putyourlightson\campaign\element...', ...], 'cp')
51525354555657585960616263        ) {
            $view->registerAssetBundle(ContentWindowAsset::class);
        }

        // Render and return the template
        try {
            $response->content = $view->renderPageTemplate($behavior->template, $behavior->variables, $behavior->templateMode);
        } catch (Throwable $e) {
            $previous = $e->getPrevious();
            if ($previous instanceof YiiExitException) {
                // Something called Craft::$app->end()
                if ($previous instanceof ExitException && $previous->output !== null) {
                    echo $previous->output;
60. in /home/foqidexe/public_html/nektar/webV1/vendor/yiisoft/yii2/web/Response.php at line 1100– craft\web\TemplateResponseFormatter::format(craft\web\Response)
61. in /home/foqidexe/public_html/nektar/webV1/vendor/craftcms/cms/src/web/Response.php at line 337– [yii\web\Response::prepare](https://www.yiiframework.com/doc-2.0/yii-web-response.html#prepare()-detail)()
331332333334335336337338339340341342343 
    /**
     * @inheritdoc
     */
    protected function prepare(): void
    {
        parent::prepare();
        $this->_isPrepared = true;
    }

    /**
     * Clear the output buffer to prevent corrupt downloads.
     *
62. in /home/foqidexe/public_html/nektar/webV1/vendor/yiisoft/yii2/web/Response.php at line 340– craft\web\Response::prepare()
63. in /home/foqidexe/public_html/nektar/webV1/vendor/yiisoft/yii2/base/Application.php at line 390– [yii\web\Response::send](https://www.yiiframework.com/doc-2.0/yii-web-response.html#send()-detail)()
64. in /home/foqidexe/public_html/nektar/webV1/web/index.php at line 23– [yii\base\Application::run](https://www.yiiframework.com/doc-2.0/yii-base-application.html#run()-detail)()
17181920212223    Dotenv\Dotenv::createUnsafeMutable(CRAFT_BASE_PATH)->safeLoad();
}

// Load and run Craft
define('CRAFT_ENVIRONMENT', getenv('ENVIRONMENT') ?: 'production');
$app = require CRAFT_VENDOR_PATH.'/craftcms/cms/bootstrap/web.php';
$app->run();
$_GET = [
    'p' => 'admin/campaign/sendouts/recurring/preview/33323',
];

$_COOKIE = [
    'Craft-8fd5709a-37b9-4e14-a219-17b396817377:sidebar' => 'expanded',
    'CraftSessionId' => '1538aa7041e93b4571454cd33d49b2b9',
    'b18c8f8715f56d38576d6bf44172d173_identity' => '259126da43aa5fba59c34f1f7bfa2d12d2c7aa6f1f81aa6b8625768cd50c8be9a:2:{i:0;s:41:"b18c8f8715f56d38576d6bf44172d173_identity";i:1;s:159:"[8,"[\\"IRBc9ukZvRjzUKfiYRd8J2QZ1nsxujsoPm3A5qx1JiBB-8HOaoKfdOD20JVhZEpxxMn-RhqhLylGzc6UOWyKTTqd65M6yErijHkN\\",null,\\"3ed9c5065715b71c7ccae0f58009ea3f\\"]",3600]";}',
    'CSRF' => '817caab3dcb49410d56afdcccc23fbf9827b2eb6bbbdbf88fb95b6bbe7710feaa:2:{i:0;s:4:"CSRF";i:1;s:147:"oSKIETyKnZBZUJRYZ6MW8UgLo3YW6V8Zew85JyFh|a7e46964924233e4541ec9185f6e421df2145d68085c95d5154897d99c446348oSKIETyKnZBZUJRYZ6MW8UgLo3YW6V8Zew85JyFh|8";}',
    'b18c8f8715f56d38576d6bf44172d173_username' => '8d74dc86577886b7f181333058294a5cee0897f99fd593f8ebd3dde2a90bbe3da:2:{i:0;s:41:"b18c8f8715f56d38576d6bf44172d173_username";i:1;s:13:"mail@wedot.ch";}',
];

$_SESSION = [
    'd0d66a77134636dd490e5ccd2e839674__flash' => [
        '__js' => -1,
        'cp-notification-success' => -1,
    ],
    '__DUP_328318' => '66464c17bcd9f1.59577588',
    '__JSCHK_328318' => '66464c17c06c55.26214182',
    'd0d66a77134636dd490e5ccd2e839674__auth_access' => [
        'editStructure:7',
        'previewElement:32700',
        'saveAssets:2b7d87db-9700-4955-b237-0fd6b1ffed4d',
        'editStructure:5886',
        'previewElement:32889',
        'saveAssets:f3b859b6-52f0-4a38-b5a7-b7b1fe0cccf3',
        'previewElement:33147',
        'previewDraft:808',
        'previewElement:32711',
        'previewDraft:810',
        'previewDraft:811',
        'previewDraft:812',
        'previewDraft:813',
        'previewElement:32726',
        'previewElement:32803',
        'previewDraft:814',
        'manageNestedElements::32700::field:hauptInhalt',
        'previewDraft:816',
        'manageNestedElements::33200::field:textBuilder',
        'previewDraft:817',
        'previewDraft:819',
        'previewDraft:822',
        'previewDraft:823',
        'previewElement:32730',
        'previewDraft:825',
        'previewElement:32716',
        'previewDraft:827',
        'previewElement:32720',
        'previewDraft:830',
        'previewDraft:833',
        'previewElement:32886',
        'previewDraft:835',
        'previewDraft:836',
        'previewElement:32891',
        'previewDraft:838',
        'editStructure:4',
        'previewDraft:840',
        'previewDraft:841',
        'previewDraft:842',
        'previewDraft:843',
        'previewDraft:844',
    ],
    '__DUP_327062' => '66464e25491d00.31914602',
    '__JSCHK_327062' => '66464e254962f0.53473097',
    '__DUP_327076' => '66464e57e27449.51195891',
    '__JSCHK_327076' => '66464e57e2b9a8.79548803',
    'b18c8f8715f56d38576d6bf44172d173__token' => 'IRBc9ukZvRjzUKfiYRd8J2QZ1nsxujsoPm3A5qx1JiBB-8HOaoKfdOD20JVhZEpxxMn-RhqhLylGzc6UOWyKTTqd65M6yErijHkN',
    'b18c8f8715f56d38576d6bf44172d173__id' => 8,
    '__authKey' => '["IRBc9ukZvRjzUKfiYRd8J2QZ1nsxujsoPm3A5qx1JiBB-8HOaoKfdOD20JVhZEpxxMn-RhqhLylGzc6UOWyKTTqd65M6yErijHkN",null,"3ed9c5065715b71c7ccae0f58009ea3f"]',
    'b18c8f8715f56d38576d6bf44172d173__expire' => 1715895299,
    '__duration' => 3600,
    '__elevated_timeout' => 1715888173,
    '__js' => [
        [
            'if (Craft?.broadcaster) {
    Craft.broadcaster.postMessage({"event":"saveElement","id":33323});
}',
            4,
            null,
        ],
    ],
    'cp-notification-success' => [
        'Sendung erstellt.',
        [
            'details' => '<div id="chip-608338533" class="chip small element" data-type="putyourlightson\\campaign\\elements\\SendoutElement" data-id="33323" data-settings=\'{"selectable":false,"id":"chip-608338533","showLabel":true,"showStatus":true,"showThumb":true,"size":"small","ui":"chip","context":"index","showDraftName":true}\' data-modifiable data-site-id="3" data-status="draft" data-label="Wochenmenu    " data-cp-url="https://foqidexe.cyon.site/admin/campaign/sendouts/recurring/33323" data-editable data-savable data-duplicatable data-deletable><div class="chip-content"><span class="icon" data-icon="draft" role="img" aria-label="Status: Entwurf"></span><craft-element-label id="chip-608338533-label" class="label"><a class="label-link" href="https://foqidexe.cyon.site/admin/campaign/sendouts/recurring/33323"><span>Wochenmenu    </span></a></craft-element-label><div class="chip-actions"></div></div></div>',
            'icon' => 'check',
            'iconLabel' => 'Erfolg',
        ],
    ],
];
[Yii Framework](https://yiiframework.com/)
2024-05-16, 22:34:59

Yii Framework/[2.0.48.1](https://github.com/yiisoft/yii2/)
alexanderloewe commented 4 months ago

I made a video with the steps to reproduce the error.

https://github.com/putyourlightson/craft-campaign/assets/69263307/7ed3ad21-c3bf-411b-a40f-0bc54883e73b

Thanks, Ben

alexanderloewe commented 4 months ago

When i try so send a test E-Mail to myself, i get the same error:

Bildschirmfoto 2024-05-16 um 22 43 20
bencroker commented 4 months ago

Looking through the stack trace, you have the following line of Twig code in templates/newsletter/_includes/footerLower.html at line 87:

<a href="{{ unsubscribeUrl }}{% if contact is defined and contact | length %}&contactId={{ contact.id }}{% endif %}{% if mailingList is defined and mailingList | length %}&listId={{ mailingList.id }}{% endif %}" style="border: none; color: inherit; display: block; font-family: {{ fontFamily }}; font-size: inherit; outline: none; text-decoration: none;">{{ unsubText }}</a>

The error appears to be originating from calling the length filter on mailingList. Since mailingList is an element, you should never be iterating over it (which is what the length filter attempts to do). Instead, your tests should be in the form, if element is defined and element.

<a href="{{ unsubscribeUrl }}{% if contact is defined and contact %}&contactId={{ contact.id }}{% endif %}{% if mailingList is defined and mailingList %}&listId={{ mailingList.id }}{% endif %}" style="border: none; color: inherit; display: block; font-family: {{ fontFamily }}; font-size: inherit; outline: none; text-decoration: none;">{{ unsubText }}</a>

Let me know if that solves the issue.

alexanderloewe commented 4 months ago

Hello Ben,

I see. Thank you very much for your feedback.

My mistake :(

bencroker commented 3 months ago

No problem, glad to see you got it working.