File manager - Edit - /home/wwwroot/camplus.hk/master.camplus.hk/public_html/application/modules/attendance/views/ranged_at_report.php
Back
<!-- BEGIN DATATABLE SCRIPTS --> <link href="<?php echo base_url(); ?>assets/custom/datatables/datatables.min.css" rel="stylesheet" > <script src="<?php echo base_url(); ?>assets/custom/datatables/datatables.min.js"></script> <script src="<?php echo base_url(); ?>assets/global/plugins/datatables/plugins/bootstrap/datatables.bootstrap.js"></script> <script src="<?php echo base_url(); ?>assets/custom/js/camplus-datatable.js"></script> <!-- END DATATABLE SCRIPTS --> <link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/v/dt/jszip-2.5.0/dt-1.10.16/b-1.5.1/b-html5-1.5.1/b-print-1.5.1/datatables.min.css"/> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.32/pdfmake.min.js"></script> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.32/vfs_fonts.js"></script> <script type="text/javascript" src="https://cdn.datatables.net/v/dt/jszip-2.5.0/dt-1.10.16/b-1.5.1/b-html5-1.5.1/b-print-1.5.1/datatables.min.js"></script> <!-- BEGIN FILEINPUT SCRIPTS --> <link href="<?php echo base_url(); ?>assets/global/plugins/bootstrap-fileinput/bootstrap-fileinput.css" rel="stylesheet" > <script src="<?php echo base_url(); ?>assets/global/plugins/bootstrap-fileinput/bootstrap-fileinput.js"></script> <!-- END FILEINPUT SCRIPTS --> <!-- BEGIN DATERANGE SCRIPTS --> <script src="<?php echo base_url(); ?>assets/global/plugins/moment.min.js"></script> <link href="<?php echo base_url(); ?>assets/global/plugins/bootstrap-daterangepicker/daterangepicker.min.css" rel="stylesheet" > <script src="<?php echo base_url(); ?>assets/global/plugins/bootstrap-daterangepicker/daterangepicker.min.js"></script> <!-- END DATERANGE SCRIPTS --> <div class="portlet light bordered"> <div class="portlet-title"> <div class="caption"> <i class="icon-doc font-dark"></i> <span class="bold"><?php echo $pagetitle; ?></span> </div> <div class="actions frtip"> <!--<a id="export_btn" href="<?php echo base_url(); ?>attendance/exportMulti/<?php echo $_date['startDate'];?>/<?php echo $_date['endDate'];?>" class="dt-button btn green-jungle btn-outline" > <i class="fa fa-plus"></i> <?php echo $this->lang->line('export'); ?> </a>--> </div> </div> <div class="row"> <div class="col-sm-12"> <div class="form-group" style="width: 20%;float: left;"> <input type="text" class="form-control" name="daterange" id="daterange" onkeyup=""> </div> <div class="form-group" style="width: 20%;float: left;"> <input type="text" class="form-control " id="username" onkeyup="filterByname()" placeholder="Search by name" title="Enter User Name"> </div> <div class="form-group" style="width: 20%;float: left;margin-left: 19px;"> <select id="status" class="form-control" onchange="filterByStatus()" > <option value="" > Filter by status</option> <option value="NORMAL" > Normal</option> <option value="LATE" > Late</option> <option value="ABSENT" > Absent</option> <option value="" > All</option> </select> </div> <div class="form-group" style="width: 20%;float: left;margin-left: 19px;"> <select id="ap_groups" class="form-control" onchange="filterByGroup()" > <option value="all" > Filter by group</option> <?php foreach ($groups as $group) {?> <option value="<?php echo $group['id']?>" > <?php echo $group['title']?></option> <?php }?> <option value="all" > All</option> </select> </div> </div> </div> <form action='POST' target='attendance/attendance/confirmAttendance'> <table class="table table-striped table-bordered table-hover attendancereport" id="data_table"> <thead> <tr> <th>#</th> <th><?php echo $this->lang->line('date'); ?></th> <th><?php echo $this->lang->line('name'); ?></th> <th><?php echo $this->lang->line('in_time'); ?></th> <th><?php echo $this->lang->line('check_in'); ?></th> <th><?php echo $this->lang->line('status'); ?></th> <th><?php echo $this->lang->line('remark'); ?></th> <th><?php echo $this->lang->line('out_time'); ?></th> <th><?php echo $this->lang->line('check_out'); ?></th> <th><?php echo $this->lang->line('status'); ?></th> <th><?php echo $this->lang->line('remark'); ?></th> <th><?php echo $this->lang->line('overtime'); ?></th> <th><?php echo $this->lang->line('actions'); ?></th> <th></th> </tr> </thead> <tbody> <?php foreach ($report as $key => $date) {?> <tr data-group="<?php echo $date['agp']?>"> <td><?php echo $key+1;?></td> <td><?php echo $date['date'];?></td> <td><?php echo $date['name'];?></td> <td><?php echo $date['in_time'];?></td> <td><?php echo $date['check_in'];?></td> <?php if (!empty($date['confirmed']) || !$this->acl->hasPermission('CONFIRM_ATTENDANCE_RECORD')) { ?> <td><?php echo $date['in_status'];?></td> <td style="max-width: 150px; word-wrap: break-word;"><?php echo $date['in_remarks'];?></td> <td><?php echo $date['out_time'];?></td> <td><?php echo $date['check_out'];?></td> <td><?php echo $date['out_status'];?></td> <td style="max-width: 150px; word-wrap: break-word;"><?php echo $date['out_remarks'];?></td> <td><?php echo $date['overtime'];?></td> <td><?php echo (!empty($date['confirmed']))?'Confirmed by '. $date['confirmed'].' at '. $date['time'] : '';?></td> <?php } else {?> <td data-search="<?php echo $date['in_status']?>"><?php echo '<select id="in_'.$date['uid'].'_'.$date['date'].'" name="in['.$date['uid'].']"><option value="NORMAL" '.(($date['in_status']=='NORMAL')?'selected':'').'>NORMAL</option><option value="LATE" '.(($date['in_status']=='LATE')?'selected':'').'>LATE</option><option value="ABSENT" '.(($date['in_status']=='ABSENT')?'selected':'').'>ABSENT</option></select>'?></td> <td><?php echo '<textarea id="in_remarks_'.$date['uid'].'_'.$date['date'].'" name="in_remarks['.$date['uid'].']">' . $date['in_remarks'] .'</textarea>'?></td> <td><?php echo $date['out_time'];?></td> <td><?php echo $date['check_out'];?></td> <td><?php echo '<select id="out_'.$date['uid'].'_'.$date['date'].'" name="out['.$date['uid'].']"><option value="NORMAL" '.(($date['out_status']=='NORMAL')?'selected':'').'>NORMAL</option><option value="LATE" '.(($date['out_status']=='LATE')?'selected':'').'>LATE</option><option value="ABSENT" '.(($date['out_status']=='ABSENT')?'selected':'').'>ABSENT</option></select>'?></td> <td><?php echo '<textarea id="out_remarks_'.$date['uid'].'_'.$date['date'].'" name="out_remarks['.$date['uid'].']">' . $date['out_remarks'] .'</textarea>'?></td> <td><?php echo $date['overtime'];?></td> <td><?php if($this->acl->hasPermission('CONFIRM_ATTENDANCE_RECORD')):?><a class="btn btn-success" id="confirmBtn_<?php echo $date['uid']?>" onClick='confirmAt(<?php echo $date['uid'];?>, "<?php echo trim($date['date'])?>")'>Confirm</a><?php endif?></td> <?php }?> <td><?php echo $date['agp']?></td> </tr> <?php }?> </tbody> </table> </form> </div> </div> <script> var datatable <?php $my_users = ''; foreach($ap_groups as $group) { $my_users .= $group['users']. ','; }?> var ap_groups = "<?php echo $my_users;?>" var apg_array = ap_groups.replace(/\ /g,"").split(','); var selected_date; var confirm_attendance = false; <?php if($this->acl->hasPermission('CONFIRM_ATTENDANCE_RECORD')) echo "confirm_attendance = true;" ?> $(document).ready(function() { var buttonCommon = { exportOptions: { format: { body: function ( data, row, column, node ) { // Strip $ from salary column to make it numeric if(column === 5 || column === 9) { return $(data).val(); }else if(column === 6 || column === 10) { if(data.indexOf('textarea')>-1) { return $(data).text(); } else { return data; } } else if(column === 12) { if(data.indexOf('btn')>-1) { return ''; } else { return data; } } else { return data; } } } } }; datatable = $('#data_table').DataTable( { dom: 'Bfrtip', buttons: [ $.extend( true, {}, buttonCommon, { extend: 'copyHtml5' } ), $.extend( true, {}, buttonCommon, { extend: 'excelHtml5' } ), $.extend( true, {}, buttonCommon, { extend: 'pdfHtml5' } ) ], exportOptions: { columns: [ 0, 1, 2, 3, 4] }, "columnDefs": [ { "targets": [ 13 ], "visible": false, "searchable": true }, ] } ); } ); $(document).ready(function(){ var startDate; var endDate; var options = { selectedDateFormat: 'YYYY-MM-DD', size: 'small' } $('input[name="daterange"]').daterangepicker({ dateLimit: { days: 60 }, buttonClasses: ['btn btn-default'], applyClass: 'btn-small btn-primary', cancelClass: 'btn-small', // lol what, invalid date 'startDate': <?php echo "'" . $_date['startDate'] . "'"; ?>, 'endDate': <?php echo "'" . $_date['endDate'] . "'"; ?>, separator: ' to ', locale: { applyLabel: 'Submit', fromLabel: 'From', toLabel: 'To', format: 'YYYY-MM-DD', customRangeLabel: 'Custom Range', daysOfWeek: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr','Sa'], monthNames: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'], firstDay: 1 } }, function(start, end) { // console.log("Callback has been called!" + start.format('YYYY-MM-DD') + end.format('YYYY-MM-DD')); location.href = "<?php echo base_url() . 'attendance/getRangedAttendanceReport/'; ?>" + start.format('YYYY-MM-DD') + '/' + end.format('YYYY-MM-DD') //$('#reportrange span').html(start.format('D MMMM YYYY') + ' - ' + end.format('D MMMM YYYY')); } ) }); function twoDigitMonth( mo ) { mo = parseInt( mo ) + 1; // Add 1 to current month return ( mo.toString().length < 2 ? "0"+mo : mo ).toString(); } function twoDigitDate( da ) { da = parseInt( da ) ; // Add 1 to current month var string = ( da.toString().length < 2 ? "0"+da : da ).toString(); return string; } </script> <script> function filterByGroup() { //$("#status").val('Filter by status').change(); var input, filter, tr, td, i; input = document.getElementById("ap_groups"); filter = input.value.toUpperCase(); if(filter!='ALL') { datatable .column(13) .search(filter) .draw(); } else { datatable .column(13) .search( '' ) .draw() } } function filterByname() { input = document.getElementById("username"); filter = input.value.toUpperCase(); if(filter!='all') { datatable .column(2) .search(filter) .draw(); } else { datatable .column(2) .draw() } } function filterByStatus () { input = document.getElementById("status"); filter = input.value.toUpperCase(); if(filter!='all') { datatable .column(5) .search(filter) .column(9) .search(filter) .draw(); } else { datatable .column(5) .search( '' ) .column(9) .search( '' ) .draw() } } function confirmAt(id,selected_date){ var in_val = $('#in_'+id+"_"+selected_date).val() var out_val = $('#out_'+id+"_"+selected_date).val() var in_remarks = $('#in_remarks_'+id+"_"+selected_date).val() var out_remarks = $('#out_remarks_'+id+"_"+selected_date).val() console.log(in_val); console.log(out_val); console.log(in_remarks); console.log(out_remarks); $.ajax({ type: "POST", url: BASE_URL + "/attendance/saveAttendanceReport/", dataType: "json", data: "uid="+id+"&in=" + in_val + "&out=" + out_val + "&in_remarks=" + in_remarks + "&out_remarks=" + out_remarks + "&date=" + selected_date + "&updatedby=<?php echo $this->session->userdata("id");?>", success: function(data) { if(data!=undefined) { $('#confirmBtn_'+id).parent('td').html('Confirmed by <?php echo $this->session->userdata('username');?>'); } } }) } </script>
| ver. 1.4 |
Github
|
.
| PHP 7.2.34 | Generation time: 0.16 |
proxy
|
phpinfo
|
Settings