public static function getTimeSummary($time, $timeBase = false) { $timeBase = strtotime(sapp_Global::getDisplayDate(gmdate("Y-m-d H:i:s"))); if ($time <= $timeBase) { $dif = $timeBase - $time; if ($dif < 60) { if ($dif < 2) { return "1 second ago"; } return $dif . " seconds ago"; } if ($dif < 3600) { if (floor($dif / 60) < 2) { return "A minute ago"; } return floor($dif / 60) . " minutes ago"; } if (date("d n Y", $timeBase) == date("d n Y", $time)) { return "Today at " . date("g:i A", $time); } if (date("n Y", $timeBase) == date("n Y", $time) && date("d", $timeBase) - date("d", $time) == 1) { return "Yesterday at " . date("g:i A", $time); } if (date("Y", $time) == date("Y", $timeBase)) { //changed by rakesh for making pm to PM $finalDateFormat = date('F d, Y', $time) . " at " . date('h:i A', $time); return $finalDateFormat; } } else { $dif = $time - $timeBase; if ($dif < 60) { if ($dif < 2) { return "1 second"; } return $dif . " seconds"; } if ($dif < 3600) { if (floor($dif / 60) < 2) { return "Less than a minute"; } return floor($dif / 60) . " minutes"; } if (date("d n Y", $timeBase + 86400) == date("d n Y", $time)) { return "Tomorrow, at " . date("g:i A", $timeBase); } } return date("F j, Y \\a\\t g:i A", $time); }
/** * * @param string $name * @param array $fields * @param Zend_Paginator Instance $paginator * @param array $extracolumn * @param Bool $sorting * * @return string */ public function generateGrid($name, $fields = null, $paginator = null, $extracolumn = array(), $sorting = false, $jsGridFnname = '', $perPage = '5', $page = '1', $jsFillFnName = '', $searchArray = '', $formgrid = 'false', $addaction = '', $menuName = '', $unitId, $addpermission, $menunamestr, $call = '', $sortStr = '', $search_filters = '', $dashboardCall = 'No', $sortname = '', $by = '') { $request = Zend_Controller_Front::getInstance(); $params = $request->getRequest()->getParams(); $viewLinkArray = array('Cities', 'States'); // Store Extra Columns $this->extra = $extracolumn; $sortIconStr = ""; $sort = Zend_Controller_Front::getInstance()->getRequest()->getParam('sort', 'DESC'); // checking and handling sorting. if ($sort == "") { $sortIconStr = "<span class='s-ico'>\n\t\t\t<span class='ui-icon-desc ui-state-disabled ui-icon ui-icon-triangle-1-n'></span>\n\t\t\t<span class='ui-icon-asc ui-state-disabled ui-icon ui-icon-triangle-1-s'></span></span>"; } else { if ($sort == 'ASC') { $sort = 'DESC'; //For Sort Icons.... $sortIconStr = "<span class='s-ico'>\n\t\t\t<span class='ui-icon-desc ui-icon ui-icon-triangle-1-n'></span>\n\t\t\t</span>"; } else { $sort = 'ASC'; //For Sort Icons.... $sortIconStr = "<span class='s-ico'>\n\t\t\t<span class='ui-icon-asc ui-icon ui-icon-triangle-1-s'></span></span>"; } } if ($call != "ajaxcall") { $sortIconStr = ""; } if ($addaction != '') { $action = $addaction; $popupaction = 'addpopup'; } else { $action = "edit"; $popupaction = 'editpopup'; } $con = ''; if ($formgrid != '') { $urlString = $_SERVER['REQUEST_URI']; $urlData = explode('/', $urlString); if ($unitId != '') { $con = 'unitId/' . $unitId; } else { if (sizeof($urlData) > 4) { if (isset($params['id'])) { $con = 'unitId/' . $params['id']; } } } if ($name == 'empscreening') { $empaction = 'add'; $output = ""; } else { $output = ""; } } else { $output = ""; } if ($addpermission == 'false') { $output = "<div class='table-header'><span>" . $menuName . "</span></div>"; } $output .= "<div id='" . $name . "' class='details_data_display_block newtablegrid'>"; $output .= "<table class='grid' align='center' width='100%' cellspacing='0' cellpadding='4' border='0'><thead><tr>"; // this foreach loop display the column header in ?th? tag. $colinr = 0; if (!empty($fields)) { $tabindx = 0; foreach ($fields as $key => $value) { if ($value != 'Profile' && $value != 'ID' && $value != 'Url') { if (isset($value['align'])) { $align = @$value['align'] != '' ? 'align="' . $value['align'] . '" ' : ''; } if (isset($value['sortkey'])) { $sortkey = @$value['sortkey'] != '' ? 'align="' . $value['sortkey'] . '" ' : ''; } if (isset($value['style'])) { $style = @$value['style'] != '' ? 'style="' . $value['style'] . '" ' : ''; } $value = is_array($value) && !isset($value['sortkey']) ? $value['value'] : $value; if ($value == 'Action') { $width = 'width=90'; } else { $width = ''; } //'width='.$eachColumnWidth; $output .= "<th " . $width . ">"; // Check if Sorting is set to True if ($sorting) { // Disable Sorting if Key is in Extra Columns if (@$this->extra[$key]['name'] != '' && !is_array($value)) { if ($value == "Action") { $output .= "<span class='action-text'>Action</span>"; } else { $output .= $value; } } else { if (is_array($value)) { $key = $value['sortkey']; $value = $value['value']; } $welcome = 'false'; $urlString = $_SERVER['REQUEST_URI']; if (strpos($urlString, 'welcome') !== false) { $welcome = 'true'; } if ($formgrid == 'true') { $output .= "<a href='javascript:void(0);' onclick=javascript:paginationndsorting('" . DOMAIN . $name . "/index/sort/" . $sort . "/by/" . $key . "/objname/" . $name . "/page/" . $page . "/per_page/" . $perPage . "/call/ajaxcall/{$con}/');>" . $value . "</a>"; //For Sort Icons.... if ($key == $sortStr) { $output .= $sortIconStr; } } else { if ($welcome == 'true') { $output .= "<a href='javascript:void(0);' onclick=javascript:paginationndsorting('" . DOMAIN . $name . "/index/sort/" . $sort . "/by/" . $key . "/objname/" . $name . "/page/" . $page . "/per_page/" . $perPage . "/call/ajaxcall/{$con}/');>" . $value . "</a>"; //For Sort Icons.... if ($key == $sortStr) { $output .= $sortIconStr; } } else { $output .= "<a href='javascript:void(0);' onclick=javascript:paginationndsorting('" . $this->view->url(array('sort' => $sort, 'by' => $key, 'objname' => $name, 'page' => $page, 'per_page' => $perPage)) . "');>" . $value . "</a>"; //For Sort Icons.... if ($key == $sortStr) { $output .= $sortIconStr; } } } } } else { //For Sort Icons.... if ($key == $sortStr) { $output .= $sortIconStr; } $output .= $value; } $output .= "</th>"; $colinr++; $tabindx++; } } //end of for each loop $output .= "</tr><tr id='search_tr_{$name}'>"; $tabindx = 0; foreach ($fields as $key => $value) { if ($key != 'profileimg' && $key != 'id' && $key != 'menuUrl') { if (isset($value['align'])) { $align = @$value['align'] != '' ? 'align="' . $value['align'] . '" ' : ''; } if (isset($value['sortkey'])) { $sortkey = @$value['sortkey'] != '' ? 'align="' . $value['sortkey'] . '" ' : ''; } if (isset($value['style'])) { $style = @$value['style'] != '' ? 'style="' . $value['style'] . '" ' : ''; } $value = is_array($value) && !isset($value['sortkey']) ? $value['value'] : $value; if ($value == 'Action') { $width = 'width=90'; } else { $width = ''; } $output .= "<th " . $width . ">"; // Check if Sorting is set to True if ($sorting) { // Disable Sorting if Key is in Extra Columns if (@$this->extra[$key]['name'] != '' && !is_array($value)) { if ($value == "Action") { $output .= "<span class='action-text'></span>"; } else { $output .= $value; } } else { if (is_array($value)) { $key = $value['sortkey']; $value = $value['value']; } $welcome = 'false'; $urlString = $_SERVER['REQUEST_URI']; if ($key != 'id') { $sText = ''; if (!empty($searchArray)) { $display = 'display: block;'; } else { $display = 'display: none;'; } if (is_array($searchArray)) { if (array_key_exists($key, $searchArray)) { $sText = urldecode($searchArray[$key]); } else { $sText = ''; } } if (isset($search_filters[$key])) { $search_function = 'getsearchdata("' . $name . '","",this.id,event'; $output .= sapp_Global::grid_data($search_filters, $key, $name, $display, $sText, $tabindx, $search_function); } else { if ($key != 'key_flag') { $output .= "<input tabIndex={$tabindx} type='text' name='{$name}' id='{$key}' style='{$display}' class='searchtxtbox_{$name} table_inputs grid_search_inputs' value='{$sText}' onkeydown='getsearchdata(\"{$name}\",\"\",this.id,event,\"text\")' />"; } } } } } else { //For Sort Icons.... if ($key == $sortStr) { $output .= $sortIconStr; } $output .= $value; } $output .= "</th>"; $colinr++; $tabindx++; } } //end of for each loop } $output .= "</tr>\n\n </thead>"; $output .= "<tbody>"; // Start Looping Data $ii = 0; foreach ($paginator as $p) { $cell_color = $ii % 2 == 0 ? "row1" : "row2"; $ii++; $bodyCount = 0; $output .= "<tr onclick='selectrow({$name},this);' class='{$cell_color}'>"; // Reset Fields Array to Top if (!empty($fields)) { reset($fields); foreach ($fields as $k => $v) { $imgtag = ''; if ($k == 'profileimg' || $k == 'id' || $k == 'menuUrl') { continue; } $tdclass = ''; // Look for additional attributes $characterlimit = 40; if (is_array($v)) { $class = @$v['class'] != '' ? 'class="' . $v['class'] . '" ' : ''; $align = @$v['align'] != '' ? 'align="' . $v['align'] . '" ' : ''; $valign = @$v['valign'] != '' ? 'valign="' . $v['valign'] . '" ' : ''; if (isset($v['characterlimit'])) { $characterlimit = $v['characterlimit']; } $output .= "<td {$tdclass}{$align}{$valign}>"; } else { if ($k == 'description' && $menuName == 'Screening Types') { $characterlimit = 80; } $output .= "<td {$tdclass}>"; } // Check to see if this Field is in Extra Columns if (isset($this->extra[$k]['value'])) { $output .= $this->_parseExtra($k, $p); } else { if ($bodyCount == 0 && $jsFillFnName != '') { $valToInclude = strlen(trim($p[$k])) > $characterlimit ? substr(trim($p[$k]), 0, $characterlimit) . ".." : trim($p[$k]); $output .= "<a onclick= " . $jsFillFnName . "(\"/id/{$p['id']}\") href= 'javascript:void(0)' title='" . htmlentities(trim($p[$k]), ENT_QUOTES, "UTF-8") . "' >" . htmlentities($valToInclude, ENT_QUOTES, "UTF-8") . "</a>"; } else { $p = (array) $p; if (isset($p[$k])) { $valToInclude = strlen(trim($p[$k])) > $characterlimit ? substr(trim($p[$k]), 0, $characterlimit) . ".." : trim($p[$k]); if ($k == 'user_action') { switch ($p[$k]) { case '1': $valToInclude = 'ADD'; break; case '2': $valToInclude = "Edit"; break; case '3': $valToInclude = "Delete"; break; } } else { if ($k == 'userfullname') { $errorImg = DOMAIN . 'public/media/images/profile_pic.png'; if (isset($p['profileimg']) && !empty($p['profileimg'])) { $imageUrl = DOMAIN . 'public/uploads/profile/' . $p['profileimg']; } else { $imageUrl = DOMAIN . 'public/media/images/profile_pic.png'; } $imgtag = '<img src="' . $imageUrl . '" onerror="this.src=\'' . $errorImg . '\'" class="pic-grid">'; } else { if ($k == 'last_modifieddate' || $k == 'logindatetime') { $valToInclude = sapp_Global::getDisplayDate($valToInclude); } else { if ($k == 'empipaddress' && $valToInclude == '::1') { $valToInclude = '127.0.0.1'; } } } } if ($k == 'status' && $p[$k] == 'Complete' && $menuName == 'Employee Screening') { $dataclass = 'class="greendata"'; } else { $dataclass = ''; } if ($k == 'user_action') { switch ($p[$k]) { case '1': $menunamestr = $p['menuName'] . ' - Add'; $output .= "<a name='' class='' title='Add' onclick='displaydeptform(\"" . DOMAIN . "logmanager/view/id/" . $p['id'] . "\",\"" . $menunamestr . "\")'>Add</a>"; break; case '2': $menunamestr = $p['menuName'] . ' - Edit'; $output .= "<a name='' class='' title='Edit' onclick='displaydeptform(\"" . DOMAIN . "logmanager/view/id/" . $p['id'] . "\",\"" . $menunamestr . "\")'>Edit</a>"; break; case '3': $valToInclude = "Delete"; $output .= " <span " . $dataclass . " title='Delete' class='emp-name' >" . htmlentities($valToInclude, ENT_QUOTES, "UTF-8") . "</span>"; break; case '5': $valToInclude = "Cancel"; $output .= " <span " . $dataclass . " title='Cancel' class='emp-name' >" . htmlentities($valToInclude, ENT_QUOTES, "UTF-8") . "</span>"; break; } } else { if ($k == 'key_flag') { $modurl = ltrim($p['menuUrl'], '/'); if ($p['user_action'] != 3 && $p['user_action'] != 5 && $p['menuName'] != 'Leave Request' && $p['menuName'] != 'Manage Employee Leaves' && $p['menuName'] != 'Manage Modules') { if (in_array($p['menuName'], $viewLinkArray)) { $urlink = DOMAIN . $modurl . '/view/id/' . $p[$k]; } else { $urlink = DOMAIN . $modurl . '/edit/id/' . $p[$k]; } $output .= '<a href= "' . $urlink . '" target="_blank" name="" class="" title="View Record">View Record</a>'; } else { if ($p['menuName'] == 'Manage Modules') { $output .= "<span " . $dataclass . " title=" . $p[$k] . " class='emp-name' >" . htmlentities($p[$k], ENT_QUOTES, "UTF-8") . "</span>"; } else { $output .= ''; } } } else { if ($k == 'last_modifieddate' || $k == 'logindatetime') { $output .= $imgtag . " <span " . $dataclass . " title='" . htmlentities($valToInclude, ENT_QUOTES, "UTF-8") . "' class='emp-name' >" . htmlentities($valToInclude, ENT_QUOTES, "UTF-8") . "</span>"; } else { $output .= $imgtag . " <span " . $dataclass . " title='" . htmlentities($p[$k], ENT_QUOTES, "UTF-8") . "' class='emp-name' >" . htmlentities($valToInclude, ENT_QUOTES, "UTF-8") . "</span>"; } } } } } } $output .= "</td>"; $bodyCount++; } } // Close the Table Row $output .= "</tr>"; } if ($ii == 0) { $output .= "<tr><td colspan='{$colinr}' class='no-data-td'><p class='no-data'>No data found</p></td></tr>"; } $output .= "</tbody>"; $output .= "</table>\n <script type='text/javascript' language='javascript'>\n \$(document).ready(function(){\n \n \n if(\$('.searchtxtbox_" . $name . "').is(':visible'))\n {\n \n \$('#search_tr_" . $name . "').show();\t\n }\n else \n \n \$('#search_tr_" . $name . "').hide();\t\n });\n </script> \n </div>"; // Attach Pagination if ($paginator) { $params = array(); $params['jsGridFnName'] = $jsGridFnname; $params['perPage'] = $perPage; $params['objname'] = $name; $params['searchArray'] = $searchArray; $params['formgrid'] = $formgrid; $params['con'] = $con; $params['dashboardcall'] = $dashboardCall; $params['sortname'] = $sortname; $params['by'] = $by; $output .= $this->view->paginationControl($paginator, 'Sliding', 'partials/pagination.phtml', $params); } $output .= "<script type='text/javascript' language='javascript'>\$('#{$name}').slimScrollHorizontal({\n\t\t\t\t\t\t\t\t\t alwaysVisible: false,\n\t\t\t\t\t\t\t\t\t start: 'left',\n\t\t\t\t\t\t\t\t\t position: 'bottom',\n\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t}).css({ background: '#ccc', paddingBottom: '10px' }); </script>"; $output .= "<script type='text/javascript' language='javascript'>\n\t\t\t\t\t\tvar id = \$('#columnId').val();\n\t\t\t\t\t\tvar coldata = \$('#'+id).val();\n\t\t\t\t\t\tvar focusID = \$('#columnId').val();\n var fval = \$('#'+focusID).attr('data-focus');\n if(fval == '' || fval == null)\n\t\t\t\t\t\t\$('#'+focusID).focus().val('').val(coldata);\n \n\t\t\t\t\t</script>"; return $output; }
/** * Packs message and priority into Event array * * @param string $message Message to log * @param integer $priority Priority of message * @return array Event array */ protected function _packEvent($message, $priority) { return array_merge(array('timestamp' => sapp_Global::getDisplayDate(gmdate($this->_timestampFormat)), 'message' => $message, 'priority' => $priority, 'priorityName' => $this->_priorities[$priority]), $this->_extras); }
public function activitylogreportAction() { try { $activitylog_model = new Default_Model_Activitylog(); $logmanager_model = new Default_Model_Logmanager(); $dashboardcall = $this->_getParam('dashboardcall'); if ($dashboardcall == 'Yes') { $perPage = DASHBOARD_PERPAGE; } else { $perPage = PERPAGE; } $selectFields = array('menuname' => 'Menu', 'username' => 'User Name', 'empId' => 'Employee ID', 'useraction' => 'Action', 'modifieddate' => 'Modified Date'); $selectColumns = array_keys($selectFields); $action = array('1' => 'Add', '2' => 'Edit', '3' => 'Delete', '5' => 'Cancel'); $activityLogData = array(); $splitArray = array(); $pageNo = 1; $order = $funorder = 'Desc'; $by = $sortby = 'last_modifieddate'; $searchData = ''; $lastpage = 0; if ($this->getRequest()->getPost()) { $this->_helper->layout->disableLayout(); } if ($this->_request->getParam('pageNo') != '') { $pageNo = intval($this->_request->getParam('pageNo')); } if ($this->_request->getParam('per_page') != '') { $perPage = intval($this->_request->getParam('per_page')); } if ($this->_request->getParam('fields') != '') { $selectColumns = explode(',', $this->_request->getParam('fields')); } $finalArray = array(); //POST with empty search fields if ($this->_request->getParam('hiddenusername') == '' && $this->_request->getParam('menu') == '' && $this->_request->getParam('useraction') == '' && $this->_request->getParam('modifieddate') == '') { if ($this->_request->getParam('sortby') != '') { $by = $sortby = $this->_request->getParam('sortby'); $order = $funorder = $this->_request->getParam('order'); if ($sortby == 'userfullname') { $by = ''; $usernameorder = $logmanager_model->getUsernameOrderForLog($order); if (!empty($usernameorder)) { $funorder = 'FIND_IN_SET(last_modifiedby,"' . $usernameorder . '")'; } } if ($sortby == 'employeeId') { $by = ''; $empidorder = $logmanager_model->getEmpidOrderForLog($order); if (!empty($empidorder)) { $funorder = 'FIND_IN_SET(last_modifiedby,"' . $empidorder . '")'; } } if ($sortby == 'menuname') { $by = ''; $menunameorder = $logmanager_model->getMenuOrderForLog($order); if (!empty($menunameorder)) { $funorder = 'FIND_IN_SET(menuId,"' . $menunameorder . '")'; } } } $activityLogData = $logmanager_model->getLogManagerDataReport($by, $funorder, $pageNo, $perPage, $searchData, array('*')); $activityLogCount = $activitylog_model->getLogManagerCount(); $menuArray = array(); $userArray = array(); if (count($activityLogData) > 0) { $lastpage = ceil($activityLogCount / $perPage); foreach ($activityLogData as $activitylog) { if (isset($activitylog['menuId'])) { if (!in_array($activitylog['menuId'], $menuArray)) { array_push($menuArray, $activitylog['menuId']); } } if (isset($activitylog['last_modifiedby'])) { if (!in_array($activitylog['last_modifiedby'], $userArray)) { array_push($userArray, $activitylog['last_modifiedby']); } } } } $menuNameArray = $activitylog_model->getMenuNamesByIds($menuArray); $userNameArray = $activitylog_model->getuserNamesByIds($userArray); if (count($activityLogData) > 0) { foreach ($activityLogData as $key => $activitylog) { if (in_array('menuname', $selectColumns)) { $finalArray[$key]['menuname'] = isset($menuNameArray[$activitylog['menuId']]) ? $menuNameArray[$activitylog['menuId']]['name'] : ''; } if (in_array('username', $selectColumns)) { $finalArray[$key]['username'] = isset($userNameArray[$activitylog['last_modifiedby']]) ? $userNameArray[$activitylog['last_modifiedby']]['userfullname'] : ''; } if (in_array('empId', $selectColumns)) { $finalArray[$key]['empId'] = isset($userNameArray[$activitylog['last_modifiedby']]) ? $userNameArray[$activitylog['last_modifiedby']]['employeeId'] : ''; } if (in_array('useraction', $selectColumns)) { $finalArray[$key]['useraction'] = $action[$activitylog['user_action']]; } if (in_array('modifieddate', $selectColumns)) { $finalArray[$key]['modifieddate'] = sapp_Global::getDisplayDate($activitylog['last_modifieddate']); } } } } else { // with search values from form $searchQuery = ''; if ($this->_request->getParam('menu') != '') { $searchQuery .= ' menuId =' . intval($this->_request->getParam('menu')) . ' AND'; } if ($this->_request->getParam('useraction') != '') { $searchQuery .= ' user_action =' . intval($this->_request->getParam('useraction')) . ' AND'; } if ($this->_request->getParam('hiddenusername') != '') { $username = $this->_request->getParam('hiddenusername'); //userid in request $searchQuery .= ' log_details Like \'%"userid":"' . $username . '"%\' AND'; } if ($this->_request->getParam('modifieddate') != '') { $date = sapp_Global::change_date($this->_request->getParam('modifieddate'), 'database'); $date1 = str_replace('-', '/', $date); $onedayafter = date('Y-m-d', strtotime($date1 . "+1 days")); $onedaybefore = date('Y-m-d', strtotime($date1 . "-1 days")); $searchQuery .= '(log_details Like "%' . $onedaybefore . '%" or log_details Like "%' . $date . '%" or log_details Like "%' . $onedayafter . '%")'; } if ($searchQuery != '') { $searchQuery = rtrim($searchQuery, " AND"); } $activityLogData = $logmanager_model->getLogManagerDataReport('last_modifieddate', 'Desc', '', '', $searchQuery, array('*')); /*looping jsonlogs */ if (count($activityLogData) > 0) { $userArray = array(); $menuArray = array(); $logJsonArray = array(); $jsonCount = 0; $index = 0; foreach ($activityLogData as $activitylog) { $logdetails = '{"testjson":[' . $activitylog['log_details'] . ']}'; $logarr = @get_object_vars(json_decode($logdetails)); if (!empty($logarr)) { $logarr['testjson'] = array_reverse($logarr['testjson']); $jsonCount = count($logarr['testjson']); } if ($jsonCount > 0 && isset($logarr['testjson']) && !empty($logarr['testjson'])) { foreach ($logarr['testjson'] as $key => $curr) { $currArray = @get_object_vars($curr); /*userid and date check with form and json values*/ $flag = false; if ($this->_request->getParam('modifieddate') != '') { $currArrayTemp = sapp_Global::getGMTformatdate($currArray['date']); $pos = strpos($currArrayTemp, $date); $flag = $pos !== false ? false : true; } if ($this->_request->getParam('hiddenusername') != '' && $username != $currArray['userid'] || $flag) { continue; } /*end userid and date check*/ $logJsonArray[$index]['userid'] = $currArray['userid'] != '' ? $currArray['userid'] : 1; $logJsonArray[$index]['date'] = $currArray['date']; $datesort[$index] = $currArray['date']; // to sort by date if (!in_array($currArray['userid'], $userArray)) { array_push($userArray, $currArray['userid']); } if (isset($activitylog['menuId'])) { if (!in_array($activitylog['menuId'], $menuArray)) { array_push($menuArray, $activitylog['menuId']); } } $logJsonArray[$index]['menu'] = $activitylog['menuId']; $logJsonArray[$index]['action'] = $action[(string) $activitylog['user_action']]; $actionsort[$index] = $action[(string) $activitylog['user_action']]; $index++; } } } $menuNameArray = $activitylog_model->getMenuNamesByIds($menuArray); $userNameArray = $activitylog_model->getuserNamesByIds($userArray); $lastpage = ceil(count($logJsonArray) / $perPage); $endIndex = intval($perPage); if ($pageNo != 1) { $startIndex = (intval($pageNo) - 1) * intval($perPage); } else { $startIndex = 0; } if (count($logJsonArray) > 0) { if ($this->_request->getParam('sortby') != '') { $sortby = $this->_request->getParam('sortby'); $order = $this->_request->getParam('order'); $orderby = $order == 'asc' ? SORT_ASC : SORT_DESC; if ($sortby == 'user_action' || $sortby == 'last_modifieddate') { // can sort by logJsonArray if ($sortby == 'user_action') { array_multisort($actionsort, $orderby, $logJsonArray); } if ($sortby == 'last_modifieddate') { array_multisort($datesort, $orderby, $logJsonArray); } /* only perpage no of rows */ $splitArray = array_slice($logJsonArray, $startIndex, $endIndex); foreach ($splitArray as $key => $logjson) { if (in_array('menuname', $selectColumns)) { $finalArray[$key]['menuname'] = isset($menuNameArray[(string) $logjson['menu']]) ? $menuNameArray[(string) $logjson['menu']]['name'] : ''; } if (in_array('username', $selectColumns)) { $finalArray[$key]['username'] = isset($userNameArray[(string) $logjson['userid']]) ? $userNameArray[(string) $logjson['userid']]['userfullname'] : ''; } if (in_array('empId', $selectColumns)) { $finalArray[$key]['empId'] = isset($userNameArray[(string) $logjson['userid']]) ? $userNameArray[(string) $logjson['userid']]['employeeId'] : ''; } if (in_array('useraction', $selectColumns)) { $finalArray[$key]['useraction'] = $logjson['action']; } if (in_array('modifieddate', $selectColumns)) { $finalArray[$key]['modifieddate'] = sapp_Global::getDisplayDate($logjson['date']); } } } else { $totalArray = array(); foreach ($logJsonArray as $key => $logjson) { if (in_array('menuname', $selectColumns)) { $totalArray[$key]['menuname'] = isset($menuNameArray[(string) $logjson['menu']]) ? $menuNameArray[(string) $logjson['menu']]['name'] : ''; } $menunameSort[$key] = $totalArray[$key]['menuname']; if (in_array('username', $selectColumns)) { $totalArray[$key]['username'] = isset($userNameArray[(string) $logjson['userid']]) ? $userNameArray[(string) $logjson['userid']]['userfullname'] : ''; } $usernameSort[$key] = $totalArray[$key]['username']; if (in_array('empId', $selectColumns)) { $totalArray[$key]['empId'] = isset($userNameArray[(string) $logjson['userid']]) ? $userNameArray[(string) $logjson['userid']]['employeeId'] : ''; } $empIdSort[$key] = $totalArray[$key]['empId']; if (in_array('useraction', $selectColumns)) { $totalArray[$key]['useraction'] = $logjson['action']; } if (in_array('modifieddate', $selectColumns)) { $totalArray[$key]['modifieddate'] = sapp_Global::getDisplayDate($logjson['date']); } } if ($sortby == 'userfullname') { array_multisort($usernameSort, $orderby, $totalArray); } if ($sortby == 'employeeId') { array_multisort($empIdSort, $orderby, $totalArray); } if ($sortby == 'menuname') { array_multisort($menunameSort, $orderby, $totalArray); } /* only perpage no of rows */ if (count($totalArray) >= intval($perPage)) { $finalArray = array_slice($totalArray, $startIndex, $endIndex); } else { $finalArray = $totalArray; } } } } } } if ($this->getRequest()->getPost()) { // To generate PDF START if ($this->_request->getParam('generatereport') == 'pdf') { $this->generateActivityLogPdf($finalArray, $selectColumns); } } if ($this->_request->getParam('generatereport') == 'xcel') { //xcel generation foreach ($selectFields as $key => $val) { foreach ($selectColumns as $column) { if ($column == $key) { $selectColumnLabels[$key] = $val; } } } sapp_Global::export_to_excel($finalArray, $selectColumnLabels, 'Activitylog Report.xlsx'); exit; } $activitylogreport_form = new Default_Form_activitylogreport(); $this->view->form = $activitylogreport_form; $this->view->totalselectfields = $selectFields; $this->view->tabkeys = implode(',', $selectColumns); $this->view->activitylogData = $finalArray; $this->view->pageNo = $pageNo; $this->view->perPage = $perPage; $this->view->sortBy = $sortby; $this->view->order = $order; $this->view->lastPageNo = $lastpage; } catch (Exception $e) { echo $e->getMessage(); } }
/** * * @param string $name * @param array $fields * @param Zend_Paginator Instance $paginator * @param array $extracolumn * @param Bool $sorting * * @return string */ public function generateGrid($name, $fields = null, $paginator = null, $extracolumn = array(), $sorting = false, $jsGridFnname = '', $perPage = '5', $page = '1', $jsFillFnName = '', $searchArray = '', $formgrid = 'false', $addaction = '', $menuName = '', $unitId, $addpermission, $menunamestr, $call = '', $sortStr = '', $search_filters = '', $dashboardCall = 'No', $empstatus = '', $actnArr, $empscreenTotalCount = '', $sortname = '', $by = '') { $request = Zend_Controller_Front::getInstance(); $params = $request->getRequest()->getParams(); $controllerName = $request->getRequest()->getControllerName(); $actionName = $request->getRequest()->getActionName(); $dataclass = ''; // Store Extra Columns $this->extra = $extracolumn; $sortIconStr = ""; $sort = Zend_Controller_Front::getInstance()->getRequest()->getParam('sort', 'DESC'); // checking and handling sorting. if ($sort == "") { $sortIconStr = "<span class='s-ico'>\n\t\t\t<span class='ui-icon-desc ui-state-disabled ui-icon ui-icon-triangle-1-n'></span>\n\t\t\t<span class='ui-icon-asc ui-state-disabled ui-icon ui-icon-triangle-1-s'></span></span>"; } else { if ($sort == 'ASC') { $sort = 'DESC'; //For Sort Icons.... $sortIconStr = "<span class='s-ico'>\n\t\t\t<span class='ui-icon-desc ui-icon ui-icon-triangle-1-n'></span>\n\t\t\t</span>"; } else { $sort = 'ASC'; //For Sort Icons.... $sortIconStr = "<span class='s-ico'>\n\t\t\t<span class='ui-icon-asc ui-icon ui-icon-triangle-1-s'></span></span>"; } } if ($call != "ajaxcall") { $sortIconStr = ""; } if ($addaction != '') { $action = $addaction; $popupaction = 'addpopup'; } else { $action = "edit"; $popupaction = 'editpopup'; } $con = ''; if ($formgrid != '') { $urlString = trim($_SERVER['REQUEST_URI']); $serverUrl = $_SERVER['HTTP_HOST']; $urlData = explode('/', $urlString); if ($unitId != '') { $con = 'unitId/' . $unitId; } else { if (isset($params['id'])) { $con = 'unitId/' . $params['id']; } } if ($name == 'empscreening') { $empaction = 'add'; $output = "<div class='table-header'><span>" . $menuName . "</span><a href='" . BASE_URL . $name . '/' . $empaction . "'><input type='button' title = 'Adds' value='Add Record' class='sprite addrecord' /></a></div>"; } else { if ($name == 'processes' && $empstatus != 'Active' && $empstatus != '') { $output = "<div class='table-header'><span>" . $menuName . "</span></div>"; } else { $output = "<div class='table-header'><span>" . $menuName . "</span><input type='button' title = 'Add' onclick='displaydeptform(\"" . BASE_URL . $name . '/' . $popupaction . "/{$con}/popup/1\",\"" . $menunamestr . "\")' value='Add Record' class='sprite addrecord' /></div>"; } } } else { if ($name == 'policydocuments' && !empty($this->pd_category_name)) { $output = "<div class='table-header'><span>" . $this->pd_category_name . "</span>"; } else { $output = "<div class='table-header'><span>" . $menuName . "</span>"; } if ($name == 'candidatedetails') { $output .= "<div class='add-multi-resume'><a href='" . BASE_URL . "candidatedetails/multipleresume'>Add multiple CVs</a></div>"; } if ($name == 'policydocuments') { $output .= "<a href='" . BASE_URL . $name . '/' . $action . "/cat/" . $this->pd_category_id . "'><input type='button' title = 'Add' value='Add Record' class='sprite addrecord' /></a>"; } else { $output .= "<a href='" . BASE_URL . $name . '/' . $action . "'><input type='button' title = 'Add' value='Add Record' class='sprite addrecord' /></a>"; } $output .= "</div>"; } if ($addpermission == 'false') { if ($name == 'policydocuments' && !empty($this->pd_category_name)) { $output = "<div class='table-header'><span>" . $this->pd_category_name . "</span></div>"; } else { $output = "<div class='table-header'><span>" . $menuName . "</span></div>"; } } $output .= "<div id='" . $name . "' class='details_data_display_block newtablegrid'>"; $output .= "<table class='grid' align='center' width='100%' cellspacing='0' cellpadding='4' border='0'><thead><tr>"; // this foreach loop display the column header in �th� tag. $colinr = 0; if (!empty($fields)) { $tabindx = 0; if (empty($actnArr)) { unset($fields['action']); } foreach ($fields as $key => $value) { if (isset($value['align'])) { $align = @$value['align'] != '' ? 'align="' . $value['align'] . '" ' : ''; } if (isset($value['sortkey'])) { $sortkey = @$value['sortkey'] != '' ? 'align="' . $value['sortkey'] . '" ' : ''; } if (isset($value['style'])) { $style = @$value['style'] != '' ? 'style="' . $value['style'] . '" ' : ''; } $value = is_array($value) && !isset($value['sortkey']) ? $value['value'] : $value; if ($value == 'Action') { $width = 'width=90'; } else { $width = ''; } //'width='.$eachColumnWidth; $output .= "<th " . $width . ">"; // Check if Sorting is set to True if ($sorting) { // Disable Sorting if Key is in Extra Columns if (@$this->extra[$key]['name'] != '' && !is_array($value)) { if ($value == "Action") { $output .= "<span class='action-text'>Action</span>"; } else { $output .= $value; } } else { if (is_array($value)) { $key = $value['sortkey']; $value = $value['value']; } $welcome = 'false'; $urlString = $_SERVER['REQUEST_URI']; if (strpos($urlString, 'welcome') !== false) { $welcome = 'true'; } if ($formgrid == 'true') { if ($value == 'Explanation' && ($name = "processes")) { $output .= "<a href='javascript:void(0);' onclick=javascript:paginationndsorting('" . BASE_URL . $name . "/index/sort/" . $sort . "/by/" . $key . "/objname/" . $name . "/page/" . $page . "/per_page/" . $perPage . "/call/ajaxcall/{$con}/');>" . $value . "<img title='Reason to complete the process.' src='" . DOMAIN . "public/media/images/help.png' /></a>"; } else { $output .= "<a href='javascript:void(0);' onclick=javascript:paginationndsorting('" . BASE_URL . $name . "/index/sort/" . $sort . "/by/" . $key . "/objname/" . $name . "/page/" . $page . "/per_page/" . $perPage . "/call/ajaxcall/{$con}/');>" . $value . "</a>"; } //For Sort Icons.... if ($key == $sortStr) { $output .= $sortIconStr; } } else { if ($welcome == 'true') { $output .= "<a href='javascript:void(0);' onclick=javascript:paginationndsorting('" . BASE_URL . $name . "/index/sort/" . $sort . "/by/" . $key . "/objname/" . $name . "/page/" . $page . "/per_page/" . $perPage . "/call/ajaxcall/{$con}/');>" . $value . "</a>"; //For Sort Icons.... if ($key == $sortStr) { $output .= $sortIconStr; } } else { if ($name == 'policydocuments') { $output .= "<a href='javascript:void(0);' onclick=javascript:paginationndsorting('" . BASE_URL . $name . "/id/" . $this->pd_category_id . "/sort/" . $sort . "/by/" . $key . "/objname/" . $name . "/page/" . $page . "/per_page/" . $perPage . "/call/ajaxcall/{$con}/');>" . $value . "</a>"; //For Sort Icons.... if ($key == $sortStr) { $output .= $sortIconStr; } } else { $output .= "<a href='javascript:void(0);' onclick=javascript:paginationndsorting('" . $this->view->url(array('sort' => $sort, 'by' => $key, 'objname' => $name, 'page' => $page, 'per_page' => $perPage)) . "');>" . $value . "</a>"; //For Sort Icons.... if ($key == $sortStr) { $output .= $sortIconStr; } } } } } } else { //For Sort Icons.... if ($key == $sortStr) { $output .= $sortIconStr; } $output .= $value; } $output .= "</th>"; $colinr++; $tabindx++; } //end of for each loop $output .= "</tr><tr id='search_tr_{$name}'>"; $tabindx = 0; foreach ($fields as $key => $value) { if (isset($value['align'])) { $align = @$value['align'] != '' ? 'align="' . $value['align'] . '" ' : ''; } if (isset($value['sortkey'])) { $sortkey = @$value['sortkey'] != '' ? 'align="' . $value['sortkey'] . '" ' : ''; } if (isset($value['style'])) { $style = @$value['style'] != '' ? 'style="' . $value['style'] . '" ' : ''; } $value = is_array($value) && !isset($value['sortkey']) ? $value['value'] : $value; if ($value == 'Action') { $width = 'width=90'; } else { $width = ''; } $output .= "<th " . $width . ">"; // Check if Sorting is set to True if ($sorting) { // Disable Sorting if Key is in Extra Columns if (@$this->extra[$key]['name'] != '' && !is_array($value)) { if ($value == "Action") { $output .= "<span class='action-text'></span>"; } else { $output .= $value; } } else { if (is_array($value)) { $key = $value['sortkey']; $value = $value['value']; } $welcome = 'false'; $urlString = $_SERVER['REQUEST_URI']; if ($key != 'id' && $key != 'initialize_status' && $key != 'appraisal_process_status') { $sText = ''; if (!empty($searchArray)) { $display = 'display: block;'; } else { $display = 'display: none;'; } if ($controllerName == 'myemployees' && $actionName == 'index') { $display = ''; } if (is_array($searchArray)) { if (array_key_exists($key, $searchArray)) { $sText = $searchArray[$key]; } else { $sText = ''; } } if (isset($search_filters[$key])) { $search_function = 'getsearchdata("' . $name . '","",this.id,event'; $output .= sapp_Global::grid_data($search_filters, $key, $name, $display, $sText, $tabindx, $search_function); } else { $output .= "<input tabIndex={$tabindx} type='text' name='{$name}' id='{$key}' style='{$display}' class='searchtxtbox_{$name} table_inputs grid_search_inputs' value=\"{$sText}\" onKeypress='if (!((event.keyCode || event.which) > 47 && (event.keyCode || event.which) < 58) && !((event.keyCode || event.which) > 64 && (event.keyCode || event.which) < 91) && !((event.keyCode || event.which) > 96 && (event.keyCode || event.which) < 123) && ((event.keyCode || event.which) != 45) && ((event.keyCode || event.which) != 63) && ((event.keyCode || event.which) != 39) && ((event.keyCode || event.which) != 46) && ((event.keyCode || event.which) != 44) && ((event.keyCode || event.which) != 47) && ((event.keyCode || event.which) != 35) && ((event.keyCode || event.which) != 64) && ((event.keyCode || event.which) != 36) && ((event.keyCode || event.which) != 38) && ((event.keyCode || event.which) != 42) && ((event.keyCode || event.which) != 40) && ((event.keyCode || event.which) != 41) && ((event.keyCode || event.which) != 33) && ((event.keyCode || event.which) != 32) && ((event.keyCode || event.which) != 8)) event.preventDefault();' onkeydown='getsearchdata(\"{$name}\",\"\",this.id,event,\"text\")' />"; } } } } else { //For Sort Icons.... if ($key == $sortStr) { $output .= $sortIconStr; } $output .= $value; } $output .= "</th>"; $colinr++; $tabindx++; } //end of for each loop } $output .= "</tr>\n\n </thead>"; $output .= "<tbody>"; // Start Looping Data $ii = 0; foreach ($paginator as $p) { $cell_color = $ii % 2 == 0 ? "row1" : "row2"; $ii++; $bodyCount = 0; $output .= "<tr onclick='selectrow({$name},this);' class='{$cell_color}'>"; // Reset Fields Array to Top if (!empty($fields)) { reset($fields); foreach ($fields as $k => $v) { $tdclass = ''; // Look for additional attributes $characterlimit = 40; if (is_array($v)) { $class = @$v['class'] != '' ? 'class="' . $v['class'] . '" ' : ''; $align = @$v['align'] != '' ? 'align="' . $v['align'] . '" ' : ''; $valign = @$v['valign'] != '' ? 'valign="' . $v['valign'] . '" ' : ''; if (isset($v['characterlimit'])) { $characterlimit = $v['characterlimit']; } $output .= "<td {$tdclass}{$align}{$valign}>"; } else { if ($k == 'description' && $menuName == 'Screening Types') { $characterlimit = 80; } $output .= "<td {$tdclass}>"; } // Check to see if this Field is in Extra Columns if (isset($this->extra[$k]['value'])) { $output .= $this->_parseExtra($k, $p); } else { if ($bodyCount == 0 && $jsFillFnName != '') { $valToInclude = strlen($p[$k]) > $characterlimit ? substr($p[$k], 0, $characterlimit) . ".." : $p[$k]; $output .= "<a onclick= " . $jsFillFnName . "(\"/id/{$p['id']}\") href= 'javascript:void(0)' title='" . htmlentities(trim($p[$k]), ENT_QUOTES, "UTF-8") . "' >" . htmlentities($valToInclude, ENT_QUOTES, "UTF-8") . "</a>"; } else { $p = (array) $p; if (isset($p[$k])) { // Customize grid field data switch ($menuName) { case 'Announcements': switch ($k) { // Strip tags case 'description': $stip_tags_text = strip_tags($p[$k]); $valToInclude = strlen($stip_tags_text) > $characterlimit ? substr($stip_tags_text, 0, $characterlimit) . ".." : $stip_tags_text; break; default: $valToInclude = strlen($p[$k]) > $characterlimit ? substr($p[$k], 0, $characterlimit) . ".." : $p[$k]; break; } break; case 'View/Manage Policy Documents': //case to handle file names in policy documents module switch ($k) { // Strip tags case 'description': $stip_tags_text = strip_tags($p[$k]); $valToInclude = strlen($stip_tags_text) > $characterlimit ? substr($stip_tags_text, 0, $characterlimit) . ".." : $stip_tags_text; break; case 'file_name': $valToInclude = $p[$k]; break; default: $valToInclude = strlen($p[$k]) > $characterlimit ? substr($p[$k], 0, $characterlimit) . ".." : $p[$k]; break; } break; default: $valToInclude = strlen($p[$k]) > $characterlimit ? substr($p[$k], 0, $characterlimit) . ".." : $p[$k]; break; } if ($k == 'isactive' && ($p[$k] == 'Process deleted' || $p[$k] == 'Agency User deleted' || $p[$k] == 'POC deleted' || $p[$k] == 'Agency deleted') && $menuName == 'Background check Process') { $dataclass = 'class="reddata"'; echo "<script type='text/javascript'>\n\t\t\t\t\t\t\t\t\t\t\t\$(document).ready(function() { \n\t\t\t\t\t\t\t\t\t\t\t\$('#del'+" . $p['id'] . ").remove();\n\t\t\t\t\t\t\t\t\t\t\t\$('#edit'+" . $p['id'] . ").remove();\n\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t</script>"; } else { if ($menuName == 'Manage External Users') { echo "<script type='text/javascript'>\n\t\t\t\t\t\t\t\t\t\t\t\$(document).ready(function() { \n\t\t\t\t\t\t\t\t\t\t\t\$('#del'+" . $p['id'] . ").remove();\n\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t</script>"; } } if ($empstatus != 'Active' && $empstatus != '' && $menuName == 'Background check Process') { echo "<script type='text/javascript'>\n\t\t\t\t\t\t\t\t\t\t\t\$(document).ready(function() { \n\t\t\t\t\t\t\t\t\t\t\t\$('#del'+" . $p['id'] . ").remove();\n\t\t\t\t\t\t\t\t\t\t\t\$('#edit'+" . $p['id'] . ").remove();\n\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t</script>"; } if ($k == 'backgroundchk_status' && $p[$k] == 'Complete' && $menuName == 'Employee/Candidate Screening') { $dataclass = 'class="greendata"'; } if ($controllerName == 'appraisalmanager' && ($p['org_status'] == 2 || $p['org_status'] == 3 || $p['enable_step'] == 2 || $p['managerid_status'] != 0)) { //echo '<pre>';print_r($p); //if($p['org_status'] == 2 || $p['org_status'] == 3 || $p['enable_step']==2 || $p['managerid_status']!=0) //{ echo "<script type='text/javascript'>\n\t\t\t\t\t\t\t\t\t\t\t\t\$(document).ready(function() { \n\t\t\t\t\t\t\t\t\t\t\t\t\$('#del" . $p['id'] . "').remove();\n\t\t\t\t\t\t\t\t\t\t\t\t\$('#edit'+" . $p['id'] . ").remove();\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t\t</script>"; //} } if ($controllerName == 'appraisalquestions' || $controllerName == 'appraisalcategory' || $controllerName == 'feedforwardquestions') { if ($p['isused'] == 1) { echo "<script type='text/javascript'>\n\t\t\t\t\t\t\t\t\t\t\t\t\$(document).ready(function() { \n\t\t\t\t\t\t\t\t\t\t\t\t\$('#del" . $p['id'] . "').remove();\n\t\t\t\t\t\t\t\t\t\t\t\t\$('#edit'+" . $p['id'] . ").remove();\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t\t</script>"; } } /** added on 27-04-2015 by sapplica ** to remove edit buttons in appraisal settings page when status is not empty **/ if ($controllerName == 'appraisalconfig' && $p['status'] != '') { echo "<script type='text/javascript'>\n\t\t\t\t\t\t\t\t\t\t\t\t\$(document).ready(function() { \n\t\t\t\t\t\t\t\t\t\t\t\t\$('#edit'+" . $p['id'] . ").remove();\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t\t</script>"; } //removing edit,dele icons for announcements if ($controllerName == 'announcements') { //echo "<pre>";print_r($p); $businessunit_id = $department_id = ''; $auth = Zend_Auth::getInstance(); if ($auth->hasIdentity()) { $loginUserId = $auth->getStorage()->read()->id; $loginuserRole = $auth->getStorage()->read()->emprole; $loginuserGroup = $auth->getStorage()->read()->group_id; $businessunit_id = $auth->getStorage()->read()->businessunit_id; $department_id = $auth->getStorage()->read()->department_id; } //checking roles and Removing Edit & Delete previliges if ($loginuserGroup == HR_GROUP && (!empty($businessunit_id) || !empty($department_id))) { $bunitArr = isset($p['businessunit_id']) ? explode(',', $p['businessunit_id']) : array(); $deptArr = isset($p['department_id']) ? explode(',', $p['department_id']) : array(); if (!in_array($businessunit_id, $bunitArr) && !in_array($department_id, $deptArr)) { echo "<script type='text/javascript'>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\$(document).ready(function() { \n\t\t\t\t\t\t\t\t\t\t\t\t\t\$('#del" . $p['id'] . "').remove();\n\t\t\t\t\t\t\t\t\t\t\t\t\t\$('#edit'+" . $p['id'] . ").remove();\n\t\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t\t\t</script>"; } } } // /** * Customize grid fields data - START * In the below code, First Case - Menu name * Second Case - Grid field * Keep 'default' case to allow display other Grids, normal. */ switch ($menuName) { case 'CV Management': switch ($k) { case 'cand_resume': if (!empty($valToInclude)) { $output .= "<span " . $dataclass . " title='" . htmlentities(trim($p[$k]), ENT_QUOTES, "UTF-8") . "' ><a href='" . BASE_URL . $name . '/download/id/' . $p["id"] . "'>View Resume</a></span>"; } break; default: $output .= "<span " . $dataclass . " title='" . htmlentities(trim($p[$k]), ENT_QUOTES, "UTF-8") . "' >" . htmlentities($valToInclude, ENT_QUOTES, "UTF-8") . "</span>"; break; } break; // Strip HTML tags for 'description' field in Organization->Announcements grid // Strip HTML tags for 'description' field in Organization->Announcements grid case 'Announcements': switch ($k) { case 'description': $output .= "<span " . $dataclass . " title='" . htmlentities(strip_tags(trim($p[$k])), ENT_QUOTES, "UTF-8") . "' >" . htmlentities($valToInclude, ENT_QUOTES, "UTF-8") . "</span>"; break; default: $output .= "<span " . $dataclass . " title='" . htmlentities(trim($p[$k]), ENT_QUOTES, "UTF-8") . "' >" . htmlentities($valToInclude, ENT_QUOTES, "UTF-8") . "</span>"; break; } break; case 'View/Manage Policy Documents': //case to handle file names in policy documents module switch ($k) { case 'description': $output .= "<span " . $dataclass . " title='" . htmlentities(strip_tags(trim($p[$k])), ENT_QUOTES, "UTF-8") . "' >" . htmlentities($valToInclude, ENT_QUOTES, "UTF-8") . "</span>"; break; case 'file_name': $tmpFiles = json_decode($valToInclude); if ($tmpFiles[0]) { $strFileName = strlen($tmpFiles[0]->original_name) > 40 ? substr($tmpFiles[0]->original_name, 0, 37) . "..." : htmlentities($tmpFiles[0]->original_name, ENT_QUOTES, "UTF-8"); $output .= "<a target='_blank' title='" . htmlentities(strip_tags(trim($tmpFiles[0]->original_name)), ENT_QUOTES, "UTF-8") . "' href='" . POLICY_DOC_PATH . $tmpFiles[0]->new_name . "'>" . $strFileName . "</a>"; } else { $output .= "<span " . $dataclass . "></span>"; } break; default: $output .= "<span " . $dataclass . " title='" . htmlentities(trim($p[$k]), ENT_QUOTES, "UTF-8") . "' >" . htmlentities($valToInclude, ENT_QUOTES, "UTF-8") . "</span>"; break; } break; case 'All Exit Procedures': if ($k == 'createddate') { $output .= "<span " . $dataclass . ">" . sapp_Global::getDisplayDate($p[$k]) . "</span>"; } else { $output .= "<span " . $dataclass . " title='" . htmlentities(trim($p[$k]), ENT_QUOTES, "UTF-8") . "' >" . htmlentities($valToInclude, ENT_QUOTES, "UTF-8") . "</span>"; } break; default: $output .= "<span " . $dataclass . " title='" . trim($p[$k]) . "' >" . htmlentities($valToInclude, ENT_QUOTES, "ISO-8859-1") . "</span>"; break; } // Customize grid fields data - END htmlentities(trim($p[$k]), ENT_QUOTES, "ISO-8859-1") } } } $dataclass = ''; $output .= "</td>"; $bodyCount++; } } // Close the Table Row $output .= "</tr>"; } if ($ii == 0) { $output .= "<tr><td colspan='{$colinr}' class='no-data-td'><p class='no-data'>No data found</p></td></tr>"; } $output .= "</tbody>"; $output .= "</table>\n <script type='text/javascript' language='javascript'>\n \$(document).ready(function(){\n \n if(\$('.searchtxtbox_" . $name . "').is(':visible'))\n {\n \n \$('#search_tr_" . $name . "').show();\t\n }\n else \n \n \$('#search_tr_" . $name . "').hide();\t\n });\n </script> \n </div>"; // Attach Pagination if ($paginator) { $params = array(); $params['jsGridFnName'] = $jsGridFnname; $params['perPage'] = $perPage; $params['objname'] = $name; $params['searchArray'] = $searchArray; $params['formgrid'] = $formgrid; $params['con'] = $con; $params['dashboardcall'] = $dashboardCall; $params['sortname'] = $sortname; $params['by'] = $by; /** for policy documents **/ $params['pd_category_id'] = $this->pd_category_id; if (isset($empscreenTotalCount) && $perPage != 0) { $empscreen_lastpage = ceil($empscreenTotalCount / $perPage); $params['empscreen_lastpage'] = $empscreen_lastpage; } $output .= $this->view->paginationControl($paginator, 'Sliding', 'partials/pagination.phtml', $params); } $output .= "<script type='text/javascript' language='javascript'>\$('#{$name}').slimScrollHorizontal({\n\t\t\t\t\t\t\t\t\t alwaysVisible: false,\n\t\t\t\t\t\t\t\t\t start: 'left',\n\t\t\t\t\t\t\t\t\t position: 'bottom',\n\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t}).css({ background: '#ccc', paddingBottom: '10px' }); </script>"; $output .= "<script type='text/javascript' language='javascript'>\n\t\t\t\t\t\tvar id = \$('#columnId').val();\n\t\t\t\t\t\tvar coldata = \$('#'+id).val();\n\t\t\t\t\t\tvar focusID = \$('#columnId').val();\n var fval = \$('#'+focusID).attr('data-focus');\n if(fval == '' || fval == null)\n\t\t\t\t\t\t\$('#'+focusID).focus().val('').val(coldata);\n \n\t\t\t\t\t</script>"; return $output; }