{						
																					$date_before=date('Y-m-d',mktime(0,0,0,$mm,$dd-1,$yy));
																					$date_after=date('Y-m-d',mktime(0,0,0,$mm,$dd+1,$yy));
																					$before_date=getLeavestatusBydate($emp_id,$date_before);
																					$after_date=getLeavestatusBydate($emp_id,$date_after);
																					if($before_date=='P' or $before_date=='OD' or $after_date=='P' or $after_date=='OD')
																					{
																						if($employee_typ!='daily_wages')
																						{
																							$Total++;
																							$flag=1;
																						}
																					}
																					else if(getHoliday('rec_id',$date_before)!="")
																						{
																							if(validate_weekoff_before($emp_id,$mm,$dd-1,$yy))
																							{
																								$Total++;
																								$flag=1;
																							}
																							else
																							{
																								$flag=1;
																								$wo++;
																								$Total++;
																								$leave_status='W';
																							}
																						}
																						else if(getHoliday('rec_id',$date_after)!="")
																						{
																							if(validate_weekoff_after($emp_id,$mm,$dd+1,$yy))
                                                        if ($before_date == 'Pl' && $after_date == 'Pl') {
                                                            $leave_status = 'Pl';
                                                            $Pl++;
                                                            $Total++;
                                                        } else if ($before_date == 'A' && $after_date == 'A') {
                                                            $leave_status = 'A';
                                                            $absent++;
                                                            $Total++;
                                                        } else {
                                                            $leave_status = 'A';
                                                            $absent++;
                                                            $Total++;
                                                        }
                                                    } else if (getHoliday('rec_id', $date_before) != "") {

                                                        if (validate_weekoff_before($row['id'], $mm, $dd - 1, $yy)) {
                                                            $wo++;
                                                            $leave_status = 'w';
                                                            if ($row['employee_typ'] != 'daily_wages') {
                                                                $Total++;
                                                            }
                                                        } else {
                                                            $wo++;
                                                            $Total++;
                                                            $leave_status = 'w';
                                                        }
                                                    } else if (getHoliday('rec_id', $date_after) != "") {
                                                        if (validate_weekoff_after($row['id'], $mm, $dd + 1, $yy)) {
                                                            $wo++;
                                                            $leave_status = 'w';
                                                            if ($row['employee_typ'] != 'daily_wages') {
Пример #3
0
function validate_weekoff_before($emp_id, $mm, $dd, $yy)
{
    $date_before = date('Y-m-d', mktime(0, 0, 0, $mm, $dd - 1, $yy));
    $status = getLeavestatusBydate($emp_id, $date_before);
    if ($status == "H") {
        validate_weekoff_before($emp_id, ${$mm}, $dd, $yy);
    } else {
        if ($status == "P" or $status == "OD") {
            return true;
        } else {
            return false;
        }
    }
}