Merged in bugfix/PMCORE-3620 (pull request #8341)
PMCORE-3620 Approved-by: Julio Cesar Laura Avendaño
This commit is contained in:
@@ -286,92 +286,101 @@ class Users extends BaseUsers
|
||||
|
||||
/**
|
||||
* Get all information about the user
|
||||
*
|
||||
* @param string $userUid
|
||||
*
|
||||
* @return array $arrayData
|
||||
* @throws Exception
|
||||
*/
|
||||
public function getAllInformation ($userUid)
|
||||
public function getAllInformation($userUid)
|
||||
{
|
||||
if (!isset($userUid) || empty($userUid)) {
|
||||
throw (new Exception('$userUid is empty.'));
|
||||
throw new Exception('$userUid is empty.');
|
||||
}
|
||||
if (RBAC::isGuestUserUid($userUid)) {
|
||||
throw new Exception(G::LoadTranslation("ID_USER_CAN_NOT_UPDATE", array($userUid)));
|
||||
throw new Exception(G::LoadTranslation("ID_USER_CAN_NOT_UPDATE", [$userUid]));
|
||||
return false;
|
||||
}
|
||||
|
||||
try {
|
||||
$aFields = $this->load( $userUid );
|
||||
$fields = $this->load($userUid);
|
||||
|
||||
$c = new Criteria( "workflow" );
|
||||
$c->add( IsoCountryPeer::IC_UID, $aFields["USR_COUNTRY"] );
|
||||
$rs = IsoCountryPeer::doSelectRS( $c );
|
||||
$rs->setFetchmode( ResultSet::FETCHMODE_ASSOC );
|
||||
$rowC = [];
|
||||
if (!empty($fields["USR_COUNTRY"])) {
|
||||
$c->add(IsoCountryPeer::IC_UID, $fields["USR_COUNTRY"]);
|
||||
$rs = IsoCountryPeer::doSelectRS($c);
|
||||
$rs->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||
$rs->next();
|
||||
$rowC = $rs->getRow();
|
||||
|
||||
}
|
||||
$rowS = [];
|
||||
if (!empty($fields["USR_CITY"])) {
|
||||
$c->clearSelectColumns();
|
||||
$c->add( IsoSubdivisionPeer::IC_UID, $aFields["USR_COUNTRY"] );
|
||||
$c->add( IsoSubdivisionPeer::IS_UID, $aFields["USR_CITY"] );
|
||||
$rs = IsoSubdivisionPeer::doSelectRS( $c );
|
||||
$rs->setFetchmode( ResultSet::FETCHMODE_ASSOC );
|
||||
$c->add(IsoSubdivisionPeer::IC_UID, $fields["USR_COUNTRY"]);
|
||||
$c->add(IsoSubdivisionPeer::IS_UID, $fields["USR_CITY"]);
|
||||
$rs = IsoSubdivisionPeer::doSelectRS($c);
|
||||
$rs->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||
$rs->next();
|
||||
$rowS = $rs->getRow();
|
||||
|
||||
}
|
||||
$rowL = [];
|
||||
if (!empty($fields["USR_LOCATION"])) {
|
||||
$c->clearSelectColumns();
|
||||
$c->add( IsoLocationPeer::IC_UID, $aFields["USR_COUNTRY"] );
|
||||
$c->add( IsoLocationPeer::IL_UID, $aFields["USR_LOCATION"] );
|
||||
$rs = IsoLocationPeer::doSelectRS( $c );
|
||||
$rs->setFetchmode( ResultSet::FETCHMODE_ASSOC );
|
||||
$c->add(IsoLocationPeer::IC_UID, $fields["USR_COUNTRY"]);
|
||||
$c->add(IsoLocationPeer::IL_UID, $fields["USR_LOCATION"]);
|
||||
$rs = IsoLocationPeer::doSelectRS($c);
|
||||
$rs->setFetchmode(ResultSet::FETCHMODE_ASSOC);
|
||||
$rs->next();
|
||||
$rowL = $rs->getRow();
|
||||
}
|
||||
|
||||
//Calendar
|
||||
$calendar = new Calendar();
|
||||
$calendarInfo = $calendar->getCalendarFor( $userUid, $userUid, $userUid );
|
||||
$aFields["USR_CALENDAR"] = ($calendarInfo["CALENDAR_APPLIED"] != "DEFAULT") ? $calendarInfo["CALENDAR_UID"] : "";
|
||||
$calendarInfo = $calendar->getCalendarFor($userUid, $userUid, $userUid);
|
||||
$fields["USR_CALENDAR"] = ($calendarInfo["CALENDAR_APPLIED"] != "DEFAULT") ? $calendarInfo["CALENDAR_UID"] : "";
|
||||
|
||||
//Photo
|
||||
$pathPhoto = PATH_IMAGES_ENVIRONMENT_USERS . $userUid . ".gif";
|
||||
|
||||
if (! file_exists( $pathPhoto )) {
|
||||
if (!file_exists($pathPhoto)) {
|
||||
$pathPhoto = PATH_HOME . "public_html" . PATH_SEP . "images" . PATH_SEP . "user.gif";
|
||||
}
|
||||
|
||||
//Data
|
||||
$arrayData = array ();
|
||||
$arrayData["username"] = $aFields["USR_USERNAME"];
|
||||
$arrayData["firstname"] = $aFields["USR_FIRSTNAME"];
|
||||
$arrayData["lastname"] = $aFields["USR_LASTNAME"];
|
||||
$arrayData["mail"] = $aFields["USR_EMAIL"];
|
||||
$arrayData["address"] = $aFields["USR_ADDRESS"];
|
||||
$arrayData["zipcode"] = $aFields["USR_ZIP_CODE"];
|
||||
$arrayData["country"] = $rowC["IC_NAME"];
|
||||
$arrayData["state"] = $rowS["IS_NAME"];
|
||||
$arrayData["location"] = $rowL["IL_NAME"];
|
||||
$arrayData["phone"] = $aFields["USR_PHONE"];
|
||||
$arrayData["fax"] = $aFields["USR_FAX"];
|
||||
$arrayData["cellular"] = $aFields["USR_CELLULAR"];
|
||||
$arrayData["birthday"] = $aFields["USR_BIRTHDAY"];
|
||||
$arrayData["position"] = $aFields["USR_POSITION"];
|
||||
$arrayData["replacedby"] = $aFields["USR_REPLACED_BY"];
|
||||
if(strlen($arrayData["replacedby"] != 0)){
|
||||
$oUser = UsersPeer::retrieveByPK( $arrayData["replacedby"] );
|
||||
$arrayData = [];
|
||||
$arrayData["username"] = $fields["USR_USERNAME"];
|
||||
$arrayData["firstname"] = $fields["USR_FIRSTNAME"];
|
||||
$arrayData["lastname"] = $fields["USR_LASTNAME"];
|
||||
$arrayData["mail"] = $fields["USR_EMAIL"];
|
||||
$arrayData["address"] = $fields["USR_ADDRESS"];
|
||||
$arrayData["zipcode"] = $fields["USR_ZIP_CODE"];
|
||||
$arrayData["country"] = !empty($rowC) ? $rowC["IC_NAME"] : '';
|
||||
$arrayData["state"] = !empty($rowS) ? $rowS["IS_NAME"] : '';
|
||||
$arrayData["location"] = !empty($rowL) ? $rowL["IL_NAME"]: '';
|
||||
$arrayData["phone"] = $fields["USR_PHONE"];
|
||||
$arrayData["fax"] = $fields["USR_FAX"];
|
||||
$arrayData["cellular"] = $fields["USR_CELLULAR"];
|
||||
$arrayData["birthday"] = $fields["USR_BIRTHDAY"];
|
||||
$arrayData["position"] = $fields["USR_POSITION"];
|
||||
$arrayData["replacedby"] = $fields["USR_REPLACED_BY"];
|
||||
if(strlen($arrayData["replacedby"] != 0)) {
|
||||
$oUser = UsersPeer::retrieveByPK($arrayData["replacedby"]);
|
||||
$arrayData["replacedbyfullname"] = $oUser->getUsrFirstname() . ' ' . $oUser->getUsrLastname();
|
||||
}
|
||||
$arrayData["duedate"] = $aFields["USR_DUE_DATE"];
|
||||
$arrayData["calendar"] = $aFields["USR_CALENDAR"];
|
||||
if(strlen($aFields["USR_CALENDAR"] != 0)){
|
||||
$arrayData["calendarname"] = $calendar->calendarName( $aFields["USR_CALENDAR"] );
|
||||
$arrayData["duedate"] = $fields["USR_DUE_DATE"];
|
||||
$arrayData["calendar"] = $fields["USR_CALENDAR"];
|
||||
if(strlen($fields["USR_CALENDAR"] != 0)) {
|
||||
$arrayData["calendarname"] = $calendar->calendarName($fields["USR_CALENDAR"]);
|
||||
}
|
||||
$arrayData["status"] = $aFields["USR_STATUS"];
|
||||
$arrayData["department"] = $aFields["DEP_UID"];
|
||||
$arrayData["status"] = $fields["USR_STATUS"];
|
||||
$arrayData["department"] = $fields["DEP_UID"];
|
||||
if (strlen($arrayData["department"]) != 0) {
|
||||
$oDepart = DepartmentPeer::retrieveByPk( $arrayData["department"] );
|
||||
$oDepart = DepartmentPeer::retrieveByPk($arrayData["department"]);
|
||||
$arrayData["departmentname"] = $oDepart->getDepTitle();
|
||||
}
|
||||
$arrayData["reportsto"] = $aFields["USR_REPORTS_TO"];
|
||||
$arrayData["userexperience"] = $aFields["USR_UX"];
|
||||
$arrayData["reportsto"] = $fields["USR_REPORTS_TO"];
|
||||
$arrayData["userexperience"] = $fields["USR_UX"];
|
||||
$arrayData["photo"] = $pathPhoto;
|
||||
|
||||
return $arrayData;
|
||||
|
||||
Reference in New Issue
Block a user