/**
  * @see URL::getGroupIdFromUrl  It constructs the project_id by searching the url
  *                              for a project ID or shortname or other.
  */
 private function replaceProjectPlaceHoldersInUrl(&$url, $current_location)
 {
     $project_id = $this->url_processor->getGroupIdFromUrl($current_location);
     try {
         $project = $this->project_manager->getValidProject($project_id);
     } catch (Project_NotFoundException $e) {
         return;
     }
     $project_name = $project->getUnixName();
     $project_placeholders = array(self::PLACEHOLDER_PROJECT_ID => $project_id, self::PLACEHOLDER_PROJECT_NAME => $project_name);
     foreach ($project_placeholders as $placeholder => $value) {
         if (strpos($url, $placeholder) !== false) {
             $url = str_replace($placeholder, $value, $url);
         }
     }
 }
예제 #2
0
 /**
  * @return Project
  * @throws Project_NotFoundException
  */
 private function getProjectFromRequest()
 {
     return $this->project_manager->getValidProject($this->group_id);
 }