I have boost running with Ajaxify Regions with Ubercart shopping cart block ajaxified. On non-SSL pages everything is well but on the SSL version of the same pages the ajax block displays just the rotating gear icon, it never finishes updating.

Comments

csevb10’s picture

Status: Active » Postponed (maintainer needs more info)

Could this be a configuration issue? I have a site running using ajaxify_regions with SSL.
By default, it's going to request https:///ajaxify_regions/ajax?blocks=
Can you check what the response is from that url (with the values replaced of course).
I consider this a really high priority, and I want to resolve it, but for now, I need more info.
--Bill

mfsu’s picture

Status: Postponed (maintainer needs more info) » Needs review

Bill,

Thanks for the reply. Starting from your cue I found out the problem in secure pages module configuration. It routes the ajax URLs in https back to http, so I'm guessing the browser won't load the block in https.

Adding a line

ajaxify_regions/*

into the secure pages ignore section seems to have solved the problem. This said, I wouldn't mind a second opinion on what I have found.

Thanks again,
Mehmet

shaf_90’s picture

Status: Needs review » Active

I had the same issue, which occurs when you have the ssl to non-ssl switch. Ajax is in the excluded list and is therefore switched to non-ssl mode even when it is called from a page which is in ssl mode.

The easy option would be to disable the switch but because I had YouTube videos on my website, doing that wasn't easy. So I created a new list of urls, which would be disabled from switching

I added this after function uc_ssl_exclude_ssl_paths()

//Implementation of hook_exclude_switch_paths() to exclude certain paths from being switched to either ssl mode or non-ssl mode.
function uc_ssl_exclude_switch_paths()
{
   $paths = array(
    'Exlcude Ajax from being switched' => '*ajax*',
   );
   return $paths;
}

then I added the following after the code which defines '$include_secured_urls'

         $exclude_switch_urls = array();
         $exclude_switch_urls = module_invoke('uc_ssl', 'exclude_switch_paths', $exclude_switch_urls);

         foreach (module_implements('exclude_switch_paths') as $module) 
         {
            $new = module_invoke($module, 'exclude_switch_paths', $exclude_switch_urls);
            if ($module != 'uc_ssl') //Skip uc_ssl since we already processed it above.  Allow external modules to change uc_ssl defaults.
            {
               if (is_array($new))
               {
                  $exclude_switch_urls = array_merge($exclude_switch_urls, $new);
               }
            }
         }

then I added if (! is_array($exclude_switch_urls)) { $exclude_switch_urls = array(); } after if (! is_array($exclude_secured_urls)) { $exclude_secured_urls = array(); }

and finally, wherever there was a switch to ssl or non ssl, I added an extra condition && !uc_ssl_path_match($current_path, $exclude_switch_urls)