コード例 #1
0
 /**
  * @return Tracker_CrossSearch_SearchView 
  */
 public function build(User $user, Project $project, Tracker_CrossSearch_Query $cross_search_query)
 {
     $report = $this->getReport($user);
     $service = $this->getService($project);
     $criteria = $this->getCriteria($user, $project, $report, $cross_search_query);
     $trackers = $this->tracker_factory->getTrackersByGroupIdUserCanView($project->getGroupId(), $user);
     $tracker_ids = $this->getTrackersIds($trackers);
     $artifacts = $this->getHierarchicallySortedArtifacts($user, $project, $tracker_ids, $cross_search_query);
     $content_view = new Tracker_CrossSearch_SearchContentView($report, $criteria, $artifacts, Tracker_ArtifactFactory::instance(), $this->form_element_factory, $user);
     return new Tracker_CrossSearch_SearchView($project, $service, $criteria, $trackers, $content_view);
 }
コード例 #2
0
 public function getDeniedTrackersForATrackerHierarchy(Tracker $tracker, PFUser $user)
 {
     $concerned_by_scrum = $this->isScrumHierarchy($tracker);
     $concerned_by_kanban = $this->isKanbanHierarchy($tracker);
     if (!$concerned_by_scrum && !$concerned_by_kanban) {
         return array();
     }
     $available_trackers = $this->tracker_factory->getTrackersByGroupIdUserCanView($tracker->getGroupId(), $user);
     if ($concerned_by_scrum) {
         $possible_trackers = $this->getTrackersConcernedByScrum($available_trackers, $tracker->getProject());
         return array_diff($available_trackers, $possible_trackers);
     }
     $possible_trackers = $this->getTrackersConcernedByKanban($available_trackers, $tracker->getProject());
     return array_diff($available_trackers, $possible_trackers);
 }
コード例 #3
0
 public function getTrackersWithKanbanUsageAndHierarchy($project_id, PFUser $user)
 {
     $trackers = array();
     $all_trackers = $this->tracker_factory->getTrackersByGroupIdUserCanView($project_id, $user);
     foreach ($all_trackers as $tracker) {
         $tracker_representation = array();
         $tracker_representation['id'] = $tracker->getId();
         $tracker_representation['name'] = $tracker->getName();
         if ($this->doesKanbanExistForTracker($tracker) || $this->hierarchy_checker->isScrumHierarchy($tracker)) {
             $tracker_representation['used'] = true;
             $trackers[] = $tracker_representation;
             continue;
         }
         $tracker_representation['used'] = false;
         $trackers[] = $tracker_representation;
     }
     return $trackers;
 }