| Current Path : /var/www/html/project/views/tasks/ |
| Current File : /var/www/html/project/views/tasks/calendar.php |
<?php
use yii\helpers\Html;
use yii\grid\GridView;
use yii\helpers\Url;
use yii\widgets\ActiveForm;
use yii\helpers\ArrayHelper;
use app\models\Tasks;
use app\models\Projects;
use app\models\User;
$this->title = 'All Staff Task';
$this->registerCss('.fc-more-popover{width:auto;}');
?>
<div class="kt-subheader kt-grid__item" id="kt_subheader">
<div class="kt-container ">
<div class="kt-subheader__main">
<h3 class="kt-subheader__title"><?= $this->title ?></h3>
<div class="kt-subheader__breadcrumbs">
<span class="kt-subheader__breadcrumbs-separator"></span>
<span class="kt-subheader__breadcrumbs-link"> Dashboard</span>
<span class="kt-subheader__breadcrumbs-separator"></span>
<span class="kt-subheader__breadcrumbs-link"> <?= $this->title ?> </span>
</div>
</div>
</div>
</div>
<div class="tasks-index">
<div class="kt-container kt-grid__item kt-grid__item--fluid">
<div class="kt-portlet kt-portlet--mobile">
<div class="kt-portlet__head">
<div class="tasks-search mt-4" style="width:100%;">
<?php $form = ActiveForm::begin(['action' => ['calendar'], 'method' => 'get', 'options' => ['class' => 'form-inlinex form-searchx']]); ?>
<div class="row">
<div class="col-sm-6">
<?=
Html::dropDownList('project_id', $project_id, ArrayHelper::map(Projects::find()->where(['=', 'status', '1'])->orderBy(['name' => SORT_ASC])->all(), 'id', 'name'), [
'class' => 'form-control kt-selectpicker',
'prompt' => '-- Please choose project --',
'data-live-search' => 'true','id'=>'project_id']);
?>
</div>
<div class="col-sm-4">
<?=
Html::dropDownList('assign_to', $assign_to, ArrayHelper::map(User::find()->where(['=', 'status', '1'])->orderBy(['name' => SORT_ASC])->all(), 'id', 'name'), [
'class' => 'form-control kt-selectpicker',
'prompt' => '-- Please choose staff --',
'data-live-search' => 'true','id'=>'assign_to']);
?>
</div>
<div class="col-sm-2">
<div class="form-group">
<?= Html::submitButton('Search', ['class' => 'btn btn-success']) ?>
<?= Html::a('Show All', ['calendar'], ['class' => 'btn btn-outline-success']) ?>
</div>
</div>
</div>
<?php ActiveForm::end(); ?>
</div>
</div>
<div class="kt-portlet__body">
<div id="kt_calendar"></div>
</div>
</div>
</div>
</div>
<?php
$this->registerJs("
var KTCalendarBasic = function() {
return {
//main function to initiate the module
init: function() {
var todayDate = moment().startOf('day');
var YM = todayDate.format('YYYY-MM');
var YESTERDAY = todayDate.clone().subtract(1, 'day').format('YYYY-MM-DD');
var TODAY = todayDate.format('YYYY-MM-DD');
var TOMORROW = todayDate.clone().add(1, 'day').format('YYYY-MM-DD');
var calendarEl = document.getElementById('kt_calendar');
var calendar = new FullCalendar.Calendar(calendarEl, {
plugins: [ 'interaction', 'dayGrid', 'timeGrid', 'list' ],
isRTL: KTUtil.isRTL(),
header: {
left: 'prev,next today',
center: 'title',
right:'',
//right: 'dayGridMonth,timeGridWeek,timeGridDay'
},
height: 680,
contentHeight: 700,
aspectRatio: 3,
nowIndicator: true,
now: TODAY + 'T09:25:00', // just for demo
views: {
dayGridMonth: { buttonText: 'month' },
timeGridWeek: { buttonText: 'week' },
timeGridDay: { buttonText: 'day' }
},
defaultView: 'dayGridMonth',
defaultDate: TODAY,
editable: false,
eventLimit: false,
navLinks: false,
eventClick:function(info) {
var element = $(info.el);
//$('#modalTitle').html(info.event.title);
$('#modalBody').html(info.event.extendedProps.description);
$('#calendarModal').modal();
},datesRender:function(info) {
var eventSources = calendar.getEventSources();
var len = eventSources.length;
for (var i = 0; i < len; i++) {
eventSources[i].remove();
}
//calendar.addEventSource({url: 'index.php?r=tasks/gettasklist&month='+info.view.currentStart.getMonth()+'&year='+info.view.currentStart.getFullYear()});
calendar.addEventSource({url: 'index.php?r=tasks/gettasklist&project_id='+document.getElementById('project_id').value+'&user_id='+document.getElementById('assign_to').value});
}
});
calendar.render();
}
};
}();
jQuery(document).ready(function() {
KTCalendarBasic.init();
});
");
?>
<div id="calendarModal" class="modal fade">
<div class="modal-dialog modal-dialog-centered modal-lgxx">
<div class="modal-content">
<div class="modal-header">
<h4 id="modalTitle" class="modal-title">Task Details</h4>
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span> <span class="sr-only">close</span></button>
</div>
<div id="modalBody" class="modal-body" style="color:black;"> content </div>
</div>
</div>
</div>