CRM-18130: Custom CSS URL not working if aliased or rewritten
authorNicolas Ganivet <nicolas@cividesk.com>
Tue, 1 Mar 2016 20:00:37 +0000 (13:00 -0700)
committerNicolas Ganivet <nicolas@cividesk.com>
Tue, 1 Mar 2016 20:17:12 +0000 (13:17 -0700)
CRM/Utils/System/DrupalBase.php

index 923994fbfadcb27d17f2fe703d3dc050bfbf4314..1d4e602393fb2db489ccb3dfb64435cd203e1bb5 100644 (file)
@@ -100,8 +100,12 @@ abstract class CRM_Utils_System_DrupalBase extends CRM_Utils_System_Base {
     // compares $url (which is some unknown/untrusted value from a third-party dev) to the CMS's base url (which is independent of civi's url)
     // to see if the url is within our drupal dir, if it is we are able to treated it as an internal url
     if (strpos($url, $base_url) === 0) {
-      $internal = TRUE;
-      $url = trim(str_replace($base_url, '', $url), '/');
+      $file = trim(str_replace($base_url, '', $url), '/');
+      // CRM-18130: Custom CSS URL not working if aliased or rewritten
+      if (file_exists(DRUPAL_ROOT . $file)) {
+        $url = $file;
+        $internal = TRUE;
+      }
     }
     // Handle relative urls that are within the CiviCRM module directory
     elseif (strpos($url, $base) === 0) {