вопрос
Весь код module/static.php
Всем привет. Нужно реализовать статическую страницу на весь экран. Как показано ниже.
В данный момент стат. страница выводится в index.php с помощью этого условия
Идет простая подмена шаблона. И как бы это условие всегда проверяется, да еще и на главной. А если у меня их будет не 1, а 100? Для каждой странице отдельное условие? Не камильфо.
А нужно вывод страницы реализовать по аналогии с выводом версии для печати, но при этом использовать генерацию стандартного шаблона.
Создал в таблице dle_static поле с названием full_size
Соответственно сделал при создании и редактировании стат.страницы checkbox
В данный момент стат. страница выводится в index.php с помощью этого условия
if($dle_module == 'static' && $static_result['name'] == 'map') {
$tpl->load_template('map.tpl');
} else {
$tpl->load_template('main.tpl');
}
Идет простая подмена шаблона. И как бы это условие всегда проверяется, да еще и на главной. А если у меня их будет не 1, а 100? Для каждой странице отдельное условие? Не камильфо.
А нужно вывод страницы реализовать по аналогии с выводом версии для печати, но при этом использовать генерацию стандартного шаблона.
Создал в таблице dle_static поле с названием full_size
Соответственно сделал при создании и редактировании стат.страницы checkbox
[/code]
Ну и пошел смотреть где же определяется шаблон в стат. страницах
Никак не могу понять, как нужно прописать, чтобы моя проблема заработала
[spoiler][code]if( $static_result['allow_template'] or $view_template == "print" ) {
if( $view_template == "print" ) $tpl->load_template( 'static_print.tpl' );
elseif( $static_result['tpl'] != '' ) $tpl->load_template( $static_result['tpl'] . '.tpl' );
else $tpl->load_template( 'static.tpl' );
if( strpos( $tpl->copy_template, "{custom" ) !== false ) {
$tpl->copy_template = preg_replace_callback ( "#\\{custom(.+?)\\}#i", "custom_print", $tpl->copy_template );
}
if( ! $news_page ) $news_page = 1;
if( $view_template == "print" ) {
$template = str_replace( "{PAGEBREAK}", "", $template );
$template = str_replace( "{pages}", "", $template );
$template = preg_replace( "'\[PAGE=(.*?)\](.*?)\[/PAGE\]'si", "", $template );
} else {
$news_seiten = explode( "{PAGEBREAK}", $template );
$anzahl_seiten = count( $news_seiten );
if( $news_page $anzahl_seiten ) {
$news_page = 1;
}
$template = $news_seiten[$news_page - 1];
$template = preg_replace( '#(\A[\s]*]*>[\s]*|]*>[\s]*\Z)#is', '', $template ); // remove at end of string
$news_seiten = "";
unset( $news_seiten );
if( $anzahl_seiten > 1 ) {
if( $news_page < $anzahl_seiten ) {
$pages = $news_page + 1;
if( $config['allow_alt_url'] == "yes" ) {
$nextpage = " | " . $lang['news_next'] . "";
} else {
$nextpage = " | " . $lang['news_next'] . "";
}
}
if( $news_page > 1 ) {
$pages = $news_page - 1;
if( $config['allow_alt_url'] == "yes" ) {
$prevpage = "" . $lang['news_prev'] . " | ";
} else {
$prevpage = "" . $lang['news_prev'] . " | ";
}
}
$tpl->set( '{pages}', $prevpage . $lang['news_site'] . " " . $news_page . $lang['news_iz'] . $anzahl_seiten . $nextpage );
if( $config['allow_alt_url'] == "yes" ) {
$replacepage = "\\2";
} else {
$replacepage = "\\2";
}
$template = preg_replace( "'\[PAGE=(.*?)\](.*?)\[/PAGE\]'si", $replacepage, $template );
} else {
$tpl->set( '{pages}', '' );
$template = preg_replace( "'\[PAGE=(.*?)\](.*?)\[/PAGE\]'si", "", $template );
}
}
if( $config['allow_alt_url'] == "yes" ) $print_link = $config['http_home_url'] . "print:" . $static_result['name'] . ".html";
else $print_link = $config['http_home_url'] . "engine/print.php?do=static&page=" . $static_result['name'];
if( @date( "Ymd", $static_result['date'] ) == date( "Ymd", $_TIME ) ) {
$tpl->set( '{date}', $lang['time_heute'] . langdate( ", H:i", $static_result['date'] ) );
} elseif( @date( "Ymd", $static_result['date'] ) == date( "Ymd", ($_TIME - 86400) ) ) {
$tpl->set( '{date}', $lang['time_gestern'] . langdate( ", H:i", $static_result['date'] ) );
} else {
$tpl->set( '{date}', langdate( $config['timestamp_active'], $static_result['date'] ) );
}
$news_date = $static_result['date'];
$tpl->copy_template = preg_replace_callback ( "#\{date=(.+?)\}#i", "formdate", $tpl->copy_template );
$tpl->set( '{description}', $static_descr );
$tpl->set( '{static}', $template );
$tpl->set( '{views}', $static_result['views'] );
if ($config['allow_search_print']) {
$tpl->set( '[print-link]', "" );
$tpl->set( '[/print-link]', "" );
} else {
$tpl->set( '[print-link]', "" );
$tpl->set( '[/print-link]', "" );
}
if( $_GET['page'] == "dle-rules-page" ) if( $do != "register" ) {
$tpl->set( '{ACCEPT-DECLINE}', "" );
} else {
$tpl->set( '{ACCEPT-DECLINE}', " " );
}
$tpl->compile( 'content' );
$tpl->clear();
} else
$tpl->result['content'] = $template;
Весь код module/static.php