public static function updateHolidaysForLeavesOnDelete() { $dbConnection = new DMLFunctions(); $approved = Leave::LEAVE_STATUS_LEAVE_APPROVED; $pendingApproval = Leave::LEAVE_STATUS_LEAVE_PENDING_APPROVAL; $taken = Leave::LEAVE_STATUS_LEAVE_TAKEN; $holiday = Leave::LEAVE_STATUS_LEAVE_HOLIDAY; $lengthFullDay = Leave::LEAVE_LENGTH_FULL_DAY; $query = "UPDATE hs_hr_leave SET leave_status = {$pendingApproval}, leave_length_hours = {$lengthFullDay}, " . "leave_length_days = 1, leave_comments = Null " . "WHERE leave_status = {$holiday} AND leave_date > CURDATE() " . "AND leave_date NOT IN(SELECT date FROM hs_hr_holidays ) "; $result = $dbConnection->executeQuery($query); #$query = "UPDATE hs_hr_leave SET leave_status = $taken, leave_length_hours = $lengthFullDay, " . #"leave_length_days = 1, leave_comments = Null " . #"WHERE leave_status = $holiday AND leave_date <= CURDATE()" . #"AND leave_date NOT IN(SELECT date FROM hs_hr_holidays ) "; #$result = $dbConnection -> executeQuery($query); Weekends::updateWeekendsForLeaves(); }
/** * Wrpper to edit holidays * * @param unknown_type $modifier */ public function editHoliday($modifier = "specific") { $this->_authenticateViewHoliday(); switch ($modifier) { case "specific": $objLeave = $this->getObjLeave(); $this->getObjLeave()->edit(); Leave::updateLeavesForDate($objLeave->getDate(), $objLeave->getLength()); Holidays::updateHolidaysForLeavesOnUpdate($objLeave->getDate(), $objLeave->getLength()); break; case "weekend": $this->getObjLeave()->editDay(); Weekends::updateWeekendsForLeaves(); break; } }
public function testUpdateWeekendsForLeaves() { Weekends::updateWeekendsForLeaves(); $dbConnection = new DMLFunctions(); $query = "SELECT leave_id, leave_status FROM hs_hr_leave "; $result = $dbConnection->executeQuery($query); $leaves = array(); while ($row = $dbConnection->dbObject->getArray($result)) { $leaves[$row['leave_id']] = $row['leave_status']; } $this->assertEquals(4, $leaves['10'], 'Invalid status'); $this->assertEquals(4, $leaves['11'], 'Invalid status'); $this->assertEquals(3, $leaves['12'], 'Invalid status'); $this->assertEquals(3, $leaves['13'], 'Invalid status'); }