civicrm / org.civicrm.flexmailer

FlexMailer is now part of civicrm-core. Please see the link below for how to upgrade.
https://civicrm.org/extensions/flexmailer
Other
5 stars 22 forks source link

Fatal Error for mail preview #35

Closed tapashdatta closed 5 years ago

tapashdatta commented 5 years ago
***ERROR***
message:            A fatal error was triggered: One of parameters  (value: ) is not of the type Positive
code:                
exception:          CiviCRM_API3_Exception Object
(
    [extraParams:CiviCRM_API3_Exception:private] => Array
        (
            [is_error] => 1
            [error_message] => A fatal error was triggered: One of parameters  (value: ) is not of the type Positive
            [error_code] => undefined
        )

    [message:protected] => A fatal error was triggered: One of parameters  (value: ) is not of the type Positive
    [string:Exception:private] => 
    [code:protected] => 0
    [file:protected] => /home/webadmin/public_html/cmm/sites/all/modules/civicrm/api/api.php
    [line:protected] => 45
    [trace:Exception:private] => Array
        (
            [0] => Array
                (
                    [file] => /home/webadmin/public_html/cmm/sites/default/files/civicrm/ext/org.civicrm.flexmailer/src/Page/ViewMailing.php
                    [line] => 43
                    [function] => civicrm_api3
                    [args] => Array
                        (
                            [0] => Mailing
                            [1] => preview
                            [2] => Array
                                (
                                    [id] => 421
                                    [version] => 3
                                )

                        )

                )

            [1] => Array
                (
                    [file] => /home/webadmin/public_html/cmm/sites/all/modules/civicrm/CRM/Core/Invoke.php
                    [line] => 309
                    [function] => run
                    [class] => Civi\FlexMailer\Page\ViewMailing
                    [type] => ->
                    [args] => Array
                        (
                            [0] => Array
                                (
                                    [0] => civicrm
                                    [1] => mailing
                                    [2] => view
                                )

                            [1] => 
                   ...

***LAST ERROR***

Keep getting this error. I'm on Civi 5.11, Flexmailer master branch. How to avoid this please? thanks

MegaphoneJon commented 5 years ago

@tapashdatta Can you try with CiviCRM 5.12.3? This looks like it may be related to #14081.

This also isn't very much information to give for people to help you. If you could post a) a backtrace, and b) a description of what you were doing when the error occurred, people will be able to help you better.

totten commented 5 years ago

Hyperlink for that reference: 14081 and dev/mail#41

tapashdatta commented 5 years ago

@tapashdatta Can you try with CiviCRM 5.12.3? This looks like it may be related to #14081.

This also isn't very much information to give for people to help you. If you could post a) a backtrace, and b) a description of what you were doing when the error occurred, people will be able to help you better.

$backTrace = 
#0 /home/webadmin/public_html/cmm/sites/all/modules/civicrm/CRM/Core/Error.php(339): CRM_Core_Error::backtrace("backTrace", TRUE) 
#1 /home/webadmin/public_html/cmm/sites/all/modules/civicrm/CRM/Utils/Type.php(554): CRM_Core_Error::fatal("One of parameters (value: ) is not of the type Positive") 
#2 /home/webadmin/public_html/cmm/sites/all/modules/civicrm/CRM/Utils/Type.php(209): CRM_Utils_Type::validate("", "Positive", TRUE) 
#3 /home/webadmin/public_html/cmm/sites/all/modules/civicrm/CRM/Contact/BAO/Query.php(3667): CRM_Utils_Type::validateAll((Array:1), "Positive") 
#4 /home/webadmin/public_html/cmm/sites/all/modules/civicrm/CRM/Contact/BAO/Query.php(2042): CRM_Contact_BAO_Query->includeContactIDs() 
#5 /home/webadmin/public_html/cmm/sites/all/modules/civicrm/CRM/Contact/BAO/Query.php(533): CRM_Contact_BAO_Query->whereClause(NULL) 
#6 /home/webadmin/public_html/cmm/sites/all/modules/civicrm/CRM/Contact/BAO/Query.php(493): CRM_Contact_BAO_Query->initialize(NULL) 
#7 /home/webadmin/public_html/cmm/sites/all/modules/civicrm/CRM/Contact/BAO/Query.php(4530): CRM_Contact_BAO_Query->__construct((Array:3), (Array:5), (Array:31), TRUE, FALSE, 1, TRUE, TRUE, TRUE, NULL, "AND", NULL, TRUE) 
#8 /home/webadmin/public_html/cmm/sites/all/modules/civicrm/CRM/Utils/Token.php(1238): CRM_Contact_BAO_Query::apiQuery((Array:3), (Array:5), NULL, NULL, 0, 1, TRUE, FALSE, TRUE, 1, NULL, TRUE) 
#9 /home/webadmin/public_html/cmm/sites/all/modules/civicrm/api/v3/Mailing.php(579): CRM_Utils_Token::getTokenDetails((Array:1), (Array:5), TRUE, TRUE, NULL, (Array:4)) 
#10 /home/webadmin/public_html/cmm/sites/default/files/civicrm/ext/org.civicrm.flexmailer/src/API/MailingPreview.php(30): civicrm_api3_mailing_preview((Array:2)) 
#11 [internal function](): Civi\FlexMailer\API\MailingPreview::preview((Array:7)) 
#12 /home/webadmin/public_html/cmm/sites/all/modules/civicrm/Civi/API/Provider/AdhocProvider.php(131): call_user_func("\Civi\FlexMailer\API\MailingPreview::preview", (Array:7)) 
#13 /home/webadmin/public_html/cmm/sites/all/modules/civicrm/Civi/API/Kernel.php(169): Civi\API\Provider\AdhocProvider->invoke((Array:7)) 
#14 /home/webadmin/public_html/cmm/sites/all/modules/civicrm/Civi/API/Kernel.php(100): Civi\API\Kernel->runRequest((Array:7)) 
#15 /home/webadmin/public_html/cmm/sites/all/modules/civicrm/api/api.php(43): Civi\API\Kernel->runSafe("Mailing", "preview", (Array:2)) 
#16 /home/webadmin/public_html/cmm/sites/default/files/civicrm/ext/org.civicrm.flexmailer/src/Page/ViewMailing.php(43): civicrm_api3("Mailing", "preview", (Array:2)) 
#17 /home/webadmin/public_html/cmm/sites/all/modules/civicrm/CRM/Core/Invoke.php(309): Civi\FlexMailer\Page\ViewMailing->run((Array:3), NULL) 
#18 /home/webadmin/public_html/cmm/sites/all/modules/civicrm/CRM/Core/Invoke.php(84): CRM_Core_Invoke::runItem((Array:15)) 
#19 /home/webadmin/public_html/cmm/sites/all/modules/civicrm/CRM/Core/Invoke.php(52): CRM_Core_Invoke::_invoke((Array:3)) 
#20 /home/webadmin/public_html/cmm/sites/all/modules/civicrm/drupal/civicrm.module(445): CRM_Core_Invoke::invoke((Array:3)) 
#21 /home/webadmin/public_html/cmm/includes/menu.inc(527): civicrm_invoke("mailing", "view") 
#22 /home/webadmin/public_html/cmm/index.php(21): menu_execute_active_handler() 
#23 {main}
totten commented 5 years ago

I think this is resolved in tandem with #29 -- ie which will require Civi 5.13 and the next version flexmailer. Strictly speaking, the preview is different from the "View in browser", but there's a lot of overlapping code-paths, and my patching+testing was pretty evenly spread among "Preview as HTML", "Preview as Text", "Send test", and "View in browser".

totten commented 5 years ago

Please feel free to reopen if you find the issue isn't addressed in the next release.

tapashdatta commented 5 years ago

I have been reported and confirmed by few users that they are not able to see the mail in browser and keep coming up with this fatal error. 04e9d86f-8498-4064-8129-e66a648f238c I have flexmailer v1 beta 1 installed. And mosaico 2.0. This email ID 421, and any email that was sent to masses prior to installing this extension coming up with this error. I was able to view prior emails in browser after i have disabled these 2 extensions.

Is there a quick fix for this, when email viewing service is not interrupted for older emails when these 2 extensions are installed? Thanks

Upperholme commented 5 years ago

I've just updated to Flexmailer 1.1.0 and Mosaico 2.1, on Civi 5.13.4. I can confirm that public mailings can be viewed on the web by unauthenticated users - both new mailings created after the updates were installed, and older mailings.