Update Look n Feel and Functionality of User Manager
This commit is contained in:
@@ -52,6 +52,7 @@ class Configurations // extends Configuration
|
||||
{
|
||||
var $aConfig = array();
|
||||
private $Configuration = null;
|
||||
private $UserConfig = null;
|
||||
|
||||
/**
|
||||
* Set Configurations
|
||||
@@ -254,6 +255,33 @@ class Configurations // extends Configuration
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* usersNameFormat
|
||||
* @author Qennix
|
||||
* @param string $username
|
||||
* @param string $firstname
|
||||
* @param string $lastname
|
||||
* @return string User Name Well-Formatted
|
||||
*/
|
||||
|
||||
function usersNameFormat($username, $firstname, $lastname){
|
||||
try{
|
||||
if (!isset($this->UserConfig)) $this->UserConfig = $this->getConfiguration('ENVIRONMENT_SETTINGS', '');
|
||||
if (isset($this->UserConfig['format'])){
|
||||
$aux = '';
|
||||
$aux = str_replace('@userName', $username, $this->UserConfig['format']);
|
||||
$aux = str_replace('@firstName', $firstname, $aux);
|
||||
$aux = str_replace('@lastName', $lastname, $aux);
|
||||
return $aux;
|
||||
}else{
|
||||
return $username;
|
||||
}
|
||||
}catch(Exception $oError){
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* setConfig
|
||||
|
||||
@@ -1194,4 +1194,20 @@ class AppCacheView extends BaseAppCacheView {
|
||||
return ($rowData);
|
||||
}
|
||||
|
||||
//Added By Qennix
|
||||
function getTotalCasesByAllUsers(){
|
||||
$oCriteria = new Criteria('workflow');
|
||||
$oCriteria->addSelectColumn(AppCacheViewPeer::USR_UID);
|
||||
$oCriteria->addAsColumn('CNT', 'COUNT(DISTINCT(APP_UID))');
|
||||
$oCriteria->addGroupByColumn(AppCacheViewPeer::USR_UID);
|
||||
$Dat = AppCacheViewPeer::doSelectRS ($oCriteria);
|
||||
$Dat->setFetchmode (ResultSet::FETCHMODE_ASSOC);
|
||||
$aRows = Array();
|
||||
while ($Dat->next()){
|
||||
$row = $Dat->getRow();
|
||||
$aRows[$row['USR_UID']] = $row['CNT'];
|
||||
}
|
||||
return $aRows;
|
||||
}
|
||||
|
||||
} // AppCacheView
|
||||
|
||||
@@ -394,19 +394,35 @@ protected $depo_title = '';
|
||||
|
||||
// select departments
|
||||
// this function is used to draw the hierachy tree view
|
||||
function getDepartments( $DepParent ) {
|
||||
function getDepartments( $DepParent ) {
|
||||
try {
|
||||
$result = array();
|
||||
$criteria = new Criteria('workflow');
|
||||
$criteria->add(DepartmentPeer::DEP_PARENT, $DepParent, Criteria::EQUAL);
|
||||
$con = Propel::getConnection(DepartmentPeer::DATABASE_NAME);
|
||||
$objects = DepartmentPeer::doSelect($criteria, $con);
|
||||
global $RBAC;
|
||||
|
||||
foreach( $objects as $oDepartment ) {
|
||||
$node = array();
|
||||
$node['DEP_UID'] = $oDepartment->getDepUid();
|
||||
$node['DEP_PARENT'] = $oDepartment->getDepParent();
|
||||
$node['DEP_TITLE'] = $oDepartment->getDepTitle();
|
||||
$node['DEP_STATUS'] = $oDepartment->getDepStatus();
|
||||
$node['DEP_MANAGER'] = $oDepartment->getDepManager();
|
||||
$node['DEP_LAST'] = 0;
|
||||
|
||||
$manager = $oDepartment->getDepManager();
|
||||
if ($manager != ''){
|
||||
$UserUID = $RBAC->load($manager);
|
||||
$node['DEP_MANAGER_USERNAME'] = $UserUID['USR_USERNAME'];
|
||||
$node['DEP_MANAGER_FIRSTNAME'] = $UserUID['USR_FIRSTNAME'];
|
||||
$node['DEP_MANAGER_LASTNAME'] = $UserUID['USR_LASTNAME'];
|
||||
}else{
|
||||
$node['DEP_MANAGER_USERNAME'] = '';
|
||||
$node['DEP_MANAGER_FIRSTNAME'] = '';
|
||||
$node['DEP_MANAGER_LASTNAME'] = '';
|
||||
}
|
||||
|
||||
$criteriaCount = new Criteria('workflow');
|
||||
$criteriaCount->clearSelectColumns();
|
||||
@@ -555,5 +571,23 @@ protected $depo_title = '';
|
||||
$c->add(ContentPeer::CON_LANG, SYS_LANG );
|
||||
return $c;
|
||||
}
|
||||
|
||||
//Added by Qennix
|
||||
function getAllDepartmentsByUser(){
|
||||
$c = new Criteria('workflow');
|
||||
$c->addSelectColumn(UsersPeer::USR_UID);
|
||||
$c->addAsColumn('DEP_TITLE', ContentPeer::CON_VALUE);
|
||||
$c->add(ContentPeer::CON_LANG,defined(SYS_LANG)?SYS_LANG:'en');
|
||||
$c->add(ContentPeer::CON_CATEGORY,'DEPO_TITLE');
|
||||
$c->addJoin(UsersPeer::DEP_UID, ContentPeer::CON_ID,Criteria::INNER_JOIN);
|
||||
$Dat = UsersPeer::doSelectRS ($c);
|
||||
$Dat->setFetchmode (ResultSet::FETCHMODE_ASSOC);
|
||||
$aRows = Array();
|
||||
while ($Dat->next()){
|
||||
$row = $Dat->getRow();
|
||||
$aRows[$row['USR_UID']] = $row['DEP_TITLE'];
|
||||
}
|
||||
return $aRows;
|
||||
}
|
||||
|
||||
} // Department
|
||||
|
||||
@@ -109,5 +109,35 @@ class LoginLog extends BaseLoginLog {
|
||||
throw($e);
|
||||
}
|
||||
}
|
||||
|
||||
//Added by Qennix
|
||||
function getLastLoginByUser($sUID){
|
||||
$c = new Criteria();
|
||||
$c->addSelectColumn(LoginLogPeer::LOG_INIT_DATE);
|
||||
$c->add(LoginLogPeer::USR_UID,$sUID);
|
||||
$c->setLimit(1);
|
||||
$c->addDescendingOrderByColumn(LoginLogPeer::LOG_INIT_DATE);
|
||||
$Dat = LoginLogPeer::doSelectRS ($c);
|
||||
$Dat->setFetchmode ( ResultSet::FETCHMODE_ASSOC );
|
||||
$Dat->next();
|
||||
$aRow = $Dat->getRow();
|
||||
return isset($aRow['LOG_INIT_DATE']) ? $aRow['LOG_INIT_DATE'] : '';
|
||||
}
|
||||
|
||||
//Added by Qennix
|
||||
function getLastLoginAllUsers(){
|
||||
$c = new Criteria();
|
||||
$c->addSelectColumn(LoginLogPeer::USR_UID);
|
||||
$c->addAsColumn('LAST_LOGIN', 'MAX(LOG_INIT_DATE)');
|
||||
$c->addGroupByColumn(LoginLogPeer::USR_UID);
|
||||
$Dat = LoginLogPeer::doSelectRS ($c);
|
||||
$Dat->setFetchmode (ResultSet::FETCHMODE_ASSOC);
|
||||
$aRows = Array();
|
||||
while ($Dat->next()){
|
||||
$row = $Dat->getRow();
|
||||
$aRows[$row['USR_UID']] = $row['LAST_LOGIN'];
|
||||
}
|
||||
return $aRows;
|
||||
}
|
||||
|
||||
} // LoginLog
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?php
|
||||
/**
|
||||
* users_List.php
|
||||
* usersGroups.php
|
||||
*
|
||||
* ProcessMaker Open Source Edition
|
||||
* Copyright (C) 2004 - 2008 Colosa Inc.23
|
||||
@@ -53,20 +53,12 @@ $G_ID_SUB_MENU_SELECTED = 'USERS';
|
||||
|
||||
$G_PUBLISH = new Publisher;
|
||||
|
||||
$oHeadPublisher =& headPublisher::getSingleton();
|
||||
|
||||
//$oHeadPublisher->usingExtJs('ux/Ext.ux.fileUploadField');
|
||||
$oHeadPublisher->addExtJsScript('users/usersGroups', false); //adding a javascript file .js
|
||||
$oHeadPublisher->addContent('users/usersGroups'); //adding a html file .html.
|
||||
|
||||
$labels = G::getTranslations(Array('ID_USERS','ID_ASSIGN','ID_ASSIGN_ALL_GROUPS','ID_REMOVE','ID_REMOVE_ALL_GROUPS',
|
||||
'ID_BACK','ID_GROUP_NAME','ID_AVAILABLE_GROUPS','ID_ASSIGNED_GROUPS','ID_GROUPS','ID_USERS',
|
||||
'ID_MSG_AJAX_FAILURE','ID_PROCESSING','ID_AUTHENTICATION','ID_CLOSE','ID_SAVE','ID_AUTHENTICATION_SOURCE',
|
||||
'ID_AUTHENTICATION_DN','ID_AUTHENTICATION_FORM_TITLE','ID_SELECT_AUTH_SOURCE','ID_SAVE_CHANGES','ID_DISCARD_CHANGES',
|
||||
'ID_ENTER_SEARCH_TERM'));
|
||||
G::LoadClass('configuration');
|
||||
$c = new Configurations();
|
||||
$configEnv = $c->getConfiguration('ENVIRONMENT_SETTINGS', '');
|
||||
$Config['fullNameFormat'] = isset($configEnv['format']) ? $configEnv['format'] : '@userName';
|
||||
|
||||
require_once 'classes/model/Users.php';
|
||||
|
||||
$oCriteria = new Criteria();
|
||||
$oCriteria->addSelectColumn(UsersPeer::USR_FIRSTNAME);
|
||||
$oCriteria->addSelectColumn(UsersPeer::USR_LASTNAME);
|
||||
@@ -77,13 +69,23 @@ $oDataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||
$oDataset->next();
|
||||
$aRow = $oDataset->getRow();
|
||||
|
||||
switch($_REQUEST['type']){
|
||||
case 'summary': $ctab = 0; break;
|
||||
case 'group': $ctab = 1; break;
|
||||
case 'auth': $ctab = 2; break;
|
||||
}
|
||||
|
||||
$users = Array();
|
||||
$users['USR_UID'] = $_GET['uUID'];
|
||||
$users['USR_COMPLETENAME'] = $aRow['USR_LASTNAME'].' '.$aRow['USR_FIRSTNAME'];
|
||||
$users['USR_FIRSTNAME'] = $aRow['USR_FIRSTNAME'];
|
||||
$users['USR_LASTNAME'] = $aRow['USR_LASTNAME'];
|
||||
$users['USR_USERNAME'] = $aRow['USR_USERNAME'];
|
||||
$users['CURRENT_TAB'] = ($_REQUEST['type']=='group') ? 0 : 1;
|
||||
$users['fullNameFormat'] = $Config['fullNameFormat'];
|
||||
$users['CURRENT_TAB'] = $ctab;
|
||||
|
||||
|
||||
$oHeadPublisher->assign('TRANSLATIONS', $labels);
|
||||
$oHeadPublisher =& headPublisher::getSingleton();
|
||||
$oHeadPublisher->addExtJsScript('users/usersGroups', false); //adding a javascript file .js
|
||||
$oHeadPublisher->addContent('users/usersGroups'); //adding a html file .html.
|
||||
$oHeadPublisher->assign('USERS', $users);
|
||||
|
||||
G::RenderPage('publish', 'extJs');
|
||||
File diff suppressed because it is too large
Load Diff
@@ -46,6 +46,7 @@ if( $access != 1 ){
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
$G_MAIN_MENU = 'processmaker';
|
||||
$G_SUB_MENU = 'users';
|
||||
$G_ID_MENU_SELECTED = 'USERS';
|
||||
@@ -53,17 +54,17 @@ $G_ID_SUB_MENU_SELECTED = 'USERS';
|
||||
|
||||
$G_PUBLISH = new Publisher;
|
||||
|
||||
$oHeadPublisher =& headPublisher::getSingleton();
|
||||
G::LoadClass('configuration');
|
||||
$c = new Configurations();
|
||||
$configPage = $c->getConfiguration('usersList', 'pageSize','',$_SESSION['USER_LOGGED']);
|
||||
$configEnv = $c->getConfiguration('ENVIRONMENT_SETTINGS', '');
|
||||
$Config['pageSize'] = isset($configPage['pageSize']) ? $configPage['pageSize'] : 20;
|
||||
$Config['fullNameFormat'] = isset($configEnv['format']) ? $configEnv['format'] : '@userName';
|
||||
$Config['dateFormat'] = isset($configEnv['dateFormat']) ? $configEnv['dateFormat'] : 'Y/m/d';
|
||||
|
||||
//$oHeadPublisher->usingExtJs('ux/Ext.ux.fileUploadField');
|
||||
$oHeadPublisher =& headPublisher::getSingleton();
|
||||
$oHeadPublisher->addExtJsScript('users/usersList', false); //adding a javascript file .js
|
||||
$oHeadPublisher->addContent('users/usersList'); //adding a html file .html.
|
||||
$oHeadPublisher->assign('CONFIG', $Config);
|
||||
|
||||
$labels = G::getTranslations(Array('ID_USERS','ID_EDIT','ID_DELETE','ID_NEW','ID_GROUPS','ID_USERS_DELETE_WITH_HISTORY',
|
||||
'ID_USER_NAME','ID_PHOTO','ID_EMAIL','ID_FULL_NAME','ID_SEARCH','ID_ENTER_SEARCH_TERM',
|
||||
'ID_ROLE','ID_DUE_DATE','ID_CANNOT_DELETE_ADMIN_USER','ID_CONFIRM','ID_MSG_CONFIRM_DELETE_USER',
|
||||
'ID_MSG_CANNOT_DELETE_USER','ID_USERS_SUCCESS_DELETE','ID_AUTHENTICATION'));
|
||||
|
||||
$oHeadPublisher->assign('TRANSLATIONS', $labels);
|
||||
G::RenderPage('publish', 'extJs');
|
||||
|
||||
G::RenderPage('publish', 'extJs');
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user