//Limit it to 31 days. if ($data['repeat'] > 31) { $data['repeat'] = 31; } Debug::Text('Repeating Punch For: ' . $data['repeat'] . ' Days', __FILE__, __LINE__, __METHOD__, 10); for ($i = 0; $i <= (int) $data['repeat']; $i++) { Debug::Text('Punch Repeat: ' . $i, __FILE__, __LINE__, __METHOD__, 10); if ($i == 0) { $date_stamp = $data['date_stamp']; } else { $date_stamp = $data['date_stamp'] + 86400 * $i; } Debug::Text('Date Stamp: ' . TTDate::getDate('DATE', $date_stamp), __FILE__, __LINE__, __METHOD__, 10); $sf = new ScheduleFactory(); if ($i == 0) { $sf->setID($data['id']); } //$sf->setUserDateId( UserDateFactory::findOrInsertUserDate($data['user_id'], $date_stamp) ); $sf->setUserDate($data['user_id'], $date_stamp); $sf->setStatus($data['status_id']); $sf->setSchedulePolicyID($data['schedule_policy_id']); $sf->setAbsencePolicyID($data['absence_policy_id']); $sf->setBranch($data['branch_id']); $sf->setDepartment($data['department_id']); if (isset($data['job_id'])) { $sf->setJob($data['job_id']); } if (isset($data['job_item_id'])) { $sf->setJobItem($data['job_item_id']); } if ($data['start_time'] != '') {