File: /var/www/www-root/data/www/NEWs/news.mowik.click/admin/offers.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="offer_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_offers">
<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="Показатель кликабельности">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['ahoffers'];
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_offers`"));
$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,url,cou,hide,hide,isprk,newtabtype,relasttab,s".$sub_get."_views AS `views`,s".$sub_get."_clk AS `clk`,s".$sub_get."_prk_clicks AS `prk_clicks`,dt FROM `t_offers` ORDER BY idx DESC LIMIT $start, $num");
} else {
$qr = mysqli_query($connect_db, "SELECT id AS `idx`,ti,img,url,cou,hide,views,clk,isprk,newtabtype,relasttab,prk_clicks,dt FROM `t_offers` 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,url,cou,hide,isprk,newtabtype,relasttab,dt,
(SELECT SUM(`s".$sub_get."_views`) AS `views` FROM `t_offers_stat` WHERE o = idx AND (ymd >= $dtfrom_sql AND ymd <= $dtto_sql)) AS `views`,
(SELECT SUM(`s".$sub_get."_clk`) AS `clk` FROM `t_offers_stat` WHERE o = idx AND (ymd >= $dtfrom_sql AND ymd <= $dtto_sql)) AS `clk`,
(SELECT SUM(`s".$sub_get."_prk_clk`) AS `prk_clicks` FROM `t_offers_stat` WHERE o = idx AND (ymd >= $dtfrom_sql AND ymd <= $dtto_sql)) AS `prk_clicks`
FROM `t_offers` ORDER BY idx DESC LIMIT $start, $num");
} else {
$qr = mysqli_query($connect_db, "SELECT id AS `idx`,ti,img,url,cou,hide,views,clk,isprk,newtabtype,relasttab,prk_clicks,dt,
(SELECT SUM(`views`) AS `views` FROM `t_offers_stat` WHERE o = idx AND (ymd >= $dtfrom_sql AND ymd <= $dtto_sql)) AS `views`,
(SELECT SUM(`clk`) AS `clk` FROM `t_offers_stat` WHERE o = idx AND (ymd >= $dtfrom_sql AND ymd <= $dtto_sql)) AS `clk`,
(SELECT SUM(`prk_clicks`) AS `prk_clicks` FROM `t_offers_stat` WHERE o = idx AND (ymd >= $dtfrom_sql AND ymd <= $dtto_sql)) AS `prk_clicks`
FROM `t_offers` ORDER BY idx DESC LIMIT $start, $num");
}
}
if ($co > 0) {
?>
<?php
while($row = mysqli_fetch_assoc($qr)) {
$views = intval($row['views']);
$clk = intval($row['clk']);
$prk_clicks = intval($row['prk_clicks']);
?>
<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="<?php echo htmlspecialchars($row['url']); ?>" 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; ?></td>
<td><?php echo $clk; ?></td>
<td>
<?php if ($row['isprk'] == 0) { ?>
<span class="text-muted" data-toggle="tooltip" data-placement="top" data-original-title="Прокладки нет"><?php echo $prk_clicks; ?></span>
<?php } else { ?>
<?php echo $prk_clicks; ?>
<?php } ?>
</td>
<td>
<span data-toggle="tooltip" data-placement="top" data-original-title="CTR кликов по офферу"><?php if ($clk > 0) { echo number_format($clk/$views*100,2,'.',','); } else { echo '0.00'; } ?>%</span>
<br />
<?php if ($row['isprk'] == 0) { ?>
<span class="text-muted" data-toggle="tooltip" data-placement="top" data-original-title="Прокладки нет"><?php if ($prk_clicks > 0) { echo number_format($prk_clicks/$clk*100,2,'.',','); } else { echo '0.00'; } ?>%</span>
<?php } else { ?>
<span data-toggle="tooltip" data-placement="top" data-original-title="CTR кликов в прокладке"><?php if ($prk_clicks > 0) { echo number_format($prk_clicks/$clk*100,2,'.',','); } else { echo '0.00'; } ?>%</span>
<?php } ?>
</td>
<td><?php if ($data['offers_newtab'] == 2) { if ($row['newtabtype'] == 1) { echo 'В новой вкладке'; } else { echo 'В этой же вкладке'; } if ($row['newtabtype'] == 1 && $row['relasttab'] == 1) { echo '<br />+ главная страница в старой'; } if ($row['newtabtype'] == 1 && $row['relasttab'] == 0) { echo '<br />без изменений в старой'; } if ($row['newtabtype'] == 1 && $row['relasttab'] == 2) { echo '<br />+ случайная новость в старой'; } } else { if ($data['offers_newtab'] == 1) { echo 'В новой вкладке'; } else { echo 'В этой же вкладке (глобальные настройки)'; } if ($data['offers_newtab'] == 1 && $data['offers_relasttab'] == 1) { echo '<br />+ главная страница в старой (глобальные настройки)'; } if ($data['offers_newtab'] == 1 && $data['offers_relasttab'] == 0) { echo '<br />без изменений в старой (глобальные настройки)'; } if ($data['offers_newtab'] == 1 && $data['offers_relasttab'] == 2) { echo '<br />+ случайная новость в старой (глобальные настройки)'; } } ?></td>
<td><?php if ($row['isprk'] == 0) { echo 'Нет'; } else { echo 'Есть'; } ?></td>
<td>
<a href="stat?offerstat=<?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="offer_links?id=<?php echo $row['idx']; ?>" class="btn btn-primary btn-sm <?php if ($row['isprk'] == 0) { echo 'disabled'; } ?>" data-toggle="tooltip" data-placement="bottom" data-original-title="Ссылки для прокладки"><i class="fa fa-link"></i></a>
<div style="margin-top: 6px;"></div>
<a href="offer_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="11"><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/offer_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/offer_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_offers').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'); ?>