<?php include('techsyn_header.php'); ?>

<!-- Main Content Container for side bar and body-->
<div class="main-container ace-save-state" id="main-container">
    <script type="text/javascript">
    try {
        ace.settings.loadState('main-container')
    } catch (e) {}
    </script>
    <?php include('techsyn_sidebar.php'); ?>

    <!--breadcrumb-->
    <div class="main-content">
        <div class="main-content-inner">
            <div class="breadcrumbs ace-save-state" id="breadcrumbs">
                <ul class="breadcrumb">
                    <li class="#">Duty Roster</li>
                    <li class="active">Monthly Roster</li>
                </ul>

            </div>
            <!-- End of breadcrumb -->

            <?php

$user_id=$_SESSION['current_ohctype'];
error_log('xxxxxxxxx'.$user_id);
         
                ?>

            <div class="page-content">
                <div class="box box-primary">



                    <form role="form" id="app_form" name="app_form" action="approval.php" method="post">
                        <!-- box-body-->
                        <div class="box-body">


                        <input class="form-control" type="hidden" name="count"
                                                    id="count">
                                                    <input class="form-control" name="item_list" id="item_list" type="hidden" value="" />

                            <div class="row">
                                <div class="col-sm-12">

                                    <div class="row" style="margin-left: 50px; margin-right: 50px">
                                        <div class="col-sm-4">
                                            <div class="form-group">
                                                <label>Date</label>
                                                <input class="form-control" type="date" name="slot_date"
                                                    id="slot_date"
                                                    onchange="getDocs('','doctor_name') ;GetAppointments();">

                                            </div>
                                        </div>
                                        <div class="form-group col-sm-4">
                                            <label>Doctor Name </label>
                                            <select class="form-control"  id="doctor_name" name="doctor_name"
                                                onchange='GetAppointments()' data-placeholder="Choose Doctor Names">
                                                <option value=''>All Doctors</option>
                                            </select>

                                        </div>
                                        <div class="col-sm-4">
                                            <div class="form-group">
                                                <label>Case Type</label>
                                                <select class="form-control" id="appointment_booking_type"
                                                    onchange='GetAppointments()' name="appointment_booking_type"
                                                    data-placeholder="Choose Doctor Names">
                                                    <option  value="" selected>All Case
                                                    </option>
                                                    <option value="OPD">OPD/Sickness/Fitness</option>
                                                    <!-- <option value="FIT">Sickness/Fitness</option> -->
                                                    <option value="MED">Annual Medical Checkup</option>

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






                                    <table id="myTable" style="width:1030px;margin-left: 60px;margin-top: 20px;"
                                        class="table table-bordered order-list">
                                        <thead>
                                            <tr>
                                                <th>Date</th>
                                                <th>Timing</th>
                                                
                                                <th>Doc Name</th>
                                                <th>Appointment Type</th>
                                                <th>Status</th>
                                                <th>Slots</th>

                                            </tr>
                                        </thead>
                                        <tbody id='table_body'>



                                            <tr>

                                                <td align="center" colspan='7'>
                                                    <h4> No Data Available</h4>
                                                </td>

                                            </tr>


                                        </tbody>


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


                            <div class="row" style="margin-left: 50px; margin-right: 50px">
                                <div class="col-sm-4">
                                
                                </div>

                                <div class="form-group col-sm-4">
                                    <div class="box-footer" style="text-align: center">
                                        <button class="btn btn-info save_button" type="button" onclick="save();">
                                            <i class="ace-icon fa fa-floppy-o bigger-110"></i>
                                            Save
                                        </button>

                                        &nbsp; &nbsp; &nbsp;
                                        <button class="btn btn-warning" type="reset" onclick="GetAppointments();">
                                            <i class="ace-icon fa fa-undo bigger-110"></i>
                                            Reset
                                        </button>
                                    </div>
                                </div>
                                <div class="form-group col-sm-4">
                                    
                                </div>

                            </div>

                        </div>

                    </form>



                </div>
            </div>

            <!-- End of page-content -->
        </div>
    </div>
</div>


<style>
#modal-add-ailment {
    overflow-y: scroll;
}
</style>



<?php include('techsyn_footer.php'); ?>
<script type="text/javascript">
jQuery(function($) {

    var myTable =
        $('#dynamic-table')

        .DataTable({
            bAutoWidth: false,
            "aoColumns": [{
                    "bSortable": false
                },
                null, null, null, null, null,
                {
                    "bSortable": false
                }
            ],
            "aaSorting": [],





            select: {
                style: 'multi'
            }
        });




    var defaultCopyAction = myTable.button(1).action();
    myTable.button(1).action(function(e, dt, button, config) {
        defaultCopyAction(e, dt, button, config);
        $('.dt-button-info').addClass('gritter-item-wrapper gritter-info gritter-center white');
    });


    var defaultColvisAction = myTable.button(0).action();
    myTable.button(0).action(function(e, dt, button, config) {

        defaultColvisAction(e, dt, button, config);


        if ($('.dt-button-collection > .dropdown-menu').length == 0) {
            $('.dt-button-collection')
                .wrapInner('<ul class="dropdown-menu dropdown-light dropdown-caret dropdown-caret" />')
                .find('a').attr('href', '#').wrap("<li />")
        }
        $('.dt-button-collection').appendTo('.tableTools-container .dt-buttons')
    });



    setTimeout(function() {
        $($('.tableTools-container')).find('a.dt-button').each(function() {
            var div = $(this).find(' > div').first();
            if (div.length == 1) div.tooltip({
                container: 'body',
                title: div.parent().text()
            });
            else $(this).tooltip({
                container: 'body',
                title: $(this).text()
            });
        });
    }, 500);





    myTable.on('select', function(e, dt, type, index) {
        if (type === 'row') {
            $(myTable.row(index).node()).find('input:checkbox').prop('checked', true);
        }
    });
    myTable.on('deselect', function(e, dt, type, index) {
        if (type === 'row') {
            $(myTable.row(index).node()).find('input:checkbox').prop('checked', false);
        }
    });




    $('th input[type=checkbox], td input[type=checkbox]').prop('checked', false);


    $('#dynamic-table > thead > tr > th input[type=checkbox], #dynamic-table_wrapper input[type=checkbox]').eq(
        0).on('click', function() {
        var th_checked = this.checked;

        $('#dynamic-table').find('tbody > tr').each(function() {
            var row = this;
            if (th_checked) myTable.row(row).select();
            else myTable.row(row).deselect();
        });
    });


    $('#dynamic-table').on('click', 'td input[type=checkbox]', function() {
        var row = $(this).closest('tr').get(0);
        if (this.checked) myTable.row(row).deselect();
        else myTable.row(row).select();
    });



    $(document).on('click', '#dynamic-table .dropdown-toggle', function(e) {
        e.stopImmediatePropagation();
        e.stopPropagation();
        e.preventDefault();
    });




    var active_class = 'active';
    $('#simple-table > thead > tr > th input[type=checkbox]').eq(0).on('click', function() {
        var th_checked = this.checked;

        $(this).closest('table').find('tbody > tr').each(function() {
            var row = this;
            if (th_checked) $(row).addClass(active_class).find('input[type=checkbox]').eq(0)
                .prop('checked', true);
            else $(row).removeClass(active_class).find('input[type=checkbox]').eq(0).prop(
                'checked', false);
        });
    });

    $('#simple-table').on('click', 'td input[type=checkbox]', function() {
        var $row = $(this).closest('tr');
        if ($row.is('.detail-row ')) return;
        if (this.checked) $row.addClass(active_class);
        else $row.removeClass(active_class);
    });




    $('[data-rel="tooltip"]').tooltip({
        placement: tooltip_placement
    });


    function tooltip_placement(context, source) {
        var $source = $(source);
        var $parent = $source.closest('table')
        var off1 = $parent.offset();
        var w1 = $parent.width();

        var off2 = $source.offset();


        if (parseInt(off2.left) < parseInt(off1.left) + parseInt(w1 / 2)) return 'right';
        return 'left';
    }




    /***************/
    $('.show-details-btn').on('click', function(e) {
        e.preventDefault();
        $(this).closest('tr').next().toggleClass('open');
        $(this).find(ace.vars['.icon']).toggleClass('fa-angle-double-down').toggleClass(
            'fa-angle-double-up');
    });
    /***************/






})




function save() {
    var arr_i = [];
    var count = $('#count').val();
    $('#item_list').val(arr_i);
    
                $.ajax({
                    url: 'save_slot_count.php',
                    type: "POST",
                    data: $("#app_form").serialize(),
                    success: function(data) {

                        BootstrapDialog.alert('Appointment Status Updated Successfully');
                        $('#myTable').show();

                        return;
                    },
                    error: function(data) {


                        $('#myTable').show();

                        BootstrapDialog.alert('Error in Saving');

                        return;
                    }
                });  
}

$('.date-picker').datepicker({
    autoclose: true,
    format: 'dd/mm/yyyy'
}).next().on(ace.click_event, function() {
    $(this).prev().focus();
});
</script>
<!-- bootstrap & fontawesome -->
<link rel="stylesheet" href="assets/font-awesome/4.5.0/css/font-awesome.min.css" />

<!-- page specific plugin styles -->
<link rel="stylesheet" href="assets/css/jquery-ui.custom.min.css" />
<link rel="stylesheet" href="assets/css/chosen.min.css" />
<link rel="stylesheet" href="assets/css/bootstrap-datepicker3.min.css" />
<link rel="stylesheet" href="assets/css/bootstrap-timepicker.min.css" />
<link rel="stylesheet" href="assets/css/daterangepicker.min.css" />
<link rel="stylesheet" href="assets/css/bootstrap-datetimepicker.min.css" />
<link rel="stylesheet" href="assets/css/bootstrap-colorpicker.min.css" />
<script type="text/javascript" src="js/typeahead.bundle.js"></script>
<script src="assets/js/jquery-ui.custom.min.js"></script>
<script src="assets/js/jquery.ui.touch-punch.min.js"></script>
<script src="assets/js/chosen.jquery.min.js"></script>
<script src="assets/js/spinbox.min.js"></script>
<script src="assets/js/bootstrap-datepicker.min.js"></script>
<script src="assets/js/bootstrap-timepicker.min.js"></script>
<script src="assets/js/jquery.dataTables.min.js"></script>
<script src="assets/js/jquery.dataTables.bootstrap.min.js"></script>
<script src="assets/js/dataTables.buttons.min.js"></script>
<script src="assets/js/buttons.flash.min.js"></script>
<script src="assets/js/buttons.html5.min.js"></script>
<script src="assets/js/buttons.print.min.js"></script>
<script src="assets/js/buttons.colVis.min.js"></script>
<script src="assets/js/dataTables.select.min.js"></script>


<script src="assets/js/moment.min.js"></script>
<script src="assets/js/daterangepicker.min.js"></script>
<script src="assets/js/bootstrap-datetimepicker.min.js"></script>
<script src="assets/js/bootstrap-colorpicker.min.js"></script>
<script src="assets/js/jquery.knob.min.js"></script>
<script src="assets/js/autosize.min.js"></script>
<script src="assets/js/jquery.inputlimiter.min.js"></script>
<script src="assets/js/jquery.maskedinput.min.js"></script>
<script src="assets/js/bootstrap-tag.min.js"></script>
<script src="assets/js/ace-elements.min.js"></script>


<script type="text/javascript">
jQuery(function($) {
    $('#id-disable-check').on('click', function() {
        var inp = $('#form-input-readonly').get(0);
        if (inp.hasAttribute('disabled')) {
            inp.setAttribute('readonly', 'true');
            inp.removeAttribute('disabled');
            inp.value = "This text field is readonly!";
        } else {
            inp.setAttribute('disabled', 'disabled');
            inp.removeAttribute('readonly');
            inp.value = "This text field is disabled!";
        }
    });


    if (!ace.vars['touch']) {
        $('.chosen-select').chosen({
            allow_single_deselect: true
        });


        $(window)
            .off('resize.chosen')
            .on('resize.chosen', function() {
                $('.chosen-select').each(function() {
                    var $this = $(this);
                    $this.next().css({
                        'width': $this.parent().width()
                    });
                })
            }).trigger('resize.chosen');
        //resize chosen on sidebar collapse/expand
        $(document).on('settings.ace.chosen', function(e, event_name, event_val) {
            if (event_name != 'sidebar_collapsed') return;
            $('.chosen-select').each(function() {
                var $this = $(this);
                $this.next().css({
                    'width': $this.parent().width()
                });
            })
        });


        $('#chosen-multiple-style .btn').on('click', function(e) {
            var target = $(this).find('input[type=radio]');
            var which = parseInt(target.val());
            if (which == 2) $('#form-field-select-4').addClass('tag-input-style');
            else $('#form-field-select-4').removeClass('tag-input-style');
        });
    }


    $('[data-rel=tooltip]').tooltip({
        container: 'body'
    });
    $('[data-rel=popover]').popover({
        container: 'body'
    });

    autosize($('textarea[class*=autosize]'));

    $('textarea.limited').inputlimiter({
        remText: '%n character%s remaining...',
        limitText: 'max allowed : %n.'
    });




    //"jQuery UI Slider"
    //range slider tooltip example
    $("#slider-range").css('height', '200px').slider({
        orientation: "vertical",
        range: true,
        min: 0,
        max: 100,
        values: [17, 67],
        slide: function(event, ui) {
            var val = ui.values[$(ui.handle).index() - 1] + "";

            if (!ui.handle.firstChild) {
                $("<div class='tooltip right in' style='display:none;left:16px;top:-6px;'><div class='tooltip-arrow'></div><div class='tooltip-inner'></div></div>")
                    .prependTo(ui.handle);
            }
            $(ui.handle.firstChild).show().children().eq(1).text(val);
        }
    }).find('span.ui-slider-handle').on('blur', function() {
        $(this.firstChild).hide();
    });


    $("#slider-range-max").slider({
        range: "max",
        min: 1,
        max: 10,
        value: 2
    });

    $("#slider-eq > span").css({
        width: '90%',
        'float': 'left',
        margin: '15px'
    }).each(function() {
        // read initial values from markup and remove that
        var value = parseInt($(this).text(), 10);
        $(this).empty().slider({
            value: value,
            range: "min",
            animate: true

        });
    });

    $("#slider-eq > span.ui-slider-purple").slider('disable'); //disable third item


    $('#id-input-file-1 , #id-input-file-2').ace_file_input({
        no_file: 'No File ...',
        btn_choose: 'Choose',
        btn_change: 'Change',
        droppable: false,
        onchange: null,
        thumbnail: false //| true | large
        //whitelist:'gif|png|jpg|jpeg'
        //blacklist:'exe|php'
        //onchange:''
        //
    });
    //pre-show a file name, for example a previously selected file
    //$('#id-input-file-1').ace_file_input('show_file_list', ['myfile.txt'])






    //datepicker plugin
    //link
    $('.date-picker').datepicker({
            autoclose: true,
            todayHighlight: true
        })
        //show datepicker when clicking on the icon
        .next().on(ace.click_event, function() {
            $(this).prev().focus();
        });



    //chosen plugin inside a modal will have a zero width because the select element is originally hidden
    //and its width cannot be determined.
    //so we set the width after modal is show
    $('#modal-form').on('shown.bs.modal', function() {
        if (!ace.vars['touch']) {
            $(this).find('.chosen-container').each(function() {
                $(this).find('a:first-child').css('width', '210px');
                $(this).find('.chosen-drop').css('width', '210px');
                $(this).find('.chosen-search input').css('width', '200px');
            });
        }
    })
    /**
    //or you can activate the chosen plugin after modal is shown
    //this way select element becomes visible with dimensions and chosen works as expected
    $('#modal-form').on('shown', function () {
    	$(this).find('.modal-chosen').chosen();
    })
    */



    $(document).one('ajaxloadstart.page', function(e) {
        autosize.destroy('textarea[class*=autosize]')

        $('.limiterBox,.autosizejs').remove();
        $('.daterangepicker.dropdown-menu,.colorpicker.dropdown-menu,.bootstrap-datetimepicker-widget.dropdown-menu')
            .remove();
    });

});


function getDocs(doc,id) {
    //   alert(appointment_book_date);
    var appointment_book_date= $('#slot_date').val();

    $.ajax({
        url: 'select_appointment_doc.php',
        type: 'POST',
        dataType: 'json',
        data: {
            appointment_book_date: appointment_book_date
        },
        success(data) {

            var docs_opt = '';
            if(doc=='' || doc==null){
                docs_opt += "<option  selected value='' >All Doctors</option>";
            }
            
            for (var i = 0; i < data.count; i++) {
                docs_opt += "<option  value='" + data[i]['emp_id'] + "'";
                if (data[i]['emp_id'] == doc) {
                    docs_opt += ' selected '
                }
                docs_opt += " >" + data[i]['patient_name'] +
                    "</option>";
            }
            $('#'+id).html(docs_opt);
        },
        error: function(data) {
            BootstrapDialog.alert('Error in Getting slot');
            return;
        }
    });

}

function GetAppointments() {

    var date = $('#slot_date').val();
    var app_doc = $('#doctor_name').val();
    var app_type = $('#appointment_booking_type').val();
    if (date == '' || date == null) {
        BootstrapDialog.alert('Please Select Date');
        return;
    } else {
        $.ajax({
            url: 'select_doc_slots.php',
            type: 'POST',
            dataType: 'json',
            data: {
                app_type: app_type,
                app_doc: app_doc,
                date: date,
            },
            success(data) {
                $('#count').val(data.count);
                var containt = '';
               if(data.count>0){
                for (var i = 0; i < data.count; i++) {
                    var a_type="";
                    if(data[i]['app_type']=='MED'){
                       a_type="Annual Medical Checkup";
                    }else if(data[i]['app_type']=='OPD'){
                        a_type="OPD/Sickness/Fitness";
                    }else{
                        a_type=data[i]['app_type']
                    }
                    containt += '<tr>';
                    containt += "<td>" + data[i]['date'] + "</td>";
                    containt += "<td>" + data[i]['time'] + "</td>";
                  
                    containt += "<td>" +'<select class="form-control" id="doctor_name_'+i+'" " name="doctor_name_'+i+'"  data-placeholder="Choose Doctor Names"> </select>' + "</td>";
                    containt += "<td>" + a_type + "</td>";
                    containt += "<td>" + data[i]['status'] + "</td>";
                    containt += "<td>" +
                        " <input type='number'  value='" +
                        data[i]['app_count'] + "'  id='slot_count_" + i + "'  name='slot_count_" + i +
                        "' /><input type='hidden'  value='" +
                        data[i]['id'] + "'  id='slot_id_" + i + "'  name='slot_id_" + i +
                        "' />" + "</td>";
                        containt += '</tr>';
                        getDocs(data[i]['doctor_name'],"doctor_name_"+i);

                    }
            }else{
                containt += '<tr>';
                containt += "<td colspan='7' align='center'><h4>No Data Available</h4></td>";
                containt += '</tr>';
            }
               
                $('#table_body').html(containt);
            },
            error: function(data) {
                alert('Error in Getting Appointments');
                return;
            }
        });
    }
}
</script>