We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 1416
    • 75 Posts
    In web users there is a list of all the web users and some details about the accounts.

    Just wondering if it is possible to list the groups that each web user is in, and display it somwhere in the grid.
    I took a look at the code that makes the grid display now, and I quickly realized I shouldn´t touch that code. laugh

    Possible or not?

    Cheers
    Amrit

    It´s possible alright.

    If you need it, here it is:
    Replace from line 110 to 131, in file manager\actions\web_user_management.static.php
    	$sql = "SELECT GROUP_CONCAT(wgn.name SEPARATOR ', ') AS webgroups, wu.id,wu.username,wua.fullname,wua.email,IF(wua.gender=1,'".$_lang['user_male']."',IF(wua.gender=2,'".$_lang['user_female']."','-')) as 'gender',IF(wua.blocked,'".$_lang['yes']."','-') as 'blocked'" .
    			"FROM ".$modx->getFullTableName("web_users")." AS wu ".
    			"INNER JOIN ".$modx->getFullTableName("web_user_attributes")." AS wua ON wua.internalKey=wu.id ".
    	    "LEFT JOIN ".$modx->getFullTableName("web_groups")." AS wg ON wu.id = wg.webuser ".
    	    "LEFT JOIN ".$modx->getFullTableName("webgroup_names")." AS wgn ON wg.webgroup = wgn.id ".
    			($sqlQuery ? " WHERE (wu.username LIKE '$sqlQuery%') OR (wua.fullname LIKE '%$sqlQuery%') OR (wua.email LIKE '$sqlQuery%')":"")." ".
    			"GROUP BY wu.id ORDER BY username";
    	$ds = mysql_query($sql);
    	include_once $base_path."manager/includes/controls/datagrid.class.php";
    	$grd = new DataGrid('',$ds,$number_of_results); // set page size to 0 t show all items
    	$grd->noRecordMsg = $_lang["no_records_found"];
    	$grd->cssClass="grid";
    	$grd->columnHeaderClass="gridHeader";
    	$grd->itemClass="gridItem";
    	$grd->altItemClass="gridAltItem";
    	$grd->fields="id,username,webgroups,fullname,email,gender,blocked";
    	$grd->columns=$_lang["icon"]." ,".$_lang["name"]." ,webgrupp ,".$_lang["user_full_name"]." ,".$_lang["email"]." ,".$_lang["user_gender"]." ,".$_lang["user_block"];
    	$grd->colWidths="34,,,,,40,34";
    	$grd->colAligns="center,,,,,center,center";
    	$grd->colTypes="template:<a class='gridRowIcon' href='#' onclick='return showContentMenu([+id+],event);' title='".$_lang["click_to_context"]."'><img src='media/style/$manager_theme/images/icons/user.gif' width='18' height='18' /></a>||template:<a href='index.php?a=88&id=[+id+]' title='".$_lang["click_to_edit_title"]."'>[+value+]</a>";
    	if($listmode=='1') $grd->pageSize=0;
    	if($_REQUEST['op']=='reset') $grd->pageNumber = 1;
    	// render grid
    	echo $grd->render();