/** * @since 1.15 * @param $entry_ids * @param $form */ function _set_up_entry_meta($entry_ids, $form) { foreach ($entry_ids as $entry_id) { GravityView_Admin_ApproveEntries::update_approved($entry_id, 1, $form['id']); $this->assertEquals(gform_get_meta($entry_id, 'is_approved'), 1); gform_add_meta($entry_id, 'do_not_delete', 'DO NOT DELETE'); } }
static function get_field_filters($post_id) { $form_id = gravityview_get_form_id($post_id); $form = gravityview_get_form($form_id); // Fixes issue on Views screen when deleting a view if (empty($form)) { return; } $field_filters = GFCommon::get_field_filter_settings($form); if ($approved_column = GravityView_Admin_ApproveEntries::get_approved_column($form)) { $approved_column = intval(floor($approved_column)); } // Add currently logged in user option foreach ($field_filters as &$filter) { // Add negative match to approval column if ($approved_column && $filter['key'] === $approved_column) { $filter['operators'][] = 'isnot'; continue; } // Gravity Forms already creates a "User" option. // We don't care about specific user, just the logged in status. if ($filter['key'] === 'created_by') { // Update the default label to be more descriptive $filter['text'] = esc_attr__('Created By', 'gravity-view-advanced-filter'); $current_user_filters = array(array('text' => __('Logged-in User (disabled for Admins)', 'gravity-view-advanced-filter'), 'value' => 'created_by_or_admin'), array('text' => __('Logged-in User', 'gravity-view-advanced-filter'), 'value' => 'created_by')); foreach ($current_user_filters as $user_filter) { // Add to the beginning on the value options array_unshift($filter['values'], $user_filter); } } } $init_field_id = 0; $init_field_operator = "contains"; $default_init_filter_vars = array("mode" => "all", "filters" => array(array("field" => $init_field_id, "operator" => $init_field_operator, "value" => ''))); $view_filter_vars = self::get_view_filter_vars($post_id, true); $init_filter_vars = !empty($view_filter_vars) ? $view_filter_vars : $default_init_filter_vars; /** * allow field filters manipulation * @param array $field_filters configured filters */ $field_filters = apply_filters('gravityview/adv_filter/field_filters', $field_filters, $post_id); return array('field_filters' => $field_filters, 'init_filter_vars' => $init_filter_vars); }