public function execute($request)
 {
     $leaveRequestService = $this->getLeaveRequestService();
     $leaveRequestId = trim($request->getParameter("leaveRequestId"));
     $leaveId = trim($request->getParameter("leaveId"));
     $comment = trim($request->getParameter("leaveComment"));
     $user = $this->getUser();
     $loggedInUserId = $user->getAttribute('auth.userId');
     $loggedInEmpNumber = $user->getAttribute('auth.empNumber');
     if (!empty($loggedInEmpNumber)) {
         $employee = $this->getEmployeeService()->getEmployee($loggedInEmpNumber);
         $createdBy = $employee->getFullName();
     } else {
         $createdBy = $user->getAttribute('auth.firstName');
     }
     $savedComment = NULL;
     if ($leaveRequestId != "") {
         $savedComment = $leaveRequestService->saveLeaveRequestComment($leaveRequestId, $comment, $createdBy, $loggedInUserId, $loggedInEmpNumber);
     }
     if ($leaveId != "") {
         $savedComment = $leaveRequestService->saveLeaveComment($leaveId, $comment, $createdBy, $loggedInUserId, $loggedInEmpNumber);
     }
     if (!empty($savedComment)) {
         $created = new DateTime($savedComment->getCreated());
         $createdAt = set_datepicker_date_format($created->format('Y-m-d')) . ' ' . $created->format('H:i');
         $returnText = $createdAt . ' ' . $savedComment->getCreatedByName() . "\n\n" . $savedComment->getComments();
     } else {
         $returnText = 0;
     }
     if ($this->getUser()->hasFlash('myLeave')) {
         $this->getUser()->setFlash('myLeave', true);
     }
     return $this->renderText($returnText);
 }
예제 #2
0
 public function getStartAndEndDates($employeeId)
 {
     $timesheetService = new TimesheetService();
     $timesheets = $timesheetService->getTimesheetByEmployeeId($employeeId);
     $dateOptions = array();
     $dateOptionsToDrpDwn = array();
     $userRoleManager = sfContext::getInstance()->getUserRoleManager();
     $user = $userRoleManager->getUser();
     $excludeRoles = array();
     $includeRoles = $employeeId == $user->getEmpNumber() ? array('ESS') : array();
     $entities = array('Employee' => $employeeId);
     $i = 0;
     if ($timesheets != null) {
         $dataGroupPermissions = $userRoleManager->getDataGroupPermissions(array('time_employee_timesheets'), array(), array(), $employeeId == $user->getEmpNumber(), $entities);
         foreach ($timesheets as $timesheet) {
             $allowedActions = $userRoleManager->getAllowedActions(WorkflowStateMachine::FLOW_TIME_TIMESHEET, $timesheet->getState(), $excludeRoles, $includeRoles, $entities);
             if (isset($allowedActions[WorkflowStateMachine::TIMESHEET_ACTION_VIEW]) || $dataGroupPermissions->canRead()) {
                 $dateOptions[$i] = $timesheet->getStartDate() . " " . __("to") . " " . $timesheet->getEndDate();
                 $dateOptionsToDrpDwn[$i] = set_datepicker_date_format($timesheet->getStartDate()) . " " . __("to") . " " . set_datepicker_date_format($timesheet->getEndDate());
                 $i++;
             }
         }
     }
     $this->dateOptions = array_reverse($dateOptions);
     return array_reverse($dateOptionsToDrpDwn);
 }
예제 #3
0
 public function __toString()
 {
     $name = $this->getPropertyValue('namePattern');
     $id = $this->getPropertyValue('namePattern');
     $imageHTML = tag('img', array('src' => theme_path('images/callout-left.png'), 'title' => 'Click here to edit', 'alt' => 'Edit', 'class' => 'callout dialogInvoker'));
     $placeholderGetters = $this->getPropertyValue('placeholderGetters');
     $id = $this->generateAttributeValue($placeholderGetters, $this->getPropertyValue('idPattern'));
     $name = $this->generateAttributeValue($placeholderGetters, $this->getPropertyValue('namePattern'));
     $comments = $this->getValue();
     $commentExtract = '';
     $allComments = '';
     // show last comment only
     if (count($comments) > 0) {
         foreach ($comments as $comment) {
             $created = new DateTime($comment->getCreated());
             $createdAt = set_datepicker_date_format($created->format('Y-m-d')) . ' ' . $created->format('H:i');
             $formatComment = $createdAt . ' ' . $comment->getCreatedByName() . "\n\n" . $comment->getComments();
             $allComments = $formatComment . "\n\n" . $allComments;
         }
         $lastComment = $comments->getLast();
         $commentExtract = $this->trimComment($lastComment->getComments());
     }
     $commentContainerHTML = content_tag('span', $commentExtract, array('id' => $this->generateAttributeValue($placeholderGetters, 'commentContainer-{id}')));
     $hiddenFieldHTML = tag('input', array('type' => 'hidden', 'id' => $id, 'name' => $name, 'value' => $allComments));
     $commentHTML = content_tag('span', $commentContainerHTML . $imageHTML . $hiddenFieldHTML, array('class' => 'commentContainerLong'));
     if ($this->isHiddenOnCallback()) {
         return ' ';
     }
     return $commentHTML . $this->getHiddenFieldHTML();
 }
 protected function setDefaultDates()
 {
     $now = time();
     // If leave period defined, use leave period start and end date
     $calenderYear = $this->getLeavePeriodService()->getCalenderYearByDate($now);
     $this->setDefaults(array('calFromDate' => set_datepicker_date_format($calenderYear[0]), 'calToDate' => set_datepicker_date_format($calenderYear[1])));
 }
 public function execute($request)
 {
     sfConfig::set('sf_web_debug', false);
     sfConfig::set('sf_debug', false);
     $leaveId = $request->getParameter("leaveId");
     $leaveRequestId = $request->getParameter('leaveRequestId');
     $comments = array();
     $leaveRequestService = $this->getLeaveRequestService();
     if (!empty($leaveRequestId)) {
         $comments = $leaveRequestService->getLeaveRequestComments($leaveRequestId);
     } else {
         if (!empty($leaveId)) {
             $comments = $leaveRequestService->getLeaveComments($leaveId);
         }
     }
     $returnData = array();
     if (count($comments) > 0) {
         foreach ($comments as $comment) {
             $commentDate = new DateTime($comment->getCreated());
             $row['date'] = set_datepicker_date_format($commentDate->format('Y-m-d'));
             $row['time'] = $commentDate->format('H:i');
             $row['author'] = $comment->getCreatedByName();
             $row['comments'] = $comment->getComments();
             $returnData[] = $row;
         }
     }
     $response = $this->getResponse();
     $response->setHttpHeader('Expires', '0');
     $response->setHttpHeader("Cache-Control", "must-revalidate, post-check=0, pre-check=0, max-age=0");
     $response->setHttpHeader("Cache-Control", "private", false);
     return $this->renderText(json_encode($returnData));
 }
 /**
  *
  */
 public function configure()
 {
     $this->candidateVacancyId = $this->getOption('candidateVacancyId');
     $this->selectedAction = $this->getOption('selectedAction');
     $this->id = $this->getOption('id');
     if ($this->candidateVacancyId > 0 && $this->selectedAction != "") {
         $stateMachine = new WorkflowStateMachine();
         $this->actionName = $stateMachine->getRecruitmentActionName($this->selectedAction);
         $this->selectedCandidateVacancy = $this->getCandidateService()->getCandidateVacancyById($this->candidateVacancyId);
     }
     if ($this->id > 0) {
         $candidateHistory = $this->getCandidateService()->getCandidateHistoryById($this->id);
         $this->selectedCandidateVacancy = $this->getCandidateService()->getCandidateVacancyByCandidateIdAndVacancyId($candidateHistory->getCandidateId(), $candidateHistory->getVacancyId());
         $this->performedActionName = $candidateHistory->getActionName();
         $date = explode(" ", $candidateHistory->getPerformedDate());
         $this->performedDate = set_datepicker_date_format($date[0]);
         $this->performedBy = $candidateHistory->getPerformerName();
         $this->vacancyId = $candidateHistory->getVacancyId();
         $this->selectedAction = $candidateHistory->getAction();
     }
     $this->candidateId = $this->selectedCandidateVacancy->getCandidateId();
     $this->vacancyId = $this->selectedCandidateVacancy->getVacancyId();
     $this->candidateName = $this->selectedCandidateVacancy->getCandidateName();
     $this->vacancyName = $this->selectedCandidateVacancy->getVacancyName();
     $this->hiringManagerName = $this->selectedCandidateVacancy->getHiringManager();
     $this->currentStatus = ucwords(strtolower($this->selectedCandidateVacancy->getStatus()));
     $this->setWidget('notes', new sfWidgetFormTextArea());
     $this->setValidator('notes', new sfValidatorString(array('required' => false, 'max_length' => 2147483647)));
     $this->widgetSchema->setNameFormat('candidateVacancyStatus[%s]');
     if ($this->id > 0) {
         $this->setDefault('notes', $candidateHistory->getNote());
         $this->widgetSchema['notes']->setAttribute('disabled', 'disable');
         $this->actionName = 'View Action History';
     }
 }
예제 #7
0
 public function configure()
 {
     $employee = $this->getOption('employee');
     $this->allowActivate = $this->getOption('allowActivate');
     $this->allowTerminate = $this->getOption('allowTerminate');
     $empTerminatedId = $employee->termination_id;
     $terminateReasons = $this->__getTerminationReasons();
     //creating widgets
     $widgets = array('date' => new ohrmWidgetDatePickerNew(array(), array('id' => 'terminate_date')), 'reason' => new sfWidgetFormSelect(array('choices' => $terminateReasons)), 'note' => new sfWidgetFormTextArea());
     if (!$this->allowTerminate && !$this->allowActivate) {
         foreach ($widgets as $widget) {
             $widget->setAttribute('disabled', 'disabled');
         }
     }
     $this->setWidgets($widgets);
     $inputDatePattern = sfContext::getInstance()->getUser()->getDateFormat();
     //Setting validators
     $this->setValidators(array('date' => new ohrmDateValidator(array('date_format' => $inputDatePattern, 'required' => true), array('invalid' => 'Date format should be ' . $inputDatePattern)), 'reason' => new sfValidatorChoice(array('required' => true, 'choices' => array_keys($terminateReasons))), 'note' => new sfValidatorString(array('required' => false, 'max_length' => 250, 'trim' => true))));
     $this->setDefault('date', set_datepicker_date_format(date('Y-m-d')));
     $this->setDefault('reason', 1);
     if (!empty($empTerminatedId)) {
         $employeeTerminationRecord = $employee->getEmployeeTerminationRecord();
         $this->setDefault('date', set_datepicker_date_format($employeeTerminationRecord->getDate()));
         $this->setDefault('reason', $employeeTerminationRecord->getReasonId());
         $this->setDefault('note', $employeeTerminationRecord->getNote());
     }
     $this->widgetSchema->setNameFormat('terminate[%s]');
 }
예제 #8
0
 public function getStartAndEndDates($employeeId)
 {
     $userEmployeeNumber = null;
     $timesheetService = new TimesheetService();
     $timesheets = $timesheetService->getTimesheetByEmployeeId($employeeId);
     $dateOptions = array();
     $dateOptionsToDrpDwn = array();
     $userObj = sfContext::getInstance()->getUser()->getAttribute('user');
     $userId = $userObj->getUserId();
     $userEmployeeNumber = $userObj->getEmployeeNumber();
     if ($userEmployeeNumber == $employeeId) {
         $user = new User();
         $decoratedUser = new EssUserRoleDecorator($user);
     } else {
         $userRoleFactory = new UserRoleFactory();
         $decoratedUser = $userRoleFactory->decorateUserRole($userId, $employeeId, $userEmployeeNumber);
     }
     $i = 0;
     if ($timesheets != null) {
         foreach ($timesheets as $timesheet) {
             $allowedActions = $decoratedUser->getAllowedActions(WorkflowStateMachine::FLOW_TIME_TIMESHEET, $timesheet->getState());
             if (in_array(WorkflowStateMachine::TIMESHEET_ACTION_VIEW, $allowedActions)) {
                 $dateOptions[$i] = $timesheet->getStartDate() . " " . __("to") . " " . $timesheet->getEndDate();
                 $dateOptionsToDrpDwn[$i] = set_datepicker_date_format($timesheet->getStartDate()) . " " . __("to") . " " . set_datepicker_date_format($timesheet->getEndDate());
                 $i++;
             }
         }
     }
     $this->dateOptions = array_reverse($dateOptions);
     return array_reverse($dateOptionsToDrpDwn);
 }
 function getLeaveBalances($postData)
 {
     $count = count($postData);
     $data = array();
     $leaveEntitlementService = new LeaveEntitlementService();
     $leaveStrategy = $leaveEntitlementService->getLeaveEntitlementStrategy();
     for ($i = 0; $i < $count; $i++) {
         $empNumber = $postData[$i][0];
         $leaveTypeId = $postData[$i][1];
         $startDate = $postData[$i][2];
         $endDate = $postData[$i][3];
         if ($startDate == $endDate) {
             $leaveBalance = $leaveEntitlementService->getLeaveBalance($empNumber, $leaveTypeId, $startDate);
         } else {
             $leavePeriodForStartDate = $leaveStrategy->getLeavePeriod($startDate, $empNumber, $leaveTypeId);
             $leavePeriodForEndDate = $leaveStrategy->getLeavePeriod($endDate, $empNumber, $leaveTypeId);
             if ($leavePeriodForStartDate[0] == $leavePeriodForEndDate[0] && $leavePeriodForStartDate[1] == $leavePeriodForEndDate[1]) {
                 $leaveBalance = $leaveEntitlementService->getLeaveBalance($empNumber, $leaveTypeId, $startDate);
             } else {
                 $startPeriodBalance = $leaveEntitlementService->getLeaveBalance($empNumber, $leaveTypeId, $startDate);
                 $endPeriodBalance = $leaveEntitlementService->getLeaveBalance($empNumber, $leaveTypeId, $endDate);
                 $leaveBalance = array(array('start' => set_datepicker_date_format($leavePeriodForStartDate[0]), 'end' => set_datepicker_date_format($leavePeriodForStartDate[1]), 'balance' => $startPeriodBalance->getBalance()), array('start' => set_datepicker_date_format($leavePeriodForEndDate[0]), 'end' => set_datepicker_date_format($leavePeriodForEndDate[1]), 'balance' => $endPeriodBalance->getBalance()));
             }
         }
         if ($leaveBalance instanceof LeaveBalance) {
             $data[] = number_format($leaveBalance->getBalance(), 2);
         } else {
             $data[] = $leaveBalance;
         }
     }
     return $data;
 }
예제 #10
0
 public function configure()
 {
     $widgets = array();
     $labels = array();
     $validators = array();
     $defaults = array();
     sfContext::getInstance()->getConfiguration()->loadHelpers(array('I18N', 'OrangeDate'));
     $inputDatePattern = sfContext::getInstance()->getUser()->getDateFormat();
     // From and To Date
     $widgets['calFromDate'] = new ohrmWidgetDatePickerNew(array(), array('id' => 'calFromDate'));
     $labels['calFromDate'] = __('From');
     $widgets['calToDate'] = new ohrmWidgetDatePickerNew(array(), array('id' => 'calToDate'));
     $labels['calToDate'] = __('To');
     // Set default from/to to current leave period.
     $leavePeriod = $this->getLeavePeriodService()->getCurrentLeavePeriod();
     $defaults['calFromDate'] = set_datepicker_date_format($leavePeriod->getStartDate());
     $endDateString = date('Y-m-d', strtotime($leavePeriod->getEndDate() . " +1 year"));
     $endDate = new DateTime($endDateString);
     $toDate = $endDate->format("Y-m-d");
     $defaults['calToDate'] = set_datepicker_date_format($toDate);
     $validators['calFromDate'] = new ohrmDateValidator(array('date_format' => $inputDatePattern, 'required' => false), array('invalid' => 'Date format should be' . $inputDatePattern));
     $validators['calToDate'] = new ohrmDateValidator(array('date_format' => $inputDatePattern, 'required' => false), array('invalid' => 'Date format should be' . $inputDatePattern));
     // Leave Statuses
     $leaveStatusChoices = Leave::getStatusTextList();
     if ($this->mode == self::MODE_MY_LEAVE_LIST) {
         $defaultStatuses = array_keys($leaveStatusChoices);
     } else {
         $defaultStatuses = array(Leave::LEAVE_STATUS_LEAVE_PENDING_APPROVAL);
     }
     $widgets['chkSearchFilter'] = new ohrmWidgetCheckboxGroup(array('choices' => $leaveStatusChoices, 'show_all_option' => true, 'default' => $defaultStatuses));
     $labels['chkSearchFilter'] = 'Show Leave with Status';
     $defaults['chkSearchFilter'] = $defaultStatuses;
     $validators['chkSearchFilter'] = new sfValidatorChoice(array('choices' => array_keys($leaveStatusChoices), 'required' => false, 'multiple' => true));
     if ($this->mode != self::MODE_MY_LEAVE_LIST) {
         $requiredPermissions = array(BasicUserRoleManager::PERMISSION_TYPE_ACTION => array('view_leave_list'));
         $widgets['txtEmployee'] = new ohrmWidgetEmployeeNameAutoFill(array('employeeList' => $this->getEmployeeList(), 'requiredPermissions' => $requiredPermissions));
         $labels['txtEmployee'] = __('Employee');
         $validators['txtEmployee'] = new ohrmValidatorEmployeeNameAutoFill();
         $widgets['cmbSubunit'] = new ohrmWidgetSubUnitDropDown();
         $labels['cmbSubunit'] = __('Sub Unit');
         $subUnitChoices = $widgets['cmbSubunit']->getValidValues();
         $validators['cmbSubunit'] = new sfValidatorChoice(array('choices' => $subUnitChoices, 'required' => false));
         // TODO check cmbWithTerminated if searching for terminated employee
         $widgets['cmbWithTerminated'] = new sfWidgetFormInputCheckbox(array('value_attribute_value' => 'on'));
         $labels['cmbWithTerminated'] = __('Include Past Employees');
         $validators['cmbWithTerminated'] = new sfValidatorBoolean(array('true_values' => array('on'), 'required' => false));
     }
     $this->setWidgets($widgets);
     $this->getWidgetSchema()->setLabels($labels);
     $this->setvalidators($validators);
     $this->setDefaults($defaults);
     $this->getWidgetSchema()->setNameFormat('leaveList[%s]');
     sfWidgetFormSchemaFormatterBreakTags::setNoOfColumns(1);
     $this->getWidgetSchema()->setFormFormatterName('BreakTags');
     // Validate that if both from and to date are given, form date is before to date.
     $this->getValidatorSchema()->setPostValidator(new ohrmValidatorSchemaCompare('calFromDate', sfValidatorSchemaCompare::LESS_THAN_EQUAL, 'calToDate', array('throw_global_error' => true, 'skip_if_one_empty' => true), array('invalid' => 'The from date ("%left_field%") must be before the to date ("%right_field%")')));
 }
 public function getPunchOutUserTimeAndZone()
 {
     $value = '';
     if ($this->getPunchOutUserTime()) {
         $outUserTimeArray = explode(" ", $this->getPunchOutUserTime());
         $value = set_datepicker_date_format($outUserTimeArray[0]) . " " . $outUserTimeArray[1] . '<span class="helpText"> GMT ' . $this->getPunchOutTimeOffset() . '</span>';
     }
     return $value;
 }
 public function getPunchOutUserTimeAndZone()
 {
     $value = '';
     if ($this->getPunchOutUserTime()) {
         $outUserTimeArray = explode(" ", $this->getPunchOutUserTime());
         $value = set_datepicker_date_format($outUserTimeArray[0]) . " " . $outUserTimeArray[1] . '<br><d style="color:#98a09f;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;GMT ' . $this->getPunchOutTimeOffset() . '</span>';
     }
     return $value;
 }
예제 #13
0
 protected function getLabel()
 {
     $label = parent::getLabel();
     $default = $this->getPropertyValue('default');
     if ($label != $default) {
         $label = set_datepicker_date_format($label);
     }
     return $label;
 }
 protected function setFormDefaults($filters)
 {
     // convert back to localized format before setting in form
     if (isset($filters['date']['from'])) {
         $filters['date']['from'] = set_datepicker_date_format($filters['date']['from']);
     }
     if (isset($filters['date']['to'])) {
         $filters['date']['to'] = set_datepicker_date_format($filters['date']['to']);
     }
     $this->form->setDefaults($filters);
 }
예제 #15
0
 public function configure()
 {
     $timeZone = $this->getOption('timezone');
     $date = $this->getOption('date');
     $this->formWidgets['timezone'] = new sfWidgetFormSelect(array('choices' => $this->getTimezoneArray()), array('class' => 'timezone'));
     $this->setWidgets($this->formWidgets);
     $this->formValidators['timezone'] = new sfValidatorString(array(), array('required' => __('Enter timezone')));
     $this->setValidators($this->formValidators);
     $this->widgetSchema->setNameFormat('attendance[%s]');
     parent::configure();
     $index = array_keys($this->getAttendanceService()->getTimezoneArray(), $timeZone);
     $this->setDefault('timezone', $index[0]);
     $this->setDefault('date', set_datepicker_date_format($date));
 }
 public function configure()
 {
     $date = $this->getOption('date');
     $employeeId = $this->getOption('employeeId');
     $trigger = $this->getOption('trigger');
     $this->setWidgets(array('employeeName' => new sfWidgetFormInputText(array(), array('class' => 'inputFormatHint', 'id' => 'employee')), 'date' => new sfWidgetFormInputText(array(), array('class' => 'date', 'margin' => '0')), 'employeeId' => new sfWidgetFormInputHidden()));
     if ($trigger) {
         $this->setDefault('employeeName', $this->getEmployeeName($employeeId));
         $this->setDefault('date', set_datepicker_date_format($date));
     } else {
         $this->setDefault('employeeName', __('Type for hints') . '...');
     }
     $this->widgetSchema->setNameFormat('attendance[%s]');
     $this->setValidators(array('date' => new sfValidatorDate(array(), array('required' => __('Enter Date'))), 'employeeName' => new sfValidatorString(array(), array('required' => __('Enter Employee Name'))), 'employeeId' => new sfValidatorString()));
 }
 protected function formatLabel($baseValuesArray, $fieldMap)
 {
     $formattedLabel = '';
     if (is_array($fieldMap)) {
         throw new Exception('Only one field can be used if the label format is not specified');
     } else {
         if (strtotime($baseValuesArray[$fieldMap]) > 0) {
             $timeStamp = strtotime($baseValuesArray[$fieldMap]);
             $formattedLabel = set_datepicker_date_format($timeStamp);
         } else {
             $formattedLabel = htmlspecialchars($baseValuesArray[$fieldMap]);
         }
     }
     return $formattedLabel;
 }
 public function configure()
 {
     $date = $this->getOption('date');
     $employeeId = $this->getOption('employeeId');
     $trigger = $this->getOption('trigger');
     $this->setWidgets(array('employeeName' => new ohrmWidgetEmployeeNameAutoFill(array('jsonList' => $this->getEmployeeListAsJson()), array('class' => 'formInputText')), 'date' => new ohrmWidgetDatePicker(array(), array('id' => 'attendance_date'), array('class' => 'formDateInput'))));
     if ($trigger) {
         $this->setDefault('employeeName', $this->getEmployeeName($employeeId));
         $this->setDefault('date', set_datepicker_date_format($date));
     }
     $this->widgetSchema->setNameFormat('attendance[%s]');
     $inputDatePattern = sfContext::getInstance()->getUser()->getDateFormat();
     $this->setValidators(array('date' => new ohrmDateValidator(array('date_format' => $inputDatePattern, 'required' => true), array('invalid' => 'Date format should be ' . $inputDatePattern)), 'employeeName' => new ohrmValidatorEmployeeNameAutoFill()));
     $this->getWidgetSchema()->setLabels($this->getFormLabels());
 }
예제 #19
0
 /**
  * Get Leave Period choices as an array.
  * @return array Array of leave periods
  */
 protected function getLeavePeriodChoices()
 {
     $leavePeriodChoices = array();
     $leavePeriods = $this->getLeavePeriodService()->getLeavePeriodList();
     if (empty($leavePeriods)) {
         $leavePeriodChoices[0] = __('No Leave Periods');
     } else {
         foreach ($leavePeriods as $leavePeriod) {
             $id = $leavePeriod->getLeavePeriodId();
             $label = set_datepicker_date_format($leavePeriod->getStartDate()) . " " . __("to") . " " . set_datepicker_date_format($leavePeriod->getEndDate());
             $leavePeriodChoices[$id] = $label;
         }
     }
     return $leavePeriodChoices;
 }
예제 #20
0
 private function __setDefaultValues()
 {
     $reviewId = $this->getOption('reviewId');
     if (!empty($reviewId)) {
         $review = $this->getPerformanceReviewService()->readPerformanceReview($reviewId);
         $employee = array('empName' => $review->getEmployee()->getFullName(), 'empId' => $review->getEmployee()->getEmployeeId());
         $reviewer = array('empName' => $review->getReviewer()->getFullName(), 'empId' => $review->getReviewer()->getEmployeeId());
         $this->setDefaults(array('reviewId' => $review->getId(), 'employeeName' => $employee, 'reviewerName' => $reviewer, 'from_date' => set_datepicker_date_format($review->getPeriodFrom()), 'to_date' => set_datepicker_date_format($review->getPeriodTo()), 'dueDate' => set_datepicker_date_format($review->getDueDate())));
     }
     if ($this->getOption('redirect')) {
         $employee = array('empName' => $this->getOption('empName'), 'empId' => $this->getOption('empId'));
         $reviewer = array('empName' => $this->getOption('reviewerName'), 'empId' => $this->getOption('reviewerId'));
         $this->setDefaults(array('employeeName' => $employee, 'reviewerName' => $reviewer, 'from_date' => $this->getOption('toDate'), 'to_date' => $this->getOption('fromDate'), 'dueDate' => $this->getOption('dueDate')));
     }
 }
예제 #21
0
 public function __toString()
 {
     if ($this->isHiddenOnCallback()) {
         return '&nbsp;';
     }
     $value = $this->getValue();
     $default = $this->getPropertyValue('default');
     $spliter = $this->getPropertyValue('dateSplit');
     $isValueList = $this->getPropertyValue('isValueList', false);
     if ($isValueList && is_array($value)) {
         $lines = $value;
         if (count($lines) >= 1) {
             $value = '<table class="valueListCell"><tbody>';
             foreach ($lines as $line) {
                 if (!$line && $default) {
                     $value .= '<tr><td>' . $default . '</td></tr>';
                 } else {
                     $value .= '<tr><td> &bull; ' . set_datepicker_date_format($line) . '</td></tr>';
                 }
             }
             $value .= '</tbody></table>';
         }
     } else {
         if ($spliter) {
             $formatted = array();
             $dates = split($spliter, $value);
             foreach ($dates as $date) {
                 $formatted[] = set_datepicker_date_format($date);
             }
             $value = implode($spliter, $formatted);
         } else {
             if ($value != $default) {
                 $value = set_datepicker_date_format($value);
             }
         }
     }
     return $value . $this->getHiddenFieldHTML();
 }
 private function getSensitiveInfoWidgets()
 {
     $widgets = array('txtEmployeeId' => new sfWidgetFormInputText(), 'txtNICNo' => new sfWidgetFormInputText(), 'txtSINNo' => new sfWidgetFormInputText(), 'DOB' => new ohrmWidgetDatePicker(array(), array('id' => 'personal_DOB')), 'txtLicenNo' => new sfWidgetFormInputText());
     $widgets['txtEmployeeId']->setAttribute('value', $this->employee->employeeId);
     $widgets['txtNICNo']->setAttribute('value', $this->employee->ssn);
     $widgets['txtSINNo']->setAttribute('value', $this->employee->sin);
     $widgets['DOB']->setAttribute('value', set_datepicker_date_format($this->employee->emp_birthday));
     $widgets['txtLicenNo']->setAttribute('value', $this->employee->licenseNo);
     return $widgets;
 }
     <?php 
if (!($attendanceDateRangeFrom == "YYYY-MM-DD" || $attendanceDateRangeFrom == "")) {
    ?>
     <dt><?php 
    echo __("From");
    ?>
</dt>
     <dd><?php 
    echo set_datepicker_date_format($attendanceDateRangeFrom);
    ?>
</dd>
     <?php 
}
?>
     <?php 
if (!($attendanceDateRangeTo == "YYYY-MM-DD" || $attendanceDateRangeTo == "")) {
    ?>
     <dt><?php 
    echo __("To");
    ?>
</dt>
     <dd><?php 
    echo set_datepicker_date_format($attendanceDateRangeTo);
    ?>
</dd>
     <?php 
}
?>
</dl>
            ?>
" value="<?php 
            echo $record->type;
            ?>
" />
                                <input type="hidden" id="number_<?php 
            echo $record->recordId;
            ?>
" value="<?php 
            echo htmlentities($record->number);
            ?>
" />
                                <?php 
            $issuedDate = set_datepicker_date_format($record->issuedDate);
            $expiryDate = set_datepicker_date_format($record->expiryDate);
            $reviewDate = set_datepicker_date_format($record->reviewDate);
            $serializableRecord = new stdClass();
            $serializableRecord->recordId = $record->recordId;
            $serializableRecord->type = $record->type;
            $serializableRecord->number = $record->number;
            $serializableRecord->issuedDate = $issuedDate;
            $serializableRecord->expiryDate = $expiryDate;
            $serializableRecord->reviewDate = $reviewDate;
            $serializableRecord->status = $record->status;
            $serializableRecord->countryCode = $record->countryCode;
            $serializableRecord->notes = $record->notes;
            ?>
                                <script type="text/javascript">
                                    <?php 
            echo "recordsAsJSON[{$record->recordId}] = " . json_encode($serializableRecord) . ';';
            ?>
예제 #25
0
 protected function setDefaultDates()
 {
     $now = time();
     // If leave period defined, use leave period start and end date
     $leavePeriod = $this->getLeavePeriodService()->getCurrentLeavePeriodByDate(date('Y-m-d', $now));
     if (!empty($leavePeriod)) {
         $fromDate = $leavePeriod[0];
         $toDate = $leavePeriod[1];
     } else {
         // else use this year as the period
         $year = date('Y', $now);
         $fromDate = $year . '-1-1';
         $toDate = $year . '-12-31';
     }
     $this->setDefault('date', array('from' => set_datepicker_date_format($fromDate), 'to' => set_datepicker_date_format($toDate)));
 }
예제 #26
0
 public function getCommentsAsText()
 {
     $leaveComments = $this->getLeaveComment();
     $allComments = '';
     // show last comment only
     if (count($leaveComments) > 0) {
         foreach ($leaveComments as $comment) {
             $created = new DateTime($comment->getCreated());
             $createdAt = set_datepicker_date_format($created->format('Y-m-d')) . ' ' . $created->format('H:i');
             $formatComment = $createdAt . ' ' . $comment->getCreatedByName() . "\n\n" . $comment->getComments();
             $allComments = $formatComment . "\n\n" . $allComments;
         }
     }
     return $allComments;
 }
예제 #27
0
?>
</td>
                        <td><?php 
echo __('GPA/Score');
?>
</td>
                    </tr>
                </thead>
                <tbody>
                    <?php 
$educations = $form->empEducationList;
$row = 0;
foreach ($educations as $education) {
    $cssClass = $row % 2 ? 'even' : 'odd';
    $startDate = set_datepicker_date_format($education->startDate);
    $endDate = set_datepicker_date_format($education->endDate);
    $eduDesc = htmlspecialchars($education->Education->name);
    ?>
                        <tr class="<?php 
    echo $cssClass;
    ?>
">
                            <td class="check"><input type="hidden" id="code_<?php 
    echo $education->id;
    ?>
" value="<?php 
    echo htmlspecialchars($education->educationId);
    ?>
" />
                                <input type="hidden" id="id_<?php 
    echo $education->id;
예제 #28
0
echo " " . __("Project Name") . "";
?>
</td><td><?php 
echo $projectName;
?>
</td></tr>
    <?php 
if (!($projectDateRangeFrom == $datepickerDateFormat || $projectDateRangeFrom == "")) {
    ?>
<tr><td style="width: 80px;"><?php 
    echo " " . __("From") . " ";
    ?>
</td><td><?php 
    echo set_datepicker_date_format($projectDateRangeFrom);
    ?>
</td></tr><?php 
}
if (!($projectDateRangeTo == $datepickerDateFormat || $projectDateRangeTo == "")) {
    ?>
<tr><td style="width: 80px;"><?php 
    echo " " . __("To") . " ";
    ?>
</td><td><?php 
    echo set_datepicker_date_format($projectDateRangeTo);
    ?>
</td></tr><?php 
}
?>
</table>

</label></td> <td class="tableColoumnWidthname" > </td> <td><label class="labelValue"><?php 
echo $form->getReview()->getJobTitle()->getJobTitleName();
?>
</label></td></tr>
                    <tr class="trReviewHeight"><td class="tableColoumnWidth" ><label class="labelName"><?php 
echo __("Review Period");
?>
</label></td> <td></td> <td id="reviewColoumnId" ><label class="labelValue"><?php 
echo set_datepicker_date_format($form->getReview()->getWorkPeriodStart()) . " To " . set_datepicker_date_format($form->getReview()->getWorkPeriodEnd());
?>
</label></td></tr>
                    <tr class="trReviewHeight"><td class="tableColoumnWidth" ><label class="labelName"><?php 
echo __("Review Due Date");
?>
</label></td><td></td>  <td><label class="labelValue"><?php 
echo set_datepicker_date_format($form->getReview()->getDueDate());
?>
</label></td></tr>
                    <tr class="trReviewHeight"><td class="tableColoumnWidth" ><label class="labelName"><?php 
echo __("Status");
?>
</label></td> <td></td> <td><label class="labelValue"><?php 
echo __(ReviewStatusFactory::getInstance()->getStatus($form->getReview()->getStatusId())->getName());
?>
</label></td></tr>
                </table>


            </div>

            <div class="reviewersreviewInfo" >
                }
                ?>
                                <tr class="<?php 
                echo $i & 1 ? 'even' : 'odd';
                ?>
">
                                    <td id="actionlogStatus"><?php 
                echo __(ucfirst(strtolower($row->getAction())));
                ?>
</td>
                                    <td id="actionlogPerform"><?php 
                echo $performedBy;
                ?>
</td>
                                    <td id="actionLogDate"><?php 
                echo set_datepicker_date_format($row->getDateTime());
                ?>
</td>
                                    <td id="actionLogComment"><?php 
                echo $row->getComment();
                ?>
</td>
                                </tr>
                <?php 
                $i++;
            }
            ?>
                        </tbody>
                    </table>
                </div> <!-- inner -->