function __construct() { $this->table = null; $this->owner = null; $this->item = null; $this->mail_notification_builder = new MailNotificationBuilder(new MailBuilder(TemplateRendererFactory::build())); }
function html_get_timezone_popup($selected = 0) { $GLOBALS['HTML']->includeFooterJavascriptFile('/scripts/jstimezonedetect/jstz.min.js'); $GLOBALS['HTML']->includeFooterJavascriptFile('/scripts/tuleap/timezone.js'); $renderer = TemplateRendererFactory::build()->getRenderer(ForgeConfig::get('codendi_dir') . '/src/templates/account/'); return $renderer->renderToString('timezone', new Account_TimezoneSelectorPresenter($selected)); }
public function __construct(EventManager $event_manager) { $this->event_manager = $event_manager; $this->renderer = TemplateRendererFactory::build()->getRenderer(array(ForgeConfig::get('codendi_dir') . '/src/templates/search')); $this->search_types = array(Search_SearchTrackerV3::NAME => new Search_SearchTrackerV3(new ArtifactDao()), Search_SearchProject::NAME => new Search_SearchProject(new ProjectDao()), Search_SearchPeople::NAME => new Search_SearchPeople(UserManager::instance()), Search_SearchForum::NAME => new Search_SearchForum(new ForumDao()), Search_SearchSnippet::NAME => new Search_SearchSnippet(new SnippetDao()), Search_SearchWiki::NAME => new Search_SearchWiki(new WikiDao())); $this->plugin_manager = PluginManager::instance(); }
/** * @see AgileDashboard_Pane::getContent() */ public function getContent() { $columns = $this->config->getDashboardColumns(); $renderer = TemplateRendererFactory::build()->getRenderer(dirname(__FILE__) . '/../templates'); return $renderer->renderToString('agiledashboard-pane', $this->getPresenterUsingMappedFields($columns)); // TODO what if no semantic status and no mapping???? }
private function displayBody() { $items = $this->data_mapper->fetchAll($this->getProjectFromRequest()); $presenter = new ChooseNewsPresenter($items, $this->request->get('project_id')); $renderer = TemplateRendererFactory::build()->getRenderer(ForgeConfig::get('codendi_dir') . '/src/templates/news/'); $renderer->renderToPage('choose_news', $presenter); }
function send_new_user_email($to, $login, $password, $confirm_hash, $template, $isAdminPresenter) { //needed by new_user_email.txt $base_url = get_server_url(); $defaultTheme = $GLOBALS['sys_themedefault']; $color_logo = "#0000"; $color_button = "#347DBA"; if (themeIsFlamingParrot($defaultTheme)) { $defaultThemeVariant = $GLOBALS['sys_default_theme_variant']; $color_logo = FlamingParrot_Theme::getColorOfCurrentTheme($defaultThemeVariant); $color_button = $color_logo; } $logo_url = $base_url . "/themes/" . $defaultTheme . "/images/organization_logo.png"; $has_logo = file_exists(dirname(__FILE__) . '/../themes/' . $defaultTheme . '/images/organization_logo.png'); if ($isAdminPresenter) { $subject = $GLOBALS['Language']->getText('account_register', 'welcome_email_title', $GLOBALS['sys_name']); include $GLOBALS['Language']->getContent('account/new_account_email'); $presenter = new MailRegisterByAdminPresenter($has_logo, $logo_url, $title, $section_one, $section_two, $section_after_login, $thanks, $signature, $help, $color_logo, $login, $section_three, $section_after_password, $password); } else { $subject = $GLOBALS['Language']->getText('include_proj_email', 'account_register', $GLOBALS['sys_name']); include $GLOBALS['Language']->getContent('include/new_user_email'); $redirect_url = $base_url . "/account/verify.php?confirm_hash={$confirm_hash}"; $presenter = new MailRegisterByUserPresenter($has_logo, $logo_url, $title, $section_one, $section_two, $section_after_login, $thanks, $signature, $help, $color_logo, $login, $redirect_url, $redirect_button, $color_button); } $renderer = TemplateRendererFactory::build()->getRenderer(ForgeConfig::get('codendi_dir') . '/src/templates/mail/'); $mail = initializeMail($subject, $GLOBALS['sys_noreply'], $to, $renderer->renderToString($template, $presenter), $message); return $mail->send(); }
public function __construct(Codendi_Request $request, Tracker_Hierarchy_HierarchicalTracker $tracker, Tracker_Hierarchy_HierarchicalTrackerFactory $factory, Tracker_Hierarchy_Dao $dao) { $this->request = $request; $this->tracker = $tracker; $this->factory = $factory; $this->dao = $dao; $this->renderer = TemplateRendererFactory::build()->getRenderer(dirname(__FILE__) . '/../../../templates'); }
public function index(CSRFSynchronizerToken $csrf, Response $response) { $title = $GLOBALS['Language']->getText('plugin_tracker_config', 'title'); $params = array('title' => $title); $renderer = TemplateRendererFactory::build()->getRenderer(TRACKER_TEMPLATE_DIR); $response->header($params); $renderer->renderToPage(self::$TEMPLATE, new TrackerPluginConfigPresenter($csrf, $title, $this->localincfinder->getLocalIncPath(), $this->config)); $response->footer($params); }
public function site_index(HTTPRequest $request) { $this->assertSiteAdmin($request); $presenter = new MediawikiSiteAdminAllowedProjectsPresenter($this->resource_restrictor->searchAllowedProjects()); $renderer = TemplateRendererFactory::build()->getRenderer(ForgeConfig::get('codendi_dir') . '/src/templates/resource_restrictor'); $GLOBALS['HTML']->header(array('title' => 'Mediawiki', 'selected_top_tab' => 'admin')); $renderer->renderToPage($presenter::TEMPLATE, $presenter); $GLOBALS['HTML']->footer(array()); }
public function __construct(Tracker_Report $report, array $criteria, TreeNode $tree_of_artifacts, Tracker_ArtifactFactory $artifact_factory, Tracker_FormElementFactory $factory, User $user, Planning $planning, $planning_redirect_param) { parent::__construct($report, $criteria, $tree_of_artifacts, $artifact_factory, $factory, $user); $this->planning = $planning; $this->planning_redirect_parameter = $planning_redirect_param; $this->renderer = TemplateRendererFactory::build()->getRenderer(dirname(__FILE__) . '/../../templates'); $card_mapper = new TreeNodeMapper(new Planning_ItemCardPresenterCallback($this->planning, new Tracker_CardFields(), 'planning-draggable-toplan')); $this->tree_of_card_presenters = $card_mapper->map($this->tree_of_artifacts); }
public function getAdminIndex(HTTPRequest $request) { $this->checkAccess($request); $presenter = new SVN_Admin_AllowedProjectsPresenter($this->token_manager->getProjectsAuthorizingTokens(), true); $renderer = TemplateRendererFactory::build()->getRenderer(ForgeConfig::get('codendi_dir') . '/src/templates/resource_restrictor'); $GLOBALS['HTML']->header(array('title' => 'SVN', 'selected_top_tab' => 'admin')); $renderer->renderToPage($presenter::TEMPLATE, $presenter); $GLOBALS['HTML']->footer(array()); }
public function display(Codendi_Request $request) { $title = $GLOBALS['Language']->getText('plugin_git', 'descriptor_name'); $renderer = TemplateRendererFactory::build()->getRenderer(dirname(GIT_BASE_DIR) . '/templates'); $admin_presenter = new Git_AdminGerritPresenter($title, $this->csrf, $this->getListOfGerritServersPresenters()); $GLOBALS['HTML']->header(array('title' => $title, 'selected_top_tab' => 'admin')); $renderer->renderToPage('admin-plugin', $admin_presenter); $GLOBALS['HTML']->footer(array()); }
public function getAdminIndex(HTTPRequest $request) { $this->checkAccess($request); $presenter = new PHPWikiAdminAllowedProjectsPresenter($this->wiki_migrator->searchProjectsUsingPlugin()); $renderer = TemplateRendererFactory::build()->getRenderer(ForgeConfig::get('codendi_dir') . '/src/templates/resource_restrictor'); $GLOBALS['HTML']->header(array('title' => 'PHPWiki', 'selected_top_tab' => 'admin')); $renderer->renderToPage($presenter::TEMPLATE, $presenter); $GLOBALS['HTML']->footer(array()); }
public function __construct(Git_Mirror_MirrorDataMapper $data_mapper, $etc_templates_path) { $this->data_mapper = $data_mapper; $template_dirs = array(); if (is_dir($etc_templates_path)) { $template_dirs[] = $etc_templates_path . '/' . self::TEMPLATES_PATH; } $template_dirs[] = GIT_TEMPLATE_DIR . '/' . self::TEMPLATES_PATH; $this->template_renderer = TemplateRendererFactory::build()->getRenderer($template_dirs); }
public function service_public_areas($params) { if ($params['project']->usesService($this->getServiceShortname())) { $service = $params['project']->getService($this->getServiceShortname()); $wiki = new PHPWiki($params['project']->getID()); $presenter = new WidgetPublicAreaPresenter($service->getUrl(), $GLOBALS['HTML']->getImagePath('ic/wiki.png'), $this->text, $wiki->getProjectPageCount()); $renderer = TemplateRendererFactory::build()->getRenderer(PHPWIKI_TEMPLATE_DIR); $params['areas'][] = $renderer->renderToString('widget_public_area', $presenter); } }
function send_approval_new_user_email($to, $login) { //needed by new_user_email.txt $base_url = get_server_url(); $presenter = new MailPresenterFactory(); $renderer = TemplateRendererFactory::build()->getRenderer(ForgeConfig::get('codendi_dir') . '/src/templates/mail/'); $mail = new TuleapRegisterMail($presenter, $renderer, "mail-admin-approval"); $mail = $mail->getMail($login, '', '', $base_url, $GLOBALS['sys_noreply'], $to, "admin-approval"); return $mail->send(); }
public function index() { $title = $GLOBALS['Language']->getText('admin_main', 'configure_access_controls'); $params = array('title' => $title); $renderer = TemplateRendererFactory::build()->getRenderer($this->getTemplateDir()); $this->response->includeFooterJavascriptFile('/scripts/tuleap/admin-access-mode.js'); $this->response->header($params); $renderer->renderToPage(self::TEMPLATE, new ForgeAccess_AdminPresenter($this->csrf, $title, $this->localincfinder->getLocalIncPath(), ForgeConfig::get(ForgeAccess::CONFIG), count($this->user_dao->searchByStatus(PFUser::STATUS_RESTRICTED)), ForgeConfig::get(User_ForgeUGroup::CONFIG_AUTHENTICATED_LABEL), ForgeConfig::get(User_ForgeUGroup::CONFIG_REGISTERED_LABEL), ForgeConfig::get(ForgeAccess::PROJECT_ADMIN_CAN_CHOOSE_VISIBILITY), ForgeConfig::get(ForgeAccess::REVERSE_PROXY_REGEXP))); $this->response->footer($params); }
public function index() { $title = $GLOBALS['Language']->getText('admin_main', 'configure_homepage'); $params = array('title' => $title); $renderer = TemplateRendererFactory::build()->getRenderer($this->getTemplateDir()); $headlines = $this->getHeadlines(); $this->response->includeFooterJavascriptFile('/scripts/tuleap/admin-homepage.js'); $this->response->header($params); $renderer->renderToPage(self::TEMPLATE, new Admin_Homepage_Presenter($this->csrf, $title, $this->dao->isStandardHomepageUsed(), $headlines)); $this->response->footer($params); }
/** * @param Renderer The renderer wich contains the chart * @param int The id of the chart * @param int The rank of the chart * @param string The title of the chart * @param string The description of the chart * @param int The width of the chart * @param int The height of the chart */ public function __construct($renderer, $id, $rank, $title, $description, $width, $height) { $this->renderer = $renderer; $this->id = $id; $this->rank = $rank; $this->title = $title; $this->description = $description; $this->width = $width; $this->height = $height; $this->mustache_renderer = TemplateRendererFactory::build()->getRenderer(GRAPH_ON_TRACKER_V5_TEMPLATE_DIR); }
public function __construct(Codendi_Request $request) { $this->request = $request; $this->renderer = TemplateRendererFactory::build()->getRenderer($this->getTemplatesDir()); $permissions_dao = new User_ForgeUserGroupPermissionsDao(); $this->user_group_permissions_factory = new User_ForgeUserGroupPermissionsFactory($permissions_dao); $this->user_group_permissions_manager = new User_ForgeUserGroupPermissionsManager($permissions_dao); $user_group_dao = new UserGroupDao(); $this->user_group_factory = new User_ForgeUserGroupFactory($user_group_dao); $this->user_group_manager = new User_ForgeUserGroupManager($user_group_dao); $user_group_users_dao = new User_ForgeUserGroupUsersDao(); $this->user_group_users_factory = new User_ForgeUserGroupUsersFactory($user_group_users_dao); $this->user_group_users_manager = new User_ForgeUserGroupUsersManager($user_group_users_dao); }
public function process(TrackerManager $engine, Codendi_Request $request, PFUser $current_user) { $workflow_factory = WorkflowFactory::instance(); if ($request->get('func') == Workflow::FUNC_ADMIN_RULES) { $token = new CSRFSynchronizerToken(TRACKER_BASE_URL . '/?' . http_build_query(array('tracker' => (int) $this->tracker->id, 'func' => Workflow::FUNC_ADMIN_RULES))); $rule_date_factory = new Tracker_Rule_Date_Factory(new Tracker_Rule_Date_Dao(), Tracker_FormElementFactory::instance()); $action = new Tracker_Workflow_Action_Rules_EditRules($this->tracker, $rule_date_factory, $token); } elseif ($request->get('func') == Workflow::FUNC_ADMIN_CROSS_TRACKER_TRIGGERS) { $token = new CSRFSynchronizerToken(TRACKER_BASE_URL . '/?' . http_build_query(array('tracker' => (int) $this->tracker->id, 'func' => Workflow::FUNC_ADMIN_CROSS_TRACKER_TRIGGERS))); $renderer = TemplateRendererFactory::build()->getRenderer(TRACKER_BASE_DIR . '/../templates'); $action = new Tracker_Workflow_Action_Triggers_EditTriggers($this->tracker, $token, $renderer, $workflow_factory->getTriggerRulesManager()); } else { if ($request->get('func') == Workflow::FUNC_ADMIN_GET_TRIGGERS_RULES_BUILDER_DATA) { $action = new Tracker_Workflow_Action_Triggers_GetTriggersRulesBuilderData($this->tracker, Tracker_FormElementFactory::instance()); } else { if ($request->get('func') == Workflow::FUNC_ADMIN_ADD_TRIGGER) { $action = new Tracker_Workflow_Action_Triggers_AddTrigger($this->tracker, Tracker_FormElementFactory::instance(), $workflow_factory->getTriggerRulesManager()); } else { if ($request->get('func') == Workflow::FUNC_ADMIN_DELETE_TRIGGER) { $action = new Tracker_Workflow_Action_Triggers_DeleteTrigger($this->tracker, $workflow_factory->getTriggerRulesManager()); } else { if ($request->get('create')) { $action = new Tracker_Workflow_Action_Transitions_Create($this->tracker, $workflow_factory); } else { if ($request->get('edit_transition')) { $action = new Tracker_Workflow_Action_Transitions_EditTransition($this->tracker, TransitionFactory::instance(), new Transition_PostActionFactory()); } else { if ($request->get('delete')) { $action = new Tracker_Workflow_Action_Transitions_Delete($this->tracker, $workflow_factory); } else { if ($request->get('transitions')) { $action = new Tracker_Workflow_Action_Transitions_CreateMatrix($this->tracker, $workflow_factory, Tracker_FormElementFactory::instance()); } else { if ($request->get('workflow_details')) { $action = new Tracker_Workflow_Action_Transitions_Details($this->tracker, TransitionFactory::instance()); } else { $action = new Tracker_Workflow_Action_Transitions_DefineWorkflow($this->tracker, WorkflowFactory::instance(), Tracker_FormElementFactory::instance()); } } } } } } } } } $action->process($engine, $request, $current_user); }
function getContent() { $request =& HTTPRequest::instance(); $group_id = $request->get('group_id'); $pm = ProjectManager::instance(); $project = $pm->getProject($group_id); $token = new CSRFSynchronizerToken(''); $presenter = new MassmailFormPresenter($token, $GLOBALS['Language']->getText('contact_admins', 'title', array($project->getPublicName())), '/include/massmail_to_project_admins.php'); $template_factory = TemplateRendererFactory::build(); $renderer = $template_factory->getRenderer($presenter->getTemplateDir()); echo '<a href="#massmail-project-members" data-project-id="' . $group_id . '" class="massmail-project-member-link project_home_contact_admins" data-toggle="modal"> <i class="icon-envelope-alt"></i> ' . $GLOBALS['Language']->getText('include_project_home', 'contact_admins') . '</a>'; echo $renderer->renderToString('massmail', $presenter); }
public function process(Codendi_Request $request) { switch ($request->get('action')) { case 'provide_datas': header('Content-type : text/csv'); echo file_get_contents($this->getCacheFolder() . 'data.csv'); break; case 'beacon': $this->processBoomerangDatas($request); break; default: require_once 'common/templating/TemplateRendererFactory.class.php'; $header_params = array('title' => 'Boomerang'); site_header($header_params); $renderer = TemplateRendererFactory::build()->getRenderer(BOOMERANG_BASE_DIR . '/../templates'); $presenter = new PerfDataPresenter(); $renderer->renderToPage('perf-data', $presenter); site_footer(null); break; } }
private function getPaneContent($template) { $event_manager = EventManager::instance(); $columns = $this->config->getDashboardColumns(); $renderer = TemplateRendererFactory::build()->getRenderer(dirname(__FILE__) . '/../templates'); $html = $renderer->renderToString($template, $this->getPresenterUsingMappedFields($columns)); // TODO what if no semantic status and no mapping???? $event_manager->processEvent(CARDWALL_EVENT_DISPLAYED, array('html' => &$html)); return $html; }
/** * Send a notification * * @param array $recipients the list of recipients * @param array $headers the additional headers * @param string $from the mail of the sender * @param string $subject the subject of the message * @param string $htmlBody the html content of the message * @param string $txtBody the text content of the message * @param string $message_id the id of the message * * @return void */ protected function sendNotification($recipients, $headers, $from, $subject, $htmlBody, $txtBody, $message_id) { $hp = Codendi_HTMLPurifier::instance(); $breadcrumbs = array(); $tracker = $this->getTracker(); $project = $tracker->getProject(); $artifactId = $this->getArtifact()->getID(); $project_unix_name = $project->getUnixName(true); $tracker_name = $tracker->getItemName(); $mail_enhancer = new MailEnhancer(); if ($message_id) { $mail_enhancer->setMessageId($message_id); } $breadcrumbs[] = '<a href="' . get_server_url() . '/projects/' . $project_unix_name . '" />' . $project->getPublicName() . '</a>'; $breadcrumbs[] = '<a href="' . get_server_url() . '/plugins/tracker/?tracker=' . (int) $tracker->getId() . '" />' . $hp->purify($this->getTracker()->getName()) . '</a>'; $breadcrumbs[] = '<a href="' . get_server_url() . '/plugins/tracker/?aid=' . (int) $artifactId . '" />' . $hp->purify($this->getTracker()->getName() . ' #' . $artifactId) . '</a>'; $mail_enhancer->addPropertiesToLookAndFeel('breadcrumbs', $breadcrumbs); $mail_enhancer->addPropertiesToLookAndFeel('unsubscribe_link', $this->getUnsubscribeLink()); $mail_enhancer->addPropertiesToLookAndFeel('title', $hp->purify($subject)); $mail_enhancer->addHeader("X-Codendi-Project", $project->getUnixName()); $mail_enhancer->addHeader("X-Codendi-Tracker", $tracker_name); $mail_enhancer->addHeader("X-Codendi-Artifact-ID", $this->artifact->getId()); $mail_enhancer->addHeader('From', $from); foreach ($headers as $header) { $mail_enhancer->addHeader($header['name'], $header['value']); } if ($htmlBody) { $htmlBody .= $this->getHTMLBodyFilter($project_unix_name, $tracker_name); } $txtBody .= $this->getTextBodyFilter($project_unix_name, $tracker_name); $mail_notification_builder = new MailNotificationBuilder(new MailBuilder(TemplateRendererFactory::build())); $mail_notification_builder->buildAndSendEmail($project, $recipients, $subject, $htmlBody, $txtBody, get_server_url() . $this->getUri(), trackerPlugin::TRUNCATED_SERVICE_NAME, $mail_enhancer); }
/** * @return MustacheRenderer */ private function getMustacheRenderer() { return TemplateRendererFactory::build()->getRenderer(dirname(TRACKER_BASE_DIR) . '/templates'); }
} else { $GLOBALS['Response']->addFeedback('info', $Language->getText('project_admin_editgroupinfo', 'upd_success')); } } $project_manager->clearProjectFromCache($currentproject->getID()); $currentproject = $project_manager->getProject($currentproject->getID()); // update info for page $res_grp = db_query("SELECT * FROM groups WHERE group_id='" . db_ei($group_id) . "'"); if (db_numrows($res_grp) < 1) { exit_no_group(); } $row_grp = db_fetch_array($res_grp); $descfieldsvalue = $currentproject->getProjectsDescFieldsValue(); project_admin_header(array('title' => $Language->getText('project_admin_editgroupinfo', 'editing_g_info'), 'group' => $group_id, 'help' => 'project-admin.html#project-public-information')); echo '<FORM action="?group_id=' . $group_id . '" method="post" id="project_info_form">'; $renderer = TemplateRendererFactory::build()->getRenderer(ForgeConfig::get('codendi_dir') . '/src/templates/project/'); if ($user_can_choose_visibility) { $presenter = new ProjectVisibilityPresenter($Language, ForgeConfig::areRestrictedUsersAllowed(), $currentproject->getAccess()); echo $renderer->renderToString('project_visibility', $presenter); } if ($user_can_choose_truncated_emails) { $truncated_mails_impacted_services = array(); $file_service = $currentproject->getService(Service::FILE); if ($file_service) { $truncated_mails_impacted_services[] = $file_service->getInternationalizedName(); } $svn_service = $currentproject->getService(Service::SVN); if ($svn_service) { $truncated_mails_impacted_services[] = $svn_service->getInternationalizedName(); } $presenter = new ProjectTruncatedEmailsPresenter($currentproject, $truncated_mails_impacted_services);
public function displayStandardHomepage($display_homepage_news) { $dao = new Admin_Homepage_Dao(); $current_user = UserManager::instance()->getCurrentUser(); $project_dao = new UserDao(); $nb_users = $project_dao->countActiveAndRestrictedUsers(); $project_dao = new ProjectDao(); $nb_projects = $project_dao->countActiveProjects(); $most_secure_url = ''; if (ForgeConfig::get('sys_https_host')) { $most_secure_url = 'https://' . ForgeConfig::get('sys_https_host'); } $login_presenter_builder = new User_LoginPresenterBuilder(); $login_presenter = $login_presenter_builder->buildForHomepage(); $headline = $dao->getHeadlineByLanguage($current_user->getLocale()); $news_bytes_dao = new NewsBytesDao(); $news = false; if ($display_homepage_news && $news_bytes_dao->isThereNewsToDisplayInHomepage()) { $news = news_show_latest($GLOBALS['sys_news_group'], 2, true, false, true, 0); } $awesomeness = file_get_contents($GLOBALS['Language']->getContent('homepage/awesomeness', null, null, '.html')); $templates_dir = ForgeConfig::get('codendi_dir') . '/src/templates/homepage/'; $renderer = TemplateRendererFactory::build()->getRenderer($templates_dir); $presenter = new FlamingParrot_HomepagePresenter($headline, $nb_projects, $nb_users, $most_secure_url, $login_presenter, $display_homepage_news, $news, $current_user, $awesomeness); $renderer->renderToPage('homepage', $presenter); }
protected function render($navigator, $results) { $presenter = new TestsPluginRunnerPresenter($this->request, $navigator, $results); $template = 'testsPluginRunner' . strtoupper($this->request->getDisplay()); $renderer = TemplateRendererFactory::build()->getRenderer(dirname(__FILE__) . '/../templates'); $renderer->renderToPage($template, $presenter); $this->renderDone = true; }
$is_default = $theme === $GLOBALS['sys_themedefault']; $is_selected = $is_default; if ($user->getTheme()) { $is_selected = $theme === $user->getTheme(); } $all_themes[] = array('theme_name' => $theme, 'is_selected' => $is_selected, 'is_default' => $is_default); } $languages_html = array(); foreach ($GLOBALS['Language']->getLanguages() as $code => $lang) { $languages_html[] = array('lang' => $lang, 'code' => $code, 'is_selected' => $user->getLocale() === $code); } $user_helper_preferences = array(array('preference_name' => UserHelper::PREFERENCES_NAME_AND_LOGIN, 'preference_label' => $Language->getText('account_options', 'tuleap_name_and_login'), 'is_selected' => (int) user_get_preference("username_display") === UserHelper::PREFERENCES_NAME_AND_LOGIN), array('preference_name' => UserHelper::PREFERENCES_LOGIN_AND_NAME, 'preference_label' => $Language->getText('account_options', 'tuleap_login_and_name'), 'is_selected' => (int) user_get_preference("username_display") === UserHelper::PREFERENCES_LOGIN_AND_NAME), array('preference_name' => UserHelper::PREFERENCES_LOGIN, 'preference_label' => $Language->getText('account_options', 'tuleap_login'), 'is_selected' => (int) user_get_preference("username_display") === UserHelper::PREFERENCES_LOGIN), array('preference_name' => UserHelper::PREFERENCES_REAL_NAME, 'preference_label' => $Language->getText('account_options', 'real_name'), 'is_selected' => (int) user_get_preference("username_display") === UserHelper::PREFERENCES_REAL_NAME)); $plugins_prefs = array(); $em->processEvent('user_preferences_appearance', array('preferences' => &$plugins_prefs)); $all_csv_separator = array(); foreach (PFUser::$csv_separators as $separator) { $all_csv_separator[] = array('separator_name' => $separator, 'separator_label' => $Language->getText('account_options', $separator), 'is_selected' => $separator === user_get_preference("user_csv_separator")); } $all_csv_dateformat = array(); foreach (PFUser::$csv_dateformats as $dateformat) { $all_csv_dateformat[] = array('dateformat_name' => $dateformat, 'dateformat_label' => $Language->getText('account_preferences', $dateformat), 'is_selected' => $dateformat === user_get_preference("user_csv_dateformat")); } $user_access_info = $um->getUserAccessInfo($user); if (!$user_access_info) { $user_access_info = array('last_auth_success' => false, 'last_auth_failure' => false, 'nb_auth_failure' => false, 'prev_auth_success' => false); } $presenter = new User_PreferencesPresenter($user, $can_change_realname, $can_change_email, $can_change_password, $extra_user_info, $user_access_info, $ssh_keys_extra_html, $third_paty_html, $csrf->fetchHTMLInput(), $tracker_formats, $all_themes, $languages_html, $user_helper_preferences, $plugins_prefs, $all_csv_separator, $all_csv_dateformat); $HTML->header(array('title' => $Language->getText('account_options', 'title'), 'body_class' => array('account-maintenance'))); $renderer = TemplateRendererFactory::build()->getRenderer(dirname(__FILE__) . '/../../templates/user'); $renderer->renderToPage('account-maintenance', $presenter); $HTML->footer(array());