View Issue Details

IDProjectCategoryView StatusLast Update
0015633phpList 3 applicationCampaign Send Processpublic22-05-12 13:51
Reporterseanfulton Assigned To 
Status resolvedResolutionfixed 
PlatformLinuxOSCENTOSOS Version4.5
Product Version2.11.6 
Fixed in Version2.11.7 
Summary0015633: PHPList sends Fetched URL even if it can't fetch the content.
DescriptionIf you use the send a web page option in PHPList to send a pre-defined web page, and the web page can't be fetched, PHPList will send the URL in the body of the message instead of failing and trying to re-fetch on the next send.

Additional InformationWe've made the following changes which cause it to error out if the page can't be fetched.
The changes I made were in admin/processqueue.php (around line # 436)

    $fetchStatus = precacheMessage($messageid);
    if ($GLOBALS["has_pear_http_request"] && preg_match("/\[URL:([^\s]+)\]/i",$cached[$messageid]["content"],$regs)) {
        logEvent("Fetch status in process queue is $fetchStatus");
        if($fetchStatus == 0){
            logEvent("Message fetched was Empty for $messageid");
            $cached[$messageid] = "";
//orish change end

instead of just this

And in admin/sendmaillib.php (around line# 39)
      //orish change

      logEvent("Initial Fetch was Empty so Fetching again in sendemaillib");
    $fetchStatus = precacheMessage($messageid,$forwardContent);
    if ($GLOBALS["has_pear_http_request"] && preg_match("/\[URL:([^\s]+)\]/i",$cached[$messageid]["content"],$regs)) {
        logEvent("Fetched URL CONTENT $cached[$messageid] and status $fetchStatus");
        if($fetchStatus == 0){
            logEvent("Message is still empty $messageid");
            $cached[$messageid] = "";
            return 0;
     //orish changes end

instead of just this:

Is there anything else we need to modify or be aware of?


TagsNo tags attached.



27-08-11 01:44

administrator   ~0051398

hmm, as far as I can remember the remote URL fetching will determine failure based on the HTTP status (being 200 or not). So if the remote page returns 200, it assumes it's correct.


22-05-12 13:51

administrator   ~0051575

I could replicate this. Thanks for reporting.