<?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. ## ############################################################## define('IS_POPUP', 1); // new startup: begin define('REL_PATH', 'admin/users'); $relation_level = count( explode('/', REL_PATH) ); define('FULL_PATH', realpath(dirname(__FILE__) . str_repeat('/..', $relation_level) ) ); require_once FULL_PATH.'/kernel/startup.php'; // new startup: end require_login(); $pathtolocal = $pathtoroot."kernel/"; require_once ($pathtoroot.$admin."/include/elements.php"); require_once ($pathtoroot."kernel/admin/include/navmenu.php"); require_once ($pathtolocal."admin/include/navmenu.php"); require_once($pathtoroot.$admin."/toolbar.php"); require_once($pathtoroot.$admin."/listview/listview.php"); $pathtolocal = $pathtoroot; //Set Section if(strlen($_GET["section"])) { $section = $_GET["section"]; } else $section = 'in-portal:userselect'; //Set Environment Variable $envar = "env=" . BuildEnv(); //Display header $objListToolBar = new clsToolBar(); $objListToolBar->Set("section",$section); $objListToolBar->Set("load_menu_func",""); $objListToolBar->Set("CheckClass","UserChecks"); $listImages = array(); //$img, $alt, $link, $onMouseOver, $onMouseOut, $onClick $objListToolBar->Add("select", "la_ToolTip_Select","#","swap('select','toolbar/tool_select_f2.gif');", "swap('select', 'toolbar/tool_select.gif');", "SelectSubmit();", "tool_select.gif"); $objListToolBar->Add("cancel", "la_ToolTip_Stop","#","swap('cancel','toolbar/tool_cancel_f2.gif');", "swap('cancel', 'toolbar/tool_cancel.gif');","window.close();","tool_cancel.gif"); //$objListToolBar->AddToInitScript($listImages); // order-by related stuff $order = $objConfig->Get("UserSelect_SortOrder"); $field = $objConfig->Get("UserSelect_SortField"); if(!strlen($field)) $field = "Login"; $OrderBy = 'ORDER BY '.$field.' '.$order; $SearchWords = $objSession->GetVariable("UserSelectSearchWord"); if(strlen($SearchWords)) $SearchWhere = $objUsers->AdminSearchWhereClause($SearchWords); $where = strlen($SearchWhere) ? "AND $SearchWhere" : ''; $SelectorType = GetVar('Selector'); if(!$SelectorType) $SelectorType = 'checkbox'; $objListView = new clsListView($objListToolBar); $objListView->CurrentPageVar = 'Page_UserSelect'; $objListView->PerPageVar = 'Perpage_User'; $prefix = GetTablePrefix(); if( GetVar('source') ) { // specific users list requested switch( GetVar('source') ) { case 'addgroup_users': $SelectorType = 'radio'; $ado =& GetADODBConnection(); // get user's list in group $sql = 'SELECT DISTINCT(PortalUserId) FROM '.$prefix.'UserGroup WHERE GroupId='.$_GET['GroupId']; $rs = $ado->Execute($sql); $inlist = Array(); while($rs && !$rs->EOF) { array_push($inlist,$rs->fields['PortalUserId']); $rs->MoveNext(); } if(count($inlist)>0) { // we have users in group requested $catlist = implode(",",$inlist); $sql = "SELECT u.*,g.Name as GroupName,ELT(u.status+1,'".admin_language("la_Text_Disabled")." ','".admin_language("la_Text_Enabled")." ','".admin_language("la_Text_Pending")."') as UserStatus, "; $sql .="FROM_UNIXTIME(u.CreatedOn,'%m-%d-%Y') as DateCreated FROM ".GetTablePrefix()."PortalUser as u "; $sql .="LEFT JOIN ".GetTablePrefix()."UserGroup as ug ON (u.PortalUserId=ug.PortalUserId) AND (ug.PrimaryGroup = 1) "; $sql .="LEFT JOIN ".GetTablePrefix()."PortalGroup as g ON (ug.GroupId=g.GroupId) WHERE "; $sql .= "u.PortalUserId NOT IN (".$catlist.") $OrderBy"; //echo 'sql1: '.$sql.'<br>'; $objUsers->Query_Item($sql, $objListView->GetLimitSQL() ); $itemcount = TableCount(GetTablePrefix()."PortalUser","PortalUserId NOT IN ($catlist)",0); } else { // we have no users in group requested $catlist = -1; $sql = "SELECT u.*,g.Name as GroupName,ELT(u.status+1,'".admin_language("la_Text_Disabled")." ','".admin_language("la_Text_Enabled")." ','".admin_language("la_Text_Pending")."') as UserStatus, "; $sql .="FROM_UNIXTIME(u.CreatedOn,'%m-%d-%Y') as DateCreated FROM ".GetTablePrefix()."PortalUser as u "; $sql .="LEFT JOIN ".GetTablePrefix()."UserGroup as ug ON (u.PortalUserId=ug.PortalUserId) AND (ug.PrimaryGroup = 1) "; $sql .="LEFT JOIN ".GetTablePrefix()."PortalGroup as g ON (ug.GroupId=g.GroupId) WHERE 1 $OrderBy"; //echo 'sql2: '.$sql.'<br>'; $objUsers->Query_Item($sql, $objListView->GetLimitSQL() ); $itemcount = TableCount(GetTablePrefix()."PortalUser","PortalUserId NOT IN ($catlist)",0); } break; } } else { // if nothing special required -> just display all users (paginated list) $catlist = -1; $sql = "SELECT u.*,g.Name as GroupName,ELT(u.status+1,'".admin_language("la_Text_Disabled")." ','".admin_language("la_Text_Enabled")." ','".admin_language("la_Text_Pending")."') as UserStatus, "; $sql .="FROM_UNIXTIME(u.CreatedOn,'%m-%d-%Y') as DateCreated FROM ".GetTablePrefix()."PortalUser as u "; $sql .="LEFT JOIN ".GetTablePrefix()."UserGroup as ug ON (u.PortalUserId=ug.PortalUserId) AND (ug.PrimaryGroup = 1) "; $sql .="LEFT JOIN ".GetTablePrefix()."PortalGroup as g ON (ug.GroupId=g.GroupId) WHERE 1 $where $OrderBy"; //echo 'sql3: '.$sql.'<br>'; $objUsers->Query_Item($sql, $objListView->GetLimitSQL() ); $itemcount = QueryCount($sql); } if($objSession->HasSystemPermission("DEBUG.LIST")) echo htmlentities($sql,ENT_NOQUOTES)."<br>\n"; $objListView->SetListItems($objUsers); if(strlen($_GET["IdField"])>0) { $objListView->IdField = $_GET["IdField"]; } else $objListView->IdField = "ResourceId"; if(strlen($_GET["ReturnField"])>0) { $ReturnField = $_GET["ReturnField"]; } else $ReturnField = $objListView->IdField; $objListView->PageLinkTemplate = $pathtoroot.$admin."/templates/user_page_link.tpl"; $objListView->ColumnHeaders->Add("Login",admin_language("la_prompt_Username"),1,0,$order,"width=\"15%\"","UserSelect_SortField","UserSelect_SortOrder","Login"); $objListView->ColumnHeaders->Add("LastName",admin_language("la_prompt_Last_Name"),1,0,$order,"width=\"15%\"","UserSelect_SortField","UserSelect_SortOrder","LastName"); $objListView->ColumnHeaders->Add("FirstName",admin_language("la_prompt_First_Name"),1,0,$order,"width=\"15%\"","UserSelect_SortField","UserSelect_SortOrder","FirstName"); $objListView->ColumnHeaders->Add("Email",admin_language("la_prompt_Email"),1,0,$order,"width=\"20%\"","UserSelect_SortField","UserSelect_SortOrder","Email"); $objListView->ColumnHeaders->Add("GroupName",admin_language("la_prompt_PrimaryGroup"),1,0,$order,"width=\"20%\"","UserSelect_SortField","UserSelect_SortOrder","GroupName"); $objListView->ColumnHeaders->Add("DateCreated",admin_language("la_prompt_CreatedOn"),1,0,$order,"width=\"15%\"","UserSelect_SortField","UserSelect_SortOrder","CreatedOn"); $objListView->ColumnHeaders->SetSort($objConfig->Get("UserSelect_SortField"),$order); $objListView->PrintToolBar = FALSE; $objListView->SearchBar = TRUE; $objListView->SearchKeywords = $SearchWords; $objListView->SearchAction="m_userselect_search"; $objListView->CheckboxName = "itemlist[]"; $objListView->SelectorType=$SelectorType; $objListView->TotalItemCount = $itemcount; $vals = array_keys($_GET); for($i=0;$i<count($vals);$i++) { $key = $vals[$i]; if($key != "env") { if(strlen($extra_env)) $extra_env .= "&"; $extra_env .= $key."=".$_GET[$key]; } } $objListView->extra_env = $extra_env; for($i=0;$i<count($objUsers->Items);$i++) { $u =& $objUsers->GetItemRefByIndex($i); $objListView->RowIcons[] = $u->StatusIcon(); } int_header($objListToolBar); if(strlen($_GET["values"])) { $current_value = explode(",",$_GET["values"]); } ?> <FORM method="POST" ACTION="" NAME="userlistform" ID="userlistform"> <?php print $objListView->PrintList(); ?> <input type="hidden" name="Action" value=""> </FORM> <!-- CODE FOR VIEW MENU --> <form method="post" action="<?php echo $_SERVER["PHP_SELF"]."?".$_SERVER["QUERY_STRING"]; ?>" 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().PassVar($_GET,'destform','destfield','Selector','IdField'); ?>"> <input type="hidden" name="destform" value="<?php echo $destform; ?>"> <input type="hidden" name="dosubmit" value="<?php echo $_REQUEST['dosubmit']; ?>"> <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(); ?>