summaryrefslogtreecommitdiffstats
path: root/frontends/php/include
diff options
context:
space:
mode:
authorartem <artem@97f52cf1-0a1b-0410-bd0e-c28be96e8082>2008-02-26 12:33:26 +0000
committerartem <artem@97f52cf1-0a1b-0410-bd0e-c28be96e8082>2008-02-26 12:33:26 +0000
commitc228c7b2c9ea0b4d0e65295e47992b1e559447fc (patch)
tree7ec77efdc12a83d823f7116d9708769caaa5018d /frontends/php/include
parent401c0e953a8ad1bb7c7cedb5221cc29af76edd20 (diff)
downloadzabbix-c228c7b2c9ea0b4d0e65295e47992b1e559447fc.tar.gz
zabbix-c228c7b2c9ea0b4d0e65295e47992b1e559447fc.tar.xz
zabbix-c228c7b2c9ea0b4d0e65295e47992b1e559447fc.zip
- [DEV-116] added option to remember user login (Artem)
git-svn-id: svn://svn.zabbix.com/trunk@5406 97f52cf1-0a1b-0410-bd0e-c28be96e8082
Diffstat (limited to 'frontends/php/include')
-rw-r--r--frontends/php/include/blocks.inc.php13
-rw-r--r--frontends/php/include/forms.inc.php9
-rw-r--r--frontends/php/include/locales/en_gb.inc.php3
-rw-r--r--frontends/php/include/perm.inc.php2
-rw-r--r--frontends/php/include/users.inc.php55
5 files changed, 49 insertions, 33 deletions
diff --git a/frontends/php/include/blocks.inc.php b/frontends/php/include/blocks.inc.php
index 0f97ea4a..8e3819b6 100644
--- a/frontends/php/include/blocks.inc.php
+++ b/frontends/php/include/blocks.inc.php
@@ -722,15 +722,18 @@ return $screenids;
function add_refresh_objects($ref_tab){
$min = PHP_INT_MAX;
- foreach($ref_tab as $id => $interval){
- $min = ($min < $interval)?$min:$interval;
- zbx_add_post_js(get_refresh_obj_script($id,$interval));
+ foreach($ref_tab as $id => $obj){
+ $obj['interval'] = (isset($obj['interval']))?$obj['interval']:60;
+
+ $min = ($min < $obj['interval'])?$min:$obj['interval'];
+ zbx_add_post_js(get_refresh_obj_script($obj));
}
zbx_add_post_js('updater.interval = 10; updater.check4Update();');
}
-function get_refresh_obj_script($id,$interval){
- return 'updater.setObj4Update("'.$id.'","dashboard.php?output=html",{"favobj": "refresh", "favid": "'.$id.'"}, '.$interval.');';
+function get_refresh_obj_script($obj){
+ $obj['url'] = (isset($obj['url']))?$obj['url']:'dashboard.php?output=html';
+return 'updater.setObj4Update("'.$obj['id'].'",'.$obj['interval'].',"'.$obj['url'].'",{"favobj": "refresh", "favid": "'.$obj['id'].'"});';
}
function make_refresh_menu($id,$cur_interval,&$menu,&$submenu){
diff --git a/frontends/php/include/forms.inc.php b/frontends/php/include/forms.inc.php
index ba346f19..421966ba 100644
--- a/frontends/php/include/forms.inc.php
+++ b/frontends/php/include/forms.inc.php
@@ -681,10 +681,10 @@
# Insert form for User
function insert_user_form($userid,$profile=0){
global $ZBX_LOCALES;
-
+ global $USER_DETAILS;
+
$frm_title = S_USER;
if(isset($userid)){
- global $USER_DETAILS;
/* if(bccomp($userid,$USER_DETAILS['userid'])==0) $profile = 1;*/
$user=get_user_by_userid($userid);
@@ -699,6 +699,7 @@
$password1 = null;
$password2 = null;
$url = $user["url"];
+ $autologin = $user["autologin"];
$autologout = $user["autologout"];
$lang = $user["lang"];
$theme = $user['theme'];
@@ -740,6 +741,7 @@
$password1 = get_request("password1", null);
$password2 = get_request("password2", null);
$url = get_request("url","");
+ $autologin = get_request("autologin",0);
$autologout = get_request("autologout",900);
$lang = get_request("lang","en_gb");
$theme = get_request('theme','default.css');
@@ -886,7 +888,8 @@
$frmUser->AddRow(S_THEME, $cmbTheme);
- $frmUser->AddRow(S_AUTO_LOGOUT_IN_SEC, new CNumericBox("autologout",$autologout,4));
+ $frmUser->AddRow(S_AUTO_LOGIN, new CCheckBox("autologin",$autologin,null,1));
+ $frmUser->AddRow(S_AUTO_LOGOUT, array(new CNumericBox("autologout",$autologout,4),S_SECONDS));
$frmUser->AddRow(S_URL_AFTER_LOGIN, new CTextBox("url",$url,50));
$frmUser->AddRow(S_SCREEN_REFRESH, new CNumericBox("refresh",$refresh,4));
diff --git a/frontends/php/include/locales/en_gb.inc.php b/frontends/php/include/locales/en_gb.inc.php
index a2444c29..50ea6aca 100644
--- a/frontends/php/include/locales/en_gb.inc.php
+++ b/frontends/php/include/locales/en_gb.inc.php
@@ -1364,7 +1364,8 @@
'S_CHANGE_PASSWORD'=> 'Change password',
'S_PASSWORD_ONCE_AGAIN'=> 'Password (once again)',
'S_URL_AFTER_LOGIN'=> 'URL (after login)',
- 'S_AUTO_LOGOUT_IN_SEC'=> 'Auto-logout (in sec=>0 - disable)',
+ 'S_AUTO_LOGIN'=> 'Auto-login (1 month)',
+ 'S_AUTO_LOGOUT'=> 'Auto-logout (0-disable)',
'S_SCREEN_REFRESH'=> 'Refresh (in seconds)',
'S_CREATE_USER'=> 'Create User',
'S_CREATE_GROUP'=> 'Create Group',
diff --git a/frontends/php/include/perm.inc.php b/frontends/php/include/perm.inc.php
index 83a3e767..f6510d83 100644
--- a/frontends/php/include/perm.inc.php
+++ b/frontends/php/include/perm.inc.php
@@ -73,7 +73,7 @@
}
if($login){
- zbx_setcookie("zbx_sessionid",$sessionid);
+ zbx_setcookie("zbx_sessionid",$sessionid,$USER_DETAILS['autologin']?(time()+86400*31):0); //1 month
DBexecute("update sessions set lastaccess=".time()." where sessionid=".zbx_dbstr($sessionid));
}
else{
diff --git a/frontends/php/include/users.inc.php b/frontends/php/include/users.inc.php
index 50771ba8..99af8c1a 100644
--- a/frontends/php/include/users.inc.php
+++ b/frontends/php/include/users.inc.php
@@ -33,7 +33,7 @@
# Add User definition
- function add_user($name,$surname,$alias,$passwd,$url,$autologout,$lang,$theme,$refresh,$user_type,$user_groups,$user_medias)
+ function add_user($name,$surname,$alias,$passwd,$url,$autologin,$autologout,$lang,$theme,$refresh,$user_type,$user_groups,$user_medias)
{
global $USER_DETAILS;
@@ -50,9 +50,9 @@
$userid = get_dbid("users","userid");
- $result = DBexecute('insert into users (userid,name,surname,alias,passwd,url,autologout,lang,theme,refresh,type)'.
+ $result = DBexecute('insert into users (userid,name,surname,alias,passwd,url,autologin,autologout,lang,theme,refresh,type)'.
' values ('.$userid.','.zbx_dbstr($name).','.zbx_dbstr($surname).','.zbx_dbstr($alias).','.
- zbx_dbstr(md5($passwd)).','.zbx_dbstr($url).','.$autologout.','.zbx_dbstr($lang).','.zbx_dbstr($theme).','.$refresh.','.$user_type.')');
+ zbx_dbstr(md5($passwd)).','.zbx_dbstr($url).','.$autologin.','.$autologout.','.zbx_dbstr($lang).','.zbx_dbstr($theme).','.$refresh.','.$user_type.')');
if($result)
{
@@ -86,34 +86,37 @@
# Update User definition
- function update_user($userid,$name,$surname,$alias,$passwd, $url,$autologout,$lang,$theme,$refresh,$user_type,$user_groups,$user_medias)
+ function update_user($userid,$name,$surname,$alias,$passwd,$url,$autologin,$autologout,$lang,$theme,$refresh,$user_type,$user_groups,$user_medias)
{
- if(DBfetch(DBselect("select * from users where alias=".zbx_dbstr($alias).
- " and userid<>$userid and ".DBin_node('userid', get_current_nodeid(false)))))
- {
+ if(DBfetch(DBselect("select * from users where alias=".zbx_dbstr($alias)." and userid<>$userid and ".DBin_node('userid', get_current_nodeid(false))))){
error("User '$alias' already exists");
return 0;
}
- $result = DBexecute("update users set name=".zbx_dbstr($name).",surname=".zbx_dbstr($surname).","."alias=".zbx_dbstr($alias).
- (isset($passwd) ? (',passwd='.zbx_dbstr(md5($passwd))) : '').
- ",url=".zbx_dbstr($url).","."autologout=$autologout,lang=".zbx_dbstr($lang).",theme=".zbx_dbstr($theme).",refresh=$refresh,".
- "type=$user_type".
- " where userid=$userid");
-
- if($result)
- {
+ $result = DBexecute('UPDATE users SET '.
+ ' name='.zbx_dbstr($name).
+ ' ,surname='.zbx_dbstr($surname).
+ ' ,alias='.zbx_dbstr($alias).
+ (isset($passwd) ? (',passwd='.zbx_dbstr(md5($passwd))) : '').
+ ' ,url='.zbx_dbstr($url).
+ ' ,autologin='.$autologin.
+ ' ,autologout='.$autologout.
+ ' ,lang='.zbx_dbstr($lang).
+ ' ,theme='.zbx_dbstr($theme).
+ ' ,refresh='.$refresh.
+ ' ,type='.$user_type.
+ ' WHERE userid='.$userid);
+
+ if($result){
DBexecute('delete from users_groups where userid='.$userid);
- foreach($user_groups as $groupid => $grou_pname)
- {
+ foreach($user_groups as $groupid => $grou_pname){
$users_groups_id = get_dbid("users_groups","id");
$result = DBexecute('insert into users_groups (id,usrgrpid,userid)'.
'values('.$users_groups_id.','.$groupid.','.$userid.')');
if(!$result) break;
}
- if($result)
- {
+ if($result){
DBexecute('delete from media where userid='.$userid);
foreach($user_medias as $mediaid => $media_data)
{
@@ -134,7 +137,7 @@
# Update User definition
- function update_user_profile($userid,$passwd, $url,$autologout,$lang,$theme,$refresh)
+ function update_user_profile($userid,$passwd,$url,$autologin,$autologout,$lang,$theme,$refresh)
{
global $USER_DETAILS;
@@ -143,9 +146,15 @@
access_deny();
}
- return DBexecute("update users set url=".zbx_dbstr($url).",autologout=$autologout,lang=".zbx_dbstr($lang).",theme=".zbx_dbstr($theme).
- (isset($passwd) ? (',passwd='.zbx_dbstr(md5($passwd))) : '').
- ",refresh=$refresh where userid=$userid");
+ return DBexecute('update users set '.
+ ' url='.zbx_dbstr($url).
+ ' ,autologin='.$autologin.
+ ' ,autologout='.$autologout.
+ ' ,lang='.zbx_dbstr($lang).
+ ' ,theme='.zbx_dbstr($theme).
+ (isset($passwd) ? (' ,passwd='.zbx_dbstr(md5($passwd))) : '').
+ ' ,refresh='.$refresh.
+ ' where userid='.$userid);
}
# Delete User definition