Вход Регистрация
Файл: profiwm.pp.ua/news.php
Строк: 204
<?php

require 'system/sid.php';
require 
'system/config.php';
include 
'system/user.php';
include 
'system/head.php';
include 
'system/navigator.php';

whorm(0, 'news');

echo 
$div_title . 'Новости' . $div_end;

$do = isset($_GET['do']) ? $_GET['do'] : NULL;
switch(
$do) {
default:
$look = mysql_result(mysql_query("SELECT COUNT(id) FROM `news`"), 0);

if (
$look != false) {
    
$n = new navigator($look, 10, '?');
    
$result = mysql_query("SELECT `news`.*,(SELECT COUNT(id) FROM `newscomm` WHERE `newscomm`.`id_new` = `news`.`id`) AS c FROM `news` ORDER BY `news`.`id` DESC {$n->limit}");

    
$i = 0;
    while(
$sql = mysql_fetch_assoc($result)) {

    
$cont = (mb_strlen($sql['content'], 'UTF8') > 100)
           ? 
mb_substr($sql['content'], 0, 100, 'UTF8') . '...'
           
: $sql['content'];

    echo (
$i ++ % 2) ? $div_tworazdel : $div_razdel;
    echo  
'<a href="news-view-'.$sql['id'].'">' . $sql['name'] . '</a>
           <br/> ' 
. bb_code($cont) . '<br/><a href="news-view-'.$sql['id'].'">Комментарии (' . $sql['c'] . ')</a>' . $div_end;

    }
        echo 
$n->navi();
    } else {
        echo 
'Новостей нет!<br/>';
}
break;

case 
view:
$i = my_int($_GET['i']);
$n = mysql_query("SELECT * FROM `news` WHERE `id` = '$i' LIMIT 1");
$inf = mysql_fetch_assoc($n);

if (!isset(
$_SESSION["newlook$i"])) $_SESSION[$i] = 0;
if (
$_SESSION["newlook$i"] <> 1) {
    
$_SESSION["newlook$i"]++;
    
mysql_query("UPDATE `news` SET `look` = `look` + '1' WHERE `id` = '$i'");
}

    
//-------------------------------------------//
    
$sqlLenta = mysql_query("SELECT id FROM lenta WHERE user = '$user[id]' AND `read` = '1' AND type = 'comments' AND uid = 'new$i' LIMIT 1");
    if (
mysql_num_rows($sqlLenta) != false)
    {
        
mysql_query("UPDATE lenta SET `read` = '0' WHERE user = '$user[id]' AND `read` = '1' AND type = 'comments' AND uid = 'new$i' LIMIT 1");
    }
    
//-------------------------------------------//

    // положительный голос
    
if (isset($_GET['like']))
    {
        
$prv = mysql_query("SELECT `id` FROM `rating_news` WHERE `uid` = '$i' AND `who` = '$user[id]' LIMIT 1");
        if (
mysql_num_rows($prv) != FALSE) {
            
err('Вы уже голосовали!');
        } else {
            
mysql_query("INSERT INTO `rating_news` SET `uid` = '$i', `who` = '$user[id]', `like` = '1'");
            
msg('Ваш голос принят!');
        }
    }

    
// отрицательный голос
    
if (isset($_GET['dlike']))
    {
        
$prv = mysql_query("SELECT `id` FROM `rating_news` WHERE `uid` = '$i' AND `who` = '$user[id]' LIMIT 1");
        if (
mysql_num_rows($prv) != FALSE) {
            
err('Вы уже голосовали!');
        } else {
            
mysql_query("INSERT INTO `rating_news` SET `uid` = '$i', `who` = '$user[id]', `dlike` = '1'");
            
msg('Ваш голос принят!');
        }
    }

if (
mysql_num_rows($n) == FALSE) {
    
header('Location: news.php');
} else {
    
$edit = (!empty($inf['edit'])) ? $div_razdel . 'Редактировалось: ' . itime($inf['edit'], 0) . $div_end : '';
    if (
$user['level'] == 4 || $user['level'] == 5)
    {
        
$_edit = '<a href="aenew-editnews-'.$inf['id'].'"><img src="ico/edit.png" alt=""/></a>
                  <a href="adnew-delnews-'
.$inf['id'].'"><img src="ico/delete.png" alt=""/></a> ';
    }
    elseif (
$user['level'] == 3)
    {
        
$_edit = '<a href="menew-editnews-'.$inf['id'].'"><img src="ico/edit.png" alt=""/></a>
                  <a href="mdnew-delnews-'
.$inf['id'].'"><img src="ico/delete.png" alt=""/></a> ';
    }

    
$inf['content'] = smiles(bb_code($inf['content']));
    echo 
itime($inf['date'], 0) . $block . $_edit . $inf['content'] . $edit . $block . '
         Просмотров: ' 
. $inf['look'] . $block;

    
// Голосование //
    
$i_vote = mysql_query("SELECT `id` FROM `rating_news` WHERE `uid` = '$i' AND `who` = '$user[id]' LIMIT 1");
    
$like = mysql_result(mysql_query("SELECT SUM(`like`) FROM `rating_news` WHERE `uid` = '$i'"), 0);
    
$dlike = mysql_result(mysql_query("SELECT SUM(`dlike`) FROM `rating_news` WHERE `uid` = '$i'"), 0);
    
$rat_1 = (empty($like)) ? 0 : $like;
    
$rat_2 = (empty($dlike)) ? 0 : $dlike;

    if (
mysql_num_rows($i_vote) == FALSE) {
        echo 
'<a href="wl-whovote-'.$i.'-1">' . $rat_1 . '</a>
              <a href="lnewview-'
.$i.'&amp;like">
              <img src="ico/plus.png" alt="+"/></a>
              Голосовать
              <a href="lnewview-'
.$i.'&amp;dlike">
              <img src="ico/minus.png" alt="-"/></a><a href="wl-whovote-'
.$i.'-2"> ' . $rat_2 . '</a>' . $block;
    } else {
        echo 
'<img src="ico/plus.png" alt="+"/><a href="wl-whovote-'.$i.'-1"> ' . $rat_1 . '</a> |
              <img src="ico/minus.png" alt="-"/><a href="wl-whovote-'
.$i.'-2"> ' . $rat_2 . '</a>' . $block;
    }
    
// Голосование //

}

if (isset(
$_GET['order']) && $_GET['order'] == 2) {
   
$sort = '<b>вверху</b> | <a href="sortnew-view-'.$i.'-1">внизу</a>';
   
$ord = 'DESC';
} elseif (isset(
$_GET['order']) && $_GET['order'] == 1) {
   
$sort = '<a href="sortnew-view-'.$i.'-2">вверху</a> | <b>внизу</b>';
   
$ord = 'ASC';
} else {
   
$sort = '<a href="sortnew-view-'.$i.'-2">вверху</a> | <b>внизу</b>';
   
$ord = 'ASC';
}

echo 
$div_menu . 'Новые: ' . $sort . $div_end;

$coms = mysql_result(mysql_query("SELECT COUNT(id) FROM `newscomm` WHERE `id_new` = '$i'"), 0);
if (
$coms > 10) {
    
$pg = ceil($coms / 10);
    
$st = '&page=' . $pg;
} else {
     
$st = '';
}


if (isset(
$_GET['d'])) {
   
$d = my_int($_GET['d']);

    if (
$user['level'] < 2) {
        
header('Location: news-view-' . $i);
        die();
    }

     
$ecom = mysql_query("SELECT `id` FROM `newscomm` WHERE `id` = '$d' LIMIT 1");
      if (
mysql_num_rows($ecom) != FALSE) {
         
mysql_query("DELETE FROM `newscomm` WHERE `id` = '$d' LIMIT 1");
         
header('Location: news-view-' . $i . $st);
      } else {
         
header('Location: news-view-' . $i . $st);
  }
}

if (isset(
$_POST['add_com'])) {
    
$mes = trim(mysql_real_escape_string(check($_POST['mes'])));
       if (empty(
$mes)) {
          
header('Location: news-view-' . $i . $st);
       } else {

    
// транслит
    
if ($user['translit'] == 1) {
         
$mes = trun_to_rus($mes);
    }

    
// антимат
    
$ant = mysql_fetch_array(mysql_query("SELECT `antimat` FROM `setting` WHERE `ids` = '1'"));
    
$mes = ($ant[0] == 1) ? mat($mes) : $mes;

    
// Антиреклама
    
$_ant = mysql_fetch_assoc(mysql_query("SELECT `on_rekl`, `text_rekl` FROM `setting` WHERE `ids` = '1'"));

 if (
$_ant['on_rekl'] == 1 && filesize($_SERVER['DOCUMENT_ROOT'] . '/domains.dat') > 0) {
    
$ex = explode(',', file_get_contents('domains.dat'));
    foreach(
$ex as $value) {
            if (
$user['level'] != 4 && $user['level'] != 5 && !preg_match('/[url=http://(.*)[/url]/si', $mes)) {
             
$mes = preg_replace("/(ws|,|.|*|_|-|+)+$value/si", $_ant['text_rekl'], $mes);
         }
    }
 }

    
// Оповещание последнему постеру
            
$lst = mysql_fetch_assoc(mysql_query("SELECT `user` FROM `newscomm` WHERE
                                                 `id_new` = '
$i'
                                                 ORDER BY `id` DESC LIMIT 1"
));

        if (
$user['id'] != $lst['user']) {

            
$NameNew = mysql_fetch_array(mysql_query("SELECT `name` FROM `news` WHERE `id` = '$i' LIMIT 1"));

              
$message = 'Оставлено сообщение к новости <a href="news-view-'.$i.$st.'">' . $NameNew[0] . '</a>.';
              
mysql_query("INSERT INTO `lenta` SET
                            `user` = '
$lst[user]',
                          `text` = '
$message',
                          `type` = 'comments',
                          `date` = '" 
. time() . "',
                          `uid` = 'new
$i',
                          `read` = '1'"
);
        }

          
mysql_query("INSERT INTO `newscomm` SET
                       `date` = '" 
. date('d.m.y H:i') . "',
                       `msg` = '
$mes',
                       `id_new` = '
$i',
                       `user` = '
$user[id]'");
          
header('Location: news-view-' . $i . $st);
       }
}

if (
$coms != false) {
    
$n = new navigator($coms, $user['onp_comments'], 'news-view-'.$i.$st.'&amp;');
    
$res = mysql_query("SELECT * FROM `newscomm` WHERE `id_new` = '$i' ORDER BY `id` $ord {$n->limit}");

    while(
$s = mysql_fetch_assoc($res)) {
        
$del = ($user['level'] >= 2 && $user['level'] <= 5) ? '<a href="dcnew-'.$s['id'].'"><img src="ico/delete.png" alt=""/></a> ' : '';

        
$otv = ' <a href="answ-cnew-view-'.$i.'-'.$s['user'].$st.'#down">[отв]</a>';

        echo 
$div_razdel . $del . us($s['user']) . $otv . ' (' . $s['date'] . ')' . $div_end . $div_tworazdel . smiles(bb_code($s['msg'])) . $div_end;
  }
           echo 
$n->navi();
 } else {
          echo 
'Комментариев нет!<br/>';
}

$Komu = (isset($_GET['k'])) ? '[b]Ответ: ' . user_inf(my_int($_GET['k']), 'user') . '[/b], ' : '';

echo 
'<a name="down"></a>
      <b>Комментарий:</b><br/>
      <FORM method="POST" action="news-view-'
.$i.$st.'">
      <textarea name="mes" cols="50" rows="5" style="width: 99%;">' 
. $Komu . '</textarea>
      <br/>
      <input type="submit" name="add_com" value="Добавить"/>
      </FORM>'
;
break;

case 
whovote:
    
$id = my_int($_GET['id']);
    
$v = my_int($_GET['v']);

    
$sql = mysql_query("SELECT id FROM news WHERE id = '$id' LIMIT 1");
    if (
mysql_num_rows($sql) == false)
    {
        
err('Ошибка!');
    } elseif (
$v != 1 && $v != 2) {
        
err('Ошибка!');
    } else {
        
$var = ($v == 1) ? '`like`' : 'dlike';
        
$sel = mysql_result(mysql_query("SELECT COUNT(id) FROM rating_news WHERE uid = '$id' AND $var = '1'"), 0);
        if (
$sel != 0)
        {
            
$n = new navigator($sel, 10, 'wl-whovote-'.$id.'-'.$v.'&amp;');
            
$res = mysql_query("SELECT * FROM rating_news WHERE uid = '$id' AND $var = '1' ORDER BY id DESC {$n->limit}");
            
$i = 0;
            while(
$a = mysql_fetch_assoc($res))
            {
                echo (
$i ++ % 2) ? $div_razdel : $div_tworazdel;
                echo 
us($a['who']) . $div_end;
            }
            echo 
$n->navi();
        } else {
            echo 
'За этот вариант никто не голосовал.<br/>';
        }
    }
    echo 
'&laquo; <a href="news-view-'.$id.'">Назад</a>';
break;

}

include 
'system/foot.php';
?>
Онлайн: 2
Реклама