From ac39488d5f1cfc1bd76501df4b0c138b2d40c7ea Mon Sep 17 00:00:00 2001
From: ftimme <ft@falkotimme.com>
Date: Wed, 19 Oct 2011 04:08:13 -0400
Subject: [PATCH] - Fixed #1809.
---
interface/lib/classes/auth.inc.php | 44 +++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 43 insertions(+), 1 deletions(-)
diff --git a/interface/lib/classes/auth.inc.php b/interface/lib/classes/auth.inc.php
index 707aab4..aa4eb9f 100644
--- a/interface/lib/classes/auth.inc.php
+++ b/interface/lib/classes/auth.inc.php
@@ -29,6 +29,12 @@
*/
class auth {
+ var $client_limits = null;
+
+ public function get_user_id()
+ {
+ return $_SESSION['s']['user']['userid'];
+ }
public function is_admin() {
if($_SESSION['s']['user']['typ'] == 'admin') {
@@ -36,7 +42,7 @@
} else {
return false;
}
- }
+ }
public function has_clients($userid) {
global $app, $conf;
@@ -69,6 +75,24 @@
return false;
}
}
+
+ //** This function returns given client limit as integer, -1 means no limit
+ public function get_client_limit($userid, $limitname)
+ {
+ global $app;
+
+ // simple query cache
+ if($this->client_limits===null)
+ $this->client_limits = $app->db->queryOneRecord("SELECT client.* FROM sys_user, client WHERE sys_user.userid = $userid AND sys_user.client_id = client.client_id");
+
+ // isn't client -> no limit
+ if(!$this->client_limits)
+ return -1;
+
+ if(isset($this->client_limits['limit_'.$limitname])) {
+ return $this->client_limits['limit_'.$limitname];
+ }
+ }
//** This function removes a given group id from a given user.
public function remove_group_from_user($userid,$groupid) {
@@ -100,7 +124,25 @@
}
}
+ public function get_random_password($length = 8) {
+ $base64_alphabet='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
+ $password = '';
+ for ($n=0;$n<$length;$n++) {
+ $password.=$base64_alphabet[mt_rand(0,63)];
+ }
+ return $password;
+ }
+ public function crypt_password($cleartext_password) {
+ $salt="$1$";
+ $base64_alphabet='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
+ for ($n=0;$n<8;$n++) {
+ $salt.=$base64_alphabet[mt_rand(0,63)];
+ }
+ $salt.="$";
+ return crypt($cleartext_password,$salt);
+ }
+
}
?>
\ No newline at end of file
--
Gitblit v1.9.1