Пример #1
0
 private function exportPermissions(SimpleXMLElement $planning_node, Planning $planning)
 {
     $ugroups = $this->planning_permissions_manager->getGroupIdsWhoHasPermissionOnPlanning($planning->getId(), $planning->getGroupId(), PlanningPermissionsManager::PERM_PRIORITY_CHANGE);
     if (!empty($ugroups)) {
         foreach ($ugroups as $ugroup_id) {
             if (($ugroup = array_search($ugroup_id, $GLOBALS['UGROUPS'])) !== false && $ugroup_id < 100) {
                 if (!isset($planning_node->permissions)) {
                     $permission_nodes = $planning_node->addChild(self::NODE_PERMISSIONS);
                 }
                 $permission_node = $permission_nodes->addChild(self::NODE_PERMISSION);
                 $permission_node->addAttribute('ugroup', $ugroup);
                 $permission_node->addAttribute('type', PlanningPermissionsManager::PERM_PRIORITY_CHANGE);
                 unset($permission_node);
             }
         }
     }
 }
Пример #2
0
 private function redirectToPlanning($params, $requested_planning, Planning $planning)
 {
     $redirect_to_artifact = $requested_planning['artifact_id'];
     if ($redirect_to_artifact == -1) {
         $redirect_to_artifact = $params['artifact']->getId();
     }
     $GLOBALS['Response']->redirect('/plugins/agiledashboard/?' . http_build_query(array('group_id' => $planning->getGroupId(), 'planning_id' => $planning->getId(), 'action' => 'show', 'aid' => $redirect_to_artifact)));
 }
 private function redirectToPlanning(Tracker_Artifact $artifact, $requested_planning, Planning $planning, Tracker_Artifact_Redirect $redirect)
 {
     $redirect_to_artifact = $requested_planning[AgileDashboard_PaneRedirectionExtractor::ARTIFACT_ID];
     if ($redirect_to_artifact == -1) {
         $redirect_to_artifact = $artifact->getId();
     }
     $redirect->base_url = '/plugins/agiledashboard/';
     $redirect->query_parameters = array('group_id' => $planning->getGroupId(), 'planning_id' => $planning->getId(), 'action' => 'show', 'aid' => $redirect_to_artifact, 'pane' => $requested_planning[AgileDashboard_PaneRedirectionExtractor::PANE]);
 }
Пример #4
0
 /**
  * Retrieve the project trackers that can be used as planning trackers.
  * 
  * @param Planning $planning The planning for which we want to know the available trackers.
  * 
  * @return Array of Tracker
  */
 public function getAvailablePlanningTrackers(Planning $planning)
 {
     $planning_trackers = array($planning->getPlanningTracker());
     foreach ($this->dao->searchNonPlanningTrackersByGroupId($planning->getGroupId()) as $row) {
         $planning_trackers[] = $this->tracker_factory->getInstanceFromRow($row);
     }
     return $planning_trackers;
 }
 public function groupId()
 {
     return $this->planning->getGroupId();
 }
Пример #6
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);
 }
Пример #7
0
 private function getFormPresenter(Planning $planning)
 {
     $group_id = $planning->getGroupId();
     $available_trackers = $this->planning_factory->getAvailableTrackers($group_id);
     $available_planning_trackers = $this->planning_factory->getAvailablePlanningTrackers($planning);
     return new Planning_FormPresenter($planning, $available_trackers, $available_planning_trackers);
 }