148 lines
5.0 KiB
PHP
148 lines
5.0 KiB
PHP
<?php if($_SERVER['REQUEST_METHOD'] != 'POST'): ?>
|
|
|
|
<style>
|
|
|
|
.help-logic {
|
|
padding: 20px 0 0 10px
|
|
}
|
|
|
|
.help-logic p {
|
|
font-size: 12px;
|
|
font-style: italic;
|
|
color: var(--base-background-super-dark);
|
|
width: 500px;
|
|
display: block;
|
|
}
|
|
|
|
.help-key-btn {
|
|
height: 35px;
|
|
background: #FFFFFF;
|
|
border: 1px solid var(--base-background-dark);
|
|
color: var(--base-background-dark);
|
|
cursor: pointer;
|
|
}
|
|
|
|
.help-key-btn.inactive {
|
|
background: darkmagenta;
|
|
color: #FFFFFF;
|
|
border: 1px solid darkmagenta;
|
|
}
|
|
|
|
.help-key-btn:hover {
|
|
background: var(--base-background-ultra-bright-clear);
|
|
color: var(--base-background-super-dark);
|
|
}
|
|
|
|
.help-key-btn.inactive:hover {
|
|
color: darkmagenta;
|
|
}
|
|
|
|
</style>
|
|
<div class="help-logic">
|
|
<?php if (empty($_SESSION['help_keys'])): ?>
|
|
<button onclick="helpKeys('active')" class="help-key-btn active">Активирай показване на ключовете за помощна
|
|
информация
|
|
</button>
|
|
<p><i class="la la-info-circle"></i> При активиране на "показване на ключовете за помощна информация" ще
|
|
покажете текстов ключ, който ще се намира
|
|
до всяко поле за въвеждане във формите за създаване или редакция на цялата система.</p>
|
|
<?php else: ?>
|
|
<button onclick="helpKeys('inactive')" class="help-key-btn inactive">Деактивирай показване на ключовете за
|
|
помощна информация
|
|
</button>
|
|
<p><i class="la la-info-circle"></i> При деактивиране на "показване на ключовете за помощна информация" ще
|
|
скриете текстовия ключ, който се намира до всяко поле за въвеждане във формите за създаване или редакция на
|
|
цялата система.</p>
|
|
<?php endif; ?>
|
|
</div>
|
|
|
|
<?php endif; ?>
|
|
<?php
|
|
|
|
use app\models\Help;
|
|
use app\widgets\FormWidget;
|
|
use app\widgets\services\Includes;
|
|
use app\widgets\TableWidget;
|
|
|
|
$tab = $_GET['tab'] ?? 'main';
|
|
$_GET['tab'] = $tab;
|
|
|
|
$filter = Yii::$app->getFilterData('and');
|
|
|
|
$filter[0] = 'and';
|
|
|
|
TableWidget::widget([
|
|
'top' => [
|
|
'title' => 'Помощна информация',
|
|
'data' => [
|
|
'index/dashboard' => 'Начало',
|
|
]
|
|
],
|
|
'filter' => [
|
|
[
|
|
'title' => ['Заглавие на помощна информация', 'c4'],
|
|
'key' => ['Ключ', 'c4'],
|
|
],
|
|
],
|
|
'actions' => [
|
|
//'new' => 'Добавяне',
|
|
'edit' => 'Редакция на помощна информация',
|
|
'delete' => 'Изтриване на помощна информация'
|
|
],
|
|
'th' => [
|
|
'№' => 'c0 text-right',
|
|
'Ключ' => '',
|
|
'Заглавие на помощна информация' => '',
|
|
],
|
|
'model' => Help::class,
|
|
'data' => Help::find()->where(Yii::$app->getFilterData('or'))->loop([
|
|
'id',
|
|
function (Help $model) {
|
|
return '<a href="' . Yii::$app->setQueryString(['o' => 'w', 'id' => $model->id]) . '">' . $model->key . '</a>';
|
|
},
|
|
'title'
|
|
], $_GET['p'] ?? 1, 50)
|
|
]);
|
|
|
|
FormWidget::widget([
|
|
'top' => [
|
|
'title' => 'Нова помощна информация',
|
|
'title_edit' => 'Редакция помощна информация',
|
|
'data' => [
|
|
'index/dashboard' => 'Начало',
|
|
'index/help' => 'Помощна информация',
|
|
],
|
|
],
|
|
'tabs' => $tabs ?? [],
|
|
'writeView' => "index/tabs/" . Includes::tab($tab) . "/help_w",
|
|
'model' => Help::class,
|
|
'validation' => function ($p) use ($tab) {
|
|
if (empty($p->{'key'}))
|
|
return ["key" => 'Ключът е задължителен'];
|
|
if (empty($p->{'title'}))
|
|
return ["title" => 'Моля, въведете заглавие на помощната информация'];
|
|
if (empty($p->{'text'}))
|
|
return ["text" => 'Моля, попълнете текста'];
|
|
return null;
|
|
},
|
|
'postService' => function ($p, Help $model) use ($tab) {
|
|
$model->setPostDataToModel();
|
|
$model->save();
|
|
Yii::$app->flash('success', isset($_GET['id']) ? 'Данните са записани успешно' : 'Данните са създадени успешно');
|
|
$model->smartRedirect();
|
|
}
|
|
]);
|
|
?>
|
|
<?php if($_SERVER['REQUEST_METHOD'] != 'POST'): ?>
|
|
<script>
|
|
function helpKeys(action) {
|
|
request({
|
|
url: '/admin-global/help-keys-remote/prepare-help/?help_keys=' + action,
|
|
done: () => {
|
|
window.location.reload()
|
|
}
|
|
})
|
|
}
|
|
</script>
|
|
<?php endif; ?>
|