Merge commit '762fe6d92bc' into 4.5-missing-prs
[civicrm-core.git] / CRM / Utils / System / DrupalBase.php
index fd3523ccbf9a8be9a242da2fa36911d7e25e150d..a881144a69ec84bb3233467d7f92b759a8d1338e 100644 (file)
  * Drupal specific stuff goes here
  */
 abstract class CRM_Utils_System_DrupalBase extends CRM_Utils_System_Base {
+
+  /**
+   * Does this CMS / UF support a CMS specific logging mechanism?
+   * @todo - we should think about offering up logging mechanisms in a way that is also extensible by extensions
+   * @var bool
+   */
+  var $supports_UF_Logging = TRUE;
   /**
    *
    */
   function __construct() {
+    /**
+     * deprecated property to check if this is a drupal install. The correct method is to have functions on the UF classes for all UF specific
+     * functions and leave the codebase oblivious to the type of CMS
+     * @deprecated
+     * @var bool
+     */
     $this->is_drupal = TRUE;
     $this->supports_form_extensions = TRUE;
   }
@@ -260,4 +273,28 @@ abstract class CRM_Utils_System_DrupalBase extends CRM_Utils_System_Base {
       return TRUE;
     }
   }
+
+
+  /**
+   * Log error to CMS
+   */
+  function logger($message) {
+    if (CRM_Core_Config::singleton()->userFrameworkLogging) {
+      watchdog('civicrm', '%message', array('%message' => $message), NULL, WATCHDOG_DEBUG);
+    }
+  }
+
+  /**
+   * Flush css/js caches
+   */
+  function clearResourceCache() {
+    _drupal_flush_css_js();
+  }
+
+  /**
+   * Append to coreResourcesList
+   */
+  function appendCoreResources(&$list) {
+    $list[] = 'js/crm.drupal.js';
+  }
 }