php /* ===================================================== DataLife Engine - by SoftNews Media Group ----------------------------------------------------- http://dle-news.ru/ ----------------------------------------------------- Copyright (c) 2004,2014 SoftNews Media Group ===================================================== Данный код защищен авторскими правами ===================================================== Файл: show.short.php ----------------------------------------------------- Назначение: вывод новостей ===================================================== */ if( ! defined( 'DATALIFEENGINE' ) ) { die( "Hacking attempt!" ); } if( $allow_active_news ) { if( $config['allow_banner'] ) include_once ENGINE_DIR . '/modules/banners.php'; $i = $cstart; $global_news_count = 0; $news_found = FALSE; if( isset( $view_template ) AND $view_template == "rss" ) { } elseif( $category_id and $cat_info[$category_id]['short_tpl'] != '' ) $tpl->load_template( $cat_info[$category_id]['short_tpl'] . '.tpl' ); else $tpl->load_template( 'shortstory.tpl' ); if( strpos( $tpl->copy_template, "[xfvalue_" ) !== false OR strpos( $tpl->copy_template, "[xfgiven_" ) !== false ) { $xfound = true; $xfields = xfieldsload();} else $xfound = false; if( count( $banners ) AND $config['allow_banner'] AND !$smartphone_detected) { $news_c = 1; if( isset( $ban_short ) ) { for($indx = 0, $max = sizeof( $ban_short['top'] ), $banners_topz = ''; $indx < $max; $indx ++) if( $ban_short['top'][$indx]['zakr'] ) { $banners_topz .= $ban_short['top'][$indx]['text']; unset( $ban_short['top'][$indx] ); } for($indx = 0, $max = sizeof( $ban_short['cen'] ), $banners_cenz = ''; $indx < $max; $indx ++) if( $ban_short['cen'][$indx]['zakr'] ) { $banners_cenz .= $ban_short['cen'][$indx]['text']; unset( $ban_short['cen'][$indx] ); } for($indx = 0, $max = sizeof( $ban_short['down'] ), $banners_downz = ''; $indx < $max; $indx ++) if( $ban_short['down'][$indx]['zakr'] ) { $banners_downz .= $ban_short['down'][$indx]['text']; unset( $ban_short['down'][$indx] ); } $middle = floor( $config['news_number'] / 2 ); $middle_s = floor( ($middle - 1) / 2 ); $middle_e = floor( $middle + (($config['news_number'] - $middle) / 2) + 1 ); } } $sql_result = $db->query( $sql_select ); if( ! isset( $view_template ) ) { $count_all = $db->super_query( $sql_count ); $count_all = $count_all['count']; } else $count_all = 0; while ( $row = $db->get_row( $sql_result ) ) { $news_found = TRUE; $attachments[] = $row['id']; $row['date'] = strtotime( $row['date'] ); if( $config['allow_banner'] AND count( $banners ) ) { foreach ( $banners as $name => $value ) { $tpl->copy_template = str_replace( "{banner_" . $name . "}", $value, $tpl->copy_template ); if ( $value ) { $tpl->copy_template = str_replace ( "[banner_" . $name . "]", "", $tpl->copy_template ); $tpl->copy_template = str_replace ( "[/banner_" . $name . "]", "", $tpl->copy_template ); } } } $tpl->set_block( "'{banner_(.*?)}'si", "" ); $tpl->set_block ( "'\\[banner_(.*?)\\](.*?)\\[/banner_(.*?)\\]'si", "" ); if( isset( $middle ) ) { if( $news_c == $middle_s ) { $tpl->copy_template .= bannermass( $banners_topz, $ban_short['top'] ); } else if( $news_c == $middle ) { $tpl->copy_template .= bannermass( $banners_cenz, $ban_short['cen'] ); } else if( $news_c == $middle_e ) { $tpl->copy_template .= bannermass( $banners_downz, $ban_short['down'] ); } $news_c ++; } $i ++; if( ! $row['category'] ) { $my_cat = "---"; $my_cat_link = "---"; } else { $my_cat = array (); $my_cat_link = array (); $cat_list = explode( ',', $row['category'] ); if ($config['category_separator'] != ',') $config['category_separator'] = ' '.$config['category_separator']; if( count( $cat_list ) == 1 OR ($view_template == "rss" AND $config['rss_format'] == 2)) { $my_cat[] = $cat_info[$cat_list[0]]['name']; $my_cat_link = get_categories( $cat_list[0], $config['category_separator']); } else { foreach ( $cat_list as $element ) { if( $element ) { $my_cat[] = $cat_info[$element]['name']; if( $config['allow_alt_url'] ) $my_cat_link[] = "{$cat_info[$element]['name']}"; else $my_cat_link[] = "{$cat_info[$element]['name']}"; } } $my_cat_link = implode( "{$config['category_separator']} ", $my_cat_link ); } $my_cat = implode( "{$config['category_separator']} ", $my_cat ); } $url_cat = $category_id; if (stripos ( $tpl->copy_template, "[category=" ) !== false) { $tpl->copy_template = preg_replace_callback ( "#\\[(category)=(.+?)\\](.*?)\\[/category\\]#is", "check_category", $tpl->copy_template ); } if (stripos ( $tpl->copy_template, "[not-category=" ) !== false) { $tpl->copy_template = preg_replace_callback ( "#\\[(not-category)=(.+?)\\](.*?)\\[/not-category\\]#is", "check_category", $tpl->copy_template ); } $category_id = $row['category']; if( strpos( $tpl->copy_template, "[catlist=" ) !== false ) { $tpl->copy_template = preg_replace_callback ( "#\\[(catlist)=(.+?)\\](.*?)\\[/catlist\\]#is", "check_category", $tpl->copy_template ); } if( strpos( $tpl->copy_template, "[not-catlist=" ) !== false ) { $tpl->copy_template = preg_replace_callback ( "#\\[(not-catlist)=(.+?)\\](.*?)\\[/not-catlist\\]#is", "check_category", $tpl->copy_template ); } $category_id = $url_cat; $row['category'] = intval( $row['category'] ); $news_find = array ('{comments-num}' => $row['comm_num'], '{views}' => $row['news_read'], '{category}' => $my_cat, '{link-category}' => $my_cat_link, '{news-id}' => $row['id'] ); $tpl->set( '', $news_find ); if( $row['category'] AND $cat_info[$row['category']]['icon'] ) { $tpl->set( '{category-icon}', $cat_info[$row['category']]['icon'] ); } else { $tpl->set( '{category-icon}', "{THEME}/dleimages/no_icon.gif" ); } if ( $row['category'] ) $tpl->set( '{category-url}', $config['http_home_url'] . get_url( $row['category'] ) . "/" ); else $tpl->set( '{category-url}', "#" ); if( date( 'Ymd', $row['date'] ) == date( 'Ymd', $_TIME ) ) { $tpl->set( '{date}', $lang['time_heute'] . langdate( ", H:i", $row['date'] ) ); } elseif( date( 'Ymd', $row['date'] ) == date( 'Ymd', ($_TIME - 86400) ) ) { $tpl->set( '{date}', $lang['time_gestern'] . langdate( ", H:i", $row['date'] ) ); } else { $tpl->set( '{date}', langdate( $config['timestamp_active'], $row['date'] ) ); } $news_date = $row['date']; $tpl->copy_template = preg_replace_callback ( "#\{date=(.+?)\}#i", "formdate", $tpl->copy_template ); $global_news_count ++; if (strpos ( $tpl->copy_template, "[newscount=" ) !== false) { $tpl->copy_template = preg_replace_callback ( "#\\[(newscount)=(.+?)\\](.*?)\\[/newscount\\]#is", "check_newscount", $tpl->copy_template ); } if (strpos ( $tpl->copy_template, "[not-newscount=" ) !== false) { $tpl->copy_template = preg_replace_callback ( "#\\[(not-newscount)=(.+?)\\](.*?)\\[/not-newscount\\]#is", "check_newscount", $tpl->copy_template ); } if ( $row['fixed'] ) { $tpl->set( '[fixed]', "" ); $tpl->set( '[/fixed]', "" ); $tpl->set_block( "'\\[not-fixed\\](.*?)\\[/not-fixed\\]'si", "" ); } else { $tpl->set( '[not-fixed]', "" ); $tpl->set( '[/not-fixed]', "" ); $tpl->set_block( "'\\[fixed\\](.*?)\\[/fixed\\]'si", "" ); } if ( $row['comm_num'] ) { $tpl->set( '[comments]', "" ); $tpl->set( '[/comments]', "" ); $tpl->set_block( "'\\[not-comments\\](.*?)\\[/not-comments\\]'si", "" ); } else { $tpl->set( '[not-comments]', "" ); $tpl->set( '[/not-comments]', "" ); $tpl->set_block( "'\\[comments\\](.*?)\\[/comments\\]'si", "" ); } if ( $row['votes'] ) { $tpl->set( '[poll]', "" ); $tpl->set( '[/poll]', "" ); $tpl->set_block( "'\\[not-poll\\](.*?)\\[/not-poll\\]'si", "" ); } else { $tpl->set( '[not-poll]', "" ); $tpl->set( '[/not-poll]', "" ); $tpl->set_block( "'\\[poll\\](.*?)\\[/poll\\]'si", "" ); } if( strpos( $tpl->copy_template, "{poll}" ) !== false AND $view_template != "rss" ) { if( $row['votes'] ) { include ENGINE_DIR . '/modules/poll.php'; $tpl->set( '{poll}', $tpl->result['poll'] ); } else { $tpl->set( '{poll}', '' ); } } if( $row['view_edit'] and $row['editdate'] ) { if( date( Ymd, $row['editdate'] ) == date( Ymd, $_TIME ) ) { $tpl->set( '{edit-date}', $lang['time_heute'] . langdate( ", H:i", $row['editdate'] ) ); } elseif( date( Ymd, $row['editdate'] ) == date( Ymd, ($_TIME - 86400) ) ) { $tpl->set( '{edit-date}', $lang['time_gestern'] . langdate( ", H:i", $row['editdate'] ) ); } else { $tpl->set( '{edit-date}', langdate( $config['timestamp_active'], $row['editdate'] ) ); } $tpl->set( '{editor}', $row['editor'] ); $tpl->set( '{edit-reason}', $row['reason'] ); if( $row['reason'] ) { $tpl->set( '[edit-reason]', "" ); $tpl->set( '[/edit-reason]', "" ); } else $tpl->set_block( "'\\[edit-reason\\](.*?)\\[/edit-reason\\]'si", "" ); $tpl->set( '[edit-date]', "" ); $tpl->set( '[/edit-date]', "" ); } else { $tpl->set( '{edit-date}', "" ); $tpl->set( '{editor}', "" ); $tpl->set( '{edit-reason}', "" ); $tpl->set_block( "'\\[edit-date\\](.*?)\\[/edit-date\\]'si", "" ); $tpl->set_block( "'\\[edit-reason\\](.*?)\\[/edit-reason\\]'si", "" ); } if( $config['allow_tags'] and $row['tags'] ) { $tpl->set( '[tags]', "" ); $tpl->set( '[/tags]', "" ); $tags = array (); $row['tags'] = explode( ",", $row['tags'] ); foreach ( $row['tags'] as $value ) { $value = trim( $value ); if( $config['allow_alt_url'] ) $tags[] = "" . $value . ""; else $tags[] = "" . $value . ""; } $tpl->set( '{tags}', implode( ", ", $tags ) ); } else { $tpl->set_block( "'\\[tags\\](.*?)\\[/tags\\]'si", "" ); $tpl->set( '{tags}', "" ); } if( $row['allow_rate'] ) { if( $config['short_rating'] and $user_group[$member_id['user_group']]['allow_rating'] ) $tpl->set( '{rating}', ShowRating( $row['id'], $row['rating'], $row['vote_num'], 1 ) ); else $tpl->set( '{rating}', ShowRating( $row['id'], $row['rating'], $row['vote_num'], 0 ) ); $tpl->set( '{vote-num}', "".$row['vote_num']."" ); $tpl->set( '[rating]', "" ); $tpl->set( '[/rating]', "" ); } else { $tpl->set( '{rating}', "" ); $tpl->set( '{vote-num}', "" ); $tpl->set_block( "'\\[rating\\](.*?)\\[/rating\\]'si", "" ); } if( $config['allow_alt_url'] ) { $go_page = $config['http_home_url'] . "user/" . urlencode( $row['autor'] ) . "/"; $tpl->set( '[day-news]', "" ); } else { $go_page = "$PHP_SELF?subaction=userinfo&user=" . urlencode( $row['autor'] ); $tpl->set( '[day-news]', "" ); } $tpl->set( '[/day-news]', "" ); $tpl->set( '[profile]', "" ); $tpl->set( '[/profile]', "" ); $tpl->set( '{login}', $row['autor'] ); $tpl->set( '{author}', "" . $row['autor'] . "" ); if( $allow_userinfo and ($member_id['name'] == $row['autor'] and ! $user_group[$member_id['user_group']]['allow_all_edit']) ) { $tpl->set( '[edit]', "" ); $tpl->set( '[/edit]', "" ); } elseif( $is_logged and (($member_id['name'] == $row['autor'] and $user_group[$member_id['user_group']]['allow_edit']) or $user_group[$member_id['user_group']]['allow_all_edit']) ) { $_SESSION['referrer'] = $_SERVER['REQUEST_URI']; $tpl->set( '[edit]', "" ); $tpl->set( '[/edit]', "" ); $allow_comments_ajax = true; } else $tpl->set_block( "'\\[edit\\](.*?)\\[/edit\\]'si", "" ); if( $config['allow_alt_url'] ) { if( $config['seo_type'] == 1 OR $config['seo_type'] == 2 ) { if( $row['category'] and $config['seo_type'] == 2 ) { $full_link = $config['http_home_url'] . get_url( $row['category'] ) . "/" . $row['id'] . "-" . $row['alt_name'] . ".html"; } else { $full_link = $config['http_home_url'] . $row['id'] . "-" . $row['alt_name'] . ".html"; } } else { $full_link = $config['http_home_url'] . date( 'Y/m/d/', $row['date'] ) . $row['alt_name'] . ".html"; } } else { $full_link = $config['http_home_url'] . "index.php?newsid=" . $row['id']; } if( ($row['full_story'] < 13) AND $config['hide_full_link'] ) $tpl->set_block( "'\\[full-link\\](.*?)\\[/full-link\\]'si", "" ); else { $tpl->set( '[full-link]', "" ); $tpl->set( '[/full-link]', "" ); } $tpl->set( '{full-link}', $full_link ); if( $row['allow_comm'] ) { $tpl->set( '[com-link]', "" ); $tpl->set( '[/com-link]', "" ); } else $tpl->set_block( "'\\[com-link\\](.*?)\\[/com-link\\]'si", "" ); if( $is_logged ) { $fav_arr = explode( ',', $member_id['favorites'] ); if( ! in_array( $row['id'], $fav_arr ) or $config['allow_cache']) { $tpl->set( '{favorites}', "\"\"" ); $tpl->set( '[add-favorites]', "" ); $tpl->set( '[/add-favorites]', "" ); $tpl->set_block( "'\\[del-favorites\\](.*?)\\[/del-favorites\\]'si", "" ); } else { $tpl->set( '{favorites}', "\"\"" ); $tpl->set( '[del-favorites]', "" ); $tpl->set( '[/del-favorites]', "" ); $tpl->set_block( "'\\[add-favorites\\](.*?)\\[/add-favorites\\]'si", "" ); } $tpl->set( '[complaint]', "" ); $tpl->set( '[/complaint]', "" ); } else { $tpl->set( '{favorites}', "" ); $tpl->set_block( "'\\[complaint\\](.*?)\\[/complaint\\]'si", "" ); $tpl->set_block( "'\\[add-favorites\\](.*?)\\[/add-favorites\\]'si", "" ); $tpl->set_block( "'\\[del-favorites\\](.*?)\\[/del-favorites\\]'si", "" ); } if( $allow_userinfo) { $tpl->set( '{approve}', $lang['approve'] ); } else $tpl->set( '{approve}', "" ); // Обработка дополнительных полей if( $xfound ) { $xfieldsdata = xfieldsdataload( $row['xfields'] ); foreach ( $xfields as $value ) { $preg_safe_name = preg_quote( $value[0], "'" ); if ( $value[6] AND !empty( $xfieldsdata[$value[0]] ) ) { $temp_array = explode( ",", $xfieldsdata[$value[0]] ); $value3 = array(); foreach ($temp_array as $value2) { $value2 = trim($value2); $value2 = str_replace("'", "'", $value2); if( $config['allow_alt_url'] ) $value3[] = "" . $value2 . ""; else $value3[] = "" . $value2 . ""; } $xfieldsdata[$value[0]] = implode(", ", $value3); unset($temp_array); unset($value2); unset($value3); } if( empty( $xfieldsdata[$value[0]] ) ) { $tpl->copy_template = preg_replace( "'\\[xfgiven_{$preg_safe_name}\\](.*?)\\[/xfgiven_{$preg_safe_name}\\]'is", "", $tpl->copy_template ); $tpl->copy_template = str_replace( "[xfnotgiven_{$value[0]}]", "", $tpl->copy_template ); $tpl->copy_template = str_replace( "[/xfnotgiven_{$value[0]}]", "", $tpl->copy_template ); } else { $tpl->copy_template = preg_replace( "'\\[xfnotgiven_{$preg_safe_name}\\](.*?)\\[/xfnotgiven_{$preg_safe_name}\\]'is", "", $tpl->copy_template ); $tpl->copy_template = str_replace( "[xfgiven_{$value[0]}]", "", $tpl->copy_template ); $tpl->copy_template = str_replace( "[/xfgiven_{$value[0]}]", "", $tpl->copy_template ); } $xfieldsdata[$value[0]] = stripslashes( $xfieldsdata[$value[0]] ); if ($config['allow_links'] AND $value[3] == "textarea" AND function_exists('replace_links') ) $xfieldsdata[$value[0]] = replace_links ( $xfieldsdata[$value[0]], $replace_links['news'] ); $tpl->copy_template = str_replace( "[xfvalue_{$value[0]}]", $xfieldsdata[$value[0]], $tpl->copy_template ); if ( preg_match( "#\\[xfvalue_{$preg_safe_name} limit=['\"](.+?)['\"]\\]#i", $tpl->copy_template, $matches ) ) { $count= intval($matches[1]); $xfieldsdata[$value[0]] = str_replace( "

", " ", $xfieldsdata[$value[0]] ); $xfieldsdata[$value[0]] = strip_tags( $xfieldsdata[$value[0]], "
" ); $xfieldsdata[$value[0]] = trim(str_replace( "
", " ", str_replace( "
", " ", str_replace( "\n", " ", str_replace( "\r", "", $xfieldsdata[$value[0]] ) ) ) )); if( $count AND dle_strlen( $xfieldsdata[$value[0]], $config['charset'] ) > $count ) { $xfieldsdata[$value[0]] = dle_substr( $xfieldsdata[$value[0]], 0, $count, $config['charset'] ); if( ($temp_dmax = dle_strrpos( $xfieldsdata[$value[0]], ' ', $config['charset'] )) ) $xfieldsdata[$value[0]] = dle_substr( $xfieldsdata[$value[0]], 0, $temp_dmax, $config['charset'] ); } $tpl->set( $matches[0], $xfieldsdata[$value[0]] ); } } } // Обработка дополнительных полей if( isset($view_template) AND $view_template == "rss" ) { $tpl->set( '{rsslink}', $full_link ); $tpl->set( '{rssauthor}', $row['autor'] ); $tpl->set( '{rssdate}', date( "r", $row['date'] ) ); $tpl->set( '{title}', htmlspecialchars( strip_tags( stripslashes( $row['title'] ) ), ENT_QUOTES, $config['charset'] ) ); if( $config['rss_format'] != 1 ) { $row['short_story'] = preg_replace( "##is", "", $row['short_story'] ); $row['short_story'] = preg_replace( "'\[attachment=(.*?)\]'si", "", $row['short_story'] ); $row['short_story'] = preg_replace ( "#\[hide\](.+?)\[/hide\]#ims", "", $row['short_story'] ); $row['short_story'] = trim (htmlspecialchars( strip_tags( stripslashes( str_replace( "
", " ", $row['short_story'] ) ) ), ENT_QUOTES, $config['charset'] ) ); } else { $row['short_story'] = stripslashes( $row['short_story'] ); } $tpl->set( '{short-story}', $row['short_story'] ); if( $config['rss_format'] == 2 ) { $images = array(); preg_match_all('/(img|src)=("|\')[^"\'>]+/i', $row['full_story'], $media); $data=preg_replace('/(img|src)("|\'|="|=\')(.*)/i',"$3",$media[0]); foreach($data as $url) { $info = pathinfo($url); if (isset($info['extension'])) { if ($info['filename'] == "spoiler-plus" OR $info['filename'] == "spoiler-plus" ) continue; $info['extension'] = strtolower($info['extension']); if (($info['extension'] == 'jpg') || ($info['extension'] == 'jpeg') || ($info['extension'] == 'gif') || ($info['extension'] == 'png')) { if($info['extension'] == 'jpg') $info['extension'] ='jpeg'; array_push($images, ""); } } } if ( count($images) ) { $tpl->set( '{images}', "\n".implode("\n", $images) ); } else { $tpl->set( '{images}', '' ); } $row['full_story'] = preg_replace( "##is", "", $row['full_story'] ); $row['full_story'] = preg_replace( "'\[attachment=(.*?)\]'si", "", $row['full_story'] ); $row['full_story'] = preg_replace ( "#\[hide\](.+?)\[/hide\]#ims", "", $row['full_story'] ); $row['full_story'] = trim (htmlspecialchars( strip_tags( stripslashes( str_replace( "
", " ", $row['full_story'] ) ) ), ENT_QUOTES, $config['charset'] ) ); if( $row['full_story'] == "" ) $row['full_story'] = $row['short_story']; $tpl->set( '{full-story}', $row['full_story'] ); } } else { $row['short_story'] = stripslashes($row['short_story']); if ($config['allow_links'] AND function_exists('replace_links') AND isset($replace_links['news'])) $row['short_story'] = replace_links ( $row['short_story'], $replace_links['news'] ); if (stripos ( $tpl->copy_template, "{image-" ) !== false) { $images = array(); preg_match_all('/(img|src)=("|\')[^"\'>]+/i', $row['short_story'], $media); $data=preg_replace('/(img|src)("|\'|="|=\')(.*)/i',"$3",$media[0]); foreach($data as $url) { $info = pathinfo($url); if (isset($info['extension'])) { if ($info['filename'] == "spoiler-plus" OR $info['filename'] == "spoiler-plus" ) continue; $info['extension'] = strtolower($info['extension']); if (($info['extension'] == 'jpg') || ($info['extension'] == 'jpeg') || ($info['extension'] == 'gif') || ($info['extension'] == 'png')) array_push($images, $url); } } if ( count($images) ) { $i_count=0; foreach($images as $url) { $i_count++; $tpl->copy_template = str_replace( '{image-'.$i_count.'}', $url, $tpl->copy_template ); $tpl->copy_template = str_replace( '[image-'.$i_count.']', "", $tpl->copy_template ); $tpl->copy_template = str_replace( '[/image-'.$i_count.']', "", $tpl->copy_template ); } } $tpl->copy_template = preg_replace( "#\[image-(.+?)\](.+?)\[/image-(.+?)\]#is", "", $tpl->copy_template ); $tpl->copy_template = preg_replace( "#\\{image-(.+?)\\}#i", "{THEME}/dleimages/no_image.jpg", $tpl->copy_template ); } if ($smartphone_detected) { if (!$config['allow_smart_format']) { $row['short_story'] = strip_tags( $row['short_story'], '


' ); } else { if ( !$config['allow_smart_images'] ) { $row['short_story'] = preg_replace( "#(.+?)#is", "", $row['short_story'] ); $row['short_story'] = preg_replace( "##is", "", $row['short_story'] ); } if ( !$config['allow_smart_video'] ) { $row['short_story'] = preg_replace( "##is", "", $row['short_story'] ); $row['short_story'] = preg_replace( "##is", "", $row['short_story'] ); $row['short_story'] = preg_replace( "##is", "", $row['short_story'] ); } } } $row['title'] = stripslashes( $row['title'] ); $tpl->set( '{title}', $row['title'] ); if ( preg_match( "#\\{title limit=['\"](.+?)['\"]\\}#i", $tpl->copy_template, $matches ) ) { $count= intval($matches[1]); $row['title'] = strip_tags( $row['title'] ); if( $count AND dle_strlen( $row['title'], $config['charset'] ) > $count ) { $row['title'] = dle_substr( $row['title'], 0, $count, $config['charset'] ); if( ($temp_dmax = dle_strrpos( $row['title'], ' ', $config['charset'] )) ) $row['title'] = dle_substr( $row['title'], 0, $temp_dmax, $config['charset'] ); } $tpl->set( $matches[0], $row['title'] ); } $tpl->set( '{short-story}', $row['short_story'] ); if ( preg_match( "#\\{short-story limit=['\"](.+?)['\"]\\}#i", $tpl->copy_template, $matches ) ) { $count= intval($matches[1]); $row['short_story'] = str_replace( "

", " ", $row['short_story'] ); $row['short_story'] = strip_tags( $row['short_story'], "
" ); $row['short_story'] = trim(str_replace( "
", " ", str_replace( "
", " ", str_replace( "\n", " ", str_replace( "\r", "", $row['short_story'] ) ) ) )); if( $count AND dle_strlen( $row['short_story'], $config['charset'] ) > $count ) { $row['short_story'] = dle_substr( $row['short_story'], 0, $count, $config['charset'] ); if( ($temp_dmax = dle_strrpos( $row['short_story'], ' ', $config['charset'] )) ) $row['short_story'] = dle_substr( $row['short_story'], 0, $temp_dmax, $config['charset'] ); } $tpl->set( $matches[0], $row['short_story'] ); } } $tpl->compile( 'content' ); } if( $user_group[$member_id['user_group']]['allow_hide'] ) $tpl->result['content'] = str_ireplace( "[hide]", "", str_ireplace( "[/hide]", "", $tpl->result['content']) ); else $tpl->result['content'] = preg_replace ( "#\[hide\](.+?)\[/hide\]#ims", "

" . $lang['news_regus'] . "
", $tpl->result['content'] ); $tpl->result['content'] = preg_replace_callback ( "#\\[declination=(\d+)\\](.+?)\\[/declination\\]#is", "declination", $tpl->result['content'] ); $tpl->result['content'] = str_ireplace( "{PAGEBREAK}", '', $tpl->result['content'] ); if ( $config['allow_banner'] AND count($banner_in_news) AND !isset( $view_template )){ foreach ( $banner_in_news as $name) { $tpl->result['content'] = str_replace( "{banner_" . $name . "}", $banners[$name], $tpl->result['content'] ); if( $banners[$name] ) { $tpl->result['content'] = str_replace ( "[banner_" . $name . "]", "", $tpl->result['content'] ); $tpl->result['content'] = str_replace ( "[/banner_" . $name . "]", "", $tpl->result['content'] ); } } $tpl->result['content'] = preg_replace( "'\\[banner_(.*?)\\](.*?)\\[/banner_(.*?)\\]'si", '', $tpl->result['content'] ); } elseif (isset( $view_template )) { $tpl->result['content'] = preg_replace( "'{banner_(.*?)}'si", '', $tpl->result['content'] ); $tpl->result['content'] = preg_replace( "'\\[banner_(.*?)\\](.*?)\\[/banner_(.*?)\\]'si", '', $tpl->result['content'] ); } $tpl->clear(); $db->free( $sql_result ); if( $do == "" ) $do = $subaction; if( $do == "" and $year ) $do = "date"; $ban_short = array (); unset( $ban_short ); if( !$news_found and $allow_userinfo and $member_id['name'] == $user AND $user_group[$member_id['user_group']]['allow_adds'] ) { $tpl->load_template( 'info.tpl' ); $tpl->set( '{error}', $lang['mod_list_f'] ); $tpl->set( '{title}', $lang['all_info'] ); $tpl->compile( 'content' ); $tpl->clear(); } elseif( !$news_found and $do == 'newposts' and $view_template != 'rss') { msgbox( $lang['all_info'], $lang['newpost_notfound'] ); } elseif( ! $news_found AND $do == 'favorites' ) { if ( $member_id['favorites'] AND !$count_all ) $db->query( "UPDATE " . USERPREFIX . "_users SET favorites='' WHERE user_id = '{$member_id['user_id']}'" ); if (!$count_all) msgbox( $lang['all_info'], $lang['fav_notfound'] ); else msgbox( $lang['all_info'], $lang['fav_notfound_1'] ); } //#################################################################################################################### // Навигация по новостям //#################################################################################################################### if( ! isset( $view_template ) AND $count_all AND $config['news_navigation'] AND $news_found) { $tpl->load_template( 'navigation.tpl' ); //---------------------------------- // Previous link //---------------------------------- $no_prev = false; $no_next = false; if( isset( $cstart ) and $cstart != "" and $cstart > 0 ) { $prev = $cstart / $config['news_number']; if( $config['allow_alt_url'] ) { if ($prev == 1) $prev_page = $url_page . "/"; else $prev_page = $url_page . "/page/" . $prev . "/"; $tpl->set_block( "'\[prev-link\](.*?)\[/prev-link\]'si", "\\1" ); } else { if ($prev == 1) $prev_page = $PHP_SELF . "?" . $user_query; else $prev_page = $PHP_SELF . "?cstart=" . $prev . "&" . $user_query; $tpl->set_block( "'\[prev-link\](.*?)\[/prev-link\]'si", "\\1" ); } } else { $tpl->set_block( "'\[prev-link\](.*?)\[/prev-link\]'si", "\\1" ); $no_prev = TRUE; } //---------------------------------- // Pages //---------------------------------- if( $config['news_number'] ) { $pages = ""; if( $count_all > $config['news_number'] ) { $enpages_count = @ceil( $count_all / $config['news_number'] ); $cstart = ($cstart / $config['news_number']) + 1; if( $enpages_count <= 10 ) { for($j = 1; $j <= $enpages_count; $j ++) { if( $j != $cstart ) { if( $config['allow_alt_url'] ) { if ($j == 1) $pages .= "$j "; else $pages .= "$j "; } else { if ($j == 1) $pages .= "$j "; else $pages .= "$j "; } } else { $pages .= "$j "; } } } else { $start = 1; $end = 10; $nav_prefix = "{$lang['nav_trennen']} "; if( $cstart > 0 ) { if( $cstart > 6 ) { $start = $cstart - 4; $end = $start + 8; if( $end >= $enpages_count ) { $start = $enpages_count - 9; $end = $enpages_count - 1; $nav_prefix = ""; } else $nav_prefix = "{$lang['nav_trennen']} "; } } if( $start >= 2 ) { if( $config['allow_alt_url'] ) $pages .= "1 {$lang['nav_trennen']} "; else $pages .= "1 {$lang['nav_trennen']} "; } for($j = $start; $j <= $end; $j ++) { if( $j != $cstart ) { if( $config['allow_alt_url'] ) { if ($j == 1) $pages .= "$j "; else $pages .= "$j "; } else { if ($j == 1) $pages .= "$j "; else $pages .= "$j "; } } else { $pages .= "$j "; } } if( $cstart != $enpages_count ) { if( $config['allow_alt_url'] ) $pages .= $nav_prefix . "{$enpages_count}"; else $pages .= $nav_prefix . "{$enpages_count}"; } else $pages .= "{$enpages_count} "; } } $tpl->set( '{pages}', $pages ); } //---------------------------------- // Next link //---------------------------------- if( $config['news_number'] AND $config['news_number'] < $count_all and $i < $count_all ) { $next_page = $i / $config['news_number'] + 1; if( $config['allow_alt_url'] ) { $next = $url_page . '/page/' . $next_page . '/'; $tpl->set_block( "'\[next-link\](.*?)\[/next-link\]'si", "\\1" ); } else { $next = $PHP_SELF . "?cstart=" . $next_page . "&" . $user_query; $tpl->set_block( "'\[next-link\](.*?)\[/next-link\]'si", "\\1" ); } } else { $tpl->set_block( "'\[next-link\](.*?)\[/next-link\]'si", "\\1" ); $no_next = TRUE; } if( !$no_prev OR !$no_next ) { $tpl->compile( 'navi' ); switch ( $config['news_navigation'] ) { case "2" : $tpl->result['content'] = $tpl->result['navi'].$tpl->result['content']; break; case "3" : $tpl->result['content'] = $tpl->result['navi'].$tpl->result['content'].$tpl->result['navi']; break; default : $tpl->result['content'] .= $tpl->result['navi']; break; } } $tpl->clear(); } } ?> Скачать читы на Варфейс - Warface читы
Начать играть в Warface!
Скачать игру!

Новое оружие