вопрос
Есть вывод топ новостей с картинками.
Выводится по пять новостей с картинками из определенной категории.
Какие значения надо изменить для изменения интервала вывода топ новостей: ежедневно, еженедельно, ежемесячно ?
Выводится по пять новостей с картинками из определенной категории.
Какие значения надо изменить для изменения интервала вывода топ новостей: ежедневно, еженедельно, ежемесячно ?
///
function topnews_print ($custom_category){
global $db;
$custom_category = $db->safesql(str_replace(',', '|', $custom_category));
if(!defined('DATALIFEENGINE'))
{
die("Hacking attempt!");
}
function get_img_basic($text){
preg_match('|<img(.*) src="([^"]*)"[^>]*>|is', $text, $out);
return $out[2];
}
$w = 150; // Ширина Картинки
$h = 150; // Высота Картинки
$topnews = dle_cache("topnews", $config['skin']);
if (!$topnews) {
$this_month = date ('Y-m-d', time()-(3600*24*27));
$db->query("SELECT id, title, short_story, date, alt_name FROM " . PREFIX . "_post WHERE approve='1' AND category regexp '[[:<:]]($custom_category)[[:>:]]' AND date < '$this_month' + INTERVAL 1 MONTH ORDER BY rating DESC, comm_num DESC, news_read DESC, date DESC LIMIT 0,5");
while($row = $db->get_row()){
$row['date'] = strtotime($row['date']);
if (strlen($row['title']) > 55)
$title = substr ($row['title'], 0, 55)." ...";
else
$title = $row['title'];
$not_resized_image = get_img_basic($row['short_story']);
$resized_image = ROOT_DIR.'/uploads/topnews/'.basename($not_resized_image);
if (!file_exists( $resized_image )) { cropImage($w, $h, $not_resized_image, $resized_image);}
$img_t= str_replace('thumbs/','',$not_resized_image);
$images = '<img src="'.$config['http_home_url'].'/uploads/topnews/'.basename($not_resized_image).'" border="0" alt="'.$title.'">';
$go_page = ($config['ajax']) ? "onclick=\"DlePage('newsid=".$row['id']."'); return false;\" " : "";
if ($config['allow_alt_url'] == "yes")
$link = "<a {$go_page}href=\"". "/" .$row['id']."-".$row['alt_name'].".html\">".stripslashes($title)."</a>";
else
$link = "<a {$go_page}href= \"". "/" .date('Y/m/d/', $row['date']).$row['alt_name'].".html\">".stripslashes($title)."</a>";
$topnews .= "<br />".$link."<br />";
$topnews .= '<table width="98%">
<td width="1" height="1" align="center" valign="top">'.$images.'</td>
<td width="98%" valign="top" style="padding-left: 1px; padding-bottom: 1px; font-size:13px">
</tr>
</table>';
}
$db->free();
create_cache ("topnews", $topnews, $config['skin']);
}
return $topnews;
}
function cropImage($nw, $nh, $source, $dest)
{
$size = getimagesize($source);
$w = $size[0];
$h = $size[1];
$stypeArr = explode( '.', $source );
$stype = strtolower( end($stypeArr) );
switch($stype)
{
case 'gif':
$simg = imagecreatefromgif($source);
break;
case 'jpeg':
$simg = imagecreatefromjpeg($source);
break;
case 'jpg':
$simg = imagecreatefromjpeg($source);
break;
case 'png':
$simg = imagecreatefrompng($source);
break;
}
$dimg = imagecreatetruecolor($nw, $nh);
$wm = $w/$nw;
$hm = $h/$nh;
$h_height = $nh/2;
$w_height = $nw/2;
if($w> $h)
{
$adjusted_width = $w / $hm;
$half_width = $adjusted_width / 2;
$int_width = $half_width - $w_height;
imagecopyresampled($dimg,$simg,-$int_width,0,0,0,$adjusted_width,$nh,$w,$h);
}
elseif( ($w <$h) || ($w == $h) )
{
$adjusted_height = $h / $wm;
$half_height = $adjusted_height / 2;
$int_height = $half_height - $h_height;
imagecopyresampled($dimg,$simg,0,-$int_height,0,0,$nw,$adjusted_height,$w,$h);
}
else
{
imagecopyresampled($dimg,$simg,0,0,0,0,$nw,$nh,$w,$h);
}
imagejpeg($dimg,$dest,85);
}
///