Details
Description
Bug specific to:
- multi-lingual installations with at least 2 languages
- drupal, using the "domain" to detect the locale (not path prefix)
- drupal/civicrm is installed in a sub-folder of the web server, ex: http://fr.example.org/mysite/
- it's a full moon
In those cases, the CRM_Utils_System_Drupal::languageNegotiationURL() doesn't return the correct URL.
I will do a PR and more testing, but for now, the patch is:
//domain if ($urlType == LOCALE_LANGUAGE_NEGOTIATION_URL_DOMAIN) { if (isset($language->domain) && $language->domain) { if ($addLanguagePart) { $url = (CRM_Utils_System::isSSL() ? 'https' : 'http') . '://' . $language->domain . base_path(); // <- this }