/** * @param $params * @param string $type */ static function storeDirectoryOrURLPreferences(&$params, $type = 'directory') { $optionName = $type == 'directory' ? 'directory_preferences' : 'url_preferences'; $sql = "\nUPDATE civicrm_option_value v,\n civicrm_option_group g\nSET v.value = %1,\n v.is_active = 1\nWHERE g.name = %2\nAND v.option_group_id = g.id\nAND v.name = %3\n"; foreach ($params as $name => $value) { // always try to store relative directory or url from CMS root if ($type == 'directory') { $value = CRM_Utils_File::relativeDirectory($value); } else { $value = CRM_Utils_System::relativeURL($value); } $sqlParams = array(1 => array($value, 'String'), 2 => array($optionName, 'String'), 3 => array($name, 'String')); CRM_Core_DAO::executeQuery($sql, $sqlParams); } }
/** * @param array $params * @param $group */ public static function storeDirectoryOrURLPreferences(&$params, $group) { foreach ($params as $name => $value) { // always try to store relative directory or url from CMS root $value = $group == self::DIRECTORY_PREFERENCES_NAME ? CRM_Utils_File::relativeDirectory($value) : CRM_Utils_System::relativeURL($value); self::setItem($value, $group, $name); } }