Exemple #1
0
 public function get_array_tpl_vars()
 {
     $config = BugtrackerConfig::load();
     $types = $config->get_types();
     $categories = $config->get_categories();
     $severities = $config->get_severities();
     $priorities = $config->get_priorities();
     $versions = $config->get_versions();
     $status_list = $config->get_status_list();
     $lang = LangLoader::get('common', 'bugtracker');
     $user = $this->get_author_user();
     $user_group_color = User::get_group_color($user->get_groups(), $user->get_level(), true);
     $number_comments = CommentsService::get_number_comments('bugtracker', $this->id);
     return array('C_PROGRESS' => $config->is_progress_bar_displayed(), 'C_FIX_DATE' => $this->fix_date != null, 'C_FIXED_IN' => $this->detected_in, 'C_FIXED' => $this->is_fixed(), 'C_PENDING' => $this->is_pending(), 'C_REPRODUCTIBLE' => $this->is_reproductible(), 'C_REPRODUCTION_METHOD' => $this->reproduction_method, 'C_AUTHOR_GROUP_COLOR' => !empty($user_group_color), 'C_AUTHOR_EXIST' => $user->get_id() !== User::VISITOR_LEVEL, 'C_MORE_THAN_ONE_COMMENT' => $number_comments > 1, 'ID' => $this->id, 'TITLE' => $this->title, 'CONTENTS' => FormatingHelper::second_parse($this->contents), 'SUBMIT_DATE_SHORT' => $this->submit_date->format(Date::FORMAT_DAY_MONTH_YEAR), 'SUBMIT_DATE' => $this->submit_date->format(Date::FORMAT_DAY_MONTH_YEAR_HOUR_MINUTE), 'FIX_DATE_SHORT' => $this->fix_date !== null ? $this->fix_date->format(Date::FORMAT_DAY_MONTH_YEAR) : '', 'FIX_DATE' => $this->fix_date !== null ? $this->fix_date->format(Date::FORMAT_DAY_MONTH_YEAR_HOUR_MINUTE) : '', 'TYPE' => isset($types[$this->type]) ? stripslashes($types[$this->type]) : $lang['notice.none'], 'CATEGORY' => isset($categories[$this->category]) ? stripslashes($categories[$this->category]) : $lang['notice.none_e'], 'SEVERITY' => isset($severities[$this->severity]) ? stripslashes($severities[$this->severity]['name']) : $lang['notice.none'], 'PRIORITY' => isset($priorities[$this->priority]) ? stripslashes($priorities[$this->priority]) : $lang['notice.none_e'], 'DETECTED_IN' => isset($versions[$this->detected_in]) ? stripslashes($versions[$this->detected_in]['name']) : $lang['notice.not_defined'], 'FIXED_IN' => isset($versions[$this->fixed_in]) ? stripslashes($versions[$this->fixed_in]['name']) : $lang['notice.not_defined'], 'PROGRESS' => $status_list[$this->status], 'STATUS' => LangLoader::get_message('status.' . $this->status, 'common', 'bugtracker'), 'REPRODUCTION_METHOD' => FormatingHelper::second_parse($this->reproduction_method), 'AUTHOR' => $user->get_display_name(), 'AUTHOR_LEVEL_CLASS' => UserService::get_level_class($user->get_level()), 'AUTHOR_GROUP_COLOR' => $user_group_color, 'NUMBER_COMMENTS' => $number_comments, 'U_AUTHOR_PROFILE' => UserUrlBuilder::profile($user->get_id())->rel(), 'U_LINK' => BugtrackerUrlBuilder::detail($this->id . '-' . $this->rewrited_title)->rel(), 'U_HISTORY' => BugtrackerUrlBuilder::history($this->id)->rel(), 'U_COMMENTS' => BugtrackerUrlBuilder::detail($this->id . '-' . $this->rewrited_title . '#comments-list')->rel());
 }
 private function build_response(View $view)
 {
     $request = AppContext::get_request();
     $page = $request->get_int('page', 1);
     $body_view = BugtrackerViews::build_body_view($view, 'history', $this->bug->get_id());
     $response = new SiteDisplayResponse($body_view);
     $graphical_environment = $response->get_graphical_environment();
     $graphical_environment->set_page_title($this->lang['titles.history'] . ' #' . $this->bug->get_id());
     $graphical_environment->get_seo_meta_data()->set_canonical_url(BugtrackerUrlBuilder::history($this->bug->get_id(), $page));
     $breadcrumb = $graphical_environment->get_breadcrumb();
     $breadcrumb->add($this->lang['module_title'], BugtrackerUrlBuilder::home());
     $breadcrumb->add($this->lang['titles.detail'] . ' #' . $this->bug->get_id(), BugtrackerUrlBuilder::detail($this->bug->get_id() . '-' . $this->bug->get_rewrited_title()));
     $breadcrumb->add($this->lang['titles.history'], BugtrackerUrlBuilder::history($this->bug->get_id(), $page));
     return $response;
 }