Prefs: delGroupPref method added

GB: PHP interface for prefs added
This commit is contained in:
tomas 2005-02-03 01:10:43 +00:00
parent f1701e9477
commit c434ad025e
2 changed files with 145 additions and 13 deletions

View File

@ -23,7 +23,7 @@
Author : $Author: tomas $ Author : $Author: tomas $
Version : $Revision: 1.27 $ Version : $Revision: 1.28 $
Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/modules/storageServer/var/GreenBox.php,v $ Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/modules/storageServer/var/GreenBox.php,v $
------------------------------------------------------------------------------*/ ------------------------------------------------------------------------------*/
@ -35,7 +35,7 @@ require_once "BasicStor.php";
* LiveSupport file storage module * LiveSupport file storage module
* *
* @author $Author: tomas $ * @author $Author: tomas $
* @version $Revision: 1.27 $ * @version $Revision: 1.28 $
* @see BasicStor * @see BasicStor
*/ */
class GreenBox extends BasicStor{ class GreenBox extends BasicStor{
@ -298,6 +298,102 @@ class GreenBox extends BasicStor{
return $res; return $res;
} }
/* ---------------------------------------------- methods for preferences */
/**
* Read preference record by session id
*
* @param sessid string, session id
* @param key string, preference key
* @return string, preference value
*/
function loadPref($sessid, $key)
{
require_once '../../../storageServer/var/Prefs.php';
$pr =& new Prefs($this);
$res = $pr->loadPref($sessid, $key);
return $res;
}
/**
* Save preference record by session id
*
* @param sessid string, session id
* @param key string, preference key
* @param value string, preference value
* @return boolean
*/
function savePref($sessid, $key, $value)
{
require_once '../../../storageServer/var/Prefs.php';
$pr =& new Prefs($this);
$res = $pr->savePref($sessid, $key, $value);
return $res;
}
/**
* Delete preference record by session id
*
* @param sessid string, session id
* @param key string, preference key
* @return boolean
*/
function delPref($sessid, $key)
{
require_once '../../../storageServer/var/Prefs.php';
$pr =& new Prefs($this);
$res = $pr->delPref($sessid, $key);
return $res;
}
/**
* Read group preference record
*
* @param sessid string, session id
* @param group string, group name
* @param key string, preference key
* @return string, preference value
*/
function loadGroupPref($sessid, $group, $key)
{
require_once '../../../storageServer/var/Prefs.php';
$pr =& new Prefs($this);
$res = $pr->loadGroupPref($sessid, $group, $key);
return $res;
}
/**
* Save group preference record
*
* @param sessid string, session id
* @param group string, group name
* @param key string, preference key
* @param value string, preference value
* @return boolean
*/
function saveGroupPref($sessid, $group, $key, $value)
{
require_once '../../../storageServer/var/Prefs.php';
$pr =& new Prefs($this);
$res = $pr->saveGroupPref($sessid, $group, $key, $value);
return $res;
}
/**
* Delete group preference record
*
* @param sessid string, session id
* @param group string, group name
* @param key string, preference key
* @return boolean
*/
function delGroupPref($sessid, $group, $key)
{
require_once '../../../storageServer/var/Prefs.php';
$pr =& new Prefs($this);
$res = $pr->delGroupPref($sessid, $group, $key);
return $res;
}
/* --------------------------------------------------------- info methods */ /* --------------------------------------------------------- info methods */
/** /**

View File

@ -23,7 +23,7 @@
Author : $Author: tomas $ Author : $Author: tomas $
Version : $Revision: 1.4 $ Version : $Revision: 1.5 $
Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/modules/storageServer/var/Prefs.php,v $ Location : $Source: /home/paul/cvs2svn-livesupport/newcvsrepo/livesupport/modules/storageServer/var/Prefs.php,v $
------------------------------------------------------------------------------*/ ------------------------------------------------------------------------------*/
@ -90,7 +90,7 @@ class Prefs{
$subjid = $this->gb->getSessUserId($sessid); $subjid = $this->gb->getSessUserId($sessid);
if(PEAR::isError($subjid)) return $subjid; if(PEAR::isError($subjid)) return $subjid;
if(is_null($subjid)){ if(is_null($subjid)){
return PEAR::raiseError("Prefs::loadPref: invalid session id", return PEAR::raiseError("Prefs::savePref: invalid session id",
GBERR_SESS); GBERR_SESS);
} }
$r = $this->update($subjid, $key, $value); $r = $this->update($subjid, $key, $value);
@ -114,7 +114,7 @@ class Prefs{
$subjid = $this->gb->getSessUserId($sessid); $subjid = $this->gb->getSessUserId($sessid);
if(PEAR::isError($subjid)) return $subjid; if(PEAR::isError($subjid)) return $subjid;
if(is_null($subjid)){ if(is_null($subjid)){
return PEAR::raiseError("Prefs::loadPref: invalid session id", return PEAR::raiseError("Prefs::delPref: invalid session id",
GBERR_SESS); GBERR_SESS);
} }
$r = $this->delete($subjid, $key); $r = $this->delete($subjid, $key);
@ -131,13 +131,13 @@ class Prefs{
* Read group preference record * Read group preference record
* *
* @param sessid string, session id * @param sessid string, session id
* @param grname string, group name * @param group string, group name
* @param key string, preference key * @param key string, preference key
* @return string, preference value * @return string, preference value
*/ */
function loadGroupPref($sessid, $grname, $key) function loadGroupPref($sessid, $group, $key)
{ {
$subjid = $this->gb->getSubjId($grname); $subjid = $this->gb->getSubjId($group);
if(PEAR::isError($subjid)) return $subjid; if(PEAR::isError($subjid)) return $subjid;
if(is_null($subjid)){ if(is_null($subjid)){
return PEAR::raiseError( return PEAR::raiseError(
@ -156,20 +156,20 @@ class Prefs{
* Save group preference record * Save group preference record
* *
* @param sessid string, session id * @param sessid string, session id
* @param grname string, group name * @param group string, group name
* @param key string, preference key * @param key string, preference key
* @param value string, preference value * @param value string, preference value
* @return boolean * @return boolean
*/ */
function saveGroupPref($sessid, $grname, $key, $value) function saveGroupPref($sessid, $group, $key, $value)
{ {
$uid = $this->gb->getSessUserId($sessid); $uid = $this->gb->getSessUserId($sessid);
if(PEAR::isError($uid)) return $uid; if(PEAR::isError($uid)) return $uid;
if(is_null($uid)){ if(is_null($uid)){
return PEAR::raiseError( return PEAR::raiseError(
"Prefs::loadGroupPref: invalid session id", GBERR_SESS); "Prefs::saveGroupPref: invalid session id", GBERR_SESS);
} }
$gid = $this->gb->getSubjId($grname); $gid = $this->gb->getSubjId($group);
if(PEAR::isError($gid)) return $gid; if(PEAR::isError($gid)) return $gid;
if(is_null($gid)){ if(is_null($gid)){
return PEAR::raiseError( return PEAR::raiseError(
@ -190,7 +190,43 @@ class Prefs{
return TRUE; return TRUE;
} }
/* ===================================================== gb level methods */ /**
* Delete group preference record
*
* @param sessid string, session id
* @param group string, group name
* @param key string, preference key
* @return boolean
*/
function delGroupPref($sessid, $group, $key)
{
$uid = $this->gb->getSessUserId($sessid);
if(PEAR::isError($uid)) return $uid;
if(is_null($uid)){
return PEAR::raiseError(
"Prefs::delGroupPref: invalid session id", GBERR_SESS);
}
$gid = $this->gb->getSubjId($group);
if(PEAR::isError($gid)) return $gid;
if(is_null($gid)){
return PEAR::raiseError(
"Prefs::delGroupPref: invalid group name", GBERR_SESS);
}
$memb = $this->gb->isMemberOf($uid, $gid);
if(PEAR::isError($memb)) return $memb;
if(!$memb){
return PEAR::raiseError(
"Prefs::delGroupPref: access denied", GBERR_DENY);
}
$r = $this->delete($gid, $key);
if(PEAR::isError($r)) return $r;
if($r === FALSE){
return PEAR::raiseError(
"Prefs::delGroupPref: invalid preference key", GBERR_PREF);
}
return TRUE;
}
/* ==================================================== low level methods */
/** /**
* Insert of new preference record * Insert of new preference record
* *