/** * This function is helper function to service_header to handle my action summary. * @param integer $login_id = id of login user * @param string $context = tells which type of call * @param string $call = from where function is calling * @return string HTML content */ public static function sd_req_summary($login_id, $context, $call) { $sd_req_model = new Default_Model_Servicerequests(); $action_counts = array(); $url_arr = array(); $html = ""; if ($context == 'receiver') { $action_counts = $sd_req_model->getRequestsCnt($login_id, 'receiver'); $grid_type = 2; $mapp_cnt = isset($action_counts['Manager approved']) ? $action_counts['Manager approved'] : 0; $app_cnt = isset($action_counts['Management approved']) ? $action_counts['Management approved'] : 0; $rmapp_cnt = isset($action_counts['Manager rejected']) ? $action_counts['Manager rejected'] : 0; $rapp_cnt = isset($action_counts['Management rejected']) ? $action_counts['Management rejected'] : 0; $wmapp_cnt = isset($action_counts['To manager approve']) ? $action_counts['To manager approve'] : 0; $wapp_cnt = isset($action_counts['To management approve']) ? $action_counts['To management approve'] : 0; $pending_cnt = $mapp_cnt + $app_cnt + $rmapp_cnt + $rapp_cnt; $waiting_cnt = $wapp_cnt + $wmapp_cnt; $url_arr['All'] = array('url' => self::sd_url_builder($grid_type, ''), 'count' => isset($action_counts['all']) ? $action_counts['all'] : 0); $url_arr['Open'] = array('url' => self::sd_url_builder($grid_type, '1'), 'count' => isset($action_counts['Open']) ? $action_counts['Open'] : 0); $url_arr['Pending'] = array('url' => self::sd_url_builder($grid_type, '8'), 'count' => $pending_cnt); $url_arr['Closed'] = array('url' => self::sd_url_builder($grid_type, '2'), 'count' => isset($action_counts['Closed']) ? $action_counts['Closed'] : 0); $url_arr['Rejected'] = array('url' => self::sd_url_builder($grid_type, '16'), 'count' => isset($action_counts['Rejected']) ? $action_counts['Rejected'] : 0); $url_arr['Cancelled'] = array('url' => self::sd_url_builder($grid_type, '3'), 'count' => isset($action_counts['Cancelled']) ? $action_counts['Cancelled'] : 0); $url_arr['Due today'] = array('url' => self::sd_url_builder($grid_type, '5'), 'count' => isset($action_counts['duetoday']) ? $action_counts['duetoday'] : 0); $url_arr['Overdue'] = array('url' => self::sd_url_builder($grid_type, '4'), 'count' => isset($action_counts['overdue']) ? $action_counts['overdue'] : 0); $url_arr['Sent for approval'] = array('url' => self::sd_url_builder($grid_type, '9'), 'count' => $waiting_cnt); } else { if ($context == 'reporting') { $grid_type = 4; $action_counts = $sd_req_model->getRequestsCnt($login_id, 'reporting'); $app_count = isset($action_counts['Manager approved']) ? $action_counts['Manager approved'] : 0; $reject_cnt = isset($action_counts['Manager rejected']) ? $action_counts['Manager rejected'] : 0; $rp_rj_cnt = isset($action_counts['Rejected']) ? $action_counts['Rejected'] : 0; $rp_cl_cnt = isset($action_counts['Closed']) ? $action_counts['Closed'] : 0; $cl_rj_cnt = $rp_cl_cnt + $rp_rj_cnt; $url_arr['All'] = array('url' => self::sd_url_builder($grid_type, ''), 'count' => isset($action_counts['all']) ? $action_counts['all'] : 0); $url_arr['To approve'] = array('url' => self::sd_url_builder($grid_type, '13'), 'count' => isset($action_counts['To manager approve']) ? $action_counts['To manager approve'] : 0); $url_arr['Approved'] = array('url' => self::sd_url_builder($grid_type, '18'), 'count' => $app_count); $url_arr['Rejected'] = array('url' => self::sd_url_builder($grid_type, '19'), 'count' => $reject_cnt); $url_arr['Closed/Rejected'] = array('url' => self::sd_url_builder($grid_type, '22'), 'count' => $cl_rj_cnt); } else { if ($context == 'rept_app') { $grid_type = 8; $action_counts = $sd_req_model->getRequestsCnt($login_id, 'rept_app'); $mapp_cnt = isset($action_counts['Manager approved']) ? $action_counts['Manager approved'] : 0; $app_cnt = isset($action_counts['Management approved']) ? $action_counts['Management approved'] : 0; $mrej_cnt = isset($action_counts['Manager rejected']) ? $action_counts['Manager rejected'] : 0; $rej_cnt = isset($action_counts['Management rejected']) ? $action_counts['Management rejected'] : 0; $wmapp_cnt = isset($action_counts['To manager approve']) ? $action_counts['To manager approve'] : 0; $wapp_cnt = isset($action_counts['To management approve']) ? $action_counts['To management approve'] : 0; $close_cnt = isset($action_counts['Closed']) ? $action_counts['Closed'] : 0; $reject_cnt = isset($action_counts['Rejected']) ? $action_counts['Rejected'] : 0; $approved_cnt = $mapp_cnt + $app_cnt; $tot_reject_cnt = $mrej_cnt + $rej_cnt; $waiting_cnt = $wapp_cnt + $wmapp_cnt; $tot_close_cnt = $reject_cnt + $close_cnt; $url_arr['All'] = array('url' => self::sd_url_builder($grid_type, ''), 'count' => isset($action_counts['all']) ? $action_counts['all'] : 0); $url_arr['To approve'] = array('url' => self::sd_url_builder($grid_type, '6'), 'count' => $waiting_cnt); $url_arr['Approved'] = array('url' => self::sd_url_builder($grid_type, '20'), 'count' => $approved_cnt); $url_arr['Rejected'] = array('url' => self::sd_url_builder($grid_type, '21'), 'count' => $tot_reject_cnt); $url_arr['Closed/Rejected'] = array('url' => self::sd_url_builder($grid_type, '22'), 'count' => $tot_close_cnt); } else { if ($context == 'approver') { $grid_type = 5; $action_counts = $sd_req_model->getRequestsCnt($login_id, 'approver'); $app_cnt = isset($action_counts['Management approved']) ? $action_counts['Management approved'] : 0; $rej_cnt = isset($action_counts['Management rejected']) ? $action_counts['Management rejected'] : 0; $wapp_cnt = isset($action_counts['To management approve']) ? $action_counts['To management approve'] : 0; $close_cnt = isset($action_counts['Closed']) ? $action_counts['Closed'] : 0; $reject_cnt = isset($action_counts['Rejected']) ? $action_counts['Rejected'] : 0; $tot_close_cnt = $reject_cnt + $close_cnt; $url_arr['All'] = array('url' => self::sd_url_builder($grid_type, ''), 'count' => isset($action_counts['all']) ? $action_counts['all'] : 0); $url_arr['To approve'] = array('url' => self::sd_url_builder($grid_type, '23'), 'count' => $wapp_cnt); $url_arr['Approved'] = array('url' => self::sd_url_builder($grid_type, '24'), 'count' => $app_cnt); $url_arr['Rejected'] = array('url' => self::sd_url_builder($grid_type, '25'), 'count' => $rej_cnt); $url_arr['Closed/Rejected'] = array('url' => self::sd_url_builder($grid_type, '22'), 'count' => $tot_close_cnt); } else { if ($context == 'rec_rept') { $grid_type = 6; $action_counts = $sd_req_model->getRequestsCnt($login_id, 'rec_rept'); $mapp_cnt = isset($action_counts['Manager approved']) ? $action_counts['Manager approved'] : 0; $app_cnt = isset($action_counts['Management approved']) ? $action_counts['Management approved'] : 0; $rmapp_cnt = isset($action_counts['Manager rejected']) ? $action_counts['Manager rejected'] : 0; $rapp_cnt = isset($action_counts['Management rejected']) ? $action_counts['Management rejected'] : 0; $wmapp_cnt = isset($action_counts['To manager approve']) ? $action_counts['To manager approve'] : 0; $wapp_cnt = isset($action_counts['To management approve']) ? $action_counts['To management approve'] : 0; $mrejected_cnt = isset($action_counts['mrejected']) ? $action_counts['mrejected'] : 0; $mclosed_cnt = isset($action_counts['mclosed']) ? $action_counts['mclosed'] : 0; $pending_cnt = $mapp_cnt + $app_cnt + $rmapp_cnt + $rapp_cnt; $waiting_cnt = $wapp_cnt + $wmapp_cnt; $cl_rj_cnt = $mrejected_cnt + $mclosed_cnt; $url_arr['All'] = array('url' => self::sd_url_builder($grid_type, ''), 'count' => isset($action_counts['all']) ? $action_counts['all'] : 0); $url_arr['Open'] = array('url' => self::sd_url_builder($grid_type, '1'), 'count' => isset($action_counts['Open']) ? $action_counts['Open'] : 0); $url_arr['Pending'] = array('url' => self::sd_url_builder($grid_type, '8'), 'count' => $pending_cnt); $url_arr['Closed'] = array('url' => self::sd_url_builder($grid_type, '2'), 'count' => isset($action_counts['Closed']) ? $action_counts['Closed'] : 0); $url_arr['Rejected'] = array('url' => self::sd_url_builder($grid_type, '16'), 'count' => isset($action_counts['Rejected']) ? $action_counts['Rejected'] : 0); $url_arr['Cancelled'] = array('url' => self::sd_url_builder($grid_type, '3'), 'count' => isset($action_counts['Cancelled']) ? $action_counts['Cancelled'] : 0); $url_arr['Due today'] = array('url' => self::sd_url_builder($grid_type, '5'), 'count' => isset($action_counts['duetoday']) ? $action_counts['duetoday'] : 0); $url_arr['Overdue'] = array('url' => self::sd_url_builder($grid_type, '4'), 'count' => isset($action_counts['overdue']) ? $action_counts['overdue'] : 0); $url_arr['Sent for approval'] = array('url' => self::sd_url_builder($grid_type, '9'), 'count' => $waiting_cnt); $url_arr['As a reporting manager'] = array('url' => '', 'count' => 0); $url_arr['To approve'] = array('url' => self::sd_url_builder($grid_type, '10'), 'count' => isset($action_counts['to_approve']) ? $action_counts['to_approve'] : 0); $url_arr['Approved '] = array('url' => self::sd_url_builder($grid_type, '18'), 'count' => isset($action_counts['manager_approved']) ? $action_counts['manager_approved'] : 0); $url_arr['Rejected '] = array('url' => self::sd_url_builder($grid_type, '19'), 'count' => isset($action_counts['manager_rejected']) ? $action_counts['manager_rejected'] : 0); $url_arr['Closed/Rejected'] = array('url' => self::sd_url_builder($grid_type, '22'), 'count' => $cl_rj_cnt); } } } } } if (count($url_arr) > 0) { if ($call == 'helper') { $html .= '<div style="" class="side-menu div_mchilds_' . SERVICEDESK . ' selected_menu_class"><ul>'; } $html .= '<li class="acc_li"><span><b>My action summary</b></span>'; $html .= ' <ul>'; foreach ($url_arr as $menu_name => $menu_arr) { if ($menu_arr['url'] != '') { $html .= ' <li menu-url="' . $menu_arr['url'] . '" parent-div="div_mchilds_' . SERVICEDESK . '" super-parent="main_parent_' . SERVICEDESK . '" class="clickable_menu"><a href="' . ($call == 'menusettings' ? "javascript:void(0);" : $menu_arr['url']) . '" ><i class="span_sermenu">' . $menu_name . '</i> <b class="super_cnt">' . $menu_arr['count'] . '</b></a></li>'; } else { $html .= '<span><b>' . $menu_name . '</b></span>'; } } $html .= ' </ul>'; $html .= '</li>'; if ($call == 'helper') { $html .= '</ul></div>'; } } return $html; }