예제 #1
0
         $timesheet_selected_level = $timesheet_levels[$selected_levels['timesheet']];
         Debug::Text(' Switching Levels to Level: ' . $timesheet_selected_level, __FILE__, __LINE__, __METHOD__, 10);
     } elseif (isset($timesheet_levels[1])) {
         $timesheet_selected_level = $request_levels[1];
     } else {
         Debug::Text('No TimeSheet Levels... Not in hierarchy?', __FILE__, __LINE__, __METHOD__, 10);
         $timesheet_selected_level = 0;
     }
     Debug::Text('TimeSheet Selected Level: ' . $timesheet_selected_level, __FILE__, __LINE__, __METHOD__, 10);
     //Get all relevant hierarchy ids
     $timesheet_hierarchy_user_ids = $hlf->getByUserIdAndObjectTypeIDAndLevel($current_user->getId(), 90, (int) $timesheet_selected_level);
     //Debug::Arr( $request_hierarchy_user_ids, 'Request Hierarchy Ids', __FILE__, __LINE__, __METHOD__,10);
     if (is_array($timesheet_hierarchy_user_ids) and isset($timesheet_hierarchy_user_ids['child_level']) and isset($timesheet_hierarchy_user_ids['parent_level']) and isset($timesheet_hierarchy_user_ids['current_level'])) {
         $pptsvlf = new PayPeriodTimeSheetVerifyListFactory();
         $pptsvlf->getByUserIdListAndStatusAndLevelAndMaxLevelAndNotAuthorized($timesheet_hierarchy_user_ids['child_level'], 30, (int) $timesheet_selected_level, (int) end($timesheet_levels), NULL, NULL, NULL, $sort_array);
         $status_options = $pptsvlf->getOptions('status');
         foreach ($pptsvlf as $pptsv_obj) {
             //Grab authorizations for this object.
             $timesheets[] = array('id' => $pptsv_obj->getId(), 'pay_period_id' => $pptsv_obj->getPayPeriod(), 'user_id' => $pptsv_obj->getUser(), 'user_full_name' => $pptsv_obj->getUserObject()->getFullName(), 'pay_period_start_date' => $pptsv_obj->getPayPeriodObject()->getStartDate(), 'pay_period_end_date' => $pptsv_obj->getPayPeriodObject()->getEndDate(), 'status_id' => $pptsv_obj->getStatus(), 'status' => $status_options[$pptsv_obj->getStatus()]);
         }
         $smarty->assign_by_ref('timesheets', $timesheets);
         if (isset($timesheet_levels) and is_array($timesheet_levels)) {
             $smarty->assign_by_ref('timesheet_levels', $timesheet_levels);
             $smarty->assign_by_ref('selected_timesheet_level', $timesheet_selected_level);
         }
     } else {
         Debug::Text('No hierarchy information found...', __FILE__, __LINE__, __METHOD__, 10);
     }
 }
 $smarty->assign_by_ref('selected_levels', $selected_levels);
 $smarty->assign_by_ref('sort_column', $sort_column);
             if (count($timesheet_queue_ids) > 1) {
                 //Remove the authorized/declined timesheet from the stack.
                 array_shift($timesheet_queue_ids);
                 Redirect::Page(URLBuilder::getURL(array('id' => $timesheet_queue_ids[0], 'selected_level' => $selected_level, 'timesheet_queue_ids' => base64_encode(serialize($timesheet_queue_ids))), 'ViewTimeSheetVerification.php'));
             } else {
                 Redirect::Page(URLBuilder::getURL(array('refresh' => TRUE), '../CloseWindow.php'));
             }
             break;
         }
     }
 default:
     if ((int) $id > 0) {
         Debug::Text(' ID was passed: ' . $id, __FILE__, __LINE__, __METHOD__, 10);
         $pptsvlf = new PayPeriodTimeSheetVerifyListFactory();
         $pptsvlf->getByIDAndCompanyID($id, $current_company->getId());
         $status_options = $pptsvlf->getOptions('type');
         foreach ($pptsvlf as $pptsv_obj) {
             //Debug::Arr($station,'Department', __FILE__, __LINE__, __METHOD__,10);
             $data = array('id' => $pptsv_obj->getId(), 'pay_period_id' => $pptsv_obj->getPayPeriod(), 'user_id' => $pptsv_obj->getUser(), 'user_full_name' => $pptsv_obj->getUserObject()->getFullName(), 'pay_period_start_date' => $pptsv_obj->getPayPeriodObject()->getStartDate(), 'pay_period_end_date' => $pptsv_obj->getPayPeriodObject()->getEndDate(), 'status_id' => $pptsv_obj->getStatus(), 'status' => $status_options[$pptsv_obj->getStatus()], 'created_date' => $pptsv_obj->getCreatedDate(), 'created_by' => $pptsv_obj->getCreatedBy(), 'updated_date' => $pptsv_obj->getUpdatedDate(), 'updated_by' => $pptsv_obj->getUpdatedBy(), 'deleted_date' => $pptsv_obj->getDeletedDate(), 'deleted_by' => $pptsv_obj->getDeletedBy());
         }
         //Get Next TimeSheet to authorize:
         if ($permission->Check('punch', 'authorize') and $selected_level != NULL and count($timesheet_queue_ids) <= 1) {
             Debug::Text('Get TimeSheet Queue: ', __FILE__, __LINE__, __METHOD__, 10);
             $ulf = new UserListFactory();
             $hlf = new HierarchyListFactory();
             $hllf = new HierarchyLevelListFactory();
             $timesheet_levels = $hllf->getLevelsByUserIdAndObjectTypeID($current_user->getId(), 90);
             Debug::Arr($timesheet_levels, 'TimeSheet Levels', __FILE__, __LINE__, __METHOD__, 10);
             if (isset($selected_levels['timesheet']) and isset($request_levels[$selected_levels['timesheet']])) {
                 $timesheet_selected_level = $timesheet_levels[$selected_levels['timesheet']];
                 Debug::Text(' Switching Levels to Level: ' . $request_selected_level, __FILE__, __LINE__, __METHOD__, 10);