409 lines
17 KiB
PHP
409 lines
17 KiB
PHP
|
|
<?php
|
|||
|
|
require_once($_SERVER['DOCUMENT_ROOT'] . "/config.php");
|
|||
|
|
|
|||
|
|
ini_set('display_errors', 1);
|
|||
|
|
error_reporting(E_ALL & ~E_DEPRECATED & ~E_STRICT & ~E_NOTICE);
|
|||
|
|
|
|||
|
|
// закрываем доступ на выполнение запросов
|
|||
|
|
if (!isset($_SESSION['superadmin'])) {
|
|||
|
|
header("location:/index.php");
|
|||
|
|
die("Доступ запрещён!");
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
include $_SERVER['DOCUMENT_ROOT'] . '/import/obj/ImportRecord.php';
|
|||
|
|
include $_SERVER['DOCUMENT_ROOT'] . '/import/obj/Builder.php';
|
|||
|
|
|
|||
|
|
if (isset($_POST['add_builder'])) {
|
|||
|
|
|
|||
|
|
$err = "";
|
|||
|
|
|
|||
|
|
$post = clearInputData($_POST);
|
|||
|
|
|
|||
|
|
if ($_FILES['logo']['name']) {
|
|||
|
|
if ($_FILES['logo']['error'] == UPLOAD_ERR_OK) {
|
|||
|
|
list($a, $ext) = explode("/", $_FILES['logo']['type']);
|
|||
|
|
if ($ext == "pjpeg") {
|
|||
|
|
$ext = "jpeg";
|
|||
|
|
}
|
|||
|
|
$ext = mb_strtolower($ext);
|
|||
|
|
if ($ext == "jpeg" or $ext == "jpg" or $ext == "png") {
|
|||
|
|
$name = md5($_FILES['logo']['tmp_name'] . time()) . "." . $ext;
|
|||
|
|
$photo = $_SERVER['DOCUMENT_ROOT'] . "/photos/builder/" . $name;
|
|||
|
|
if (!is_dir($_SERVER['DOCUMENT_ROOT'] . "/photos/builder")) {
|
|||
|
|
mkdir($_SERVER['DOCUMENT_ROOT'] . "/photos/builder");
|
|||
|
|
}
|
|||
|
|
if (move_uploaded_file($_FILES['logo']['tmp_name'], $photo)) {
|
|||
|
|
$size = getimagesize($photo);
|
|||
|
|
if ($size[0] > 272) {
|
|||
|
|
resize_img(272, $photo, $photo);
|
|||
|
|
}
|
|||
|
|
$post['hidden_logo'] = $name;
|
|||
|
|
}
|
|||
|
|
} else {
|
|||
|
|
if (strlen($err) > 0) {
|
|||
|
|
$err = $err . "<br/>";
|
|||
|
|
}
|
|||
|
|
$err .= "Неверный тип файла. Допустимые типы - jpg или png.";
|
|||
|
|
}
|
|||
|
|
} else {
|
|||
|
|
if ($_FILES['logo']['error'] == UPLOAD_ERR_FORM_SIZE) {
|
|||
|
|
if (strlen($err) > 0) {
|
|||
|
|
$err = $err . "<br/>";
|
|||
|
|
}
|
|||
|
|
$err .= "Превышен размер файла. Допустимый размер 1-2 Mb.";
|
|||
|
|
} else {
|
|||
|
|
if (strlen($err) > 0) {
|
|||
|
|
$err = $err . "<br/>";
|
|||
|
|
}
|
|||
|
|
$err .= "Ошибка при загрузке: ".$_FILES['logo']['error'];
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (isset($post['id'])) {
|
|||
|
|
if (strlen($err) == 0) {
|
|||
|
|
$builderToSave = new Builder();
|
|||
|
|
$builderToSave->newRecord = false;
|
|||
|
|
$builderToSave->name = $post['hidden_name'];
|
|||
|
|
$builderToSave->id = $post['id'];
|
|||
|
|
$builderToSave->fee = $post['fee'];
|
|||
|
|
$builderToSave->note = $post['note'];
|
|||
|
|
$builderToSave->discount_fee = $post['discount_fee'];
|
|||
|
|
$builderToSave->pay_period = $post['pay_period'];
|
|||
|
|
$builderToSave->adv = $post['adv'];
|
|||
|
|
$builderToSave->logo = $post['hidden_logo'];
|
|||
|
|
$builderToSave->save();
|
|||
|
|
|
|||
|
|
header("location:/admin/builders.php");
|
|||
|
|
exit();
|
|||
|
|
}
|
|||
|
|
} else {
|
|||
|
|
if (strlen($err) > 0) {
|
|||
|
|
$err = $err . "<br/>";
|
|||
|
|
}
|
|||
|
|
$err .= "Не найден идентификатор застройщика в запросе.";
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$get = clearInputData($_GET);
|
|||
|
|
|
|||
|
|
if (!isset($get['id'])) {
|
|||
|
|
header("location:/admin/builders.php");
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
require_once($_SERVER['DOCUMENT_ROOT'] . "/templates/header-admin.php");
|
|||
|
|
|
|||
|
|
if (!isset($post) && $get['id'] > 0) {
|
|||
|
|
$builder = Builder::findOne($get['id']);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
?>
|
|||
|
|
|
|||
|
|
<div class="main-title">
|
|||
|
|
<h1>Редактирование застройщика</h1>
|
|||
|
|
</div>
|
|||
|
|
|
|||
|
|
<div class="users fr__users" style="margin-right: 20px;">
|
|||
|
|
|
|||
|
|
<div class="new-object">
|
|||
|
|
<form method="post" enctype="multipart/form-data" id="upload-form">
|
|||
|
|
<div class="new-object__form">
|
|||
|
|
<?php if (isset($err) && strlen($err) > 0) { ?>
|
|||
|
|
<div class="block" style="border-bottom: none; color: red;"><?php echo $err; ?></div>
|
|||
|
|
<?php } ?>
|
|||
|
|
|
|||
|
|
<div class="block">
|
|||
|
|
<div class="line">
|
|||
|
|
<div class="label">
|
|||
|
|
<span>Название:</span>
|
|||
|
|
</div>
|
|||
|
|
<div class="inputs">
|
|||
|
|
<input type="text" class="text" name="name" disabled="disabled" style="width: 75%;"
|
|||
|
|
value="<? if (isset($post)) echo $post['hidden_name'];
|
|||
|
|
if (isset($builder)) echo $builder->name; ?>">
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
|
|||
|
|
<div class="line">
|
|||
|
|
<div class="label" style="width: 230px;">
|
|||
|
|
<span>Комиссия:</span>
|
|||
|
|
</div>
|
|||
|
|
<div class="inputs">
|
|||
|
|
<input type="number" step="0.1" min="0" max="100" class="text" name="fee"
|
|||
|
|
value="<? if (isset($post)) echo $post['fee'];
|
|||
|
|
if (isset($builder)) echo $builder->fee; ?>">
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
|
|||
|
|
<div class="line">
|
|||
|
|
<div class="label" style="width: 230px;">
|
|||
|
|
<span>Комиссия переуступок:</span>
|
|||
|
|
</div>
|
|||
|
|
<div class="inputs">
|
|||
|
|
<input type="number" step="0.1" min="0" max="100" class="text" name="discount_fee"
|
|||
|
|
value="<? if (isset($post)) echo $post['discount_fee'];
|
|||
|
|
if (isset($builder)) echo $builder->discount_fee; ?>">
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
|
|||
|
|
<div class="line">
|
|||
|
|
<div class="label" style="width: 230px;">
|
|||
|
|
<span>Срок выплаты комиссионных застройщиком:</span>
|
|||
|
|
</div>
|
|||
|
|
<div class="inputs">
|
|||
|
|
<input type="text" class="text" name="pay_period"
|
|||
|
|
value="<? if (isset($post)) echo $post['pay_period'];
|
|||
|
|
if (isset($builder)) echo $builder->pay_period; ?>">
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
|
|||
|
|
<div class="line">
|
|||
|
|
<div class="label">
|
|||
|
|
<span>Заметка:</span>
|
|||
|
|
</div>
|
|||
|
|
<div class="inputs">
|
|||
|
|
<textarea name="note" style="width: 75%;"><? if (isset($post)) echo $post['note'];
|
|||
|
|
if (isset($builder) && $builder->note) { echo str_replace("<br>", "\n", $builder->note); } ?></textarea>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
|
|||
|
|
<div class="line">
|
|||
|
|
<div class="label">
|
|||
|
|
<span>Реклама:</span>
|
|||
|
|
</div>
|
|||
|
|
<div class="inputs">
|
|||
|
|
<textarea name="adv" style="width: 75%;"><? if (isset($post)) echo $post['adv'];
|
|||
|
|
if (isset($builder)) echo $builder->adv; ?></textarea>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
|
|||
|
|
<div class="line">
|
|||
|
|
<div class="label">
|
|||
|
|
<span>Логотип:</span>
|
|||
|
|
</div>
|
|||
|
|
<div class="inputs">
|
|||
|
|
<input type="hidden" name="MAX_FILE_SIZE" value="3000000"/>
|
|||
|
|
<input style="border: 1px solid white;" type="file" accept="image/jpeg,image/png"
|
|||
|
|
class="text" name="logo"/>
|
|||
|
|
<div class="text_comment" style="margin-left: 123px; font-size: 12px;">
|
|||
|
|
<p>JPG, PNG (квадрат 272х272 пиксела)</p>
|
|||
|
|
<div id="upload-result"></div>
|
|||
|
|
</div>
|
|||
|
|
<div <?php if(isset($builder) && $builder->logo) echo "style='margin-left: 123px;margin-top: 10px;height: 272px; width: 272px; background:url(/photos/builder/".$builder->logo.") no-repeat'"; ?>>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
|
|||
|
|
<div class="line" style="text-align: right">
|
|||
|
|
<button type="submit" class="medium-button">Сохранить</button>
|
|||
|
|
<a href="/admin/builders.php" class="cancel-button medium-button">Закрыть</a>
|
|||
|
|
</div>
|
|||
|
|
<input type="hidden" name="add_builder" value="1">
|
|||
|
|
<input type="hidden" name="hidden_logo" value="<?php if (isset($builder)) {
|
|||
|
|
echo $builder->logo;
|
|||
|
|
} else {
|
|||
|
|
if (isset($post)) {
|
|||
|
|
echo $post['hidden_logo'];
|
|||
|
|
}
|
|||
|
|
} ?>">
|
|||
|
|
<input type="hidden" name="hidden_name" value="<?php if (isset($builder)) {
|
|||
|
|
echo $builder->name;
|
|||
|
|
} else {
|
|||
|
|
if (isset($post)) {
|
|||
|
|
echo $post['hidden_name'];
|
|||
|
|
}
|
|||
|
|
} ?>">
|
|||
|
|
<input type="hidden" name="id" value="<?php if (isset($builder)) {
|
|||
|
|
echo $builder->id;
|
|||
|
|
} else {
|
|||
|
|
if (isset($post)) {
|
|||
|
|
echo $post['id'];
|
|||
|
|
}
|
|||
|
|
} ?>">
|
|||
|
|
<div class="clear"></div>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
</form>
|
|||
|
|
<!-- Отзовы застройщиков -->
|
|||
|
|
|
|||
|
|
<div class="tabs__content">
|
|||
|
|
<div style="padding: 15px">
|
|||
|
|
<style>
|
|||
|
|
.review_builder_del_btn {
|
|||
|
|
color: #e77;
|
|||
|
|
cursor: pointer;
|
|||
|
|
}
|
|||
|
|
</style>
|
|||
|
|
<link rel="stylesheet" href="https://cdn.datatables.net/1.10.19/css/jquery.dataTables.min.css">
|
|||
|
|
<h2 style="margin-bottom: 15px">Отзывы</h2>
|
|||
|
|
<div id="reviews_builder_wrap">
|
|||
|
|
<?php
|
|||
|
|
$sql = "SELECT * FROM builder_reviews WHERE builder_id=".$builder->id;
|
|||
|
|
|
|||
|
|
$reviews = [];
|
|||
|
|
try {
|
|||
|
|
$result = mysql_query($sql);
|
|||
|
|
while ($obj = mysql_fetch_assoc($result)) {
|
|||
|
|
$reviews[$obj['id']] = $obj;
|
|||
|
|
}
|
|||
|
|
} catch (Exception $e) {
|
|||
|
|
echo $e->getMessage();
|
|||
|
|
}
|
|||
|
|
?>
|
|||
|
|
|
|||
|
|
<table id="reviews_builder_table_id" class="display reviews_table_id">
|
|||
|
|
<thead>
|
|||
|
|
<tr>
|
|||
|
|
<th>id</th>
|
|||
|
|
<th>Имя</th>
|
|||
|
|
<th>Отзыв</th>
|
|||
|
|
<th>Дата</th>
|
|||
|
|
<th></th>
|
|||
|
|
</tr>
|
|||
|
|
</thead>
|
|||
|
|
<tbody>
|
|||
|
|
<?php
|
|||
|
|
foreach ($reviews as $id => $review) {
|
|||
|
|
?>
|
|||
|
|
<tr>
|
|||
|
|
<td><?php echo $id ?></td>
|
|||
|
|
<td><?php echo $review['name'] ?></td>
|
|||
|
|
<td><?php echo $review['review'] ?></td>
|
|||
|
|
<td><?php echo date('d.m.Y H:i', strtotime($review['date'])) ?></td>
|
|||
|
|
<td><span class="review_builder_del_btn" id="<?php echo $id ?>">Удалить</span></td>
|
|||
|
|
</tr>
|
|||
|
|
<?php
|
|||
|
|
}
|
|||
|
|
?>
|
|||
|
|
</tbody>
|
|||
|
|
</table>
|
|||
|
|
|
|||
|
|
</div>
|
|||
|
|
<div>
|
|||
|
|
<button builder_id="<?php echo $builder->id ?>" class="medium-button action-button actionJW show_add_review_btn block_features_btn">Добавить</button>
|
|||
|
|
</div>
|
|||
|
|
<div class="clear"></div>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
|
|||
|
|
</div>
|
|||
|
|
|
|||
|
|
<div class="clear"></div>
|
|||
|
|
</div>
|
|||
|
|
<script src="https://cdn.datatables.net/1.10.19/js/jquery.dataTables.min.js"></script>
|
|||
|
|
<script>
|
|||
|
|
$(document).ready(function () {
|
|||
|
|
|
|||
|
|
reviews_builder = $('#reviews_builder_table_id').DataTable({
|
|||
|
|
"oLanguage": {
|
|||
|
|
"sLengthMenu": "Отобразить _MENU_ записей на странице",
|
|||
|
|
"sZeroRecords": "Ничего не найдено",
|
|||
|
|
"sInfo": "Показано с _START_ по _END_ из _TOTAL_ записей",
|
|||
|
|
"sInfoEmpty": "Показано с 0 по 0 из 0 записей",
|
|||
|
|
"sInfoFiltered": "(Отфильтровано из _MAX_ записей)",
|
|||
|
|
"sSearch": "Найти",
|
|||
|
|
"oPaginate": {
|
|||
|
|
"sFirst": "Первая",
|
|||
|
|
"sLast": "Последняя",
|
|||
|
|
"sNext": "Следующая",
|
|||
|
|
"sPrevious": "Предыдущая"
|
|||
|
|
},
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
$('.show_add_review_btn').on('click', function () {
|
|||
|
|
$('#show_add_review_bg').show();
|
|||
|
|
$('#show_add_review').show();
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
$('#show_add_review_bg .closer').on('click', function(){
|
|||
|
|
$("#show_add_review_bg").toggle(10);
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
$('#block_review_save').on('click', function(){
|
|||
|
|
builder_id = $(this).attr('builder_id');
|
|||
|
|
review = $('#block_review_text').val();
|
|||
|
|
name = $('#block_review_name').val();
|
|||
|
|
param = {
|
|||
|
|
"builder_id": builder_id,
|
|||
|
|
"review": review,
|
|||
|
|
"name": name,
|
|||
|
|
};
|
|||
|
|
$.post('/admin/ajax/addBuilderReview.php', param, function (data) {
|
|||
|
|
data = JSON.parse(data);
|
|||
|
|
id = data.id;
|
|||
|
|
review = data.review;
|
|||
|
|
name = data.name;
|
|||
|
|
date = data.date;
|
|||
|
|
del_btn = "<span id='"+id+"' class='review_builder_del_btn'>Удалить</span>";
|
|||
|
|
|
|||
|
|
reviews_builder.row.add([
|
|||
|
|
id,
|
|||
|
|
name,
|
|||
|
|
review,
|
|||
|
|
date,
|
|||
|
|
del_btn
|
|||
|
|
]).draw();
|
|||
|
|
|
|||
|
|
$('#show_add_review_bg').hide();
|
|||
|
|
$('#block_review_text').val('');
|
|||
|
|
});
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
$('body').on('click','.review_builder_del_btn', function(){
|
|||
|
|
|
|||
|
|
review_id = $(this).attr('id');
|
|||
|
|
console.log(review_id);
|
|||
|
|
param = {
|
|||
|
|
"review_id": review_id
|
|||
|
|
};
|
|||
|
|
$.post('/admin/ajax/deleteBuilderReview.php', param, function (data) { });
|
|||
|
|
reviews_builder.row( $(this).parents('tr') ).remove().draw();
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
})
|
|||
|
|
</script>
|
|||
|
|
|
|||
|
|
<?php
|
|||
|
|
|
|||
|
|
require_once($_SERVER['DOCUMENT_ROOT'] . "/templates/footer-admin.php");
|
|||
|
|
|
|||
|
|
?>
|
|||
|
|
<!--Review-->
|
|||
|
|
<div class="full_modal-bg" id="show_add_review_bg" style="display: none">
|
|||
|
|
<div class="full_modal" id="show_add_review" style="display: none">
|
|||
|
|
<span class="pseudo-link closer" onclick="hidechangeTarif(); return false;"><i class="ti-close"></i></span>
|
|||
|
|
<form id="add_review_form" action="">
|
|||
|
|
<div class="modal-form">
|
|||
|
|
<div class="modal-inner">
|
|||
|
|
<h2>Добавить отзыв</h2>
|
|||
|
|
<!-- <div class="form-block">-->
|
|||
|
|
<!-- <div class="label">Порядок:</div>-->
|
|||
|
|
<!-- <div class="inputs">-->
|
|||
|
|
<!-- <input type="number" min="0" class="text" name="num" value="1" style="width:70px;">-->
|
|||
|
|
<!-- </div>-->
|
|||
|
|
<!-- <div class="clear"></div>-->
|
|||
|
|
<!-- </div>-->
|
|||
|
|
<div class="form-block">
|
|||
|
|
<div class="label">Имя:</div>
|
|||
|
|
<div class="inputs">
|
|||
|
|
<input type="text" class="text" id="block_review_name" name="block_review_name" value="" style="width:100%">
|
|||
|
|
</div>
|
|||
|
|
<div class="clear"></div>
|
|||
|
|
</div>
|
|||
|
|
<div class="form-block">
|
|||
|
|
<div class="label">Описание:</div>
|
|||
|
|
<div class="inputs">
|
|||
|
|
<textarea class="text" id="block_review_text" name="block_review_text" style="width:100%; height:200px;"></textarea>
|
|||
|
|
</div>
|
|||
|
|
<div class="clear"></div>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
</form>
|
|||
|
|
<div class="modal-submit">
|
|||
|
|
<button id="block_review_save" class="fr-btn1" builder_id="<?php echo $builder->id ?>">Сохранить <i class="ti-angle-right"></i></button>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
</div>
|