Пример #1
0
 /**
  * @return Cardwall_PaneContentPresenter
  */
 private function getPresenterUsingMappedFields(Cardwall_OnTop_Config_ColumnCollection $columns)
 {
     $board_factory = new Cardwall_BoardFactory();
     $planned_artifacts = $this->milestone->getPlannedArtifacts();
     $field_retriever = new Cardwall_OnTop_Config_MappedFieldProvider($this->config, new Cardwall_FieldProviders_SemanticStatusFieldRetriever());
     $board = $board_factory->getBoard($field_retriever, $columns, $planned_artifacts, $this->config);
     $backlog_title = $this->milestone->getPlanning()->getBacklogTracker()->getName();
     $redirect_parameter = 'cardwall[agile][' . $this->milestone->getPlanning()->getId() . ']=' . $this->milestone->getArtifactId();
     $configure_url = TRACKER_BASE_URL . '/?tracker=' . $this->milestone->getTrackerId() . '&func=admin-cardwall';
     return new Cardwall_PaneContentPresenter($board, $this->getQrCode(), $redirect_parameter, $backlog_title, $configure_url);
 }
 public function findFirstSubmilestoneTracker(Planning_Milestone $milestone)
 {
     $children = $this->hierarchy_factory->getChildren($milestone->getTrackerId());
     if (!$children) {
         return null;
     }
     $milestone_backlog_trackers = $milestone->getPlanning()->getBacklogTrackers();
     foreach ($milestone_backlog_trackers as $milestone_backlog_tracker) {
         foreach ($children as $tracker) {
             $planning = $this->planning_factory->getPlanningByPlanningTracker($tracker);
             if (!$planning) {
                 continue;
             }
             $planning_backlog_trackers = $planning->getBacklogTrackers();
             foreach ($planning_backlog_trackers as $planning_backlog_tracker) {
                 if ($milestone_backlog_tracker == $planning_backlog_tracker) {
                     return $tracker;
                 }
                 $backlog_tracker_ancestors = $this->hierarchy_factory->getAllParents($planning_backlog_tracker);
                 if (in_array($milestone_backlog_tracker, $backlog_tracker_ancestors)) {
                     return $tracker;
                 }
             }
         }
     }
 }
Пример #3
0
 private function getSwitchDisplayAvatarsURL()
 {
     if ($this->user->isAnonymous()) {
         return false;
     }
     $group_id = $this->milestone->getGroupId();
     $planning_id = $this->milestone->getPlanningId();
     $tracker_id = $this->milestone->getTrackerId();
     $artifact_id = $this->milestone->getArtifactId();
     $action = 'toggle_user_display_avatar';
     $switch_display_username_url = CARDWALL_BASE_URL . '/?group_id=' . $group_id . '&planning_id=' . $planning_id . '&tracker_id=' . $tracker_id . '&aid=' . $artifact_id . '&action=' . $action;
     return $switch_display_username_url;
 }
Пример #4
0
 /**
  * Get the display preferences of a user for a given milestone
  *
  * @param Planning_Milestone $milestone
  * @param PFUser $user
  *
  * @return Cardwall_UserPreferences_UserPreferencesDisplayUser
  */
 public function getDisplayPreferences(Planning_Milestone $milestone, PFUser $user)
 {
     $pref_name = Cardwall_UserPreferences_UserPreferencesDisplayUser::ASSIGNED_TO_USERNAME_PREFERENCE_NAME . $milestone->getTrackerId();
     $display_avatars = $user->isAnonymous() || !$user->getPreference($pref_name);
     return new Cardwall_UserPreferences_UserPreferencesDisplayUser($display_avatars);
 }