views_plugin_cache Class Reference

Inheritance diagram for views_plugin_cache:

views_plugin views_object views_plugin_cache_none views_plugin_cache_time List of all members.

Detailed Description

The base plugin to handle caching.

Definition at line 9 of file views_plugin_cache.inc.

Public Member Functions

 init (&$view, &$display)
 Initialize the plugin.
 option_defaults (&$options)
 Retrieve the default options when this is a new access control plugin.
 summary_title ()
 Return a string to display as the clickable title for the access control.
 cache_expire ($type)
 Determine the expiration time of the cache type, or NULL if no expire.
 cache_set ($type)
 Save data to the cache.
 cache_get ($type)
 Retrieve data from the cache.
 cache_flush ()
 Clear out cached data for a view.
 post_render (&$output)
 Post process any rendered data.
 cache_start ()
 Start caching javascript, css and other out of band info.
 gather_headers ()
 Gather out of band data, compare it to what we started with and store the difference.
 restore_headers ()
 Restore out of band data saved to cache.
 get_results_key ()
 get_output_key ()
 options_form (&$form, &$form_state)
 Provide a form to edit options for this plugin.
 options_validate (&$form, &$form_state)
 Validate the options form.
 options_submit (&$form, &$form_state)
 Handle any special handling on the validate form.
 query ()
 Add anything to the query that we might need to.
 theme_functions ()
 Provide a full list of possible theme templates used by this style.
 additional_theme_functions ()
 Provide a list of additional theme functions for the theme information page.
 validate ()
 Validate that the plugin is correct and can be saved.
 option_definition ()
 Information about options for all kinds of purposes will be held here.
 construct ()
 Views handlers use a special construct function so that we can more easily construct them with variable arguments.
 options ()
 Set default options on this object.
 set_default_options ()
 Set default options.
 _set_option_defaults (&$storage, $options, $level=0)
 unpack_options (&$storage, $options, $definition=NULL)
 Unpack options over our existing defaults, drilling down into arrays so that defaults don't get totally blown away.
 set_definition ($definition)
 Let the handler know what its full definition is.
 destroy ()

Public Attributes

 $storage = array()
 Contains all data that should be written/read from cache.
 $table = 'cache_views_data'
 What table to store data in.
 $options = array()
 Except for displays, options for the object will be held here.


Member Function Documentation

views_plugin::additional_theme_functions (  )  [inherited]

Provide a list of additional theme functions for the theme information page.

Definition at line 386 of file plugins.inc.

Referenced by views_plugin_display::options_form().

00386                                         {
00387     $funcs = array();
00388     if (!empty($this->definition['additional themes'])) {
00389       foreach ($this->definition['additional themes'] as $theme => $type) {
00390         $funcs[] = views_theme_functions($theme, $this->view, $this->display);
00391       }
00392     }
00393     return $funcs;
00394   }

views_plugin_cache::cache_expire ( type  ) 

Determine the expiration time of the cache type, or NULL if no expire.

Plugins must override this to implement expiration.

Parameters:
$type The cache type, either 'query', 'result' or 'output'.

Reimplemented in views_plugin_cache_time.

Definition at line 61 of file views_plugin_cache.inc.

Referenced by cache_get().

00061 { }

views_plugin_cache::cache_flush (  ) 

Clear out cached data for a view.

We're just going to nuke anything related to the view, regardless of display, to be sure that we catch everything. Maybe that's a bad idea.

Definition at line 133 of file views_plugin_cache.inc.

00133                          {
00134     cache_clear_all($this->view->name . ':', $this->table, TRUE);
00135   }

views_plugin_cache::cache_get ( type  ) 

Retrieve data from the cache.

A plugin should override this to provide specialized caching behavior.

Reimplemented in views_plugin_cache_none.

Definition at line 95 of file views_plugin_cache.inc.

References cache_expire(), get_output_key(), get_results_key(), views_plugin::query(), and restore_headers().

00095                             {
00096     $cutoff = $this->cache_expire($type);
00097     switch ($type) {
00098       case 'query':
00099         // Not supported currently, but this is certainly where we'd put it.
00100         return FALSE;
00101       case 'results':
00102         // Values to set: $view->result, $view->total_rows, $view->execute_time,
00103         // $view->pager['current_page'].
00104         if ($cache = cache_get($this->get_results_key(), $this->table)) {
00105           if (!$cutoff || $cache->created > $cutoff) {
00106             $this->view->result = $cache->data['result'];
00107             $this->view->total_rows = $cache->data['total_rows'];
00108             $this->view->pager = $cache->data['pager'];
00109             $this->view->execute_time = 0;
00110             return TRUE;
00111           }
00112         }
00113         return FALSE;
00114       case 'output':
00115         if ($cache = cache_get($this->get_output_key(), $this->table)) {
00116           if (!$cutoff || $cache->created > $cutoff) {
00117             $this->storage = $cache->data;
00118             $this->view->display_handler->output = $cache->data['output'];
00119             $this->restore_headers();
00120             return TRUE;
00121           }
00122         }
00123         return FALSE;
00124     }
00125   }

views_plugin_cache::cache_set ( type  ) 

Save data to the cache.

A plugin should override this to provide specialized caching behavior.

Reimplemented in views_plugin_cache_none.

Definition at line 68 of file views_plugin_cache.inc.

References gather_headers(), get_output_key(), get_results_key(), and views_plugin::query().

00068                             {
00069     switch ($type) {
00070       case 'query':
00071         // Not supported currently, but this is certainly where we'd put it.
00072         break;
00073       case 'results':
00074         $data = array(
00075           'result' => $this->view->result,
00076           'total_rows' => $this->view->total_rows,
00077           'pager' => $this->view->pager,
00078         );
00079         cache_set($this->get_results_key(), $data, $this->table);
00080         break;
00081       case 'output':
00082         $this->gather_headers();
00083         $this->storage['output'] = $this->view->display_handler->output;
00084         cache_set($this->get_output_key(), $this->storage, $this->table);
00085         break;
00086     }
00087   }

views_plugin_cache::cache_start (  ) 

Start caching javascript, css and other out of band info.

This takes a snapshot of the current system state so that we don't duplicate it. Later on, when gather_headers() is run, this information will be removed so that we don't hold onto it.

Reimplemented in views_plugin_cache_none.

Definition at line 166 of file views_plugin_cache.inc.

00166                          {
00167     $this->storage['head'] = drupal_set_html_head();
00168     $this->storage['css'] = drupal_add_css();
00169 
00170     foreach (array('header', 'footer') as $scope) {
00171       $this->storage['js'][$scope] = drupal_add_js(NULL, NULL, $scope);
00172     }
00173   }

views_object::construct (  )  [inherited]

Views handlers use a special construct function so that we can more easily construct them with variable arguments.

Reimplemented in views_handler_argument, views_handler_argument_formula, views_handler_field, views_handler_field_markup, views_handler_filter_boolean_operator, views_handler_filter_in_operator, views_handler_sort_formula, views_handler_field_aggregator_category, views_handler_field_aggregator_title_link, views_handler_field_comment_link, views_handler_field_comment_link_edit, views_handler_field_comment_node_link, views_handler_field_node_new_comments, views_handler_field_filter_format_name, views_handler_argument_locale_group, views_handler_argument_locale_language, views_handler_field_locale_link_edit, views_handler_argument_node_created_fulldate, views_handler_argument_node_created_year, views_handler_argument_node_created_year_month, views_handler_argument_node_created_month, views_handler_argument_node_created_day, views_handler_argument_node_created_week, views_handler_argument_node_language, views_handler_argument_node_type, views_handler_field_node, views_handler_field_node_link, views_handler_field_node_link_delete, views_handler_field_node_link_edit, views_handler_field_node_revision_link_delete, views_handler_field_node_revision_link_revert, views_handler_field_taxonomy, views_handler_argument_node_language, views_handler_field_node_translation_link, views_handler_field_upload_fid, views_handler_filter_upload_fid, views_handler_field_user_link, views_handler_field_user_picture, views_handler_field_user_roles, and views_handler_filter_user_current.

Definition at line 40 of file base.inc.

References views_object::set_default_options().

00040 { $this->set_default_options(); }

views_plugin_cache::gather_headers (  ) 

Gather out of band data, compare it to what we started with and store the difference.

Definition at line 178 of file views_plugin_cache.inc.

Referenced by cache_set().

00178                             {
00179     // Simple replacement for head
00180     $this->storage['head'] = str_replace($this->storage['head'], '', drupal_set_html_head());
00181 
00182     // Slightly less simple for CSS:
00183     $css = drupal_add_css();
00184     $start = $this->storage['css'];
00185     $this->storage['css'] = array();
00186 
00187     foreach ($css as $media => $medias) {
00188       foreach ($medias as $type => $types) {
00189         foreach ($types as $path => $preprocess) {
00190           if (!isset($start[$media][$type][$path])) {
00191             $this->storage['css'][] = array($path, $type, $media, $preprocess);
00192           }
00193         }
00194       }
00195     }
00196 
00197     $js = array();
00198     // A little less simple for js
00199     foreach (array('header', 'footer') as $scope) {
00200       $js[$scope] = drupal_add_js(NULL, NULL, $scope);
00201     }
00202 
00203     $start = $this->storage['js'];
00204     $this->storage['js'] = array();
00205 
00206     foreach ($js as $scope => $scopes) {
00207       foreach ($scopes as $type => $types) {
00208         foreach ($types as $id => $info) {
00209           if (!isset($start[$scope][$type][$id])) {
00210             switch ($type) {
00211               case 'setting':
00212                 $this->storage['js'][] = array($info, $type, $scope);
00213                 break;
00214 
00215               case 'inline':
00216                 $this->storage['js'][] = array($info['code'], $type, $scope, $info['defer']);
00217                 break;
00218 
00219               default:
00220                 $this->storage['js'][] = array($id, $type, $scope, $info['defer'], $info['cache']);
00221             }
00222           }
00223         }
00224       }
00225     }
00226   }

views_plugin_cache::init ( &$  view,
&$  display 
)

Initialize the plugin.

Parameters:
$view The view object.
$display The display handler.

Reimplemented from views_plugin.

Definition at line 28 of file views_plugin_cache.inc.

References views_object::options().

00028                                    {
00029     $this->view = &$view;
00030     $this->display = &$display;
00031     $this->options = array();
00032 
00033     if (is_object($display->handler)) {
00034       // Note: The below is read only.
00035       $this->options = $display->handler->get_option('cache');
00036     }
00037   }

views_plugin_cache::option_defaults ( &$  options  ) 

Retrieve the default options when this is a new access control plugin.

Reimplemented in views_plugin_cache_time.

Definition at line 43 of file views_plugin_cache.inc.

00043 { }

views_object::option_definition (  )  [inherited]

Information about options for all kinds of purposes will be held here.

 'option_name' => array(
  - 'default' => default value,
  - 'translatable' => TRUE/FALSE (wrap in t() on export if true),
  - 'contains' => array of items this contains, with its own defaults, etc.
      If contains is set, the default will be ignored and assumed to
      be array()

  ),
Each option may have any of the following functions:

Reimplemented in views_handler_argument, views_handler_argument_many_to_one, views_handler_argument_null, views_handler_argument_numeric, views_handler_argument_string, views_handler_field, views_handler_field_file_size, views_handler_field_boolean, views_handler_field_counter, views_handler_field_custom, views_handler_field_date, views_handler_field_numeric, views_handler_field_prerender_list, views_handler_field_url, views_handler_filter, views_handler_filter_boolean_operator, views_handler_filter_date, views_handler_filter_in_operator, views_handler_filter_many_to_one, views_handler_filter_numeric, views_handler_filter_string, views_handler_relationship, views_handler_sort, views_handler_sort_date, views_handler_field_aggregator_category, views_handler_field_aggregator_title_link, views_plugin_row_aggregator_rss, views_handler_field_comment, views_handler_field_comment_link, views_handler_field_comment_node_link, views_handler_field_comment_username, views_handler_field_ncs_last_comment_name, views_handler_field_node_new_comments, views_plugin_row_comment_view, views_handler_field_contact_link, views_handler_field_locale_link_edit, views_handler_field_history_user_timestamp, views_handler_field_node, views_handler_field_node_link, views_plugin_row_node_rss, views_plugin_row_node_view, views_handler_field_search_score, views_handler_filter_search, views_plugin_row_search_view, views_handler_field_accesslog_path, views_handler_field_file, views_handler_argument_term_node_tid, views_handler_argument_term_node_tid_depth, views_handler_field_taxonomy, views_handler_field_term_node_tid, views_handler_filter_term_node_tid, views_handler_filter_term_node_tid_depth, views_handler_relationship_node_term_data, views_handler_filter_node_tnid, views_handler_relationship_translation, views_handler_field_upload_description, views_handler_field_upload_fid, views_handler_field_is_online, views_handler_field_user, views_handler_field_user_link, views_handler_field_user_mail, views_handler_field_user_name, views_plugin_display, views_plugin_display_attachment, views_plugin_display_block, views_plugin_display_feed, views_plugin_display_page, views_plugin_row, views_plugin_row_fields, views_plugin_style, views_plugin_style_grid, views_plugin_style_jump_menu, views_plugin_style_list, views_plugin_style_rss, views_plugin_style_summary, views_plugin_style_summary_jump_menu, views_plugin_style_summary_unformatted, and views_plugin_style_table.

Definition at line 34 of file base.inc.

Referenced by views_object::set_default_options(), and views_object::unpack_options().

00034 { return array(); }

views_object::options (  )  [inherited]

Set default options on this object.

Called by the constructor in a complex chain to deal with backward compatibility.

Definition at line 46 of file base.inc.

Referenced by views_handler_filter_term_node_tid::accept_exposed_input(), views_handler_filter_numeric::accept_exposed_input(), views_handler_filter_in_operator::accept_exposed_input(), views_handler_filter_date::accept_exposed_input(), views_handler_filter::accept_exposed_input(), views_plugin_access_role::access(), views_plugin_access_perm::access(), views_handler_field_term_node_tid::add_self_tokens(), views_handler_filter_history_user_timestamp::admin_summary(), views_handler_sort::admin_summary(), views_handler_filter_string::admin_summary(), views_handler_filter_numeric::admin_summary(), views_handler_filter_in_operator::admin_summary(), views_handler_filter_boolean_operator::admin_summary(), views_plugin_argument_default_php::argument_form(), views_plugin_argument_default::argument_form(), views_plugin_argument_default_user::argument_form(), views_plugin_style_table::build_sort(), views_plugin_style_table::build_sort_post(), views_plugin_cache_time::cache_expire(), views_handler_filter_string::case_transform(), views_handler_argument_string::case_transform(), views_handler_field::construct(), views_handler_argument::default_action(), views_handler_argument_date::default_argument_form(), views_handler_argument::default_argument_form(), views_handler_argument::default_summary(), views_plugin_display_attachment::displays_exposed(), views_handler_field_term_node_tid::document_self_tokens(), views_handler_filter::expose_form_left(), views_handler_filter_term_node_tid::expose_form_right(), views_handler_filter_in_operator::expose_form_right(), views_handler_filter::expose_form_right(), views_handler_filter_in_operator::expose_options(), views_handler_filter_boolean_operator::expose_options(), views_handler_filter::expose_options(), views_handler_filter::expose_validate(), views_handler_filter_search::exposed_form(), views_handler_filter::exposed_form(), views_handler_filter::exposed_info(), views_handler_filter::exposed_translate(), views_handler_filter_user_name::exposed_validate(), views_handler_filter_term_node_tid::exposed_validate(), views_handler_filter_search::exposed_validate(), views_handler_filter_date::exposed_validate(), views_handler_filter_term_node_tid_depth::extra_options_form(), views_handler_filter_term_node_tid::extra_options_form(), views_plugin_access_role::get_access_callback(), views_plugin_access_perm::get_access_callback(), views_handler_argument_date::get_default_argument(), views_handler_argument::get_default_argument(), views_handler_argument_string::get_formula(), views_plugin_display::get_option(), views_handler_filter_profile_selection::get_value_options(), views_handler_filter_in_operator::get_value_options(), views_handler_argument::has_default_argument(), views_plugin_style::init(), views_plugin_row::init(), views_plugin_display::init(), init(), views_plugin_access::init(), views_handler_field_user_name::init(), views_handler_field_user::init(), views_plugin_row_node_view::init(), views_handler_field_history_user_timestamp::init(), views_handler_field_node_new_comments::init(), views_handler_field_comment::init(), views_handler::init(), views_handler_filter::init(), views_handler_field::init(), views_plugin_display::is_defaulted(), views_handler::is_exposed(), views_plugin_display::is_identifier_unique(), views_handler_argument::is_wildcard(), views_handler_relationship::label(), views_handler_field::label(), views_handler_argument::needs_style_plugin(), views_handler_filter_numeric::op_between(), views_handler_filter_float::op_between(), views_handler_filter_date::op_between(), views_handler_filter_string::op_contains(), views_handler_filter_string::op_empty(), views_handler_filter_numeric::op_empty(), views_handler_filter_in_operator::op_empty(), views_handler_filter_string::op_ends(), views_handler_filter_string::op_equal(), views_handler_filter_string::op_not(), views_handler_filter_string::op_not_ends(), views_handler_filter_string::op_not_starts(), views_handler_filter_numeric::op_simple(), views_handler_filter_in_operator::op_simple(), views_handler_filter_float::op_simple(), views_handler_filter_date::op_simple(), views_handler_filter_string::op_starts(), views_handler_filter_string::op_word(), views_handler_filter_node_tnid::operator_form(), views_handler_filter_search::operator_form(), views_handler_filter::operator_form(), views_plugin_style_table::options_form(), views_plugin_style_summary_unformatted::options_form(), views_plugin_style_summary_jump_menu::options_form(), views_plugin_style_summary::options_form(), views_plugin_style_rss::options_form(), views_plugin_style_list::options_form(), views_plugin_style_jump_menu::options_form(), views_plugin_style_grid::options_form(), views_plugin_style::options_form(), views_plugin_row_fields::options_form(), views_plugin_row::options_form(), views_plugin_display_page::options_form(), views_plugin_display_feed::options_form(), views_plugin_display_block::options_form(), views_plugin_display_attachment::options_form(), views_plugin_display::options_form(), views_plugin_cache_time::options_form(), views_plugin_access_role::options_form(), views_plugin_access_perm::options_form(), views_handler_field_user_name::options_form(), views_handler_field_user_mail::options_form(), views_handler_field_user_link::options_form(), views_handler_field_is_online::options_form(), views_handler_field_upload_fid::options_form(), views_handler_field_upload_description::options_form(), views_handler_relationship_translation::options_form(), views_handler_relationship_node_term_data::options_form(), views_handler_field_term_node_tid::options_form(), views_handler_field_taxonomy::options_form(), views_handler_argument_term_node_tid_depth::options_form(), views_handler_argument_term_node_tid::options_form(), views_handler_field_file::options_form(), views_handler_field_accesslog_path::options_form(), views_plugin_row_search_view::options_form(), views_handler_field_search_score::options_form(), views_handler_field_profile_date::options_form(), views_plugin_row_node_view::options_form(), views_plugin_row_node_rss::options_form(), views_handler_field_node_link::options_form(), views_handler_field_node::options_form(), views_handler_field_history_user_timestamp::options_form(), views_handler_field_locale_link_edit::options_form(), views_handler_field_contact_link::options_form(), views_plugin_row_comment_view::options_form(), views_handler_field_comment_username::options_form(), views_handler_field_comment_node_link::options_form(), views_handler_field_comment_link::options_form(), views_plugin_row_aggregator_rss::options_form(), views_handler_field_aggregator_title_link::options_form(), views_handler_field_aggregator_category::options_form(), views_handler_sort_date::options_form(), views_handler_sort::options_form(), views_handler_relationship::options_form(), views_handler_filter_string::options_form(), views_handler_field_url::options_form(), views_handler_field_prerender_list::options_form(), views_handler_field_numeric::options_form(), views_handler_field_date::options_form(), views_handler_field_counter::options_form(), views_handler_field_boolean::options_form(), views_handler_field_file_size::options_form(), views_handler_field::options_form(), views_handler_argument_string::options_form(), views_handler_argument_numeric::options_form(), views_handler_argument_null::options_form(), views_handler_argument_many_to_one::options_form(), views_handler_argument::options_form(), views_plugin_display::options_submit(), views_handler_filter::options_submit(), views_plugin_display::options_summary(), views_handler_filter_date::options_validate(), views_handler_filter::options_validate(), views_handler_argument_term_node_tid_depth_modifier::pre_query(), views_handler_field_upload_description::pre_render(), views_handler_field_term_node_tid::pre_render(), views_plugin_style_summary::query(), views_plugin_row::query(), views_handler_filter_user_current::query(), views_handler_filter_upload_fid::query(), views_handler_relationship_translation::query(), views_handler_filter_node_tnid_child::query(), views_handler_filter_node_tnid::query(), views_handler_relationship_node_term_data::query(), views_handler_filter_term_node_tid_depth::query(), views_handler_argument_term_node_tid_depth::query(), views_handler_sort_search_score::query(), views_handler_filter_search::query(), views_handler_field_search_score::query(), views_handler_filter_node_status::query(), views_handler_filter_history_user_timestamp::query(), views_handler_sort_ncs_last_updated::query(), views_handler_sort_ncs_last_comment_name::query(), views_handler_sort_comment_thread::query(), views_handler_filter_comment_user_uid::query(), views_handler_sort_random::query(), views_handler_sort_formula::query(), views_handler_sort_date::query(), views_handler_sort::query(), views_handler_relationship::query(), views_handler_filter_boolean_operator_string::query(), views_handler_filter_boolean_operator::query(), views_handler_filter::query(), views_handler_argument_string::query(), views_handler_argument_numeric::query(), views_handler_argument_many_to_one::query(), views_handler_filter_in_operator::reduce_value_options(), views_plugin_style_summary_jump_menu::render(), views_plugin_style_summary::render(), views_plugin_style_rss::render(), views_plugin_style_jump_menu::render(), views_plugin_style::render(), views_plugin_row::render(), views_handler_field_user_mail::render(), views_handler_field_user_link_edit::render(), views_handler_field_user_link_delete::render(), views_handler_field_user_link::render(), views_handler_field_accesslog_path::render(), views_plugin_row_search_view::render(), views_handler_field_profile_date::render(), views_handler_field_node_link::render(), views_handler_field_locale_link_edit::render(), views_plugin_row_comment_rss::render(), views_handler_field_ncs_last_comment_name::render(), views_handler_field_comment_link_reply::render(), views_handler_field_comment_link_delete::render(), views_handler_field_comment_link::render(), views_plugin_row_aggregator_rss::render(), views_handler_field_counter::render(), views_handler_field_file_size::render(), views_handler_field_user_name::render_link(), views_handler_field_user_language::render_link(), views_handler_field_user::render_link(), views_handler_field_upload_description::render_link(), views_handler_field_taxonomy::render_link(), views_handler_field_file::render_link(), views_handler_field_node::render_link(), views_handler_field_comment_username::render_link(), views_handler_field_comment::render_link(), views_handler_field_aggregator_category::render_link(), views_handler_argument_term_node_tid_depth::set_breadcrumb(), views_handler_argument_term_node_tid::set_breadcrumb(), views_object::set_default_options(), views_plugin_display::set_option(), views_plugin_display::set_override(), views_handler::set_relationship(), views_handler_filter::show_expose_button(), views_handler_filter::show_expose_form(), views_handler_filter::store_exposed_input(), views_handler_argument_string::summary_argument(), views_handler_argument_string::summary_query(), views_handler_argument_many_to_one::summary_query(), views_plugin_cache_time::summary_title(), views_plugin_access_role::summary_title(), views_plugin_access_perm::summary_title(), views_handler_argument_string::title(), views_handler_argument_numeric::title(), views_handler_argument_many_to_one::title(), views_handler_argument::uses_breadcrumb(), views_plugin_display_attachment::uses_exposed(), views_plugin_display::validate(), views_handler_argument_null::validate_argument_basic(), views_handler_argument::validate_fail(), views_plugin_argument_validate_php::validate_form(), views_plugin_argument_validate_user::validate_form(), views_plugin_argument_validate_taxonomy_term::validate_form(), views_plugin_argument_validate_node::validate_form(), views_handler_filter_term_node_tid::validate_term_strings(), views_handler_filter_user_name::value_form(), views_handler_filter_term_node_tid::value_form(), views_handler_filter_history_user_timestamp::value_form(), views_handler_filter_string::value_form(), views_handler_filter_numeric::value_form(), views_handler_filter_in_operator::value_form(), views_handler_filter_equality::value_form(), views_handler_filter_date::value_form(), views_handler_filter_boolean_operator::value_form(), views_handler_filter_in_operator::value_submit(), views_handler_filter_user_name::value_validate(), views_handler_filter_term_node_tid::value_validate(), views_handler_filter_boolean_operator::value_validate(), and views_handler_argument::wildcard_title().

00046 { }

views_plugin::options_form ( &$  form,
&$  form_state 
) [inherited]

Provide a form to edit options for this plugin.

Reimplemented in views_plugin_row_aggregator_rss, views_plugin_row_comment_view, views_plugin_row_node_rss, views_plugin_row_node_view, views_plugin_row_search_view, views_plugin_access, views_plugin_access_perm, views_plugin_access_role, views_plugin_cache_time, views_plugin_display, views_plugin_display_attachment, views_plugin_display_block, views_plugin_display_feed, views_plugin_display_page, views_plugin_row, views_plugin_row_fields, views_plugin_style, views_plugin_style_default, views_plugin_style_grid, views_plugin_style_jump_menu, views_plugin_style_list, views_plugin_style_rss, views_plugin_style_summary, views_plugin_style_summary_jump_menu, views_plugin_style_summary_unformatted, and views_plugin_style_table.

Definition at line 359 of file plugins.inc.

00359 { }

views_plugin::options_submit ( &$  form,
&$  form_state 
) [inherited]

Handle any special handling on the validate form.

Reimplemented in views_plugin_access, views_plugin_access_role, views_plugin_display, views_plugin_display_attachment, views_plugin_display_block, views_plugin_display_feed, and views_plugin_display_page.

Definition at line 369 of file plugins.inc.

00369 { }

views_plugin::options_validate ( &$  form,
&$  form_state 
) [inherited]

Validate the options form.

Reimplemented in views_plugin_access, views_plugin_access_role, views_plugin_display, and views_plugin_display_page.

Definition at line 364 of file plugins.inc.

00364 { }

views_plugin_cache::post_render ( &$  output  ) 

Post process any rendered data.

This can be valuable to be able to cache a view and still have some level of dynamic output. In an ideal world, the actual output will include HTML comment based tokens, and then the post process can replace those tokens.

Example usage. If it is known that the view is a node view and that the primary field will be a nid, you can do something like this:

And then in the post render, create an array with the text that should go there:

strtr($output, array('', 'output for FIELD of nid 1');

All of the cached result data will be available in $view->result, as well, so all ids used in the query should be discoverable.

Definition at line 157 of file views_plugin_cache.inc.

00157 { }

views_plugin::query (  )  [inherited]

Add anything to the query that we might need to.

Reimplemented in views_plugin_display, views_plugin_row, views_plugin_style, views_plugin_style_summary, and views_plugin_style_summary_jump_menu.

Definition at line 374 of file plugins.inc.

Referenced by cache_get(), cache_set(), and views_plugin_cache_time::options_form().

00374 { }

views_plugin_cache::restore_headers (  ) 

Restore out of band data saved to cache.

Copied from Panels.

Definition at line 231 of file views_plugin_cache.inc.

Referenced by cache_get().

00231                              {
00232     if (!empty($this->storage['head'])) {
00233       drupal_set_html_head($this->storage['head']);
00234     }
00235     if (!empty($this->storage['css'])) {
00236       foreach ($this->storage['css'] as $args) {
00237         call_user_func_array('drupal_add_css', $args);
00238       }
00239     }
00240     if (!empty($this->storage['js'])) {
00241       foreach ($this->storage['js'] as $args) {
00242         call_user_func_array('drupal_add_js', $args);
00243       }
00244     }
00245   }

views_object::set_default_options (  )  [inherited]

Set default options.

For backward compatibility, it sends the options array; this is a feature that will likely disappear at some point.

Definition at line 53 of file base.inc.

References views_object::_set_option_defaults(), views_object::option_definition(), and views_object::options().

Referenced by views_object::construct().

00053                                  {
00054     $this->_set_option_defaults($this->options, $this->option_definition());
00055 
00056     // Retained for complex defaults plus backward compatibility.
00057     $this->options($this->options);
00058   }

views_object::set_definition ( definition  )  [inherited]

Let the handler know what its full definition is.

Definition at line 108 of file base.inc.

00108                                        {
00109     $this->definition = $definition;
00110     if (isset($definition['field'])) {
00111       $this->real_field = $definition['field'];
00112     }
00113   }

views_plugin_cache::summary_title (  ) 

Return a string to display as the clickable title for the access control.

Reimplemented in views_plugin_cache_none, and views_plugin_cache_time.

Definition at line 49 of file views_plugin_cache.inc.

00049                            {
00050     return t('Unknown');
00051   }

views_plugin::theme_functions (  )  [inherited]

Provide a full list of possible theme templates used by this style.

Definition at line 379 of file plugins.inc.

Referenced by views_plugin_display::options_form(), views_plugin_style_summary::render(), views_plugin_style_rss::render(), views_plugin_style::render(), views_plugin_row::render(), views_plugin_display::render(), views_plugin_row_search_view::render(), views_plugin_row_comment_rss::render(), and views_plugin_row_aggregator_rss::render().

00379                              {
00380     return views_theme_functions($this->definition['theme'], $this->view, $this->display);
00381   }

views_object::unpack_options ( &$  storage,
options,
definition = NULL 
) [inherited]

Unpack options over our existing defaults, drilling down into arrays so that defaults don't get totally blown away.

Definition at line 79 of file base.inc.

References views_object::$options, and views_object::option_definition().

Referenced by views_plugin_style::init(), views_plugin_row::init(), views_plugin_display::init(), and views_handler::init().

00079                                                                    {
00080     if (!is_array($options)) {
00081       return;
00082     }
00083 
00084     if (!isset($definition)) {
00085       $definition = $this->option_definition();
00086     }
00087 
00088     foreach ($options as $key => $value) {
00089       if (is_array($value)) {
00090         if (!isset($storage[$key]) || !is_array($storage[$key])) {
00091           $storage[$key] = array();
00092         }
00093 
00094         $this->unpack_options($storage[$key], $value, isset($definition[$key]['contains']) ? $definition[$key]['contains'] : array());
00095       }
00096       else if (!empty($definition[$key]['translatable']) && !empty($value)) {
00097         $storage[$key] = t($value);
00098       }
00099       else {
00100         $storage[$key] = $value;
00101       }
00102     }
00103   }

views_plugin::validate (  )  [inherited]

Validate that the plugin is correct and can be saved.

Returns:
An array of error strings to tell the user what is wrong with this plugin.

Reimplemented in views_plugin_display, views_plugin_display_page, and views_plugin_style.

Definition at line 403 of file plugins.inc.

Referenced by views_plugin_argument_validate_php::validate_form(), views_plugin_argument_validate_user::validate_form(), views_plugin_argument_validate_taxonomy_term::validate_form(), and views_plugin_argument_validate_node::validate_form().

00403 { return array(); }


Member Data Documentation

views_object::$options = array() [inherited]

Except for displays, options for the object will be held here.

Definition at line 16 of file base.inc.

Referenced by views_plugin_display::_set_option_defaults(), views_object::_set_option_defaults(), views_handler_filter_string::admin_summary(), views_handler_filter_numeric::admin_summary(), views_handler_argument::default_argument_form(), views_handler_filter_term_node_tid::extra_options_form(), views_plugin_display::get_plugin(), views_handler_filter_node_type::get_value_options(), views_plugin_style::init(), views_plugin_row::init(), views_plugin_display::init(), views_handler_field_upload_description::init(), views_handler_field_term_node_tid::init(), views_handler_field_file::init(), views_plugin_row_node_view::init(), views_handler_field_history_user_timestamp::init(), views_handler_field_node_new_comments::init(), views_handler_field_comment::init(), views_handler::init(), views_handler_relationship::init(), views_handler_filter_many_to_one::init(), views_handler_filter::init(), views_handler_field::init(), views_handler_argument_string::init(), views_handler_argument_many_to_one::init(), views_handler_argument::init(), views_handler_filter::operator_form(), views_handler_filter_string::operator_options(), views_handler_filter_numeric::operator_options(), views_handler_filter_in_operator::operator_options(), views_handler_filter_string::operator_values(), views_handler_filter_numeric::operator_values(), views_handler_filter_in_operator::operator_values(), views_plugin_cache_time::option_defaults(), views_plugin_access_role::option_defaults(), views_plugin_access_perm::option_defaults(), views_plugin_style_table::option_definition(), views_plugin_style_summary_unformatted::option_definition(), views_plugin_style_summary_jump_menu::option_definition(), views_plugin_style_summary::option_definition(), views_plugin_style_rss::option_definition(), views_plugin_style_list::option_definition(), views_plugin_style_jump_menu::option_definition(), views_plugin_style_grid::option_definition(), views_plugin_style::option_definition(), views_plugin_row_fields::option_definition(), views_plugin_row::option_definition(), views_plugin_display_page::option_definition(), views_plugin_display_feed::option_definition(), views_plugin_display_block::option_definition(), views_plugin_display_attachment::option_definition(), views_plugin_display::option_definition(), views_handler_field_user_name::option_definition(), views_handler_field_user_mail::option_definition(), views_handler_field_user_link::option_definition(), views_handler_field_user::option_definition(), views_handler_field_is_online::option_definition(), views_handler_field_upload_fid::option_definition(), views_handler_field_upload_description::option_definition(), views_handler_relationship_translation::option_definition(), views_handler_filter_node_tnid::option_definition(), views_handler_relationship_node_term_data::option_definition(), views_handler_filter_term_node_tid_depth::option_definition(), views_handler_filter_term_node_tid::option_definition(), views_handler_field_term_node_tid::option_definition(), views_handler_field_taxonomy::option_definition(), views_handler_argument_term_node_tid_depth::option_definition(), views_handler_argument_term_node_tid::option_definition(), views_handler_field_file::option_definition(), views_handler_field_accesslog_path::option_definition(), views_plugin_row_search_view::option_definition(), views_handler_filter_search::option_definition(), views_handler_field_search_score::option_definition(), views_plugin_row_node_view::option_definition(), views_plugin_row_node_rss::option_definition(), views_handler_field_node_link::option_definition(), views_handler_field_node::option_definition(), views_handler_field_history_user_timestamp::option_definition(), views_handler_field_locale_link_edit::option_definition(), views_handler_field_contact_link::option_definition(), views_plugin_row_comment_view::option_definition(), views_handler_field_node_new_comments::option_definition(), views_handler_field_ncs_last_comment_name::option_definition(), views_handler_field_comment_username::option_definition(), views_handler_field_comment_node_link::option_definition(), views_handler_field_comment_link::option_definition(), views_handler_field_comment::option_definition(), views_plugin_row_aggregator_rss::option_definition(), views_handler_field_aggregator_title_link::option_definition(), views_handler_field_aggregator_category::option_definition(), views_handler_sort_date::option_definition(), views_handler_sort::option_definition(), views_handler_relationship::option_definition(), views_handler_filter_string::option_definition(), views_handler_filter_numeric::option_definition(), views_handler_filter_many_to_one::option_definition(), views_handler_filter_in_operator::option_definition(), views_handler_filter_date::option_definition(), views_handler_filter_boolean_operator::option_definition(), views_handler_filter::option_definition(), views_handler_field_url::option_definition(), views_handler_field_prerender_list::option_definition(), views_handler_field_numeric::option_definition(), views_handler_field_date::option_definition(), views_handler_field_custom::option_definition(), views_handler_field_counter::option_definition(), views_handler_field_boolean::option_definition(), views_handler_field_file_size::option_definition(), views_handler_field::option_definition(), views_handler_argument_string::option_definition(), views_handler_argument_numeric::option_definition(), views_handler_argument_null::option_definition(), views_handler_argument_many_to_one::option_definition(), views_handler_argument::option_definition(), views_plugin_style_default::options(), views_plugin_style_jump_menu::options_form(), views_plugin_style::options_form(), views_plugin_row_fields::options_form(), views_plugin_display::options_form(), views_plugin_cache_time::options_form(), views_handler_relationship_translation::options_form(), views_handler_relationship_node_term_data::options_form(), views_handler_field_term_node_tid::options_form(), views_handler_field_search_score::options_form(), views_plugin_row_node_view::options_form(), views_handler_field::options_form(), views_handler_argument::options_form(), views_plugin_display_page::options_summary(), views_plugin_display_feed::options_summary(), views_plugin_display_block::options_summary(), views_plugin_display_attachment::options_summary(), views_plugin_display::options_summary(), views_handler_filter_in_operator::reduce_value_options(), views_plugin_style_summary_jump_menu::render(), views_plugin_style_jump_menu::render(), views_plugin_style_jump_menu::render_set(), views_plugin_display::set_override(), views_object::unpack_options(), views_plugin_argument_validate_taxonomy_term::validate_form(), views_plugin_argument_validate_node::validate_form(), views_handler_filter_term_node_tid::value_form(), and views_handler_filter_in_operator::value_form().

views_plugin_cache::$storage = array()

Contains all data that should be written/read from cache.

Definition at line 13 of file views_plugin_cache.inc.

views_plugin_cache::$table = 'cache_views_data'

What table to store data in.

Definition at line 18 of file views_plugin_cache.inc.


The documentation for this class was generated from the following file:
Generated on Mon Nov 30 15:06:56 2009 for Views by  doxygen 1.4.7