本文整理汇总了PHP中page::getTemplate方法的典型用法代码示例。如果您正苦于以下问题:PHP page::getTemplate方法的具体用法?PHP page::getTemplate怎么用?PHP page::getTemplate使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类page
的用法示例。
在下文中一共展示了page::getTemplate方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: form
/**
* @return stirng
* @param string $templ_name - Шаблон оформления
* @desc МАКРОС: Выводит форму подписки на рассылки
*/
function form($templ_name = 'default')
{
$templ_file = '/subscription/' . $templ_name . '.tpl';
$TEMPLATE = page::getTemplate($templ_file);
if (!is_array($TEMPLATE)) {
return page::errorNotFound('subscription.form', $templ_file);
}
$list = '';
$sel = new ormSelect('subscription');
$sel->where('lang', '=', languages::curId());
$sel->where('domain', '=', domains::curId());
$sel->where('active', '=', 1);
$num = 0;
while ($obj = $sel->getObject()) {
page::assign('obj.id', $obj->id);
page::assign('obj.name', $obj->name);
$num++;
page::assign('obj.num', $num);
page::assign('class-first', $num == 1 ? 'first' : '');
page::assign('class-last', $num == $sel->getObjectCount() ? 'last' : '');
page::assign('class-odd', $num % 2 == 0 ? 'odd' : '');
page::assign('class-even', $num % 2 != 0 ? 'even' : '');
page::assign('class-third', $num % 3 == 0 ? 'third' : '');
$list .= page::parse($TEMPLATE['list']);
}
// Парсим текст сообщения об ошибке
page::parseError('subscription');
if (empty($list)) {
return page::parse($TEMPLATE['empty']);
} else {
page::assign('list', $list);
return page::parse($TEMPLATE['frame']);
}
}
示例2: tags
/**
* @return HTML
* @param int $obj_id - ID раздела, для которого необходимо вывести теги.
* @param string $templ_name - Шаблон оформления.
* @desc МАКРОС: Выводит список тегов для указанной страницы.
*/
public function tags($obj_id, $templ_name = 'tags')
{
$templ_file = '/search/' . $templ_name . '.tpl';
$TEMPLATE = page::getTemplate($templ_file);
if (!is_array($TEMPLATE)) {
return page::errorNotFound('search.tags', $templ_file);
}
$tags = tags::getTagsForObject($obj_id);
$list = '';
while (list($num, $tag) = each($tags)) {
page::assign('obj.id', $tag['id']);
page::assign('obj.name', $tag['name']);
page::assign('obj.count', $tag['count']);
page::assign('obj.url', '/search/tag/' . $tag['id']);
$list .= !empty($num) ? page::parse($TEMPLATE['separator']) : '';
$list .= page::parse($TEMPLATE['list']);
}
if (!empty($list)) {
page::assign('list', $list);
return page::parse($TEMPLATE['frame']);
} else {
return page::parse($TEMPLATE['empty']);
}
}
示例3: socialAuthConfirm
/**
* @return string
* @param string $templ_name - Шаблон оформления
* @desc МАКРОС: Выводит форму второго шага авторизации через соц сети, если требуется указать e-mail или согласиться с правилами.
*/
function socialAuthConfirm($templ_name = 'social_auth_confirm')
{
$templ_file = '/users/' . $templ_name . '.tpl';
$TEMPLATE = page::getTemplate($templ_file);
if (!is_array($TEMPLATE)) {
return page::errorNotFound('users.socialAuthConfirm', $templ_file);
}
if (user::isGuest() && !empty($_SESSION['SOCIAL_AUTH_USER_INFO'])) {
page::assign('obj.email', '');
foreach ($_SESSION['SOCIAL_AUTH_USER_INFO'] as $key => $val) {
page::assign('obj.' . $key, $val);
}
page::assign('email_block', reg::getKey('/users/ask_email') && empty($_SESSION['SOCIAL_AUTH_USER_INFO']['email']) ? page::parse($TEMPLATE['email']) : '');
page::assign('confirm_block', reg::getKey('/users/confirm') ? page::parse($TEMPLATE['confirm']) : '');
// Вывод сообщения об ошибках
page::parseError('social_auth_confirm');
return page::parse($TEMPLATE['frame']);
}
}
示例4: view
/**
* @return HTML
* @param int $comment_id - ID комментария
* @param string $templ_name - Шаблон оформления комментария
* @desc МАКРОС: Выводит информацию об указанном комментарии
*/
public function view($comment_id, $templ_name = 'tree')
{
$templ_file = '/comments/' . $templ_name . '.tpl';
$TEMPLATE = page::getTemplate($templ_file);
if (!is_array($TEMPLATE)) {
return page::errorNotFound('comments.view', $templ_file);
}
if ($comment = comments::get($comment_id)) {
if ($comment->isActive() || reg::getKey('/comments/show_noactive')) {
page::assign('obj.id', $comment->id());
page::assign('obj.parent_id', $comment->getParentId());
page::assign('obj.user_id', $comment->getUserId());
page::assign('obj.publ_date', $comment->getPublDate());
page::assign('obj.username', $comment->getUserName());
page::assign('obj.email', $comment->getEmail());
page::assign('obj.text', $comment->getText());
page::assign('obj.rate', $comment->getRate());
if (isset($_SESSION['comments_rate'][$comment->id()])) {
page::fParse('rate', $TEMPLATE['rate_change']);
} else {
page::fParse('rate', $TEMPLATE['rate']);
}
page::assign('list', '');
return page::parse($TEMPLATE['list']);
}
}
}
示例5: goodsList
public function goodsList($order_id, $templ_name = 'goods_list')
{
$templ_file = '/eshop/' . $templ_name . '.tpl';
$TEMPLATE = page::getTemplate($templ_file);
if (!is_array($TEMPLATE)) {
return page::errorNotFound('eshop.goodsList', $templ_file);
}
if ($order = ormObjects::get($order_id, 'eshop_order')) {
$fields = page::getFields('obj', $TEMPLATE['list']);
$sel = new ormSelect('eshop_goods');
$sel->where('parents', '=', $order_id);
$list = '';
$num = $cost = 0;
while ($goods = $sel->getObject()) {
if ($obj = ormPages::get($goods->goods_id, 'goods')) {
$num++;
if (isset($fields['obj'])) {
while (list($key, $val) = each($fields['obj'])) {
if ($val != 'url' && $val != 'class' && $val != 'num') {
page::assign('obj.' . $val, $obj->__get($val));
}
}
}
page::assign('obj.num', $num);
page::assign('class-first', $num == 1 ? 'first' : '');
page::assign('class-last', $num == $sel->getObjectCount() ? 'last' : '');
page::assign('class-odd', $num % 2 == 0 ? 'odd' : '');
page::assign('class-even', $num % 2 != 0 ? 'even' : '');
page::assign('class-third', $num % 3 == 0 ? 'third' : '');
page::assign('obj.id', $obj->id);
page::assign('obj.name', $obj->name);
page::assign('obj.cost', $goods->cost);
page::assign('obj.count', $goods->count);
page::assign('obj.url', $obj->url);
$cost_all = $goods->cost * $goods->count;
page::assign('obj.cost_all', $cost_all);
$cost += $cost_all;
$list .= page::parse($TEMPLATE['list']);
}
}
if (!empty($list)) {
page::assign('cost', $cost);
page::assign('list', $list);
return page::parse($TEMPLATE['frame']);
} else {
return page::parse($TEMPLATE['empty']);
}
}
}
示例6: sendMail
/**
* @return null
* @param string $templ_name - Полный путь до шаблона письма, от папки /template
* @param string $email - E-mail на который нужно отправить письмо.
* @param string $from - E-mail от кого отправляется письмо
* @param string $from_name - Имя автора письма
* @desc Парсит письмо по указанному шаблону и отправляет его на указанный ящик.
*/
static function sendMail($templ_name, $email, $from = '', $from_name = '')
{
$TEMPLATE = page::getTemplate($templ_name);
if (is_array($TEMPLATE)) {
page::assign('domain', domains::curDomain()->getName());
page::assign('site_name', domains::curDomain()->getSiteName());
page::assign('base_email', domains::curDomain()->getEmail());
if (empty($from)) {
$from = domains::curDomain()->getEmail();
}
if (empty($from_name)) {
$from_name = domains::curDomain()->getSiteName();
}
// Отправляет письмо с инструкциями
$mail = new phpmailer();
$mail->From = $from;
$mail->FromName = $from_name;
$mail->AddAddress($email);
$mail->WordWrap = 50;
$mail->IsHTML(true);
$mail->Subject = page::parse($TEMPLATE['subject']);
$mail->Body = page::parse($TEMPLATE['frame']);
$mail->Send();
}
}
示例7: tagAction
public function tagAction()
{
$templ_file = '/search/gettag.tpl';
$TEMPLATE = page::getTemplate($templ_file);
if (!is_array($TEMPLATE)) {
return page::errorNotFound('search.getTag', $templ_file);
}
if (system::issetUrl(2) && ($tag = tags::infoTag(system::url(2)))) {
$msg = lang::get('SEARCH_H1_TAGS') . ' "' . $tag['name'] . '"';
page::globalVar('h1', $msg);
page::globalVar('title', $msg);
// Получаем список классов
$classes_filter = array();
if (!empty($_POST['classes'])) {
$tmp = explode(",", $_POST['classes']);
$classes_filter = array();
foreach ($tmp as $v) {
$v = trim($v);
if (!empty($v)) {
$classes_filter[] = $v;
}
}
}
$max_count = reg::getKey(ormPages::getPrefix('search') . '/max_count');
$start = (system::getCurrentNavNum() - 1) * $max_count;
$result = tags::find(array($tag['id']), $max_count, $start, $classes_filter);
$list = '';
while (list($num, $val) = each($result['pages'])) {
if ($page = ormPages::get($val['page_id'])) {
page::assign('obj.id', $page->id);
page::assign('obj.num', $num + $start + 1);
page::assign('obj.name', $page->name);
page::assign('obj.url', $page->_url);
//page::assign('obj.content', $page->content);
$cn = $page->getClass()->getSName();
$block_name = isset($TEMPLATE['list_' . $cn]) ? 'list_' . $cn : 'list';
$list .= page::parse($TEMPLATE[$block_name]);
}
}
page::assign('count_page', ceil($result['count'] / $max_count));
} else {
$list = '';
$msg = lang::get('SEARCH_H1_TAGS2');
page::globalVar('h1', $msg);
page::globalVar('title', $msg);
}
if (!empty($list)) {
page::assign('list', $list);
page::fParse('list', $TEMPLATE['frame_list']);
} else {
page::fParse('list', $TEMPLATE['not_found']);
}
return page::parse($TEMPLATE['frame']);
}
示例8: page
<?php
ob_end_clean();
foreach (addonConfig::includeAllConfig() as $file) {
if (file_exists($file)) {
require_once $file;
}
}
$page = type::super('page_id', 'int', dyn::get('start_page'));
$page = extension::get('SET_PAGE_ID', $page);
dyn::add('page_id', $page);
if (page::isValid($page)) {
$page = new page($page);
} else {
header('HTTP/1.0 404 Not Found');
$page = new page(dyn::get('error_page'));
}
echo $page->getTemplate();
示例9: objList
/**
* @return HTML
* @param int $obj_id - ID раздела, из которого необходимо вывести список голосований.
* Если вывести список всех голосований на сайте, укажите "all".
* @param string $templ_name - Шаблон оформления.
* @param int $max_count - Максимальное количество элементов в списке.
* @param string $order_by - Способ сортировки элементов списка. SQL-подобный синтаксис, например: "name DESC".
* @desc МАКРОС: Выводит список голосований из указанного раздела.
*/
public function objList($obj_id = 'all', $templ_name = 'default', $max_count = 10, $order_by = 0)
{
$templ_file = '/voting/' . $templ_name . '.tpl';
$TEMPLATE = page::getTemplate($templ_file);
if (!is_array($TEMPLATE)) {
return page::errorNotFound('voting.objList', $templ_file);
}
$key = 'vote-list' . $obj_id . $templ_name . $max_count;
if (!($data = cache::get($key)) || $order_by == 'random') {
if ($obj_id != 'all') {
$info = ormPages::getSectionByPath($obj_id);
if ($info['section'] === false) {
return '';
}
if ($info['section'] instanceof ormPage) {
$section = $info['section'];
$obj_id = $section->id;
}
}
// Получаем список голосований
$sel = new ormSelect('vote');
$sel->findInPages();
$sel->where('active', '=', 1);
$sel->where('view_in_menu', '=', 1);
// Сортировка списка
if (!empty($order_by)) {
$pos = strpos($order_by, ' ');
if ($pos) {
$parram = substr($order_by, $pos + 1);
$order_by = substr($order_by, 0, $pos);
} else {
$parram = '';
}
$sel->orderBy($order_by, $parram);
} else {
$sel->orderBy('publ_date', desc);
}
$sel->limit($max_count);
if (is_numeric($obj_id)) {
$sel->where('parents', '=', $obj_id);
}
// Узнаем какие поля объектов будут участвовать в выборке
$fields_str = 'close, multiselect';
$fields = page::getFields('obj', $TEMPLATE['vote_result'] . $TEMPLATE['vote']);
if (isset($fields['obj'])) {
while (list($okey, $val) = each($fields['obj'])) {
if ($val != 'url' && $val != 'class' && $val != 'num') {
$fields_str .= empty($fields_str) ? $val : ', ' . $val;
}
}
}
$sel->fields($fields_str);
$data = $sel->getData();
// Записываем в кэш
cache::set($key, $data);
}
// Выводим список на страницу
$list = '';
foreach ($data as $obj) {
$list .= $this->objView($obj, $TEMPLATE);
}
page::assign('list', $list);
return page::parse($TEMPLATE['frame']);
}
示例10: rss
/**
* @return HTML
* @param int $section_id - ID новостной ленты, для которой необходимо построить RSS-ленту
* @param string $templ_name - Шаблон оформления, по которому будет строится RSS-лента
* @desc МАКРОС: Выводит содержимое RSS-ленты.
*/
public function rss($section_id, $templ_name = 'rss')
{
$templ_file = '/structure/rss/' . $templ_name . '.tpl';
$TEMPLATE = page::getTemplate($templ_file);
if (!is_array($TEMPLATE)) {
return page::errorNotFound('structure.rss', $templ_file);
}
$cur_domain = 'http://' . domains::curDomain()->getName();
page::assign('channel.url', $cur_domain);
page::assign('channel.date', date('r'));
page::assign('channel.notice', '');
// Определяем из каких категорий выводить ленту новостей
$sections = array();
if ($section_id == 'all') {
// Из нескольких
$sel = new ormSelect('news_feed');
$sel->findInPages();
$sel->fields('id');
$sel->where('rss_export', '=', 1);
$sel->where('active', '=', 1);
while ($obj = $sel->getObject()) {
$sections[] = $obj->id;
}
page::assign('channel.title', domains::curDomain()->getSiteName());
} else {
// Из одной
$section_id = system::checkVar($section_id, isInt);
if (empty($section_id)) {
return '';
}
$sections[] = $section_id;
if ($sect = ormPages::get($section_id)) {
page::assign('channel.title', $sect->name);
}
}
// Формируем выборку объектов
$sel = new ormSelect();
$sel->findInPages();
$sel->fields('name, notice, publ_date');
$sel->where('parents', '=', $sections, 'OR');
$sel->where('active', '=', 1);
$sel->orderBy('publ_date', desc);
$sel->limit(3);
// Формируем список
$list = '';
while ($obj = $sel->getObject()) {
$num = $sel->getObjectNum() + 1;
page::assign('obj.num', $num);
page::assign('obj.id', $obj->id);
page::assign('obj.url', $cur_domain . $obj->_url);
page::assign('obj.name', $obj->name);
$notice = str_replace(' ', '', strip_tags($obj->notice));
page::assign('obj.notice', $notice);
$date = date('r', strtotime($obj->publ_date));
page::assign('obj.date', $date);
/*
if ($obj->podkast != '') {
page::assign('obj.media_url', $cur_domain.$obj->podkast);
page::fParse('media', $TEMPLATE['media']);
} else
page::assign('media', '');
*/
if (isset($TEMPLATE['list'])) {
$list .= page::parse($TEMPLATE['list']);
} else {
return page::errorBlock('structure.rss', $templ_file, 'list');
}
}
if (!empty($list)) {
page::assign('list', $list);
if (isset($TEMPLATE['frame_list'])) {
$list = page::parse($TEMPLATE['frame_list']);
} else {
return page::errorBlock('structure.rss', $templ_file, 'frame_list');
}
}
return $list;
}