Source for file Ranks.class.php

Documentation is available at Ranks.class.php

  1. <?php
  2. /**
  3.  * R.E. Login 2.0 - Rangok - class/Ranks.class.php
  4.  *
  5.  * Rangok kezelése.<br />
  6.  * <br />
  7.  * <b>Dátum:</b> 2010.04.02.
  8.  *
  9.  * <b>Szerző weboldala:</b> {@link http://rimelek.hu/}<br />
  10.  * <b>Login weblapja:</b> {@link http://rimelek.hu/meghivos-loginrendszer-r-e-login-v2-0 R.E. Login v2.0}
  11.  *
  12.  * @author Takács Ákos (Rimelek), programmer [at] rimelek [dot] hu
  13.  * @copyright Copyright (C) 2010, Takács Ákos
  14.  * @license http://www.gnu.org/licenses/gpl.html
  15.  * @package RELogin
  16.  * @version 2.0
  17.  */
  18.  
  19. /**
  20.  * Rangok kezelése
  21.  *
  22.  * Új rangot lehet felvenni ezzel az osztállyal. Illetve a meglévő rangok
  23.  * tulajdonságai kérdezhetők le. Valamint a példánya a rangok listáját tartalmazza.
  24.  *
  25.  * <b>Szerző weboldala:</b> {@link http://rimelek.hu/}<br />
  26.  * <b>Login weblapja:</b> {@link http://rimelek.hu/meghivos-loginrendszer-r-e-login-v2-0 R.E. Login v2.0}
  27.  *
  28.  * @author Takács Ákos (Rimelek), programmer [at] rimelek [dot] hu
  29.  * @copyright Copyright (C) 2010, Takács Ákos
  30.  * @license http://www.gnu.org/licenses/gpl.html
  31.  * @package RELogin
  32.  */
  33. class Ranks
  34. {
  35.     public static $instance null;
  36.  
  37.     /**
  38.      * Visszaadja a Ranks példányát.
  39.      *
  40.      * @return Ranks 
  41.      */
  42.     public static function getInstance()
  43.     {    
  44.         if (self::$instance === null)
  45.         {
  46.             self::$instance new IsMySQLListClass(self::fields());
  47.             self::$instance->init(Config::DBPREF.'ranks as ranks order by `name`');
  48.         }
  49.         return self::$instance;
  50.     }
  51.  
  52.     /**
  53.      * Mely mezők legyenek lekérdezve. (mindegyik)
  54.      *
  55.      * @return array 
  56.      */
  57.     public static function fields()
  58.     {
  59.         return array(Config::DBPREF.'ranks as ranks'=>array('*'));
  60.     }
  61.  
  62.     /**
  63.      * @ignore
  64.      */
  65.     private function  __construct()
  66.     {
  67.     }
  68.  
  69.     /**
  70.      * Új rang felvétele
  71.      *
  72.      * @param string $varname Rang változóneve.
  73.      * @param string $name Rang neve
  74.      * @param bool $append Adja-e hozzá rögtön a listához is, vagy csak
  75.      *             adatbázisba írja
  76.      */
  77.     public static function addRank($varname$name,$append=false)
  78.     {
  79.         $rank new IsMySQLClass(self::fields());
  80.         $rank->keyName 'rankid';
  81.  
  82.         $rank->varname $varname;
  83.         $rank->name $name;
  84.         $rank->update(false);
  85.         $rank->rankid self::getInstance()->add($rank,$append);
  86.         $rank->update(false);
  87.     }
  88.  
  89.     /**
  90.      * A rang egy adatának lekérdezése
  91.      *
  92.      * A $return mező értékét kérdezi le, ha a $by mező értéke $value
  93.      * Ha egy rang sem felel meg a feltételnek, akkor null-t ad vissza.
  94.      *
  95.      * @param string $return Lekérdezendő mező neve
  96.      * @param string $by Milyen mezőnév alapján kérdezzen le
  97.      * @param mixed $value Mi legyen a $by mező értéke.
  98.      * @return mixed 
  99.      */
  100.     public static function getRank($return$by$value)
  101.     {
  102.         $by strtolower($by);
  103.         $value strtolower($value);
  104.         foreach (self::getInstance(as $row)
  105.         {
  106.             if (strtolower($row[$by]== $value)
  107.             {
  108.                 return (is_null($return)) $row $row[$return];
  109.             }
  110.         }
  111.         return null;
  112.     }
  113.  
  114.     /**
  115.      * Rang nevének lekérdezése id alapján
  116.      *
  117.      * $id azonosítójú rang nevének lekérdezése
  118.      *
  119.      * @param int $id 
  120.      * @return string Rang neve
  121.      */
  122.     public static function getNameById($id)
  123.     {
  124.         return self::getRank('name''rankid'$id);
  125.     }
  126.  
  127.     /**
  128.      * Rang nevének lekérdezése változónév alapján
  129.      *
  130.      * $var változónevű rang nevének lekérdezése
  131.      *
  132.      * @param string $var 
  133.      * @return string 
  134.      */
  135.     public static function getNameByVar($var)
  136.     {
  137.         return self::getRank('name''varname'$var);
  138.     }
  139.  
  140.     /**
  141.      * Rang id-je változónév alapján
  142.      *
  143.      * $var változónevű rang azonosítóját kérdezi le.
  144.      *
  145.      * Ha nem volt ilyen rang, akkor -1 lesz a visszatérési érték.
  146.      *
  147.      * @param string $var Rang változó neve
  148.      * @return int 
  149.      */
  150.     public static function getIdByVar($var)
  151.     {
  152.         return ($id self::getRank('rankid''varname'$var)) !== null $id : -1;
  153.     }
  154. }
  155. ?>

Documentation generated on Sun, 04 Apr 2010 22:43:48 +0200 by phpDocumentor 1.4.1