user_online.php
来自「极限网络智能办公系统 - Office Automation 2008 官方10」· PHP 代码 · 共 200 行
PHP
200 行
<?php
function get_dept_parent( $DEPT_ID, &$DEPT_ID_STR, &$TREE_STR )
{
global $connection;
$query1 = "SELECT DEPT_ID,DEPT_NAME,DEPT_PARENT from DEPARTMENT where DEPT_ID='".$DEPT_ID."'";
$cursor1 = exequery( $connection, $query1 );
if ( $ROW = mysql_fetch_array( $cursor1 ) )
{
$DEPT_PARENT = $ROW['DEPT_PARENT'];
$DEPT_ID = $ROW['DEPT_ID'];
$DEPT_NAME = $ROW['DEPT_NAME'];
if ( $DEPT_PARENT == 0 )
{
$DEPT_PARENT_DESC = "MYOA";
}
else
{
$DEPT_PARENT_DESC = $DEPT_PARENT;
}
if ( $DEPT_PARENT == 0 )
{
$TREE_STR .= "tree.nodes['MYOA,".$DEPT_ID."']='type:1;text:{$DEPT_NAME};';\n";
$DEPT_ID_STR = $DEPT_ID.",";
return 0;
}
if ( !find_id( $DEPT_ID_STR, $DEPT_ID ) )
{
$TREE_STR .= "tree.nodes['".$DEPT_PARENT.",{$DEPT_ID}']='type:1;text:{$DEPT_NAME};';\n";
$DEPT_ID_STR = $DEPT_ID.",";
}
return get_dept_parent( $DEPT_PARENT, $DEPT_ID_STR, $TREE_STR );
}
}
include_once( "inc/auth.php" );
include_once( "inc/utility_all.php" );
include_once( "inc/ip2add.php" );
if ( $LOGIN_NOT_VIEW_USER )
{
message( "", "无查看用户的权限" );
exit( );
}
$query = "SELECT * from USER_PRIV where USER_PRIV=".$LOGIN_USER_PRIV;
$cursor = exequery( $connection, $query );
if ( $ROW = mysql_fetch_array( $cursor ) )
{
$PRIV_NO = $ROW['PRIV_NO'];
}
echo "\r\n<html>\r\n<head>\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=gb2312\">\r\n</head>\r\n<link rel=\"stylesheet\" type=\"text/css\" href=\"/theme/";
echo $LOGIN_THEME;
echo "/menu_left.css\">\r\n<link rel=\"stylesheet\" type=\"text/css\" href=\"/theme/";
echo $LOGIN_THEME;
echo "/treeview.css\">\r\n<link rel=\"stylesheet\" type=\"text/css\" href=\"/theme/";
echo $LOGIN_THEME;
echo "/user_online.css\">\r\n<script language=javascript src=\"/inc/treeview.js\"></script>\r\n<body class=\"bodycolor\" topmargin=\"0\" leftmargin=\"0\">\r\n<div id=\"body\">\r\n<ul>\r\n";
if ( $VIEW_ALL != 1 )
{
echo " <li><a href=\"user_online.php?VIEW_ALL=1&UI=";
echo $UI;
echo "\"><span>显示全部</span></a></li>\r\n";
}
else
{
echo " <li><a href=\"user_online.php?VIEW_ALL=0&UI=";
echo $UI;
echo "\"><span>显示在线</span></a></li>\r\n";
}
echo " <div id=\"Treeview\" class=\"moduleContainer\"></div>\r\n";
if ( $VIEW_ALL == 1 )
{
echo " <li><a href=\"javascript:parent.openURL('/general/ipanel/query.php',1);\"><span>人员查询</span></a></li>\r\n";
}
echo "</ul>\r\n</div>\r\n<div id=\"bottom\"></div>\r\n<script language=\"JavaScript\">\r\nfunction killErrors()\r\n{\r\n return true;\r\n}\r\n//window.onerror = killErrors;\r\nfunction view_user(USER_ID)\r\n{\r\n parent.openURL(\"/general/info/user/user.php?USER_ID=\"+USER_ID+\"&WINDOW=1\",1);\r\n}\r\n\r\nwindow.setTimeout('this.location.reload();',120000);\r\n\r\nvar tree = new MzTreeView(\"tree\");\r\ntree.setIconPath(\"/images/user_list/\");\r\n";
$query = "SELECT * from UNIT";
$cursor = exequery( $connection, $query );
if ( $ROW = mysql_fetch_array( $cursor ) )
{
$UNIT_NAME = $ROW['UNIT_NAME'];
}
$UNIT_NAME = htmlspecialchars( $UNIT_NAME );
$UNIT_NAME = str_replace( "\"", """, $UNIT_NAME );
$UNIT_NAME = stripslashes( $UNIT_NAME );
echo "tree.nodes['0,MYOA']='type:1;text:";
echo $UNIT_NAME;
echo ";';\r\n";
$DEPT_COUNT = 0;
$USER_COUNT = 0;
$DEPT_USER_COUNT = 0;
$DEPT_ID_PREV = "";
$ONLINE_LIMIT = $ONLINE_REF_SEC + 5;
$CUR_TIME = date( "Y-m-d H:i:s", time( ) );
$query = "SELECT count(USER_ID) from USER,DEPARTMENT,USER_PRIV where UNIX_TIMESTAMP('".$CUR_TIME."')-UNIX_TIMESTAMP(LAST_VISIT_TIME)<{$ONLINE_LIMIT} and USER.USER_PRIV=USER_PRIV.USER_PRIV and USER.DEPT_ID=DEPARTMENT.DEPT_ID";
$cursor = exequery( $connection, $query );
$ROW = mysql_fetch_array( $cursor );
$USER_ONLINE_COUNT = $ROW['0'];
if ( $VIEW_ALL == "1" )
{
$query = "SELECT USER_ID,USER_NAME,ON_STATUS,USER.DEPT_ID,DEPT_NAME,SEX from USER,DEPARTMENT,USER_PRIV where USER.USER_PRIV=USER_PRIV.USER_PRIV and USER.DEPT_ID=DEPARTMENT.DEPT_ID order by DEPT_NO,DEPARTMENT.DEPT_ID,PRIV_NO,USER_NO,USER_NAME";
}
else
{
$query = "SELECT USER_ID,USER_NAME,ON_STATUS,USER.DEPT_ID,DEPT_NAME,SEX from USER,DEPARTMENT,USER_PRIV where UNIX_TIMESTAMP('".$CUR_TIME."')-UNIX_TIMESTAMP(LAST_VISIT_TIME)<{$ONLINE_LIMIT} and USER.USER_PRIV=USER_PRIV.USER_PRIV and USER.DEPT_ID=DEPARTMENT.DEPT_ID order by DEPT_NO,DEPARTMENT.DEPT_ID,PRIV_NO,USER_NO,USER_NAME";
}
$cursor = exequery( $connection, $query );
while ( $ROW = mysql_fetch_array( $cursor ) )
{
++$USER_COUNT;
$USER_ID = $ROW['USER_ID'];
$USER_NAME = $ROW['USER_NAME'];
$ON_STATUS = $ROW['ON_STATUS'];
$USER_NAME = str_replace( " ", "", $USER_NAME );
$DEPT_ID = $ROW['DEPT_ID'];
$DEPT_NAME = $ROW['DEPT_NAME'];
$SEX = $ROW['SEX'];
$SEX_IMG = "U".$SEX.$ON_STATUS;
if ( $VIEW_ALL == "1" )
{
$query1 = "SELECT count(USER_ID) from USER,DEPARTMENT,USER_PRIV where USER_ID='".$USER_ID."' and UNIX_TIMESTAMP('{$CUR_TIME}')-UNIX_TIMESTAMP(LAST_VISIT_TIME)<{$ONLINE_LIMIT} and USER.USER_PRIV=USER_PRIV.USER_PRIV and USER.DEPT_ID=DEPARTMENT.DEPT_ID";
$cursor1 = exequery( $connection, $query1 );
$ROW = mysql_fetch_array( $cursor1 );
if ( $ROW[0] == 0 )
{
$SEX_IMG = "U".$SEX;
}
}
$query = "SELECT IP from SYS_LOG where USER_ID='".$USER_ID."' and TYPE=1 order by TIME DESC LIMIT 0,1";
$cursor1 = exequery( $connection, $query );
if ( $ROW1 = mysql_fetch_array( $cursor1 ) )
{
$IP = $ROW1['IP'];
}
echo "tree.nodes['";
echo $DEPT_ID;
echo ",_";
echo $USER_ID;
echo "']='text:";
echo $USER_NAME;
echo ";hint: ";
echo $IP;
echo ";icon:";
echo $SEX_IMG;
echo ";url:javascript:view_user(\"";
echo $USER_ID;
echo "\");';\r\n";
}
if ( $VIEW_ALL == "1" )
{
$query = "SELECT DISTINCT DEPT_ID,DEPT_PARENT,DEPT_NAME from DEPARTMENT order by DEPT_NO,DEPT_ID";
}
else
{
$query = "SELECT DISTINCT USER.DEPT_ID,DEPT_PARENT,DEPT_NAME from USER,DEPARTMENT,USER_PRIV where UNIX_TIMESTAMP('".$CUR_TIME."')-UNIX_TIMESTAMP(LAST_VISIT_TIME)<{$ONLINE_LIMIT} and USER.USER_PRIV=USER_PRIV.USER_PRIV and USER.DEPT_ID=DEPARTMENT.DEPT_ID order by DEPT_NO,DEPARTMENT.DEPT_ID,PRIV_NO,USER_NO,USER_NAME";
}
$cursor = exequery( $connection, $query );
while ( $ROW = mysql_fetch_array( $cursor ) )
{
$DEPT_PARENT = $ROW['DEPT_PARENT'];
$DEPT_ID = $ROW['DEPT_ID'];
$DEPT_NAME = $ROW['DEPT_NAME'];
if ( $DEPT_PARENT == 0 )
{
$DEPT_PARENT_DESC = "MYOA";
}
else
{
$TREE_STR = "";
get_dept_parent( $DEPT_PARENT, $DEPT_ID_STR, $TREE_STR );
echo $TREE_STR;
$DEPT_PARENT_DESC = $DEPT_PARENT;
}
$DEPT_ID_STR = $DEPT_ID.",";
++$DEPT_COUNT;
echo "tree.nodes['";
echo $DEPT_PARENT_DESC;
echo ",";
echo $DEPT_ID;
echo "']='type:1;text:";
echo $DEPT_NAME;
echo ";';\r\n";
}
echo "var html=tree.toString();\r\nif(tree.totalNode<=1)\r\n{\r\n document.getElementById('Treeview').innerHTML = \"<center>尚未定义部门,<br>无法显示人员列表</center>\";\r\n}\r\nelse\r\n{\r\n document.getElementById('Treeview').innerHTML = html;\r\n ";
if ( $VIEW_ALL != "1" )
{
echo " tree.expandAll();//alert(document.getElementById('Treeview').innerHTML)\r\n ";
}
else
{
if ( $UI != "1" )
{
echo " if(parent.parent.status_bar.document.getElementById(\"user_count1\"))\r\n parent.parent.status_bar.document.getElementById(\"user_count1\").value='";
echo $USER_ONLINE_COUNT;
echo "';\r\n ";
}
echo " ";
}
echo " tree.initAll(tree.node[\"0\"].childNodes);\r\n}\r\n\r\n\r\n</script>\r\n\r\n\r\n</body>\r\n</html>";
?>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?