Example #1
0
 * Display other entries created by the entry creator field type
 *
 * @package GravityView
 * @subpackage GravityView/templates/fields
 */
$gravityview_view = GravityView_View::getInstance();
$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
 /**
  * Render html View General Settings
  *
  * @access public
  * @param object $post
  * @return void
  */
 function render_view_settings_metabox($post)
 {
     // View template settings
     $current_settings = gravityview_get_template_settings($post->ID);
     include self::$metaboxes_dir . 'views/view-settings.php';
 }
Example #3
0
<?php

/**
 * @package GravityView
 * @subpackage Gravityview/admin/metaboxes/views
 * @global $post
 */
global $post;
// View template settings
$current_settings = gravityview_get_template_settings($post->ID);
?>

<table class="form-table striped"><?php 
GravityView_Render_Settings::render_setting_row('single_title', $current_settings);
GravityView_Render_Settings::render_setting_row('back_link_label', $current_settings);
?>
</table>
 /**
  * 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;
 }
Example #5
0
 /**
  *
  * Add a view to the views array
  *
  * @param int|array $view_id View ID or array of View IDs
  * @param array|string $atts Combine other attributes (eg. from shortcode) with the view settings (optional)
  * @return type
  */
 function add_view($view_id, $atts = NULL)
 {
     // Handle array of IDs
     if (is_array($view_id)) {
         foreach ($view_id as $id) {
             $this->add_view($id, $atts);
         }
         return $this->views;
     }
     // The view has been set already; returning stored view.
     if (!empty($this->views[$view_id])) {
         do_action('gravityview_log_debug', sprintf('GravityView_View_Data[add_view] Returning; View #%s already exists.', $view_id));
         return $this->views[$view_id];
     }
     if (!$this->view_exists($view_id)) {
         do_action('gravityview_log_debug', sprintf('GravityView_View_Data[add_view] Returning; View #%s does not exist.', $view_id));
         return false;
     }
     $form_id = gravityview_get_form_id($view_id);
     if (empty($form_id)) {
         do_action('gravityview_log_debug', sprintf('GravityView_View_Data[add_view] Returning; Post ID #%s does not have a connected form.', $view_id));
         return false;
     }
     // Get the settings for the View ID
     $view_settings = gravityview_get_template_settings($view_id);
     do_action('gravityview_log_debug', sprintf('GravityView_View_Data[add_view] Settings pulled in from View #%s', $view_id), $view_settings);
     // Merge the view settings with the defaults
     $view_defaults = wp_parse_args($view_settings, self::get_default_args());
     do_action('gravityview_log_debug', 'GravityView_View_Data[add_view] View Defaults after merging View Settings with the default args.', $view_defaults);
     if (!empty($atts) && is_array($atts)) {
         do_action('gravityview_log_debug', 'GravityView_View_Data[add_view] $atts before merging  with the $view_defaults', $atts);
         // Get the settings from the shortcode and merge them with defaults.
         $atts = shortcode_atts($view_defaults, $atts);
         do_action('gravityview_log_debug', 'GravityView_View_Data[add_view] $atts after merging  with the $view_defaults', $atts);
     } else {
         // If there are no passed $atts, the defaults will be used.
         $atts = $view_defaults;
     }
     unset($atts['id'], $view_defaults, $view_settings);
     $data = array('id' => $view_id, 'view_id' => $view_id, 'form_id' => $form_id, 'template_id' => gravityview_get_template_id($view_id), 'atts' => $atts, 'fields' => $this->get_fields($view_id), 'widgets' => get_post_meta($view_id, '_gravityview_directory_widgets', true), 'form' => gravityview_get_form($form_id));
     do_action('gravityview_log_debug', sprintf('GravityView_View_Data[add_view] View #%s being added.', $view_id), $data);
     $this->views[$view_id] = $data;
     return $this->views[$view_id];
 }