本文整理汇总了PHP中Template::get_template方法的典型用法代码示例。如果您正苦于以下问题:PHP Template::get_template方法的具体用法?PHP Template::get_template怎么用?PHP Template::get_template使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Template
的用法示例。
在下文中一共展示了Template::get_template方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getSkillBlock
/**
* Get HTML code block for user skills
* @param int $userId The user ID
* @return string
*/
public static function getSkillBlock($userId)
{
if (api_get_setting('allow_skills_tool') !== 'true') {
return null;
}
$skill = new Skill();
$ranking = $skill->get_user_skill_ranking($userId);
$skills = $skill->get_user_skills($userId, true);
$template = new Template(null, false, false, false, false, false);
$template->assign('ranking', $ranking);
$template->assign('skills', $skills);
$template->assign('show_skills_report_link', api_is_student() || api_is_student_boss() || api_is_drh());
$skillBlock = $template->get_template('social/skills_block.tpl');
return $template->fetch($skillBlock);
}
示例2: sendResetEmail
/**
* @param User $user
*/
public static function sendResetEmail(User $user)
{
//if (null === $user->getConfirmationToken()) {
$uniqueId = api_get_unique_id();
$user->setConfirmationToken($uniqueId);
$user->setPasswordRequestedAt(new \DateTime());
Database::getManager()->persist($user);
Database::getManager()->flush();
$url = api_get_path(WEB_CODE_PATH) . 'auth/reset.php?token=' . $uniqueId;
$mailTemplate = new Template(null, false, false, false, false, false);
$mailTemplate->assign('complete_user_name', $user->getCompleteName());
$mailTemplate->assign('link', $url);
$mailLayout = $mailTemplate->get_template('mail/reset_password.tpl');
$mailSubject = get_lang('ResetPasswordInstructions');
$mailBody = $mailTemplate->fetch($mailLayout);
api_mail_html($user->getCompleteName(), $user->getEmail(), $mailSubject, $mailBody);
Display::addFlash(Display::return_message(get_lang('CheckYourEmailAndFollowInstructions')));
//}
}
示例3: FormValidator
$extraContentForm = new FormValidator('block_extra_data', 'post', '#', null, array('id' => 'block-extra-data', 'class' => ''), FormValidator::LAYOUT_BOX_NO_LABEL);
$extraContentFormRenderer = $extraContentForm->getDefaultRenderer();
if ($extraContentForm->validate()) {
$extraData = $extraContentForm->getSubmitValues();
$extraData = array_map(['Security', 'remove_XSS'], $extraData);
if (!empty($extraData['block'])) {
if (!is_dir($adminExtraContentDir)) {
mkdir($adminExtraContentDir, api_get_permissions_for_new_directories(), true);
}
if (!is_writable($adminExtraContentDir)) {
die;
}
$fullFilePath = $adminExtraContentDir . $extraData['block'];
$fullFilePath .= "_extra.html";
file_put_contents($fullFilePath, $extraData['extra_content']);
Header::location(api_get_self());
}
}
$extraContentForm->addTextarea('extra_content', null, ['id' => 'extra_content']);
$extraContentFormRenderer->setElementTemplate('<div class="form-group">{element}</div>', 'extra_content');
$extraContentForm->addElement('hidden', 'block', null, array('id' => 'extra-block'));
$extraContentForm->addButtonExport(get_lang('Save'), 'submit_extra_content');
$tpl->assign('extraDataForm', $extraContentForm->returnForm());
}
// The template contains the call to the AJAX version checker
$admin_template = $tpl->get_template('admin/settings_index.tpl');
$content = $tpl->fetch($admin_template);
$tpl->assign('content', $content);
$tpl->assign('message', $message);
$tpl->display_one_col_template();
// Note: version checking mechanism has now been moved to main/inc/ajax/admin.ajax.php
示例4: api_mail_html
//.........这里部分代码省略.........
$senderEmail = $platform_email['SMTP_FROM_EMAIL'];
}
$mail->SetFrom($senderEmail, $senderName);
$mail->Subject = $subject;
$mail->AltBody = strip_tags(str_replace('<br />', "\n", api_html_entity_decode($message)));
// Send embedded image.
if ($embedded_image) {
// Get all images html inside content.
preg_match_all("/<img\\s+.*?src=[\"\\']?([^\"\\' >]*)[\"\\']?[^>]*>/i", $message, $m);
// Prepare new tag images.
$new_images_html = array();
$i = 1;
if (!empty($m[1])) {
foreach ($m[1] as $image_path) {
$real_path = realpath($image_path);
$filename = basename($image_path);
$image_cid = $filename . '_' . $i;
$encoding = 'base64';
$image_type = mime_content_type($real_path);
$mail->AddEmbeddedImage($real_path, $image_cid, $filename, $encoding, $image_type);
$new_images_html[] = '<img src="cid:' . $image_cid . '" />';
$i++;
}
}
// Replace origin image for new embedded image html.
$x = 0;
if (!empty($m[0])) {
foreach ($m[0] as $orig_img) {
$message = str_replace($orig_img, $new_images_html[$x], $message);
$x++;
}
}
}
$message = str_replace(array("\n\r", "\n", "\r"), '<br />', $message);
$mailView = new Template(null, false, false, false, false, false, false);
$mailView->assign('content', $message);
$link = $additionalParameters['link'];
$mailView->assign('link', $link);
$layout = $mailView->get_template('mail/mail.tpl');
$mail->Body = $mailView->fetch($layout);
// Attachment ...
if (!empty($data_file)) {
$mail->AddAttachment($data_file['path'], $data_file['filename']);
}
// Only valid addresses are accepted.
if (is_array($recipient_email)) {
foreach ($recipient_email as $dest) {
if (api_valid_email($dest)) {
$mail->AddAddress($dest, $recipient_name);
}
}
} else {
if (api_valid_email($recipient_email)) {
$mail->AddAddress($recipient_email, $recipient_name);
} else {
return 0;
}
}
if (is_array($extra_headers) && count($extra_headers) > 0) {
foreach ($extra_headers as $key => $value) {
switch (strtolower($key)) {
case 'encoding':
case 'content-transfer-encoding':
$mail->Encoding = $value;
break;
case 'charset':
$mail->Charset = $value;
break;
case 'contenttype':
case 'content-type':
$mail->ContentType = $value;
break;
default:
$mail->AddCustomHeader($key . ':' . $value);
break;
}
}
} else {
if (!empty($extra_headers)) {
$mail->AddCustomHeader($extra_headers);
}
}
// WordWrap the html body (phpMailer only fixes AltBody) FS#2988
$mail->Body = $mail->WrapText($mail->Body, $mail->WordWrap);
// Send the mail message.
if (!$mail->Send()) {
error_log('ERROR: mail not sent to ' . $recipient_name . ' (' . $recipient_email . ') because of ' . $mail->ErrorInfo . '<br />');
return 0;
}
if (!empty($additionalParameters)) {
$plugin = new AppPlugin();
$smsPlugin = $plugin->getSMSPluginLibrary();
if ($smsPlugin) {
$smsPlugin->send($additionalParameters);
}
}
// Clear all the addresses.
$mail->ClearAddresses();
return 1;
}
示例5: while
function parse_includes()
{
$template = $this->get_template();
if (strpos($template, '{INCLUDE ') === false) {
return;
}
$offset = 0;
$y = 0;
while (($begin = strpos($template, '{INCLUDE ', $offset)) !== false) {
$y++;
$start = $begin + 9;
$offset = $start;
$long = 0;
if ($template[$start] == '"') {
$long = 1;
$start++;
}
$file = '';
$skip = 0;
for ($x = $start; $x < strlen($template); $x++) {
if ($template[$x] == "\n" || $template[$x] == "\r") {
$skip = 1;
break;
} elseif ($long == 0 && $template[$x] == ' ') {
$skip = 1;
break;
} elseif ($long == 1 && $template[$x] == '"') {
if ($template[$x + 1] != '}') {
$skip = 1;
}
break;
} elseif ($long == 0 && $template[$x] == '}') {
break;
} else {
$file .= $template[$x];
}
}
if ($skip == 1) {
continue;
}
if ($file != '') {
$filepath = $file;
$is_absolute = strtoupper(substr(PHP_OS, 0, 3)) === 'WIN' ? preg_match('!^([a-z]:)?/!i', $file) : preg_match('!^/!', $file);
if (!$is_absolute) {
if (!empty($this->file)) {
$dir = dirname($this->file);
} else {
$dir = '.';
}
$dir = str_replace('\\', '/', $dir);
if (!preg_match('!/+$!', $dir)) {
$dir .= '/';
}
$filepath = $dir . $file;
}
if (is_file($filepath)) {
$inc = new Template();
$inc->read_file($filepath);
$end = $long == 1 ? $start + strlen($file) + 2 : $start + strlen($file) + 1;
$pre = substr($template, 0, $begin);
$post = substr($template, $end);
$template = $pre . $inc->get_template() . $post;
$offset = strlen($pre) + strlen($inc->get_template());
unset($inc);
}
}
}
$this->set_template($template);
}
示例6: displayTrackingAccessOverView
public static function displayTrackingAccessOverView($courseId, $sessionId, $studentId)
{
$courseId = intval($courseId);
$sessionId = intval($sessionId);
$studentId = intval($studentId);
$em = Database::getManager();
$sessionRepo = $em->getRepository('ChamiloCoreBundle:Session');
$courseList = [];
$sessionList = [];
$studentList = [];
if (!empty($courseId)) {
$course = $em->find('ChamiloCoreBundle:Course', $courseId);
$courseList[$course->getId()] = $course->getTitle();
}
if (!empty($sessionId)) {
$session = $em->find('ChamiloCoreBundle:Session', $sessionId);
$sessionList[$session->getId()] = $session->getName();
}
if (!empty($studentId)) {
$student = $em->find('ChamiloUserBundle:User', $studentId);
$studentList[$student->getId()] = $student->getCompleteName();
}
$form = new FormValidator('access_overview', 'GET');
$form->addElement('select_ajax', 'course_id', get_lang('SearchCourse'), $courseList, ['url' => api_get_path(WEB_AJAX_PATH) . 'course.ajax.php?' . http_build_query(['a' => 'search_course_by_session_all', 'session_id' => $sessionId])]);
$form->addElement('select_ajax', 'session_id', get_lang('SearchSession'), $sessionList, ['url_function' => "\n function () {\n var params = \$.param({\n a: 'search_session_by_course',\n course_id: \$('#course_id').val() || 0\n });\n\n return '" . api_get_path(WEB_AJAX_PATH) . "session.ajax.php?' + params;\n }\n "]);
$form->addSelect('profile', get_lang('Profile'), ['' => get_lang('Select'), STUDENT => get_lang('Student'), COURSEMANAGER => get_lang('CourseManager'), DRH => get_lang('Drh')], ['id' => 'profile']);
$form->addElement('select_ajax', 'student_id', get_lang('SearchUsers'), $studentList, ['placeholder' => get_lang('All'), 'url_function' => "\n function () {\n var params = \$.param({\n a: 'search_user_by_course',\n session_id: \$('#session_id').val(),\n course_id: \$('#course_id').val()\n });\n\n return '" . api_get_path(WEB_AJAX_PATH) . "course.ajax.php?' + params;\n }\n "]);
$form->addDateRangePicker('date', get_lang('DateRange'), true, ['id' => 'date_range', 'format' => 'YYYY-MM-DD', 'timePicker' => 'false', 'validate_format' => 'Y-m-d']);
$form->addHidden('display', 'accessoverview');
$form->addRule('course_id', get_lang('Required'), 'required');
$form->addRule('profile', get_lang('Required'), 'required');
$form->addButton('submit', get_lang('Generate'), 'gear', 'primary');
$table = null;
if ($form->validate()) {
$table = new SortableTable('tracking_access_overview', ['MySpace', 'getNumberOfRrackingAccessOverview'], ['MySpace', 'getUserDataAccessTrackingOverview'], 0);
$table->additional_parameters = $form->exportValues();
$table->set_header(0, get_lang('LoginDate'), true);
$table->set_header(1, get_lang('Username'), true);
if (api_is_western_name_order()) {
$table->set_header(2, get_lang('FirstName'), true);
$table->set_header(3, get_lang('LastName'), true);
} else {
$table->set_header(2, get_lang('LastName'), true);
$table->set_header(3, get_lang('FirstName'), true);
}
$table->set_header(4, get_lang('Clicks'), false);
$table->set_header(5, get_lang('IP'), false);
$table->set_header(6, get_lang('TimeLoggedIn'), false);
}
$template = new Template(null, false, false, false, false, false, false);
$template->assign('form', $form->returnForm());
$template->assign('table', $table ? $table->return_table() : null);
echo $template->fetch($template->get_template('my_space/accessoverview.tpl'));
}
示例7: array
$tpl->assign('text_after_registration', $text_after_registration);
$tpl->assign('hide_header', $hideHeaders);
$inscription = $tpl->get_template('auth/inscription.tpl');
$tpl->display($inscription);
}
} else {
// Custom pages
if (CustomPages::enabled()) {
CustomPages::display(CustomPages::REGISTRATION, array('form' => $form));
} else {
if (!api_is_anonymous()) {
// Saving user to course if it was set.
if (!empty($course_code_redirect)) {
$course_info = api_get_course_info($course_code_redirect);
if (!empty($course_info)) {
if (in_array($course_info['visibility'], array(COURSE_VISIBILITY_OPEN_PLATFORM, COURSE_VISIBILITY_OPEN_WORLD))) {
CourseManager::subscribe_user($user_id, $course_info['code']);
}
}
}
CourseManager::redirectToCourse([]);
}
$tpl = new Template($tool_name);
$tpl->assign('inscription_header', Display::page_header($tool_name));
$tpl->assign('inscription_content', $content);
$tpl->assign('form', $form->returnForm());
$tpl->assign('hide_header', $hideHeaders);
$inscription = $tpl->get_template('auth/inscription.tpl');
$tpl->display($inscription);
}
}
示例8: header
<?php
/* For licensing terms, see /license.txt */
/**
* Show information about OpenBadge citeria
* @author Angel Fernando Quiroz Campos <angel.quiroz@beeznest.com>
* @package chamilo.badge
*/
require_once '../inc/global.inc.php';
$entityManager = Database::getManager();
$skill = $entityManager->find('ChamiloCoreBundle:Skill', $_GET['id']);
if (!$skill) {
Display::addFlash(Display::return_message(get_lang('SkillNotFound'), 'error'));
header('Location: ' . api_get_path(WEB_PATH));
exit;
}
$skillInfo = ['name' => $skill->getName(), 'short_code' => $skill->getShortCode(), 'description' => $skill->getDescription(), 'criteria' => $skill->getCriteria(), 'badge_image' => $skill->getWebIconPath()];
$template = new Template();
$template->assign('skill_info', $skillInfo);
$content = $template->fetch($template->get_template('skill/criteria.tpl'));
$template->assign('content', $content);
$template->display_one_col_template();
示例9: DateTime
$form->addRule('comment', get_lang('ThisFieldIsRequired'), 'required');
$form->addSelect('value', [get_lang('Value'), get_lang('RateTheSkillInPractice')], ['-', 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]);
$form->addHidden('user', $skillIssue->getUser()->getId());
$form->addHidden('issue', $skillIssue->getId());
$form->addButtonSend(get_lang('Send'));
if ($form->validate() && $allowComment) {
$values = $form->exportValues();
$skillUserComment = new Chamilo\CoreBundle\Entity\SkillRelUserComment();
$skillUserComment->setFeedbackDateTime(new DateTime())->setFeedbackGiver($currentUser)->setFeedbackText($values['comment'])->setFeedbackValue($values['value'] ? $values['value'] : null)->setSkillRelUser($skillIssue);
$entityManager->persist($skillUserComment);
$entityManager->flush();
header("Location: " . $skillIssue->getIssueUrl());
exit;
}
if ($allowExport) {
$backpack = 'https://backpack.openbadges.org/';
$configBackpack = api_get_setting('openbadges_backpack');
if (strcmp($backpack, $configBackpack) !== 0) {
$backpack = $configBackpack;
}
$htmlHeadXtra[] = '<script src="' . $backpack . 'issuer.js"></script>';
}
$template = new Template(get_lang('IssuedBadgeInformation'));
$template->assign('issue_info', $skillIssueInfo);
$template->assign('allow_comment', $allowComment);
$template->assign('allow_export', $allowExport);
$template->assign('comment_form', $form->returnForm());
$content = $template->fetch($template->get_template('skill/issued.tpl'));
$template->assign('header', get_lang('IssuedBadgeInformation'));
$template->assign('content', $content);
$template->display_one_col_template();
示例10: implode
$userListToShow .= $table->toHtml();
}
/** @var SequenceRepository $repo */
$repo = Database::getManager()->getRepository('ChamiloCoreBundle:SequenceResource');
$requirementAndDependencies = $repo->getRequirementAndDependencies($sessionId, SequenceResource::SESSION_TYPE);
$requirements = '';
if (!empty($requirementAndDependencies['requirements'])) {
$requirements = Display::page_subheader(get_lang('Requirements'));
$requirements .= implode(' + ', array_column($requirementAndDependencies['requirements'], 'admin_link'));
}
$dependencies = '';
if (!empty($requirementAndDependencies['dependencies'])) {
$dependencies = Display::page_subheader(get_lang('Dependencies'));
$dependencies .= implode(', ', array_column($requirementAndDependencies['dependencies'], 'admin_link'));
}
$tpl = new Template(get_lang('Session'));
$tpl->assign('session_header', $sessionHeader);
$tpl->assign('title', $sessionTitle);
$tpl->assign('general_coach', $generalCoach);
$tpl->assign('session', $sessionInfo);
$tpl->assign('session_category', is_null($sessionCategory) ? null : $sessionCategory->getName());
$tpl->assign('session_dates', SessionManager::parseSessionDates($sessionInfo));
$tpl->assign('session_visibility', SessionManager::getSessionVisibility($sessionInfo));
$tpl->assign('url_list', $urlList);
$tpl->assign('extra_fields', $extraFieldData);
$tpl->assign('course_list', $courseListToShow);
$tpl->assign('user_list', $userListToShow);
$tpl->assign('dependencies', $dependencies);
$tpl->assign('requirements', $requirements);
$layout = $tpl->get_template('session/resume_session.tpl');
$tpl->display($layout);
示例11: Template
if (!empty($selectedGroupChoices)) {
$defaults['groups'] = $selectedGroupChoices;
}
$form->setDefaults($defaults);
$tpl = new Template();
$currentUser = $em->getRepository('ChamiloUserBundle:User')->find(api_get_user_id());
if ($form->validate()) {
$values = $form->getSubmitValues();
// Subscribing users
$users = isset($values['users']) ? $values['users'] : [];
$userForm = isset($values['user_form']) ? $values['user_form'] : [];
if (!empty($userForm)) {
$em->getRepository('ChamiloCourseBundle:CItemProperty')->subscribeUsersToItem($currentUser, 'learnpath', $course, $session, $lpId, $users);
Display::addFlash(Display::return_message(get_lang('Updated')));
}
// Subscribing groups
$groups = isset($values['groups']) ? $values['groups'] : [];
$groupForm = isset($values['group_form']) ? $values['group_form'] : [];
if (!empty($groupForm)) {
$em->getRepository('ChamiloCourseBundle:CItemProperty')->subscribeGroupsToItem($currentUser, 'learnpath', $course, $session, $lpId, $groups);
Display::addFlash(Display::return_message(get_lang('Updated')));
}
header("Location: {$url}");
exit;
} else {
$headers = [get_lang('SubscribeUsersToLp'), get_lang('SubscribeGroupsToLp')];
$tabs = Display::tabs($headers, [$formUsers->toHtml(), $form->toHtml()]);
$tpl->assign('tabs', $tabs);
}
$layout = $tpl->get_template('learnpath/subscribe_users.tpl');
$tpl->display($layout);
示例12: Template
exit;
}
$htmlHeadXtra[] = to_javascript_work();
$tpl = new Template();
$content = null;
if (!empty($work_id)) {
if ($is_allowed_to_edit) {
if (api_resource_is_locked_by_gradebook($work_id, LINK_STUDENTPUBLICATION)) {
echo Display::display_warning_message(get_lang('ResourceLockedByGradebook'));
} else {
$comments = getWorkComments($work_item);
$template = $tpl->get_template('work/comments.tpl');
$tpl->assign('work_comment_enabled', ALLOW_USER_COMMENTS);
$tpl->assign('comments', $comments);
$content .= $form->return_form();
$content .= $tpl->fetch($template);
}
} elseif ($is_author) {
if (empty($work_item['qualificator_id']) || $work_item['qualificator_id'] == 0) {
$content .= $form->return_form();
} else {
$content .= Display::return_message(get_lang('ActionNotAllowed'), 'error');
}
} elseif ($student_can_edit_in_session && $has_ended == false) {
$content .= $form->return_form();
} else {
示例13: switch
}
$em->persist($sequenceResource);
$em->flush();
echo Display::return_message(get_lang('Saved'), 'success');
break;
}
break;
case 'get_requirements':
$userId = api_get_user_id();
switch ($type) {
case SequenceResource::SESSION_TYPE:
$session = api_get_session_info($id);
$sequences = $repository->getRequirements($session['id'], $type);
if (count($sequences) === 0) {
break;
}
$sequenceList = SequenceResourceManager::checkRequirementsForUser($sequences, $type, $userId);
$allowSubscription = SequenceResourceManager::checkSequenceAreCompleted($sequenceList);
$courseController = new CoursesController();
$view = new Template(null, false, false, false, false, false);
$view->assign('sequences', $sequenceList);
$view->assign('allow_subscription', $allowSubscription);
if ($allowSubscription) {
$view->assign('subscribe_button', $courseController->getRegisteredInSessionButton($session['id'], $session['name'], false));
}
$template = $view->get_template('sequence_resource/session_requirements.tpl');
$view->display($template);
break;
}
break;
}
示例14: header
}
//$social_right_content .= SocialManager::display_user_list($user_list);
}
}
$whoisonline_list .= SocialManager::display_user_list($user_list);
if (isset($_GET['id'])) {
if (api_get_setting('allow_social_tool') == 'true' && api_user_is_login()) {
header("Location: " . api_get_path(WEB_CODE_PATH) . "social/profile.php?u=" . intval($_GET['id']));
exit;
} else {
$social_right_content .= SocialManager::display_individual_user($_GET['id']);
}
}
} else {
api_not_allowed();
exit;
}
$tpl = new Template(get_lang('UsersOnLineList'));
if (api_get_setting('allow_social_tool') == 'true' && !api_is_anonymous()) {
$tpl->assign('whoisonline', $whoisonline_list);
$tpl->assign('social_search', $social_search);
$social_layout = $tpl->get_template('social/whoisonline.tpl');
$tpl->display($social_layout);
} else {
$content = $social_right_content;
$tpl->assign('actions', $actions);
$tpl->assign('message', $show_message);
$tpl->assign('header', get_lang('UsersOnLineList'));
$tpl->assign('content', $content);
$tpl->display_one_col_template();
}
示例15: sessionListBySearch
/**
* Show the Session Catalogue with filtered session by a query term
* @param array $limit
*/
public function sessionListBySearch(array $limit)
{
$q = isset($_REQUEST['q']) ? Security::remove_XSS($_REQUEST['q']) : null;
$hiddenLinks = isset($_GET['hidden_links']) ? intval($_GET['hidden_links']) == 1 : false;
$courseUrl = getCourseCategoryUrl(1, $limit['length'], null, 0, 'subscribe');
$searchDate = isset($_POST['date']) ? $_POST['date'] : date('Y-m-d');
$sessions = $this->model->browseSessionsBySearch($q, $limit);
$sessionsBlocks = $this->getFormatedSessionsBlock($sessions);
$tpl = new Template();
$tpl->assign('show_courses', CoursesAndSessionsCatalog::showCourses());
$tpl->assign('show_sessions', CoursesAndSessionsCatalog::showSessions());
$tpl->assign('show_tutor', api_get_setting('show_session_coach') === 'true' ? true : false);
$tpl->assign('course_url', $courseUrl);
$tpl->assign('already_subscribed_label', $this->getAlreadyRegisteredInSessionLabel());
$tpl->assign('hidden_links', $hiddenLinks);
$tpl->assign('search_token', Security::get_token());
$tpl->assign('search_date', Security::remove_XSS($searchDate));
$tpl->assign('search_tag', Security::remove_XSS($q));
$tpl->assign('sessions', $sessionsBlocks);
$contentTemplate = $tpl->get_template('auth/session_catalog.tpl');
$tpl->display($contentTemplate);
}