Your IP : 216.73.216.79


Current Path : /var/www/html/dyna-project/views/projects/
Upload File :
Current File : /var/www/html/dyna-project/views/projects/create.php.20210225

<?php

use yii\helpers\Html;
use yii\widgets\ActiveForm;
use app\models\User;
use yii\helpers\ArrayHelper;
use app\models\Phase;
use app\models\Step;
use app\models\Adhoc;
use app\models\Templates;
use app\models\ParamList;

$ParamList = new ParamList();
?>
<div class="kt-subheader   kt-grid__item" id="kt_subheader">
    <div class="kt-container ">
        <div class="kt-subheader__main">
            <h3 class="kt-subheader__title">Manage Projects</h3>
            <div class="kt-subheader__breadcrumbs">
                <span class="kt-subheader__breadcrumbs-separator"></span>
                <span class="kt-subheader__breadcrumbs-link"> Manage Projects</span>
                <span class="kt-subheader__breadcrumbs-separator"></span>
                <span class="kt-subheader__breadcrumbs-link"> Add Project</span>
            </div>
        </div>
    </div>
</div>
<div class="projects-create">
    <div class="projects-form">
        <div class="kt-container  kt-grid__item kt-grid__item--fluid">
            <?php $form = ActiveForm::begin(); ?>

            <div class="row">
                <div class="col-sm-4">
                    <div class="kt-portlet kt-portlet--height-fluid">
                        <div class="kt-portlet__head">
                            <div class="kt-portlet__head-label">
                                <h3 class="kt-portlet__head-title">Project Details</h3>
                            </div>

                        </div>
                        <div class="kt-portlet__body">
                            <div class="kt-portlet__content">

                                <div class='form-group-custom'>
                                    <?php
                                    echo $form->field($model, 'template_id', ['template' => "{label}
                                    {input}{error}"])
                                            ->dropDownList(ArrayHelper::map(Templates::find()->where(['status' => '1'])->orderBy(['name' => SORT_ASC])->all(), 'id', 'name'), ['prompt' => '-- Please choose --', 'class' => 'form-control kt-selectpicker', 'onchange' => 'generatetasklist(this.value)']);
                                    ?>
                                </div>


                                <div class='form-group-custom'>
                                    <?=
                                    $form->field($model, 'name', ['template' =>
                                        "{label}<span class='required'>*</span>{input}
                                    <span class='kt-font-danger font-weight-bold'>{error}</span>"])->textInput(['maxlength' => true]);
                                    ?>
                                </div>

                                <div class='form-group-custom'>
                                    <?php
                                    echo $form->field($model, 'cat', ['template' => "{label}
                                    {input}{error}"])
                                            ->dropDownList($ParamList->getparamlist2(37), ['prompt' => '-- Please choose --', 'class' => 'form-control']);
                                    ?>
                                </div>


                                <div class='form-group-custom'>
                                    <?=
                                    $form->field($model, 'start_dt', [
                                        'template' => "{label}<span class='required'>*</span>
                                        <div class='input-group'>
                                            {input}
                                            <div class='input-group-append'><span class='input-group-text'><i class='la la-calendar-check-o'></i></span></div>
                                        </div>
                                        <span class='kt-font-danger font-weight-bold'>{error}</span>"
                                    ])->textInput(['readonly' => true, 'onchange' => 'calcprojectdue()']);
                                    ?>
                                </div>


                                <div class='form-group-custom'>
                                    <?=
                                    $form->field($model, 'end_dt', [
                                        'template' => "{label}<span class='required'>*</span>
                                        <div class='input-group'>
                                            {input}
                                            <div class='input-group-append'><span class='input-group-text'><i class='la la-calendar-check-o'></i></span></div>
                                        </div>
                                        <span class='kt-font-danger font-weight-bold'>{error}</span>"
                                    ])->textInput(['readonly' => true]);
                                    ?>
                                </div>




                            </div>
                        </div>
                    </div>
                </div>
                <div class="col-sm-8">
                    <div class="kt-portlet kt-portlet--height-fluid">
                        <div class="kt-portlet__head">
                            <div class="kt-portlet__head-label">
                                <h3 class="kt-portlet__head-title">Assign To (Staff In-Charge)</h3>
                            </div>
                            <div class="kt-portlet__head-toolbar">
                                <button type="button" onclick="addpic()" class="btn btn-sm btn-label-brand">Add Staff</button>
                            </div>
                        </div>
                        <div class="kt-portlet__body">
                            <div class="kt-portlet__content">

                                <div class="row">
                                    <div class="col-5"><div class="form-group mb-0"><label class="control-label">Role</label></div></div>
                                    <div class="col-7"><div class="form-group mb-0"><label class="control-label">Staff Name</label></div></div>
                                </div>
                                <div id="piclist"></div>

                            </div>
                        </div>
                    </div>
                </div>

            </div>
            <div class="kt-portlet" data-ktportlet="true" id="tasklist-wrapper" style="display:none;">
                <div class="kt-portlet__head">
                    <div class="kt-portlet__head-label">
                        <h3 class="kt-portlet__head-title">
                            Tasks Details
                        </h3>
                    </div>
                    <div class="kt-portlet__head-toolbar">
                        <div class="kt-portlet__head-group">
                            <a href="#" data-ktportlet-tool="toggle" class="btn btn-sm btn-icon btn-clean btn-icon-md" aria-describedby="tooltip_mtpb3la6ln"><i class="la la-angle-down"></i></a>
                            <div class="tooltip tooltip-portlet tooltip bs-tooltip-top" role="tooltip" id="tooltip_mtpb3la6ln" aria-hidden="true" x-placement="top" style="position: absolute; will-change: transform; visibility: hidden; top: 0px; left: 0px; transform: translate3d(440px, -39px, 0px);">
                                <div class="tooltip-arrow arrow" style="left: 34px;"></div>
                                <div class="tooltip-inner">Collapse</div>
                            </div>
                        </div>
                    </div>
                </div>
                <div class="kt-portlet__body">

                    <div id="tasklist-table"></div>

                </div>
            </div>

            <div class="kt-form__actions">
                <?= Html::a('<i class="fas fa-arrow-left"></i>&nbsp;Back', ['index'], ['class' => 'btn btn-outline-brand']) ?>&nbsp;
                <?= Html::a('<i class="fas fa-sync"></i>&nbsp;Reset', [Yii::$app->controller->action->id], ['class' => 'btn btn-outline-success']); ?>&nbsp;
                <?= Html::button('<i class="fas fa-plus"></i>&nbsp;Create Project', ['class' => 'btn btn-info', 'onclick' => 'checkformcreate()']); ?>
            </div>
            <?php ActiveForm::end(); ?>
        </div>
    </div>
</div>
<?php include 'footer.php'; ?>

<script>
    function checkformcreate() {
        var status = 1;
        var msg = '';

        if ($('#projects-template_id').val() === '') {
            msg += 'Workflow Template cannot be blank<br/>';
            status = 0;
        }

        if ($('#projects-name').val() === '') {
            msg += 'Project Name cannot be blank<br/>';
            status = 0;
        }

        if ($(".picno")[0]) {
            var statuspic = 1;
            $('#piclist select').each(function () {
                if ($(this).val() === '') {
                    statuspic = 0;
                }
            });
            if (statuspic === 0) {
                msg += 'Please complete the Assign To (Staff In-Charge) details<br/>';
                status = 0;
            }
        } else {
            msg += 'Assign To (Staff In-Charge) cannot be blank<br/>';
            status = 0;
        }

        if ($('#projects-template_id').val() === '1') {

            //check task details
            var statustask = 1;
            $('input[name^="taskno"]').each(function () {
                var taskno = $(this).val();
                if ($('#task_checkbox_' + taskno).is(":checked")) {

                    if ($('input[name="task_sort_' + taskno + '"]').val() === '')
                        statustask = 0;
                    if ($('input[name="task_name_' + taskno + '"]').val() === '')
                        statustask = 0;
                    if ($('#task_assignto_' + taskno).val() === '')
                        statustask = 0;
                    if ($('input[name="task_duration_' + taskno + '"]').val() === '')
                        statustask = 0;
                    if ($('input[name="task_startdt_' + taskno + '"]').val() === '')
                        statustask = 0;
                    if ($('input[name="task_enddt_' + taskno + '"]').val() === '')
                        statustask = 0;

                }
            });

            if (statustask === 0) {
                msg += 'Please complete the Task details<br/>';
                status = 0;
            }

        }

        if (status === 0) {
            Swal.fire({
                title: 'Please complete the form',
                html: msg,
                type: 'warning'
            });
        }
        if (status === 1)
            $('#w0').submit();
    }

    function generatetasklist(template_id) {
        if (template_id !== '') {
            var start_dt = $('#projects-start_dt').val();
            $.ajax({
                url: "index.php?r=templates/generatetasklist",
                method: "POST",
                data: {"template_id": template_id, "start_dt": start_dt},
                async: false,
                success: function (response) {


                    $('#tasklist-table').html(response);
                    $('#tasklist-wrapper').show();

                    $('.datepicker').datepicker({
                        rtl: KTUtil.isRTL(),
                        todayHighlight: true,
                        orientation: 'bottom left',
                        format: 'yyyy-mm-dd',
                        clearBtn: false,
                        todayHighlight: true,
                    });


                    $('.picno').each(function () {
                        var no = $(this).val();
                        var role = $('#pic_role_' + no).val();
                        var user_id = $('#pic_user_' + no).val();
                        changeassignto(role, user_id);

                    });

                    $(document).ready(function () {
                        $('[data-toggle="tooltip"]').tooltip();
                    });

                    var lasttaskdate = $('.taskenddt:last').val();
                    $('#projects-end_dt').datepicker("setDate", lasttaskdate);

                },
            });

        }
    }


    function changeassignto(role, user_id) {
        $('.assignto_' + role).val(user_id);
        $('.assignto_' + role).selectpicker('refresh');
    }

    function copyprevdttask(copyfromID) {

        var copydate = $('#task_startdt_' + copyfromID).val();

        var copytoID = copyfromID + 1;
        $('#task_startdt_' + copytoID).datepicker("setDate", copydate);

        updatetaskenddate(copytoID);
    }

    function removetask(no) {
        var checkbox_status = $('#task_checkbox_' + no).is(':checked');
        if (checkbox_status === true) {
            jQuery('#rowtask_' + no).css('opacity', '1');
        } else {
            jQuery('#rowtask_' + no).css('opacity', '0.3');
        }
    }

    function removephase(no) {
        var checkbox_status = $('#phase_checkbox_' + no).is(':checked');
        if (checkbox_status === true) {
            $('.rowphase_' + no + ' :checkbox').prop('checked', true);
            jQuery('.rowphase_' + no).css('opacity', '1');
        } else {
            $('.rowphase_' + no + ' :checkbox').prop('checked', false);
            jQuery('.rowphase_' + no).css('opacity', '0.3');
        }
    }
</script>