Ejemplo n.º 1
0
 /**
  * Build the object with fetched records
  *
  * @access private
  * @return TimeEvent[] array of time events
  */
 private function _buildObjArr($result)
 {
     $objArr = null;
     while ($row = mysql_fetch_assoc($result)) {
         $tmpEventArr = new TimeEvent();
         $tmpEventArr->setTimeEventId($row[self::TIME_EVENT_DB_FIELD_TIME_EVENT_ID]);
         $tmpEventArr->setProjectId($row[self::TIME_EVENT_DB_FIELD_PROJECT_ID]);
         $tmpEventArr->setActivityId($row[self::TIME_EVENT_DB_FIELD_ACTIVITY_ID]);
         $tmpEventArr->setEmployeeId($row[self::TIME_EVENT_DB_FIELD_EMPLOYEE_ID]);
         $tmpEventArr->setTimesheetId($row[self::TIME_EVENT_DB_FIELD_TIMESHEET_ID]);
         if (!empty($row[self::TIME_EVENT_DB_FIELD_START_TIME])) {
             $tmpEventArr->setStartTime(date('Y-m-d H:i', strtotime($row[self::TIME_EVENT_DB_FIELD_START_TIME])));
         }
         if (!empty($row[self::TIME_EVENT_DB_FIELD_END_TIME])) {
             $tmpEventArr->setEndTime(date('Y-m-d H:i', strtotime($row[self::TIME_EVENT_DB_FIELD_END_TIME])));
         }
         $tmpEventArr->setReportedDate(date('Y-m-d', strtotime($row[self::TIME_EVENT_DB_FIELD_REPORTED_DATE])));
         $tmpEventArr->setDuration($row[self::TIME_EVENT_DB_FIELD_DURATION]);
         $tmpEventArr->setDescription($row[self::TIME_EVENT_DB_FIELD_DESCRIPTION]);
         $objArr[] = $tmpEventArr;
     }
     return $objArr;
 }
 public function parseEditTimegrid($postArr)
 {
     $gridCount = $postArr['hdnGridCount'];
     $datesCount = $postArr['hdnDatesCount'];
     $employeeId = $postArr['txtEmployeeId'];
     $timesheetId = $postArr['txtTimesheetId'];
     $updateList = array();
     $addList = array();
     for ($i = 0; $i < $gridCount; $i++) {
         for ($j = 0; $j < $datesCount; $j++) {
             if (isset($postArr["hdnTimeEventId-{$i}-{$j}"])) {
                 // An exsiting time event
                 if ($postArr["txtDuration-{$i}-{$j}"] != $postArr["hdnDuration-{$i}-{$j}"] || $postArr["txtComment-{$i}-{$j}"] != $postArr["hdntxtComment-{$i}-{$j}"] || $postArr["cmbProject-{$i}"] != $postArr["hdnProject-{$i}"] || $postArr["cmbActivity-{$i}"] != $postArr["hdnActivity-{$i}"]) {
                     // If there is no change from previous value, no need to update the time event
                     // This check can only be done if $postArr["hdnTimeEventId-$i-$j"] is set
                     $timeEvent = new TimeEvent();
                     $timeEvent->setTimeEventId($postArr["hdnTimeEventId-{$i}-{$j}"]);
                     $timeEvent->setEmployeeId($employeeId);
                     $timeEvent->setProjectId($postArr["cmbProject-{$i}"]);
                     $timeEvent->setActivityId($postArr["cmbActivity-{$i}"]);
                     $timeEvent->setDuration($postArr["txtDuration-{$i}-{$j}"] * 3600);
                     $timeEvent->setReportedDate($postArr["hdnReportedDate-{$j}"]);
                     $timeEvent->setDescription($postArr["txtComment-{$i}-{$j}"]);
                     $updateList[] = $timeEvent;
                 }
             } else {
                 // A new time event
                 if ($postArr["txtDuration-{$i}-{$j}"] != '') {
                     // If no value has been put, no need to add a new time event
                     $timeEvent = new TimeEvent();
                     $timeEvent->setTimesheetId($timesheetId);
                     $timeEvent->setEmployeeId($employeeId);
                     $timeEvent->setProjectId($postArr["cmbProject-{$i}"]);
                     $timeEvent->setActivityId($postArr["cmbActivity-{$i}"]);
                     $timeEvent->setDuration($postArr["txtDuration-{$i}-{$j}"] * 3600);
                     $timeEvent->setReportedDate($postArr["hdnReportedDate-{$j}"]);
                     $timeEvent->setDescription($postArr["txtComment-{$i}-{$j}"]);
                     $addList[] = $timeEvent;
                 }
             }
         }
     }
     $eventsList[0] = $updateList;
     $eventsList[1] = $addList;
     return $eventsList;
 }
Ejemplo n.º 3
0
 public function parseActivityReportParams($postArr)
 {
     $tmpObj = new TimeEvent();
     $tmpObj->setProjectId($postArr['cmbProject']);
     $tmpObj->setActivityId($postArr['activityId']);
     $tmpObj->setDuration($postArr['time']);
     $fromDate = LocaleUtil::getInstance()->convertToStandardDateFormat($postArr['txtFromDate']);
     $toDate = LocaleUtil::getInstance()->convertToStandardDateFormat($postArr['txtToDate']);
     $pageNo = isset($_POST['pageNo']) ? $postArr['pageNo'] : 1;
     return array($tmpObj, $fromDate, $toDate, $pageNo);
 }
Ejemplo n.º 4
0
 /**
  * Constructs and returns time event with given parameters
  */
 private function _getTimeEvent($timeEventId, $projectId, $employeeId, $timesheetId, $startTime, $endTime, $reportedDate, $duration, $description, $activityId = 1)
 {
     $timeEvent = new TimeEvent();
     $timeEvent->setTimeEventId($timeEventId);
     $timeEvent->setActivityId($activityId);
     $timeEvent->setProjectId($projectId);
     $timeEvent->setEmployeeId($employeeId);
     $timeEvent->setTimesheetId($timesheetId);
     $timeEvent->setStartTime($startTime);
     $timeEvent->setEndTime($endTime);
     $timeEvent->setReportedDate($reportedDate);
     $timeEvent->setDuration($duration);
     $timeEvent->setDescription($description);
     return $timeEvent;
 }
Ejemplo n.º 5
0
 public function showPunchTime()
 {
     $path = "/templates/time/punchTime.php";
     if (!isset($_SESSION['empID'])) {
         $this->redirect('UNAUTHORIZED_FAILURE');
     }
     $tmpObj = new TimeEvent();
     $tmpObj->setEmployeeId($_SESSION['empID']);
     $tmpObj->setProjectId(TimeEvent::TIME_EVENT_PUNCH_PROJECT_ID);
     $tmpObj->setActivityId(TimeEvent::TIME_EVENT_PUNCH_ACTIVITY_ID);
     $tmpTimeObj = $tmpObj->pendingTimeEvents(true);
     if (!$tmpTimeObj) {
         $tmpTimeObj = $tmpObj->fetchTimeEvents(true);
     }
     if (!isset($tmpTimeObj)) {
         $dataArr[0] = TimeEvent::TIME_EVENT_PUNCH_IN;
         $dataArr[1] = null;
     } else {
         if ($tmpTimeObj[0]->getEndTime() != null || $tmpTimeObj[0]->getDuration() != null) {
             $dataArr[0] = TimeEvent::TIME_EVENT_PUNCH_IN;
         } else {
             $dataArr[0] = TimeEvent::TIME_EVENT_PUNCH_OUT;
         }
         $dataArr[1] = $tmpTimeObj[0];
     }
     $employeeObj = new EmpInfo();
     $employee = $employeeObj->filterEmpMain($_SESSION['empID']);
     $dataArr[2] = $employee[0];
     $template = new TemplateMerger($dataArr, $path);
     $template->display();
 }