/** * Populate user state requests */ function populateState() { //get states $app = \Cobalt\Container::fetch('app'); //determine view so we set correct states $view = $app->input->get('view'); $layout = str_replace("_filter", "", $app->input->get('layout')); $id = $app->input->get('id') ? $app->input->get('id') : $app->input->get('custom_report'); //set layout for filter pages if ($view == "print") { $id = $app->input->get('custom_report'); $layout = "custom_report"; } /** -------------------------------------- * Filter data for different views */ switch ($layout) { case "custom_reports": //set default filter states for reports $filter_order = $app->getUserStateFromRequest('Report.filter_order', 'filter_order', 'report.name'); $filter_order_Dir = $app->getUserStateFromRequest('Report.filter_order_Dir', 'filter_order_Dir', 'asc'); //set states for reports $this->state->set('Report.filter_order', $filter_order); $this->state->set('Report.filter_order_Dir', $filter_order_Dir); break; case "custom_report": //set default filter states for reports $filter_order = $app->getUserStateFromRequest('Report.' . $id . '_' . $layout . '_filter_order', 'filter_order', 'd.name'); $filter_order_Dir = $app->getUserStateFromRequest('Report.' . $id . '_' . $layout . '_filter_order_Dir', 'filter_order_Dir', 'asc'); $deal_filter = $app->getUserStateFromRequest('Report.' . $id . '_' . $layout . '_name', 'deal_name', null); $owner_filter = $app->getUserStateFromRequest('Report.' . $id . '_' . $layout . '_owner_id', 'owner_id', UsersHelper::getUserId()); $owner_type_filter = $app->getUserStateFromRequest('Report.' . $id . '_' . $layout . '_owner_type', 'owner_type', 'member'); $amount_filter = $app->getUserStateFromRequest('Report.' . $id . '_' . $layout . '_amount', 'deal_amount', null); $source_filter = $app->getUserStateFromRequest('Report.' . $id . '_' . $layout . '_source_id', 'source_id', null); $stage_filter = $app->getUserStateFromRequest('Report.' . $id . '_' . $layout . '_stage_id', 'stage_id', null); $status_filter = $app->getUserStateFromRequest('Report.' . $id . '_' . $layout . '_status_id', 'status_id', null); $expected_close_filter = $app->getUserStateFromRequest('Report.' . $id . '_' . $layout . '_expected_close', 'expected_close', null); $modified_filter = $app->getUserStateFromRequest('Report.' . $id . '_' . $layout . '_modified', 'modified', null); $created_filter = $app->getUserStateFromRequest('Report.' . $id . '_' . $layout . '_created', 'created', null); $primary_contact_name = $app->getUserStateFromRequest('Report.' . $id . '_' . $layout . '_primary_contact_name', 'primary_contact_name', null); $primary_contact_phone = $app->getUserStateFromRequest('Report.' . $id . '_' . $layout . '_primary_contact_phone', 'primary_contact_phone', null); $primary_contact_email = $app->getUserStateFromRequest('Report.' . $id . '_' . $layout . 'primary_contact_email', 'primary_contact_email', null); //get custom filters $custom_fields = DealHelper::getUserCustomFields(); $post_data = $app->input->post; if (count($custom_fields) > 0) { foreach ($custom_fields as $row) { $custom_field_value = $app->getUserStateFromRequest('Report.' . $id . '_' . $layout . '_' . $row['id'], 'custom_' . $row['id'], null); $this->state->set('Report.' . $id . '_' . $layout . '_' . $row['id'], $custom_field_value); } } //set states for reports $this->state->set('Report.' . $id . '_' . $layout . '_filter_order', $filter_order); $this->state->set('Report.' . $id . '_' . $layout . '_filter_order_Dir', $filter_order_Dir); $this->state->set('Report.' . $id . '_' . $layout . '_name', $deal_filter); $this->state->set('Report.' . $id . '_' . $layout . '_owner_id', $owner_filter); $this->state->set('Report.' . $id . '_' . $layout . '_owner_type', $owner_type_filter); $this->state->set('Report.' . $id . '_' . $layout . '_amount', $amount_filter); $this->state->set('Report.' . $id . '_' . $layout . '_source_id', $source_filter); $this->state->set('Report.' . $id . '_' . $layout . '_stage_id', $stage_filter); $this->state->set('Report.' . $id . '_' . $layout . '_status_id', $status_filter); $this->state->set('Report.' . $id . '_' . $layout . '_expected_close', $expected_close_filter); $this->state->set('Report.' . $id . '_' . $layout . '_modified', $modified_filter); $this->state->set('Report.' . $id . '_' . $layout . '_created', $created_filter); $this->state->set('Report.' . $id . '_' . $layout . '_primary_contact_phone', $primary_contact_phone); $this->state->set('Report.' . $id . '_' . $layout . '_primary_contact_name', $primary_contact_name); $this->state->set('Report.' . $id . '_' . $layout . '_primary_contact_phone', $primary_contact_phone); $this->state->set('Report.' . $id . '_' . $layout . '_primary_contact_email', $primary_contact_email); break; } }
" /></th> <?php break; ?> <?php } ?> <?php } ?> <?php if ($custom_field) { ?> <?php //get the custom field type $custom_field_info = DealHelper::getUserCustomFields(str_replace('custom_', '', $id)); $info = $custom_field_info[0]; $custom_field_filter = ''; //determine type of input switch ($info['type']) { case "text": ?> <th><input class="input input-small filter_input" name="custom_<?php echo $info['id']; ?> " type="text" value="<?php echo $custom_field_filter; ?> " /></th> <?php break;