$field = $gravityview_view->getCurrentField(); $created_by = rgar($field['entry'], 'created_by'); // There was no logged in user who created this entry. if (empty($created_by)) { return; } //$form_id = $gravityview_view->getFormId(); $form_id = 0; // Get the settings for the View ID $view_settings = gravityview_get_template_settings($gravityview_view->getViewId()); $view_settings['page_size'] = $gravityview_view->getCurrentFieldSetting('page_size'); // Prepare paging criteria $criteria['paging'] = array('offset' => 0, 'page_size' => $view_settings['page_size']); // Prepare Search Criteria $criteria['search_criteria'] = array('field_filters' => array(array('key' => 'created_by', 'value' => $created_by, 'operator' => 'is'))); $criteria['search_criteria'] = GravityView_frontend::process_search_only_approved($view_settings, $criteria['search_criteria']); $criteria['search_criteria']['status'] = apply_filters('gravityview_status', 'active', $view_settings); /** * Modify the search parameters before the entries are fetched * * @since 1.11 * * @param array $criteria Gravity Forms search criteria array, as used by GVCommon::get_entries() * @param array $view_settings Associative array of settings with plugin defaults used if not set by the View * @param int $form_id The Gravity Forms ID */ $criteria = apply_filters('gravityview/field/other_entries/criteria', $criteria, $view_settings, $form_id); $entries = GVCommon::get_entries($form_id, $criteria); // Don't show if no entries and the setting says so if (empty($entries) && $gravityview_view->getCurrentFieldSetting('no_entries_hide')) { return;
/** * Get the entries that will be shown in the current widget * * @param array $instance Settings for the current widget * * @return array $entries Multidimensional array of Gravity Forms entries */ private function get_entries($instance, $form_id) { // Get the settings for the View ID $view_settings = gravityview_get_template_settings($instance['view_id']); // Set the context view ID to avoid conflicts with the Advanced Filter extension. $criteria['context_view_id'] = $instance['view_id']; $instance['limit'] = isset($instance['limit']) ? $instance['limit'] : 10; $view_settings['id'] = $instance['view_id']; $view_settings['page_size'] = $instance['limit']; // Prepare paging criteria $criteria['paging'] = array('offset' => 0, 'page_size' => $instance['limit']); // Prepare Search Criteria $criteria['search_criteria'] = array('field_filters' => array()); $criteria['search_criteria'] = GravityView_frontend::process_search_only_approved($view_settings, $criteria['search_criteria']); $criteria['search_criteria']['status'] = apply_filters('gravityview_status', 'active', $view_settings); /** * Modify the search parameters before the entries are fetched */ $criteria = apply_filters('gravityview/widget/recent-entries/criteria', $criteria, $instance, $form_id); $results = GVCommon::get_entries($form_id, $criteria); return $results; }