Example #1
0
 /**
  * Set the system preferences to the given value.
  * If the preference key was not already registered, 
  * it will added to database.
  *
  * @param string $p_varName
  * @param mixed $p_value
  *
  * @return void
  */
 public static function Set($p_varName, $p_value)
 {
     global $Campsite;
     global $g_ado_db;
     if (empty($p_varName) || !is_string($p_varName)) {
         return;
     }
     if (!isset($Campsite['system_preferences'])) {
         SystemPref::__LoadConfig();
     }
     if (array_key_exists($p_varName, $Campsite['system_preferences'])) {
         if ($Campsite['system_preferences'][$p_varName] != $p_value) {
             $sql = "UPDATE SystemPreferences SET value=" . $g_ado_db->escape($p_value) . " WHERE varname=" . $g_ado_db->escape($p_varName);
             $g_ado_db->Execute($sql);
             $Campsite['system_preferences'][$p_varName] = $p_value;
             self::StoreSystemPrefsInCache();
         }
     } else {
         $sql = "INSERT INTO SystemPreferences\n\t\t\t\t    (varname, value) VALUES (" . $g_ado_db->escape($p_varName) . ", " . $g_ado_db->escape($p_value) . ")";
         $g_ado_db->Execute($sql);
         $Campsite['system_preferences'][$p_varName] = $p_value;
         self::StoreSystemPrefsInCache();
     }
 }