private function noKanbanTrackersAreSelected(PlanningParameters $planning_parameters, $project_id)
 {
     $kanban_tracker_ids = $this->kanban_factory->getKanbanTrackerIds($project_id);
     if (count($kanban_tracker_ids) === 0) {
         return true;
     }
     $selected_tracker_ids = array_merge(array($planning_parameters->planning_tracker_id), $planning_parameters->backlog_tracker_ids);
     foreach ($selected_tracker_ids as $tracker_id) {
         if (in_array($tracker_id, $kanban_tracker_ids)) {
             return false;
         }
     }
     return true;
 }
Ejemplo n.º 2
0
 private function getFormPresenter(PFUser $user, Planning $planning)
 {
     $group_id = $planning->getGroupId();
     $available_trackers = $this->planning_factory->getAvailableBacklogTrackers($user, $group_id);
     $available_planning_trackers = $this->planning_factory->getAvailablePlanningTrackers($user, $group_id);
     $cardwall_admin = $this->getCardwallConfiguration($planning);
     $available_planning_trackers[] = $planning->getPlanningTracker();
     $kanban_tracker_ids = $this->kanban_factory->getKanbanTrackerIds($group_id);
     $planning_trackers_filtered = $this->getPlanningTrackersFiltered($available_planning_trackers, $kanban_tracker_ids, $planning);
     $backlog_trackers_filtered = $this->getBacklogTrackersFiltered($available_trackers, $kanban_tracker_ids, $planning);
     return new Planning_FormPresenter($this->planning_permissions_manager, $planning, $backlog_trackers_filtered, $planning_trackers_filtered, $cardwall_admin);
 }
 public function showKanban()
 {
     $kanban_id = $this->request->get('id');
     $user = $this->request->getCurrentUser();
     try {
         $kanban = $this->kanban_factory->getKanban($user, $kanban_id);
         $tracker = $this->tracker_factory->getTrackerById($kanban->getTrackerId());
         $user_is_kanban_admin = $this->permissions_manager->userCanAdministrate($user, $tracker->getGroupId());
         return $this->renderToString('kanban', new KanbanPresenter($kanban, $user, $user_is_kanban_admin, $user->getShortLocale(), $tracker->getGroupId()));
     } catch (AgileDashboard_KanbanNotFoundException $exception) {
         $GLOBALS['Response']->addFeedback(Feedback::ERROR, $GLOBALS['Language']->getText('plugin_agiledashboard', 'kanban_not_found'));
     } catch (AgileDashboard_KanbanCannotAccessException $exception) {
         $GLOBALS['Response']->addFeedback(Feedback::ERROR, $GLOBALS['Language']->getText('global', 'error_perm_denied'));
     }
 }
Ejemplo n.º 4
0
 private function getKanbanTrackerIds(Project $project)
 {
     return $this->kanban_factory->getKanbanTrackerIds($project->getID());
 }