<?php ############################################################## ##In-portal ## ############################################################## ## In-portal ## ##Intechnic Corporation ## ##All Rights Reserved, 1998-2002 ## ## ## ##No portion of this code may be copied, reproduced or ## ## otherwise redistributed without proper written ## ## consent of Intechnic Corporation. Violation will ## ## result in revocation of the license and support ## ## privileges along maximum prosecution allowed by law. ## ############################################################## if(!strlen($pathtoroot)) { $path=dirname(realpath(__FILE__)); if(strlen($path)) { /* determine the OS type for path parsing */ $pos = strpos($path,":"); if ($pos === false) { $gOS_TYPE="unix"; $pathchar = "/"; } else { $gOS_TYPE="win"; $pathchar="\\"; } $p = $path.$pathchar; /*Start looking for the root flag file */ while(!strlen($pathtoroot) && strlen($p)) { $sub = substr($p,strlen($pathchar)*-1); if($sub==$pathchar) { $filename = $p."root.flg"; } else $filename = $p.$pathchar."root.flg"; if(file_exists($filename)) { $pathtoroot = $p; } else { $parent = realpath($p.$pathchar."..".$pathchar); if($parent!=$p) { $p = $parent; } else $p = ""; } } if(!strlen($pathtoroot)) $pathtoroot = ".".$pathchar; } else { $pathtoroot = ".".$pathchar; } } $sub = substr($pathtoroot,strlen($pathchar)*-1); if($sub!=$pathchar) { $pathtoroot = $pathtoroot.$pathchar; } //echo $pathtoroot; require_once($pathtoroot."kernel/startup.php"); $rootURL="http://".ThisDomain().$objConfig->Get("Site_Path"); $admin = $objConfig->Get("AdminDirectory"); if(!strlen($admin)) $admin = "admin"; $adminURL = $rootURL.$admin; $localURL=$rootURL."kernel/"; $imagesURL = $adminURL."/images"; //admin only includes require_once ($pathtoroot.$admin."/include/elements.php"); require_once ($pathtoroot."kernel/admin/include/navmenu.php"); require_once($pathtoroot.$admin."/toolbar.php"); require_once($pathtoroot.$admin."/listview/listview.php"); $pathtolocal = $pathtoroot; /* -------------------------------------- Section configuration ------------------------------------------- */ $section = 'in-portal:sessionlog'; $envar = "env=" . BuildEnv(); $SortFieldVar = "Session_SortField"; $SortOrderVar = "Session_SortOrder"; $DefaultSortField = "UserName"; $PerPageVar = "Perpage_Sessions"; $CurrentPageVar = "Page_Sessions"; $CurrentFilterVar = "Session_View"; $ListForm = "sessionlistform"; $CheckClass = "UserChecks"; /* ------------------------------------- Configure the toolbar ------------------------------------------- */ $objListToolBar = new clsToolBar(); $objListToolBar->Set("section",$section); $objListToolBar->Set("load_menu_func",""); $objListToolBar->Set("CheckClass",$CheckClass); $objListToolBar->Set("CheckForm",$ListForm); $listImages = array(); //$img, $alt, $link, $onMouseOver, $onMouseOut, $onClick $objListToolBar->Add("log_refresh", "la_ToolTip_Refresh","#","swap('log_refresh','toolbar/tool_refresh_f2.gif');", "swap('log_refresh', 'toolbar/tool_refresh.gif');","window.location.reload(true);", "tool_refresh.gif"); $objListToolBar->Add("log_reset","la_ToolTip_Reset","#", "if (UserChecks.itemChecked()) swap('log_reset','toolbar/tool_disconnect_f2.gif');", "if (UserChecks.itemChecked()) swap('log_reset', 'toolbar/tool_disconnect.gif');","if (UserChecks.itemChecked()) $CheckClass.check_submit('session_list', 'm_session_delete');", "tool_disconnect.gif",TRUE,TRUE); $listImages[] = "$CheckClass.addImage('log_reset','$imagesURL/toolbar/tool_disconnect.gif','$imagesURL/toolbar/tool_disconnect_f3.gif',1);\n "; $objListToolBar->Add("divider"); $objListToolBar->Add("user_print", "la_ToolTip_Print","#","swap('user_print','toolbar/tool_print_f2.gif');", "swap('user_print', 'toolbar/tool_print.gif');","window.print();","tool_print.gif"); $objListToolBar->Add("viewmenubutton", "la_ToolTip_View","#","swap('viewmenubutton','toolbar/tool_view_f2.gif'); ", "swap('viewmenubutton', 'toolbar/tool_view.gif');", "ShowViewMenu();","tool_view.gif"); $objListToolBar->AddToInitScript($listImages); $objListToolBar->AddToInitScript("fwLoadMenus();"); /* ----------------------------------------- Set the View Filter ---------------------------------------- */ /* bit place holders for category view menu */ $Bit_Active=1; $Bit_Inactive=2; $Bit_Guest=4; $Bit_All = 7; $FilterLabels = array(); $FilterLabels[0] = admin_language("la_Text_Active"); $FilterLabels[1] = admin_language("la_Text_Expired"); $FilterLabels[2] = admin_language("la_Text_Guest"); if($_GET["resetpage"]==1) $objSession->SetVariable("Page_Sessions","1"); /* determine current view menu settings */ $SessionView = $objConfig->Get("Session_View"); if(!is_numeric($SessionView)) { $SessionView = $Bit_All; //Set all bits ON $SessionFilter = ""; } $filter = array(); $status=array(); if($SessionView & $Bit_Active) { $status[] = 1; } if($SessionView & $Bit_Inactive) { $status[] = 0; } $status = count($status) ? implode(',',$status) : '-1'; $filter[] = 'us.Status IN ('.$status.')'; if(!($SessionView & $Bit_Guest)) $filter[] = "p.Login IS NOT NULL"; $SessionFilter = join(" AND ",$filter); $order = $objConfig->Get("Session_SortOrder"); $SearchWords = $objSession->GetVariable("SessionSearchWord"); if(strlen($SearchWords)) { $where = " HAVING ".$objSession->AdminSearchWhereClause($SearchWords); } else $where = ""; if(strlen($SessionFilter)>0) { //if(strlen($where)) // $SessionFilter.= " AND "; $where = $SessionFilter.$where; } //echo $where; $sql = "SELECT us.*,if (p.Login IS NULL,'".admin_language("la_Text_Guest")."',p.Login) as UserName, "; $sql .="if(g.Name IS NULL,'".admin_language("la_Text_GuestUsers")."',g.Name) as GroupName, "; $sql .="ELT(us.Status+1,'".admin_language("la_Text_Expired")."','".admin_language("la_Text_Active")."') as SessionStatus, "; $sql .="FROM_UNIXTIME(us.LastAccessed,'%m-%d-%Y') as DateCreated "; $sql .="FROM ".GetTablePrefix()."UserSession "; $sql .=" as us LEFT JOIN ".GetTablePrefix()."PortalUser as p USING (PortalUserId) "; $sql .="LEFT JOIN ".GetTablePrefix()."UserGroup as u ON (p.PortalUserId=u.PortalUserId AND u.PrimaryGroup=1) "; $sql .="LEFT JOIN ".GetTablePrefix()."PortalGroup as g ON (u.GroupId=g.GroupId) "; $sql .= " WHERE us.Status = 1 "; if(strlen($where)) { $sql .= "AND ".$where; } $orderBy = trim($objConfig->Get("Session_SortField")." ".$objConfig->Get("Session_SortOrder")); if(strlen($orderBy)) $sql .=" ORDER BY ".$orderBy; //$sql .=" ".GetLimitSQL($objSession->GetVariable("Page_Sessionlist"),$objConfig->Get("Perpage_Sessionlist")); if($objSession->HasSystemPermission("DEBUG.LIST")) echo htmlentities($sql,ENT_NOQUOTES)."<br>\n"; $objListView = new clsListView($objListToolBar); $objListView->CurrentPageVar = "Page_Sessionlist"; $objListView->PerPageVar = "Perpage_Sessionlist"; $objUsers->Query_Item( $sql, $objListView->GetLimitSQL() ); $itemcount = 0; foreach ($objUsers->Items as $value) { $itemcount++; } $objListView->SetListItems($objUsers); $objListView->IdField = "SessionKey"; $objListView->PageLinkTemplate = $pathtoroot.$admin."/templates/user_page_link.tpl"; $objListView->ColumnHeaders->Add("UserName",admin_language("la_prompt_Username"),1,0,$order,"width=\"35%\"","Session_SortField","Session_SortOrder","UserName"); $objListView->ColumnHeaders->Add("GroupName",admin_language("la_prompt_PrimaryGroup"),1,0,$order,"width=\"20%\"","Session_SortField","Session_SortOrder","GroupName"); $objListView->ColumnHeaders->Add("SessionStatus",admin_language("la_prompt_Status"),1,0,$order,"width=\"10%\"","Session_SortField","Session_SortOrder","SessionStatus"); $objListView->ColumnHeaders->Add("IpAddress",admin_language("la_prompt_IPAddress"),1,0,$order,"width=\"15%\"","Session_SortField","Session_SortOrder","IPAddress"); $objListView->ColumnHeaders->Add("DateCreated",admin_language("la_prompt_CreatedOn"),1,0,$order,"width=\"20%\"","Session_SortField","Session_SortOrder","us.LastAccessed"); $objListView->ColumnHeaders->SetSort($objConfig->Get("Session_SortField"),$order); $objListView->PrintToolBar = FALSE; $objListView->SearchBar = TRUE; $objListView->SearchKeywords = $SearchWords; $objListView->SearchAction="m_session_search"; $objListView->CheckboxName = "itemlist[]"; $objListView->TotalItemCount = $itemcount; $objListView->ConfigureViewMenu($SortFieldVar,$SortOrderVar,$DefaultSortField, $CurrentFilterVar,$SessionView,$Bit_All); foreach($FilterLabels as $Bit=>$Label) { $objListView->AddViewMenuFilter($Label,$Bit); } $filter = false; // always initialize variables before use if($objSession->GetVariable("SessionSearchWord") != '') { $filter = true; } else { if ($SessionView != $Bit_All) { $filter = true; } } $title = admin_language("la_Show_Log")." (".$objUsers->NumItems().")"; $h = "\n\n<SCRIPT Language=\"JavaScript1.2\">\n".$objListView->GetViewMenu($imagesURL)."\n</SCRIPT>\n"; int_header($objListToolBar,NULL, $title,NULL,$h); if ($filter) { ?> <table width="100%" border="0" cellspacing="0" cellpadding="0" class="toolbar"> <tr> <td valign="top"> <?php int_hint_red(admin_language("la_Warning_Filter")); ?> </td> </tr> </table> <?php } ?> <FORM method="POST" ACTION="" NAME="sessionlistform" ID="sessionlistform"> <?php print $objListView->PrintList(); ?> <input type="hidden" name="Action" value=""> </FORM> <!-- CODE FOR VIEW MENU --> <form ID="viewmenu" method="post" action="<?php echo $_SERVER["PHP_SELF"]."?env=".BuildEnv(); ?>" name="viewmenu"> <input type="hidden" name="fieldname" value=""> <input type="hidden" name="varvalue" value=""> <input type="hidden" name="varvalue2" value=""> <input type="hidden" name="Action" value=""> </form> <FORM ID="ListSearchForm" NAME="ListSearchForm" method="POST" action="<?php echo $_SERVER["PHP_SELF"]."?env=".BuildEnv(); ?>"> <INPUT TYPE="HIDDEN" NAME="Action" VALUE=""> <INPUT TYPE="HIDDEN" NAME="list_search"> </FORM> <script src="<?php echo $adminURL; ?>/listview/listview.js"></script> <script> initSelectiorContainers(); <?php echo $objListToolBar->Get("CheckClass").".setImages();"; ?> </script> <!-- END CODE--> <?php int_footer(); ?>