Subjects.php 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <?php
  2. define('ALIBERR_NOTGR', 20);
  3. define('ALIBERR_BADSMEMB', 21);
  4. /**
  5. * Subj class
  6. *
  7. * users + groups
  8. * with "linearized recursive membership" ;)
  9. * (allow adding users to groups or groups to groups)
  10. *
  11. * @package Airtime
  12. * @subpackage Alib
  13. * @copyright 2010 Sourcefabric O.P.S.
  14. * @license http://www.gnu.org/licenses/gpl.txt
  15. */
  16. class Application_Model_Subjects
  17. {
  18. /* ======================================================= public methods */
  19. public static function increaseLoginAttempts($login)
  20. {
  21. $sql = "UPDATE cc_subjs SET login_attempts = login_attempts+1"
  22. ." WHERE login=:login";
  23. $map = array(":login" => $login);
  24. $res = Application_Common_Database::prepareAndExecute($sql, $map,
  25. Application_Common_Database::EXECUTE);
  26. return (intval($res) > 0);
  27. }
  28. public static function resetLoginAttempts($login)
  29. {
  30. $sql = "UPDATE cc_subjs SET login_attempts = '0'"
  31. ." WHERE login=:login";
  32. $map = array(":login" => $login);
  33. $res = Application_Common_Database::prepareAndExecute($sql, $map,
  34. Application_Common_Database::EXECUTE);
  35. return true;
  36. }
  37. public static function getLoginAttempts($login)
  38. {
  39. $sql = "SELECT login_attempts FROM cc_subjs WHERE login=:login";
  40. $map = array(":login" => $login);
  41. $res = Application_Common_Database::prepareAndExecute($sql, $map,
  42. Application_Common_Database::COLUMN);
  43. return ($res !== false) ? $res : 0;
  44. }
  45. } // class Subjects