public function componentArchivedProjects() { if (!isset($this->target)) { $this->projects = TBGProject::getAllRootProjects(true); $this->project_count = count($this->projects); } elseif ($this->target == 'team') { $this->team = TBGContext::factory()->TBGTeam($this->id); $projects = array(); foreach (TBGProject::getAllByOwner($this->team) as $project) { $projects[$project->getID()] = $project; } foreach (TBGProject::getAllByLeader($this->team) as $project) { $projects[$project->getID()] = $project; } foreach (TBGProject::getAllByQaResponsible($this->team) as $project) { $projects[$project->getID()] = $project; } foreach ($this->team->getAssociatedProjects() as $project_id => $project) { $projects[$project_id] = $project; } $final_projects = array(); foreach ($projects as $project) { if ($project->isArchived()) { $final_projects[] = $project; } } $this->projects = $final_projects; } elseif ($this->target == 'client') { $this->client = TBGContext::factory()->TBGClient($this->id); $projects = TBGProject::getAllByClientID($this->client->getID()); $final_projects = array(); foreach ($projects as $project) { if (!$project->isArchived()) { $final_projects[] = $project; } } $this->projects = $final_projects; } elseif ($this->target == 'project') { $this->parent = TBGContext::factory()->TBGProject($this->id); $this->projects = $this->parent->getChildren(true); } $this->project_count = count($this->projects); }
/** * Team Dashboard * * @param TBGRequest $request */ public function runTeamDashboard(TBGRequest $request) { try { $this->team = TBGContext::factory()->TBGTeam($request['team_id']); $this->forward403Unless($this->team->hasAccess()); $projects = array(); foreach (TBGProject::getAllByOwner($this->team) as $project) { $projects[$project->getID()] = $project; } foreach (TBGProject::getAllByLeader($this->team) as $project) { $projects[$project->getID()] = $project; } foreach (TBGProject::getAllByQaResponsible($this->team) as $project) { $projects[$project->getID()] = $project; } foreach ($this->team->getAssociatedProjects() as $project_id => $project) { $projects[$project_id] = $project; } $final_projects = array(); foreach ($projects as $project) { if (!$project->isArchived()) { $final_projects[] = $project; } } $this->projects = $final_projects; $this->users = $this->team->getMembers(); } catch (Exception $e) { return $this->return404(TBGContext::getI18n()->__('This team does not exist')); TBGLogging::log($e->getMessage(), 'core', TBGLogging::LEVEL_WARNING); } }
/** * Team Dashboard * * @param TBGRequest $request */ public function runTeamDashboard(TBGRequest $request) { try { $this->team = TBGContext::factory()->TBGTeam($request->getParameter('team_id')); $this->forward403Unless($this->team->hasAccess()); $own = TBGProject::getAllByOwner($this->team); $leader = TBGProject::getAllByLeader($this->team); $qa = TBGProject::getAllByQaResponsible($this->team); $proj = $this->team->getAssociatedProjects(); $this->projects = array_unique(array_merge($proj, $own, $leader, $qa)); $this->users = $this->team->getMembers(); } catch (Exception $e) { return $this->return404(TBGContext::getI18n()->__('This team does not exist')); TBGLogging::log($e->getMessage(), 'core', TBGLogging::LEVEL_WARNING); } }