DUVar 6.x-1.x-dev
Drupal User Variables
|
Go to the source code of this file.
Functions | |
duvar_set ($var, $val) | |
duvar_get ($var, $def) | |
duvar_del ($var) | |
duvar_ns ($ns) |
Drupal User Variables.
This module is enhanced by the DCache module.
Definition in file duvar.module.
duvar_del | ( | $ | var | ) |
Delete the variable storage.
$var |
|
Definition at line 80 of file duvar.module.
References duvar_ns().
{ global $user; if ($user->uid == 0) { return FALSE; } $sql = "DELETE FROM `{duvariables}` WHERE `uid` = %d AND `name` = '%s'"; if (function_exists('dcache_del')) { dcache_del(duvar_ns('duvar'), DCACHE_DRUPAL); } return db_query($sql, $user->uid, $var); }
duvar_get | ( | $ | var, |
$ | def | ||
) |
Get the variable storage.
$var |
|
$def |
|
Definition at line 44 of file duvar.module.
References duvar_ns().
{ static $cache = NULL; global $user; if ($user->uid == 0) { return $def; } if (!$cache && function_exists('dcache_get')) { $cache = dcache_get(duvar_ns('duvar'), DCACHE_DRUPAL); } if (isset($cache) && isset($cache[$var])) { return $cache[$var]; } $sql = "SELECT `value` FROM `{duvariables}` WHERE `uid` = %d AND `name` = '%s'"; $result = db_query($sql, $user->uid, $var); if ($result === FALSE) { $result = $def; } else { $result = db_fetch_object($result); } $cache[$var] = $result; if (function_exists('dcache_set')) { dcache_set(duvar_ns('duvar'), $cache, DCACHE_DRUPAL, TRUE); } return $cache[$var]; }
duvar_ns | ( | $ | ns | ) |
User specific namespace. This method is particularly useful for unique cache namespaces unique to the user.
$ns |
|
Definition at line 103 of file duvar.module.
Referenced by duvar_del(), duvar_get(), and duvar_set().
{ global $user; return "{$ns}:{$user->uid}:"; }
duvar_set | ( | $ | var, |
$ | val | ||
) |
Set the variable storage.
$var |
|
$val |
|
Definition at line 20 of file duvar.module.
References duvar_ns().
{ global $user; if ($user->uid == 0) { return FALSE; } $sql = "INSERT INTO `{duvariables}` (`uid`, `name`, `value`) VALUES (%d, '%s', '%s')"; if (function_exists('dcache_del')) { dcache_del(duvar_ns('duvar'), DCACHE_DRUPAL); } return db_query($sql, $user->uid, $var, $val); }