public function __construct($document_root, $server_name) { if (empty($document_root)) { throw new Exception(civicrm::message('Class drupal, function __construct, $document_root is leeg !', 'error')); } if (empty($server_name)) { throw new Exception(civicrm::message('Class drupal, function __construct, $server_name is leeg !', 'error')); } $this->document_root = $document_root; $this->server_name = $server_name; if ($this->setSettings()) { $this->setCronKey(); $this->setSiteFrontPage(); $this->setTheme(); } }
private function setSettings() { if (file_exists($this->document_root . '/sites/default/civicrm.settings.php')) { $CIVICRM_UF_DSN = ''; $CIVICRM_DSN = ''; $CIVICRM_USE_MEMCACHE = ''; $CIVICRM_MEMCACHE_HOST = ''; $CIVICRM_MEMCACHE_PORT = ''; $CIVICRM_MEMCACHE_TIMEOUT = ''; $CIVICRM_MEMCACHE_PREFIX = ''; $CIVICRM_IDS_ENABLE = ''; $CIVICRM_TEMPLATE_COMPILEDIR = ''; ob_start(); include $this->document_root . '/sites/default/civicrm.settings.php'; $CIVICRM_UF_DSN = constant("CIVICRM_UF_DSN"); $CIVICRM_DSN = constant("CIVICRM_DSN"); if (defined('CIVICRM_USE_MEMCACHE')) { $CIVICRM_USE_MEMCACHE = constant("CIVICRM_USE_MEMCACHE"); } else { $CIVICRM_USE_MEMCACHE = ''; } if (defined('CIVICRM_MEMCACHE_HOST')) { $CIVICRM_MEMCACHE_HOST = constant("CIVICRM_MEMCACHE_HOST"); } else { $CIVICRM_MEMCACHE_HOST = ''; } if (defined('CIVICRM_MEMCACHE_PORT')) { $CIVICRM_MEMCACHE_PORT = constant("CIVICRM_MEMCACHE_PORT"); } else { $CIVICRM_MEMCACHE_PORT = ''; } if (defined('CIVICRM_MEMCACHE_TIMEOUT')) { $CIVICRM_MEMCACHE_TIMEOUT = constant("CIVICRM_MEMCACHE_TIMEOUT"); } else { $CIVICRM_MEMCACHE_TIMEOUT = ''; } if (defined('CIVICRM_MEMCACHE_PREFIX')) { $CIVICRM_MEMCACHE_PREFIX = constant("CIVICRM_MEMCACHE_PREFIX"); } else { $CIVICRM_MEMCACHE_PREFIX = ''; } if (defined('CIVICRM_IDS_ENABLE')) { $CIVICRM_IDS_ENABLE = constant("CIVICRM_IDS_ENABLE"); } else { $CIVICRM_IDS_ENABLE = ''; } if (defined('CIVICRM_TEMPLATE_COMPILEDIR')) { $CIVICRM_TEMPLATE_COMPILEDIR = constant("CIVICRM_TEMPLATE_COMPILEDIR"); } else { $CIVICRM_TEMPLATE_COMPILEDIR = ''; } $content = ob_get_contents(); ob_end_clean(); $this->settings['CIVICRM_UF_DSN'] = $CIVICRM_UF_DSN; $this->settings['CIVICRM_DSN'] = $CIVICRM_DSN; $this->settings['CIVICRM_USE_MEMCACHE'] = $CIVICRM_USE_MEMCACHE; $this->settings['CIVICRM_MEMCACHE_HOST'] = $CIVICRM_MEMCACHE_HOST; $this->settings['CIVICRM_MEMCACHE_PORT'] = $CIVICRM_MEMCACHE_PORT; $this->settings['CIVICRM_MEMCACHE_TIMEOUT'] = $CIVICRM_MEMCACHE_TIMEOUT; $this->settings['CIVICRM_MEMCACHE_PREFIX'] = $CIVICRM_MEMCACHE_PREFIX; $this->settings['CIVICRM_IDS_ENABLE'] = $CIVICRM_IDS_ENABLE; $this->settings['CIVICRM_TEMPLATE_COMPILEDIR'] = $CIVICRM_TEMPLATE_COMPILEDIR; list($this->username, $this->password, $this->host, $this->database) = sscanf($CIVICRM_DSN, "mysql://%[^:@?/]:%[^:@?/]@%[^:@?/]/%[^:@?/]?new_link=true"); $this->databases['database'] = $this->database; $this->databases['username'] = $this->username; $this->databases['password'] = $this->password; $this->databases['host'] = $this->host; } else { civicrm::message('Class civicrm, function setSettings, Geen civicrm.settings.php bestand !', 'error'); $this->settings = false; } }