$request_selected_level = $request_levels[$selected_levels['request']]; Debug::Text(' Switching Levels to Level: ' . $request_selected_level, __FILE__, __LINE__, __METHOD__, 10); } elseif (isset($request_levels[1])) { $request_selected_level = $request_levels[1]; } else { Debug::Text('No Request Levels... Not in hierarchy?', __FILE__, __LINE__, __METHOD__, 10); $request_selected_level = 0; } Debug::Text('Request Selected Level: ' . $request_selected_level, __FILE__, __LINE__, __METHOD__, 10); //Get all relevant hierarchy ids $request_hierarchy_user_ids = $hlf->getByUserIdAndObjectTypeIDAndLevel($current_user->getId(), 50, (int) $request_selected_level); if (is_array($request_hierarchy_user_ids) and isset($request_hierarchy_user_ids['child_level']) and isset($request_hierarchy_user_ids['parent_level']) and isset($request_hierarchy_user_ids['current_level'])) { Debug::Text('Hierarchy information found...', __FILE__, __LINE__, __METHOD__, 10); $rlf = new RequestListFactory(); $rlf->getByUserIdListAndStatusAndLevelAndMaxLevelAndNotAuthorized($request_hierarchy_user_ids['child_level'], 30, (int) $request_selected_level, (int) end($request_levels), NULL, NULL, NULL, $sort_array); $status_options = $rlf->getOptions('status'); $type_options = $rlf->getOptions('type'); foreach ($rlf as $r_obj) { //Grab authorizations for this object. $requests[] = array('id' => $r_obj->getId(), 'user_date_id' => $r_obj->getId(), 'user_id' => $r_obj->getUserDateObject()->getUser(), 'user_full_name' => $r_obj->getUserDateObject()->getUserObject()->getFullName(), 'date_stamp' => $r_obj->getUserDateObject()->getDateStamp(), 'type_id' => $r_obj->getType(), 'type' => $type_options[$r_obj->getType()], 'status_id' => $r_obj->getStatus(), 'status' => $status_options[$r_obj->getStatus()]); } $smarty->assign_by_ref('requests', $requests); if (isset($request_levels) and is_array($request_levels)) { $smarty->assign_by_ref('request_levels', $request_levels); $smarty->assign_by_ref('selected_request_level', $request_selected_level); } } else { Debug::Text('No hierarchy information found...', __FILE__, __LINE__, __METHOD__, 10); } } if ($permission->Check('punch', 'authorize')) {
if (count($request_queue_ids) > 1) { //Remove the authorized/declined request from the stack. array_shift($request_queue_ids); Redirect::Page(URLBuilder::getURL(array('id' => $request_queue_ids[0], 'selected_level' => $selected_level, 'request_queue_ids' => base64_encode(serialize($request_queue_ids))), 'ViewRequest.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); $rlf = new RequestListFactory(); $rlf->getByIDAndCompanyID($id, $current_company->getId()); $type_options = $rlf->getOptions('type'); foreach ($rlf as $r_obj) { //Debug::Arr($station,'Department', __FILE__, __LINE__, __METHOD__,10); $data = array('id' => $r_obj->getId(), 'user_date_id' => $r_obj->getId(), 'user_id' => $r_obj->getUserDateObject()->getUser(), 'user_full_name' => $r_obj->getUserDateObject()->getUserObject()->getFullName(), 'date_stamp' => $r_obj->getUserDateObject()->getDateStamp(), 'type' => $type_options[$r_obj->getType()], 'type_id' => $r_obj->getType(), 'status_id' => $r_obj->getStatus(), 'created_date' => $r_obj->getCreatedDate(), 'created_by' => $r_obj->getCreatedBy(), 'updated_date' => $r_obj->getUpdatedDate(), 'updated_by' => $r_obj->getUpdatedBy(), 'deleted_date' => $r_obj->getDeletedDate(), 'deleted_by' => $r_obj->getDeletedBy()); } //Get Next Request to authorize: if ($permission->Check('request', 'authorize') and $selected_level != NULL and count($request_queue_ids) <= 1) { Debug::Text('Get Request Queue: ', __FILE__, __LINE__, __METHOD__, 10); $ulf = new UserListFactory(); $hlf = new HierarchyListFactory(); $hllf = new HierarchyLevelListFactory(); $request_levels = $hllf->getLevelsByUserIdAndObjectTypeID($current_user->getId(), 50); Debug::Arr($request_levels, 'Request Levels', __FILE__, __LINE__, __METHOD__, 10); if (isset($selected_levels['request']) and isset($request_levels[$selected_levels['request']])) { $request_selected_level = $request_levels[$selected_levels['request']]; Debug::Text(' Switching Levels to Level: ' . $request_selected_level, __FILE__, __LINE__, __METHOD__, 10);