'.@mktime(0, 0, 0, 1, 1, $year); $where[] = 'and'; $where[] = 'date < '.@mktime(23, 59, 59, 12, 31, $year); } elseif ($year and $month and !$day){ $where[] = 'date > '.@mktime(0, 0, 0, $month, 1, $year); $where[] = 'and'; $where[] = 'date < '.@mktime(23, 59, 59, $month, 31, $year); } elseif ($year and $month and $day){ $where[] = 'date > '.@mktime(0, 0, 0, $month, $day, $year); $where[] = 'and'; $where[] = 'date < '.@mktime(23, 59, 59, $month, $day, $year); } else { $where[] = 'date < '.(time() + $config_date_adjust * 60); } /*if (reset($allow_categories)){ $where[] = 'and'; $where[] = 'category =~ %'.(count($allow_categories) > 1 ? '['.join('|', $allow_categories).']' : join('', $allow_categories)).'%'; foreach ($allow_categories as $k => $v){ for ($i = 0; $i < 10; $i++){ if (!in_array($v.$i, $allow_categories)){ $where[] = 'and'; $where[] = 'category !~ %'.$v.$i.'%'; } if (!in_array($i.$v, $allow_categories)){ $where[] = 'and'; $where[] = 'category !~ %'.$i.$v.'%'; } } } }*/ if ($allow_categories[0] != ''){ foreach ($allow_categories as $k => $v){ for ($i = 0; $i < 10; $i++){ if (!in_array($v.$i, $allow_categories)){ $where[] = 'and'; $where[] = 'category !~ %'.$v.$i.'%'; } if (!in_array($i.$v, $allow_categories)){ $where[] = 'and'; $where[] = 'category !~ %'.$i.$v.'%'; } } } $where[] = 'and'; foreach($allow_categories as $single_cat){ $where[] = 'category =~ %'.$single_cat.'%'; $where[] = 'or'; } unset($where[count($where)-1]); } } $query = $sql->select(array( 'table' => 'news', 'orderby' => $sort, 'join' => array('table' => 'story', 'where' => 'id = post_id'), 'where' => $where, 'limit' => array(($skip ? $skip : 0), $number) )); if($random_single){ foreach($sql->select(array('table' => 'news', 'where' => $where)) as $row){ $selected_cat_arr[] = $row['id']; } $shuffle = array_rand($selected_cat_arr); $query = $sql->select(array( 'table' => 'news', 'join' => array('table' => 'story', 'where' => 'id = post_id'), 'where' => array("id = ".$selected_cat_arr[$shuffle]))); $random_single = false; } if (!$query and ($allow_full_story or $allow_add_comment)){ ?>
$row){ if ($bg%2 == 0){ $alternating = 'cn_news_odd'; } else { $alternating = 'cn_news_even'; } if ($allow_full_story or $allow_add_comment){ $id = $_GET['id'] = $_POST['id'] = $row['id']; $ucat = $_GET['ucat'] = $_POST['ucat'] = reset($ucat = explode(',', $row['category'])); $title = $_GET['title'] = $_POST['title'] = $row['title']; $link = $_GET['link'] = $_POST['link'] = cute_get_link($row); } if ($is_logged_in and ($member['level'] < 3 or ($member['level'] == 3 and $news['author'] == $member['username']))){ $allow_edit_comment = true; } if ($config_date_header == 'yes' and $dateheader_S != langdate('dmY', $row['date']) and $allow_active_news){ $dateheader_S = langdate('dmY', $row['date']); $dateheader = langdate($config_date_headerformat, $row['date']); $dateheader_p = $template_dateheader; $dateheader_p = str_replace('{dateheader}', $dateheader, $dateheader_p); $dateheader_p = str_replace('[date-link]', '', $dateheader_p); $dateheader_p = str_replace('[/date-link]', '', $dateheader_p); echo $dateheader_p; } if (!$cache = cute_cache($row['id'], $cache_uniq, $post.($page > 1 ? '.'.$page : ''))){ if ($allow_full_story or $allow_add_comment){ $output = $template_full; $output = run_filters('news-show-generic', $output); $row['full'] = explode('', ($row['full'] ? $row['full'] : $row['short'])); $page_count = sizeof($row['full']); //Start dropdown for($k=1; $k < $page_count + 1; $k++) { $page_titles[] = explode('', $row['full'][$k]); } $first_page = explode('', $row['full'][0]); $next_titles = explode('', $row['full'][$page-1]); if($page_count > 1) { $output = str_replace('[dropdown-header]', '', $output); $output = str_replace('[/dropdown-header]', '', $output); $dropdown = ''; } else { $dropdown = ''; $output = preg_replace('/\[dropdown-header\](.*?)\[\/dropdown-header\]/i', '', $output); } $output = str_replace('{pages-dropdown}', $dropdown, $output); //End dropdown $row['full'] = $row['full'][($page ? ($page - 1) : 0)]; //Start dropdown $row['full'] = str_replace($first_page[0].'{nl}', '', $row['full']); $row['full'] = str_replace($next_titles[0].'{nl}', '', $row['full']); //End dropdown if ($page_count > 1){ $output = str_replace('[page-link]', '', $output); $output = str_replace('[/page-link]', '', $output); for ($i = 1; $i < $page_count + 1; $i++){ if (($page and $page == $i) or ($allow_full_story and !$page and $i == 1)){ $pages .= ' '.$i.' '; } else { $pages .= ' '.$i.' '; } } } } else { $output = $template_active; $output = run_filters('news-show-generic', $output); } if ($cat_arr = explode(',', $row['category'])){ $cat = array(); foreach ($cat_arr as $v){ $cat['id'][] = $v; $cat['name'][] = ($cat_name[$v] ? ''.$cat_name[$v].'' : ''); $cat['icon'][] = ($cat_icon[$v] ? '' : ''); } } if ($row['full'] and !$allow_full_story){ $output = str_replace('[full-link]', '', $output); $output = str_replace('[/full-link]', '', $output); } if (!reset($cat['name'])){ $output = preg_replace('/\[catheader\](.*?)\[\/catheader\]/i', '', $output); } $output = str_replace('{id}', $row['id'], $output); $output = str_replace('{title}', run_filters('news-entry-content', $row['title']), $output); $output = str_replace('{date}', langdate($config_timestamp_active, $row['date']), $output); $output = str_replace('{author}', $user_name[$row['author']], $output); $output = str_replace('{avatar}', ($row['avatar'] ? '' : ''), $output); $output = str_replace('[catheader]', '', $output); $output = str_replace('[/catheader]', '', $output); $output = str_replace('{category}', join(', ', $cat['name']), $output); $output = str_replace('{category-icon}', join(', ', $cat['icon']), $output); $output = str_replace('{category-id}', join(', ', $cat['id']), $output); $output = str_replace('{short-story}', run_filters('news-entry-content', $row['short']), $output); $output = str_replace('{short-story-length}', strlen($row['short']), $output); $output = str_replace('{full-story}', run_filters('news-entry-content', $row['full']), $output); $output = str_replace('{full-story-length}', strlen($row['full']), $output); $output = str_replace('{avatar-url}', $row['avatar'], $output); $output = str_replace('{pages}', $pages, $output); $output = str_replace('{php-self}', $PHP_SELF, $output); $output = str_replace('{cutepath}', $config_http_script_dir, $output); $output = str_replace('{imagepath}', $config_path_image_upload, $output); $output = str_replace('{alternating}', $alternating, $output); $output = run_filters('news-entry', $output); $output = preg_replace('/{link=(.*?)}/ie', "cute_get_link('\\1')", $output); $output = preg_replace('/{date=(.*?)}/ie', "langdate('\\1', $row[date])", $output); $output = preg_replace('/\[page-link\](.*?)\[\/page-link\]/is', '', $output); $output = preg_replace('/\[full-link\](.*?)\[\/full-link\]/is', '', $output); $output = replace_news('show', $output); $cache = $output; file_write($cache_file, $cache); } if ($allow_full_story and $_POST['action'] != 'addcomment' and !$page){ $sql->update(array( 'table' => 'news', 'where' => array("id = $row[id]"), 'values' => array('views' => $row['views'] + 1) )); } $cache = run_filters('news-entry-dynamic', $cache); $cache = str_replace('{views}', $row['views'], $cache); $cache = str_replace('{comments}', $row['comments'], $cache); if (!global_cache){ if ($is_logged_in and ($member['level'] < 3 or $member['username'] == $row['author'])){ $cache = str_replace('[if-logged]', '', $cache); $cache = str_replace('[/if-logged]', '', $cache); $cache = preg_replace('/\[not-logged\](.*?)\[\/not-logged\]/i', '', $cache); } else { $cache = str_replace('[not-logged]', '', $cache); $cache = str_replace('[/not-logged]', '', $cache); $cache = preg_replace('/\[if-logged\](.*?)\[\/if-logged\]/i', '', $cache); } } echo $cache; } // << Previous & Next >> $PHP_SELF = @preg_replace($skip.'$', '', $_SERVER['REQUEST_URI']); $prev_next_msg = $template_prev_next; //---------------------------------- // Previous link //---------------------------------- if ($skip){ $prev_next_msg = preg_replace('/\[prev-link\](.*?)\[\/prev-link\]/si', '\\1', $prev_next_msg); } else { $prev_next_msg = preg_replace('/\[prev-link\](.*?)\[\/prev-link\]/si', '', $prev_next_msg); $no_prev = true; } //---------------------------------- // Pages //---------------------------------- if ($number){ $count = sizeof($sql->select(array('table' => 'news', 'where' => $where))); $count = ($allow_full_story ? 0 : $count); $pages_count = @ceil($count / $number); $pages_skip = 0; $pages = ''; $pages_section = 3; if ($pages_count > 10){ for ($j = 1; $j <= $pages_section; $j++){ if ($pages_skip != $skip){ $pages .= ''.$j.' '; } else { $pages .= ' '.$j.' '; } $pages_skip += $number; } if (((($skip / $number) + 1) > 1) and ((($skip / $number) + 1) < $pages_count)){ $pages .= ((($skip / $number) + 1) > ($pages_section + 2)) ? '... ' : ' '; $page_min = ((($skip / $number) + 1) > ($pages_section + 1)) ? ($skip / $number) : ($pages_section + 1); $page_max = ((($skip / $number) + 1) < ($pages_count - ($pages_section + 1))) ? (($skip / $number) + 1) : $pages_count - ($pages_section + 1); $pages_skip = ($page_min - 1) * $number; for ($j = $page_min; $j < $page_max + ($pages_section - 1); $j++){ if ($pages_skip != $skip){ $pages .= ''.$j.' '; } else { $pages .= ' '.$j.' '; } $pages_skip += $number; } $pages .= ((($skip / $number) + 1) < $pages_count - ($pages_section + 1)) ? '... ' : ' '; } else { $pages .= '... '; } $pages_skip = ($pages_count - $pages_section) * $number; for ($j = ($pages_count - ($pages_section - 1)); $j <= $pages_count; $j++){ if ($pages_skip != $skip){ $pages .= ''.$j.' '; } else { $pages .= ' '.$j.' '; } $pages_skip += $number; } } else { for ($j = 1; $j <= $pages_count; $j++){ if ($pages_skip != $skip){ $pages .= ''.$j.' '; } else { $pages .= ' '.$j.' '; } $pages_skip += $number; } } $prev_next_msg = str_replace('{pages}', $pages, $prev_next_msg); $prev_next_msg = str_replace('{current-page}', ($skip + $number) / $number, $prev_next_msg); $prev_next_msg = str_replace('{total-pages}', $pages_count, $prev_next_msg); } //---------------------------------- // Next link //---------------------------------- if ($skip + $number < $count){ $prev_next_msg = preg_replace('/\[next-link\](.*?)\[\/next-link\]/si', '\\1', $prev_next_msg); } else { $prev_next_msg = preg_replace('/\[next-link\](.*?)\[\/next-link\]/si', '', $prev_next_msg); $no_next = true; } $prev_next_msg = run_filters('prev-next-msg', $prev_next_msg); if (!$no_prev or !$no_next){ echo $prev_next_msg; } ?>