diff options
| author | artem <artem@97f52cf1-0a1b-0410-bd0e-c28be96e8082> | 2008-02-26 12:33:26 +0000 |
|---|---|---|
| committer | artem <artem@97f52cf1-0a1b-0410-bd0e-c28be96e8082> | 2008-02-26 12:33:26 +0000 |
| commit | c228c7b2c9ea0b4d0e65295e47992b1e559447fc (patch) | |
| tree | 7ec77efdc12a83d823f7116d9708769caaa5018d /frontends/php/include | |
| parent | 401c0e953a8ad1bb7c7cedb5221cc29af76edd20 (diff) | |
| download | zabbix-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.php | 13 | ||||
| -rw-r--r-- | frontends/php/include/forms.inc.php | 9 | ||||
| -rw-r--r-- | frontends/php/include/locales/en_gb.inc.php | 3 | ||||
| -rw-r--r-- | frontends/php/include/perm.inc.php | 2 | ||||
| -rw-r--r-- | frontends/php/include/users.inc.php | 55 |
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 |
