HEX
Server: Apache/2.4.65 (Debian)
System: Linux srv39710 6.1.0-41-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.158-1 (2025-11-09) x86_64
User: root (0)
PHP: 8.4.11
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,
Upload Files
File: /var/www/www-root/data/www/NEWs/news.automoon.click/admin/news.php
<?php
$pname = 'Новости';
include('inc/top.php');
include('../inc/wu_pagination.php');
$data = mysqli_fetch_assoc(mysqli_query($connect_db, "SELECT * FROM `t_data` LIMIT 1"));
if (isset($_GET['date'])) {
$dte = explode('-', $_GET['date']);
$dtfrom = $dte[0];
$dtto = $dte[1];
$dtfrom_sql = mysqli_real_escape_string($connect_db, convdate($dtfrom));
$dtto_sql = mysqli_real_escape_string($connect_db, convdate($dtto));
} else {
$dtfrom = '';
$dtto = '';
}
?>
<!-- Контент -->

<h4>Новости <a href="news_add" class="btn btn-success pull-right">Добавить новость</a></h4>
<br />

<select class="form-control" id="subaccstat" style="max-width:200px;display:inline-block;margin-bottom:15px;">
<option value="" <?php if (!isset($_GET['sub'])) { echo 'selected="selected"'; } ?>>Общая статистика</option>
<option value="1" <?php if (isset($_GET['sub']) && $_GET['sub'] == 1) { echo 'selected="selected"'; } ?>><?php echo htmlspecialchars($data['sub1_name']); ?></option>
<option value="2" <?php if (isset($_GET['sub']) && $_GET['sub'] == 2) { echo 'selected="selected"'; } ?>><?php echo htmlspecialchars($data['sub2_name']); ?></option>
<option value="3" <?php if (isset($_GET['sub']) && $_GET['sub'] == 3) { echo 'selected="selected"'; } ?>><?php echo htmlspecialchars($data['sub3_name']); ?></option>
</select>
<br />

<div class="input-daterange" id="crabsdatepicker" style="max-width:200px;display:inline-block;">
<span class="add-on">Статистика с:</span>
<input type="text" class="form-control" id="statgo" value="<?php echo htmlspecialchars($dtfrom); ?>" />
</div>
<div class="input-daterange" id="crabsdatepicker2" style="max-width:200px;display:inline-block;">
<span class="add-on">По:</span>
<input type="text" class="form-control" id="statend" value="<?php echo htmlspecialchars($dtto); ?>" />
</div>
<a href="javascript://" id="statre" class="btn btn-primary" style="margin-top: -4px;"><i class="fa fa-check"></i></a>
<br />
<br />
<br />

<div class="table-responsive">
<table class="table table-hover table-sm tblvalign" id="tb_news">
<thead>
<tr>
<th scope="col">Картинка</th>
<th scope="col"><span>Название</span></th>
<th scope="col"><span data-toggle="tooltip" data-placement="top" data-original-title="Видимость">Видимость</span></th>
<th scope="col"><span data-toggle="tooltip" data-placement="top" data-original-title="В каких странах видна новость">Страны</span></th>
<th scope="col"><span data-toggle="tooltip" data-placement="top" data-original-title="Учитываются просмотры всех версий новости">Все просмотры</span></th>
<th scope="col"><span data-toggle="tooltip" data-placement="top" data-original-title="Учитываются просмотры только полной версии новости">Просмотры главной</span></th>
<th scope="col"><span data-toggle="tooltip" data-placement="top" data-original-title="Клики по офферам. Учитываются клики всех версий новости">Клики офферы</span></th>
<th scope="col"><span data-toggle="tooltip" data-placement="top" data-original-title="Клики по ссылкам внутри новости">Клики ссылки</span></th>
<th scope="col"><span data-toggle="tooltip" data-placement="top" data-original-title="Показатель кликабельности">CTR</span></th>
<th scope="col"><span data-toggle="tooltip" data-placement="top" data-original-title="Тип открытия новости">Тип открытия</span></th>
<th scope="col"><span data-toggle="tooltip" data-placement="top" data-original-title="Вкладка при открытии новости">Вкладка</span></th>
<th scope="col">Действия</th>
</tr>
</thead>
<tbody>
<?php
$num = $data['ahnews'];
if (isset($_GET['page'])) { $page = intval($_GET['page']); } else { $page = 0; } if ($page==0) { $page=1; }
$qu = mysqli_fetch_assoc(mysqli_query($connect_db, "SELECT count(`id`) AS `cnt` FROM `t_news`"));
$co = $qu['cnt'];
$total = intval(($co - 1) / $num) + 1;
$page = intval($page);
if(empty($page) or $page < 0) $page = 1;
if($page > $total) $page = $total;
$start = $page * $num - $num;
if (!isset($_GET['date'])) {
if (isset($_GET['sub'])) {
$sub_get = intval($_GET['sub']);
$qr = mysqli_query($connect_db, "SELECT id AS `idx`,ti,img,uchpu,hide,linktype,newtab,relasttab,cou,s".$sub_get."_views_all AS `views_all`,s".$sub_get."_views_main AS `views_main`,s".$sub_get."_clickouts AS `clickouts`,s".$sub_get."_lnkclick AS `lnkclick`,dt, (SELECT COUNT(`id`) AS `howlnks` FROM `t_news_links` WHERE n = idx LIMIT 1) AS `howlnks` FROM `t_news` ORDER BY idx DESC LIMIT $start, $num");
} else {
$qr = mysqli_query($connect_db, "SELECT id AS `idx`,ti,img,uchpu,hide,views_all,views_main,clickouts,linktype,newtab,relasttab,cou,lnkclick,dt, (SELECT COUNT(`id`) AS `howlnks` FROM `t_news_links` WHERE n = idx LIMIT 1) AS `howlnks` FROM `t_news` ORDER BY idx DESC LIMIT $start, $num");
}
} else {
if (isset($_GET['sub'])) {
$sub_get = intval($_GET['sub']);
$qr = mysqli_query($connect_db, "SELECT id AS `idx`,ti,img,uchpu,hide,linktype,newtab,relasttab,cou,dt,
(SELECT SUM(`s".$sub_get."_views_all`) AS `views_all` FROM `t_news_stat` WHERE n = idx AND (ymd >= $dtfrom_sql AND ymd <= $dtto_sql)) AS `views_all`,
(SELECT SUM(`s".$sub_get."_views_main`) AS `views_main` FROM `t_news_stat` WHERE n = idx AND (ymd >= $dtfrom_sql AND ymd <= $dtto_sql)) AS `views_main`,
(SELECT SUM(`s".$sub_get."_clickouts`) AS `clickouts` FROM `t_news_stat` WHERE n = idx AND (ymd >= $dtfrom_sql AND ymd <= $dtto_sql)) AS `clickouts`,
(SELECT SUM(`s".$sub_get."_lnkclick`) AS `lnkclick` FROM `t_news_stat` WHERE n = idx AND (ymd >= $dtfrom_sql AND ymd <= $dtto_sql)) AS `lnkclick`,
(SELECT COUNT(`id`) AS `howlnks` FROM `t_news_links` WHERE n = idx LIMIT 1) AS `howlnks`
FROM `t_news` ORDER BY idx DESC LIMIT $start, $num");
} else {
$qr = mysqli_query($connect_db, "SELECT id AS `idx`,ti,img,uchpu,hide,linktype,newtab,relasttab,cou,dt,
(SELECT SUM(`views_all`) AS `views_all` FROM `t_news_stat` WHERE n = idx AND (ymd >= $dtfrom_sql AND ymd <= $dtto_sql)) AS `views_all`,
(SELECT SUM(`views_main`) AS `views_main` FROM `t_news_stat` WHERE n = idx AND (ymd >= $dtfrom_sql AND ymd <= $dtto_sql)) AS `views_main`,
(SELECT SUM(`clickouts`) AS `clickouts` FROM `t_news_stat` WHERE n = idx AND (ymd >= $dtfrom_sql AND ymd <= $dtto_sql)) AS `clickouts`,
(SELECT SUM(`lnkclick`) AS `lnkclick` FROM `t_news_stat` WHERE n = idx AND (ymd >= $dtfrom_sql AND ymd <= $dtto_sql)) AS `lnkclick`,
(SELECT COUNT(`id`) AS `howlnks` FROM `t_news_links` WHERE n = idx LIMIT 1) AS `howlnks`
FROM `t_news` ORDER BY idx DESC LIMIT $start, $num");
}
}
if ($co > 0) {
?>
<?php
while($row = mysqli_fetch_assoc($qr)) {
$views_all = intval($row['views_all']);
$views_main = intval($row['views_main']);
$clickouts = intval($row['clickouts']);
$lnkclick = intval($row['lnkclick']);
if (empty($row['uchpu'])) { $nowchpu = '1'; } else { $nowchpu = htmlspecialchars($row['uchpu']); }
?>
<tr class="table-light">
<td><img src="/img/upl/<?php echo $row['img']; ?>" style="max-width:70px" /></td>
<td>
<span data-toggle="tooltip" data-placement="bottom" data-original-title="ID <?php echo $row['idx']; ?>, добавлено <?php echo wudate($row['dt'], 0); ?>">
<a href="/view/<?php echo $nowchpu.'.'.wu_encode($row['idx']); ?>" class="crabs_tilink" target="_blank"><?php echo htmlspecialchars($row['ti']); ?></a>
</span>
</td>
<td>
<div class="custom-control custom-checkbox">
<input type="checkbox" class="custom-control-input crabs_icheck" id="crabs_check_<?php echo $row['idx']; ?>"<?php if ($row['hide'] == 0) { echo ' checked=""'; } ?> onclick="crabs_checker('<?php echo $row['idx']; ?>')">
<label class="custom-control-label" for="crabs_check_<?php echo $row['idx']; ?>"></label>
</div>
</td>
<td><?php if (empty($row['cou'])) { echo 'Все'; } else { echo htmlspecialchars($row['cou']); } ?>
</td>
<td><?php echo $views_all; ?></td>
<td><?php echo $views_main; ?></td>
<td><?php echo $clickouts; ?></td>
<td><?php echo $lnkclick; ?></td>
<td>
<span data-toggle="tooltip" data-placement="top" data-original-title="CTR кликов по офферам"><?php if ($clickouts > 0) { echo number_format($clickouts/$views_all*100,2,'.',','); } else { echo '0.00'; } ?>%</span>
<br />
<?php if ($row['howlnks'] == 0) { ?>
<span class="text-muted" data-toggle="tooltip" data-placement="top" data-original-title="Ссылок нет"><?php if ($lnkclick > 0) { echo number_format($lnkclick/$views_main*100,2,'.',','); } else { echo '0.00'; } ?>%</span>
<?php } else { ?>
<span data-toggle="tooltip" data-placement="top" data-original-title="CTR кликов по ссылкам"><?php if ($lnkclick > 0) { echo number_format($lnkclick/$views_main*100,2,'.',','); } else { echo '0.00'; } ?>%</span>
<?php } ?>
</td>
<td><?php if ($data['news_linktype'] == 3) { if ($row['linktype'] == 0) { echo 'Открыть статью,<br />читать полностью'; } if ($row['linktype'] == 1) { echo 'Читать полностью'; } if ($row['linktype'] == 2) { echo 'Прямое открытие (глобальные настройки)'; } } else { if ($data['news_linktype'] == 0) { echo 'Открыть статью,<br />читать полностью (глобальные настройки)'; } if ($data['news_linktype'] == 1) { echo 'Читать полностью (глобальные настройки)'; } if ($data['news_linktype'] == 2) { echo 'Прямое открытие (глобальные настройки)'; } } ?></td>
<td><?php if ($data['news_newtab'] == 2) { if ($row['newtab'] == 1) { echo 'В новой вкладке'; } else { echo 'В этой же вкладке'; } if ($row['newtab'] == 1 && $row['relasttab'] == 1) { echo '<br />+ главная страница в старой'; } if ($row['newtab'] == 1 && $row['relasttab'] == 0) { echo '<br />без изменений в старой'; } if ($row['newtab'] == 1 && $row['relasttab'] == 2) { echo '<br />+ случайная новость в старой'; } } else { if ($data['news_newtab'] == 1) { echo 'В новой вкладке'; } else { echo 'В этой же вкладке (глобальные настройки)'; } if ($data['news_newtab'] == 1 && $data['news_relasttab'] == 1) { echo '<br />+ главная страница в старой (глобальные настройки)'; } if ($data['news_newtab'] == 1 && $data['news_relasttab'] == 0) { echo '<br />без изменений в старой (глобальные настройки)'; } if ($data['news_newtab'] == 1 && $data['news_relasttab'] == 2) { echo '<br />+ случайная новость в старой (глобальные настройки)'; } } ?></td>
<td>
<a href="stat?newstat=<?php echo $row['idx']; ?>" target="_blank" class="btn btn-primary btn-sm" data-toggle="tooltip" data-placement="bottom" data-original-title="Статистика"><i class="fa fa-bar-chart"></i></a> 
<a href="news_links?id=<?php echo $row['idx']; ?>" class="btn btn-primary btn-sm" data-toggle="tooltip" data-placement="bottom" data-original-title="Ссылки"><i class="fa fa-link"></i></a> 
<div style="margin-top: 6px;"></div>
<a href="news_edit?id=<?php echo $row['idx']; ?>" class="btn btn-primary btn-sm" data-toggle="tooltip" data-placement="bottom" data-original-title="Редактирование"><i class="fa fa-pencil"></i></a> 
<a href="javascript://" onclick="idel('<?php echo $row['idx']; ?>');" class="btn btn-danger btn-sm" data-toggle="tooltip" data-placement="bottom" data-original-title="Удаление новости"><i class="fa fa-trash-o"></i></a> 
</td>
</tr>
<?php
}
} else {
?>
<tr class="table-light"><td colspan="12"><center>Нет данных</center></td></tr>
<?php } ?>
</tbody>
</table>
</div>
<?php
$pageNav = new SimPageNav();
$pages = ceil($co/$num);
echo $pageNav->getLinks($pages, 1, $page, 10, 'page');
?>

<script type='text/javascript'>
function crabs_checker(id){
var check = $('#crabs_check_'+id).prop('checked');
$.ajax({
type: 'POST',
url: '/actions/news_hide.php',
data: {'id': id, 'check': check, 'token': crabs_tkn},
cache: false,
success: function(result){
if (result == '1') {
$.jGrowl('Сохранено', { theme: 'growl-success' });
}
if (result == 'error') {
$.jGrowl('Ошибка', { theme: 'growl-error' });
}
if (result == 'demo') {
$.jGrowl('Недоступно в демо аккаунте', { theme: 'growl-error' });
}
},
error: function(){
$.jGrowl('Ошибка сервера', { theme: 'growl-error' });
}
});
}

function idel(id){
if (confirm("Удалить?")) {
$.ajax({
type: 'POST',
url: '/actions/news_del.php',
data: {'id': id, 'token': crabs_tkn},
cache: false,
success: function(result){
if (result == '1') {
location.reload();
}
if (result == 'error') {
$.jGrowl('Ошибка', { theme: 'growl-error' });
}
if (result == 'demo') {
$.jGrowl('Недоступно в демо аккаунте', { theme: 'growl-error' });
}
},
error: function(){
$.jGrowl('Ошибка сервера', { theme: 'growl-error' });
}
});
}
}

$('#subaccstat').change(function(){
var pg = $('#subaccstat').val();
var nowurl = window.location.href;
var newurl = updateURLParameter(nowurl,'sub',pg);
$(location).attr('href',newurl);
});

$(document).ready(function() {
$('#tb_news').DataTable({
"paging": false,
"searching": false,
"autoWidth": true,
"info": false
});



$('#statre').click(function(){
var dt1 = $('#statgo').val();
var dt2 = $('#statend').val();
if (dt1 === "" || dt2 === "") { ndt = ''; } else { ndt = dt1+'-'+dt2; }
var nowurl = window.location.href;
var newurl = updateURLParameter(nowurl,'date',ndt);
$(location).attr('href',newurl);
});



$('#crabsdatepicker').datepicker({
format: "dd.mm.yyyy",
orientation: "bottom auto",
language: "ru",
todayHighlight: true
});

$('#crabsdatepicker2').datepicker({
format: "dd.mm.yyyy",
orientation: "bottom auto",
language: "ru",
todayHighlight: true
});

});
</script>

<!-- /Контент -->
<?php include('inc/bottom.php'); ?>