コード例 #1
0
 /**
  * @param Cardwall_Board     $board              The board
  * @param Cardwall_QrCode    $qrcode             QrCode to display. false if no qrcode (thus no typehinting)
  * @param string             $redirect_parameter the redirect paramter to add to various url
  * @param Planning           $planning           The concerned planning
  * @param Planning_Milestone $milestone          The milestone
  */
 public function __construct(Cardwall_Board $board, $qrcode, $redirect_parameter, $switch_display_username_url, $is_display_avatar_selected, Planning $planning, Planning_Milestone $milestone, Cardwall_EffortProgressPresenter $progress_presenter)
 {
     parent::__construct($board, $qrcode, $redirect_parameter);
     $this->nifty = '';
     $this->swimline_title = $GLOBALS['Language']->getText('plugin_cardwall', 'swimline_title');
     $this->has_swimline_header = true;
     $this->switch_display_username_url = $switch_display_username_url;
     $this->is_display_avatar_selected = $is_display_avatar_selected;
     $this->display_avatar_label = $GLOBALS['Language']->getText('plugin_cardwall', 'display_avatar_label');
     $this->display_avatar_title = $GLOBALS['Language']->getText('plugin_cardwall', 'display_avatar_title');
     $this->search_cardwall_placeholder = $GLOBALS['Language']->getText('plugin_cardwall', 'search_cardwall_placeholder');
     $this->planning_id = $planning->getId();
     $this->milestone = $milestone;
     $this->progress_presenter = $progress_presenter;
 }
コード例 #2
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);
             }
         }
     }
 }
コード例 #3
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)));
 }
コード例 #4
0
 /**
  * Get a list of trackers defined as backlog for a planning
  *
  * @param Planning $planning
  *
  * @return array of Tracker
  */
 private function getBacklogTrackers(Planning $planning)
 {
     $backlog_trackers = array();
     $planning_id = $planning->getId();
     $rows = $this->dao->searchBacklogTrackersById($planning_id);
     foreach ($rows as $row) {
         $backlog_trackers[] = $this->tracker_factory->getTrackerById($row['tracker_id']);
     }
     return $backlog_trackers;
 }
コード例 #5
0
 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]);
 }
コード例 #6
0
 /**
  * Get a list of trackers defined as backlog for a planning
  * 
  * @param Planning $planning
  *
  * @return array of Tracker
  */
 private function getBacklogTracker(Planning $planning)
 {
     $planning_id = $planning->getId();
     $row = $this->dao->searchBacklogTrackerById($planning_id);
     $backlog_tracker = $this->tracker_factory->getTrackerById($row['tracker_id']);
     return $backlog_tracker;
 }
コード例 #7
0
 public function getPlanningId()
 {
     return $this->planning->getId();
 }
コード例 #8
0
 /**
  * Loads all open milestones for the given project and planning
  *
  * @param PFUser   $user
  * @param Planning $planning
  *
  * @return Array of Planning_Milestone
  */
 public function getAllMilestones(PFUser $user, Planning $planning)
 {
     if (!isset($this->cache_all_milestone[$planning->getId()])) {
         $this->cache_all_milestone[$planning->getId()] = $this->getAllMilestonesWithoutCaching($user, $planning);
     }
     return $this->cache_all_milestone[$planning->getId()];
 }
コード例 #9
0
 public function planningRedirectToNew()
 {
     return 'planning[][' . $this->planning->getId() . ']=-1';
 }