/** * Set the currently selected project * * @param TBGProject $project The project, or null if none */ public static function setCurrentProject($project) { self::getResponse()->setBreadcrumb(null); self::$_selected_project = $project; if ($project instanceof TBGProject) { $projectsubmenulinks = null; $clientsubmenulinks = null; if (count(TBGProject::getAll()) > 1) { $projectsubmenulinks = array(); foreach (TBGProject::getAll() as $existing_project) { if (!$project->hasClient() || $existing_project->hasClient() && $project->getClient()->getID() == $existing_project->getClient()->getID()) { $projectsubmenulinks[] = array('url' => self::getRouting()->generate('project_dashboard', array('project_key' => $existing_project->getKey())), 'title' => $existing_project->getName()); } } } if (self::$_selected_project->hasClient()) { $clientsubmenulinks = array(); foreach (TBGClient::getAll() as $client) { if ($client->hasAccess()) { $clientsubmenulinks[] = array('url' => self::getRouting()->generate('client_dashboard', array('client_id' => $client->getID())), 'title' => $client->getName()); } } self::setCurrentClient(self::$_selected_project->getClient()); } if (strtolower(TBGSettings::getTBGname()) != strtolower($project->getName()) || self::isClientContext()) { self::getResponse()->addBreadcrumb(TBGSettings::getTBGName(), self::getRouting()->generate('home')); if (self::isClientContext()) { self::getResponse()->addBreadcrumb(self::getCurrentClient()->getName(), self::getRouting()->generate('client_dashboard', array('client_id' => self::getCurrentClient()->getID())), $clientsubmenulinks); } } self::getResponse()->addBreadcrumb($project->getName(), self::getRouting()->generate('project_dashboard', array('project_key' => TBGContext::getCurrentProject()->getKey())), $projectsubmenulinks, 'selected_project'); } else { self::getResponse()->addBreadcrumb(TBGSettings::getTBGName(), self::getRouting()->generate('home')); } }
/** * Set the currently selected project * * @param TBGProject $project The project, or null if none */ public static function setCurrentProject($project) { self::getResponse()->setBreadcrumb(null); self::$_selected_project = $project; }