Rename the class PlFlagSet to conforms to core coding rules.
Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
/** class for describing flags
*/
-class Flagset
+class PlFlagSet
{
- /** string that holds the flagset */
- private $value;
+ /** string that holds the PlFlagSet */
+ private $values = array();
/** the boundary between flags */
- private $sep = ",";
+ private $sep;
/** set flag
* @param $flags services FROM coupures
* @return VOID
*/
- public function __construct($flags = "")
+ public function __construct($flags = '', $sep = ',')
{
- $this->value = $flags;
+ $this->sep = $sep;
+ $splitted = explode($sep, $flags);
+ foreach ($splitted as $part) {
+ $this->values[$part] = true;
+ }
}
*/
public function addFlag($flag)
{
- if (!$flag) return;
- if (!$this->hasflag($flag)) {
- if ($this->value)
- $this->value .= $this->sep;
- $this->value .= $flag;
+ if (empty($flag)) {
+ return;
}
+ $this->values[$flag] = true;
}
*/
public function hasFlag($flag)
{
- $tok = strtok($this->value,$this->sep);
- while ($tok) {
- if ($tok==$flag) return 1;
- $tok = strtok($this->sep);
- }
- return 0;
+ return !empty($flag) && isset($this->values[$flag]) && $this->values[$flag];
}
/** test flag combination
*/
public function rmFlag($flag)
{
- if (!$flag) return;
- $newvalue = "";
- $tok = strtok($this->value,$this->sep);
- while ($tok) {
- if ($tok!=$flag) {
- if ($newvalue)
- $newvalue .= $this->sep;
- $newvalue .= $tok;
- }
- $tok = strtok($this->sep);
+ if (empty($flag)) {
+ return;
+ }
+ if (isset($this->values[$flag])) {
+ unset($this->values[$flag]);
}
- $this->value=$newvalue;
}
- /** return the flagset
+
+ /** return the PlFlagSet
*/
public function flags()
{
- return $this->value;
+ $flags = '';
+ foreach ($this->values as $key=>$value) {
+ if (!empty($flags)) {
+ $flags .= $this->sep;
+ }
+ if ($value) {
+ $flags .= $key;
+ }
+ }
+ return $flags;
}
}
require_once 'xorg.misc.inc.php';
$_SESSION['xsrf_token'] = rand_url_id();
}
- if (!isset($_SESSION['perms']) || !($_SESSION['perms'] instanceof FlagSet)) {
- $_SESSION['perms'] = new FlagSet();
+ if (!isset($_SESSION['perms']) || !($_SESSION['perms'] instanceof PlFlagSet)) {
+ $_SESSION['perms'] = new PlFlagSet();
}
}
return 'NULL';
case 'object':
- if ($var instanceof FlagSet) {
+ if ($var instanceof PlFlagSet) {
return "'" . addslashes($var->flags()) . "'";
}
case 'array':
if (Post::has('action') && Post::has('banananame') && Post::has('bananasig')
&& Post::has('bananadisplay') && Post::has('bananamail')
&& Post::has('bananaupdate') && Post::v('action')=="Enregistrer" ) {
- $flags = new FlagSet();
+ $flags = new PlFlagSet();
if (Post::b('bananadisplay')) {
$flags->addFlag('threads');
}
$res = XDB::query("SELECT mail_storage
FROM auth_user_md5
WHERE user_id = {?}", $this->uid);
- return new FlagSet($res->fetchOneCell());
+ return new PlFlagSet($res->fetchOneCell());
}
// Updates the list of active storages.
public static function &make_perms($perm)
{
- $flags = new FlagSet();
+ $flags = new PlFlagSet();
if ($perm == 'disabled' || $perm == 'ext') {
return $flags;
}
if (check_ip('ban')) {
send_warning_mail($mail_subject);
$_SESSION = array();
- $_SESSION['perms'] = new FlagSet();
+ $_SESSION['perms'] = new PlFlagSet();
global $page;
$newpage = false;
if (!$page) {
$action = 'edit';
} else {
$res = XDB::query('SELECT flags FROM evenements WHERE id = {?}', $eid);
- $flags = new FlagSet($res->fetchOneCell());
+ $flags = new PlFlagSet($res->fetchOneCell());
$flags->addFlag('wiki');
if (Post::v('important')) {
$flags->addFlag('important');
$this->montant_min = (float)$this->montant_min;
$this->montant_max = (float)$this->montant_max;
- $this->flags = new Flagset($flags);
+ $this->flags = new PlFlagSet($flags);
}
// }}}
WHERE user_id={?}", S::v('uid'));
list($nom, $usage_old, $flags, $alias_old) = $res->fetchOneRow();
- $flags = new flagset($flags);
+ $flags = new PlFlagSet($flags);
$page->assign('usage_old', $usage_old);
$page->assign('alias_old', $alias_old);
private function saveAddress($adrid, array &$address)
{
- $flags = new FlagSet();
+ $flags = new PlFlagSet();
if ($address['secondaire']) {
$flags->addFlag('res-secondaire');
}
if (Post::has('submit')) {
S::assert_xsrf_token();
- $flags = new FlagSet('wiki_desc');
+ $flags = new PlFlagSet('wiki_desc');
if (Post::has('notif_unsub') && Post::i('notif_unsub') == 1) {
$flags->addFlag('notif_unsub');
}
if (Post::v('valid') == 'Enregistrer') {
$promo_min = ($art['public'] ? 0 : $art['promo_min']);
$promo_max = ($art['public'] ? 0 : $art['promo_max']);
- $flags = new FlagSet();
+ $flags = new PlFlagSet();
if ($art['public']) {
$flags->addFlag('public');
}