/** * Get uids of all responsilbe persons for a stage * * @param string responsible_persion value from stage record * @return string uid list of responsible be_users */ public function getResponsibleUser($stageRespValue) { $stageValuesArray = array(); $stageValuesArray = t3lib_div::trimExplode(',', $stageRespValue); $beuserUidArray = array(); $begroupUidArray = array(); $allBeUserArray = array(); $begroupUidList = array(); foreach ($stageValuesArray as $key => $uidvalue) { if (strstr($uidvalue, 'be_users') !== FALSE) { // Current value is a uid of a be_user record $beuserUidArray[] = str_replace('be_users_', '', $uidvalue); } elseif (strstr($uidvalue, 'be_groups') !== FALSE) { $begroupUidArray[] = str_replace('be_groups_', '', $uidvalue); } else { $beuserUidArray[] = $uidvalue; } } if (!empty($begroupUidArray)) { $allBeUserArray = t3lib_befunc::getUserNames(); $begroupUidList = implode(',', $begroupUidArray); $this->userGroups = array(); $begroupUidArray = $this->fetchGroups($begroupUidList); foreach ($begroupUidArray as $groupkey => $groupData) { foreach ($allBeUserArray as $useruid => $userdata) { if (t3lib_div::inList($userdata['usergroup'], $groupData['uid'])) { $beuserUidArray[] = $useruid; } } } } array_unique($beuserUidArray); return implode(',', $beuserUidArray); }