/** * Default column values if no callback found * * @param object $item * @param string $column_name * * @return string */ function column_default($item, $column_name) { switch ($column_name) { case 'date': return erp_format_date($item->created_on); case 'policy': return stripslashes($item->policy_name); case 'status': return '<span class="status-' . $item->status . '">' . erp_hr_leave_request_get_statuses($item->status) . '</span>'; default: return isset($item->{$column_name}) ? $item->{$column_name} : ''; } }
/** * Get leave requests count * * @since 0.1 * * @return array */ function erp_hr_leave_get_requests_count() { global $wpdb; $statuses = erp_hr_leave_request_get_statuses(); $counts = array(); foreach ($statuses as $status => $label) { $counts[$status] = array('count' => 0, 'label' => $label); } $cache_key = 'erp-hr-leave-request-counts'; $results = wp_cache_get($cache_key, 'wp-erp'); if (false === $results) { $sql = "SELECT status, COUNT(id) as num FROM {$wpdb->prefix}erp_hr_leave_requests WHERE status != 0 GROUP BY status;"; $results = $wpdb->get_results($sql); wp_cache_set($cache_key, $results, 'wp-erp'); } foreach ($results as $row) { if (array_key_exists($row->status, $counts)) { $counts[$row->status]['count'] = (int) $row->num; } $counts['all']['count'] += (int) $row->num; } return $counts; }