if ($permission->Check('request', 'authorize')) { //Debug::Text('Request: Selected Level: '. $selected_levels['request'], __FILE__, __LINE__, __METHOD__,10); $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); } 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); }
} if ($message->getRequireAck() == TRUE) { $show_ack_column = TRUE; } $messages[] = array('id' => $message->getId(), 'parent_id' => $message->getParent(), 'object_type_id' => $message->getObjectType(), 'object_type' => $object_name_options[$message->getObjectType()], 'object_id' => $message->getObject(), 'priority' => $message->getPriority(), 'status_id' => $message->getStatus(), 'require_ack' => $message->getRequireAck(), 'ack_date' => $message->getAckDate(), 'subject' => Misc::TruncateString($message->getSubject(), 20), 'body' => $message->getBody(), 'created_date' => $message->getCreatedDate(), 'created_by' => $message->getCreatedBy(), 'created_by_full_name' => $ulf->getById($message->getCreatedBy())->getIterator()->current()->getFullName(), 'updated_date' => $message->getUpdatedDate(), 'updated_by' => $message->getUpdatedBy(), 'deleted_date' => $message->getDeletedDate(), 'deleted_by' => $message->getDeletedBy()); } } $smarty->assign_by_ref('messages', $messages); //Grab requests pending authorization if they are a supervisor. if ($permission->Check('authorization', 'enabled') and $permission->Check('authorization', 'view') and $permission->Check('request', 'authorize')) { $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); $request_hierarchy_user_ids = $hlf->getByUserIdAndObjectTypeIDAndLevel($current_user->getId(), 50, 1); //Debug::Arr( $request_hierarchy_user_ids, 'Request Hierarchy Ids', __FILE__, __LINE__, __METHOD__,10); 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'])) { $rlf = new RequestListFactory(); //$rlf->getByUserIdListAndStatusAndNotAuthorized($request_hierarchy_user_ids['child_level'], 30, $request_hierarchy_user_ids['parent_level'], $request_hierarchy_user_ids['current_level'] ); $rlf->getByUserIdListAndStatusAndLevelAndMaxLevelAndNotAuthorized($request_hierarchy_user_ids['child_level'], 30, 1, (int) end($request_levels)); $status_options = $rlf->getOptions('status'); $type_options = $rlf->getOptions('type'); foreach ($rlf as $r_obj) { //Grab authorizations for this object. $pending_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('pending_requests', $pending_requests); unset($pending_requests, $request_hierarchy_id, $request_user_id, $request_node_data, $request_current_level_user_ids, $request_parent_level_user_ids, $request_child_level_user_ids); }