Beispiel #1
0
 /**
  * @param int $uid
  * @param array $record
  * @return StageRecord
  */
 public static function get($uid, array $record = null)
 {
     if (empty($record)) {
         $record = static::fetch('sys_workspace_stage', $uid);
     }
     return WorkspaceRecord::get($record['parentid'])->getStage($uid);
 }
Beispiel #2
0
 /**
  * Gets all assigned recipients of a particular stage.
  *
  * @param StageRecord|int $stageRecord
  * @return array
  */
 protected function getReceipientsOfStage($stageRecord)
 {
     if (!$stageRecord instanceof StageRecord) {
         $stageRecord = WorkspaceRecord::get($this->getCurrentWorkspace())->getStage($stageRecord);
     }
     $result = array();
     $allRecipients = $this->getStageService()->getResponsibleBeUser($stageRecord);
     $preselectedRecipients = $this->stageService->getPreselectedRecipients($stageRecord);
     $isPreselectionChangeable = $stageRecord->isPreselectionChangeable();
     foreach ($allRecipients as $backendUserId => $backendUser) {
         if (empty($backendUser['email']) || !GeneralUtility::validEmail($backendUser['email'])) {
             continue;
         }
         $name = !empty($backendUser['realName']) ? $backendUser['realName'] : $backendUser['username'];
         $checked = in_array($backendUserId, $preselectedRecipients);
         $disabled = $checked && !$isPreselectionChangeable;
         $result[] = array('boxLabel' => sprintf('%s (%s)', $name, $backendUser['email']), 'name' => 'receipients-' . $backendUserId, 'checked' => $checked, 'disabled' => $disabled);
     }
     return $result;
 }
Beispiel #3
0
 /**
  * @return WorkspaceRecord
  */
 protected function getWorkspaceRecord()
 {
     return WorkspaceRecord::get($this->getWorkspaceId());
 }