views_handler_argument_node_type Class Reference

Inheritance diagram for views_handler_argument_node_type:

views_handler_argument views_handler views_object List of all members.

Detailed Description

Argument handler to accept a node type.

Definition at line 6 of file views_handler_argument_node_type.inc.

Public Member Functions

 construct ()
 Constructor.
 summary_name ($data)
 Override the behavior of summary_name().
 title ()
 Override the behavior of title().
 node_type ($type)
 init (&$view, &$options)
 init (&$view, $options)
 init the handler with necessary data.
 set_breadcrumb (&$breadcrumb)
 Give an argument the opportunity to modify the breadcrumb, if it wants.
 uses_breadcrumb ()
 Determine if the argument can generate a breadcrumb.
 is_wildcard ($arg=NULL)
 wildcard_title ()
 needs_style_plugin ()
 Determine if the argument needs a style plugin.
 option_definition ()
 Information about options for all kinds of purposes will be held here.
 options_form (&$form, &$form_state)
 Provide a form for setting options.
 default_actions ($which=NULL)
 Provide a list of default behaviors for this argument if the argument is not present.
 default_argument_form (&$form, &$form_state)
 Provide a form for selecting the default argument when the default action is set to provide default argument.
 default_action ($info=NULL)
 Handle the default action, which means our argument wasn't present.
 validate_fail ()
 How to act if validation failes.
 default_ignore ()
 Default action: ignore.
 default_not_found ()
 Default action: not found.
 default_empty ()
 Default action: empty.
 default_default ()
 This just returns true.
 has_default_argument ()
 Determine if the argument is set to provide a default argument.
 get_default_argument ()
 Get a default argument, if available.
 default_summary ($order)
 Default action: summary.
 summary_query ()
 Build the info for the summary query.
 summary_name_field ()
 Add the name field, which is the field displayed in summary queries.
 summary_basics ($count_field=TRUE)
 Some basic summary behavior that doesn't need to be repeated as much as code that goes into summary_query().
 summary_sort ($order)
 Sorts the summary based upon the user's selection.
 summary_argument ($data)
 Provide the argument to use to link from the summary to the next level; this will be called once per row of a summary, and used as part of $view->get_url().
 query ()
 Set up the query for this argument.
 get_title ()
 Called by the view object to get the title.
 validate_arg ($arg)
 Validate that this argument works.
 validate_argument ($arg)
 Called by the menu system to validate an argument.
 validate_argument_basic ($arg)
 Provide a basic argument validation.
 set_argument ($arg)
 Set the input for this argument.
 get_value ()
 Get the value of this argument.
 ui_name ($short=FALSE)
 Return a string representing this handler's name in the UI.
 options_validate ($form, &$form_state)
 Validate the options form.
 options_submit ($form, &$form_state)
 Perform any necessary changes to the form values prior to storage.
 has_extra_options ()
 If a handler has 'extra options' it will get a little settings widget and another form called extra_options.
 extra_options (&$option)
 Provide defaults for the handler.
 extra_options_form (&$form, &$form_state)
 Provide a form for setting options.
 extra_options_validate ($form, &$form_state)
 Validate the options form.
 extra_options_submit ($form, &$form_state)
 Perform any necessary changes to the form values prior to storage.
 expose_options ()
 Set new exposed option defaults when exposed setting is flipped on.
 exposed_form (&$form, &$form_state)
 Render our chunk of the exposed filter form when selecting.
 exposed_validate (&$form, &$form_state)
 Validate the exposed filter form.
 exposed_submit (&$form, &$form_state)
 Submit the exposed filter form.
 exposed_info ()
 Get information about the exposed form for the form renderer.
 can_expose ()
 Determine if a handler can be exposed.
 access ()
 Check whether current user has access to this handler.
 pre_query ()
 Run before the view is built.
 set_relationship ()
 Called just prior to query(), this lets a handler set up any relationship it needs.
 ensure_my_table ()
 Ensure the main table for this handler is in the query.
 admin_summary ()
 Provide text for the administrative summary.
 is_exposed ()
 Determine if this item is 'exposed', meaning it provides form elements to let users modify the view.
 accept_exposed_input ($input)
 Take input from exposed filters and assign to this handler, if necessary.
 store_exposed_input ($input, $status)
 If set to remember exposed input in the session, store it there.
 get_join ()
 Get the join object that should be used for this handler.
 validate ()
 Validates the handler against the complete View.
 broken ()
 Determine if the handler is considered 'broken', meaning it's a a placeholder used when a handler can't be found.
 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

 $name_field = NULL
 $options = array()
 Except for displays, options for the object will be held here.


Member Function Documentation

views_handler::accept_exposed_input ( input  )  [inherited]

Take input from exposed filters and assign to this handler, if necessary.

Reimplemented in views_handler_filter, views_handler_filter_date, views_handler_filter_in_operator, views_handler_filter_numeric, views_handler_filter_term_node_tid, and views_handler_filter_user_name.

Definition at line 450 of file handlers.inc.

00450 { return TRUE; }

views_handler::access (  )  [inherited]

Check whether current user has access to this handler.

Returns:
boolean

Reimplemented in views_handler_field_node_revision_link_delete, views_handler_field_node_revision_link_revert, views_handler_field_user_link, views_handler_field_user_link_delete, and views_handler_field_user_link_edit.

Definition at line 357 of file handlers.inc.

Referenced by views_handler_argument::default_argument_form(), views_handler_sort_random::options_form(), views_handler_argument::options_form(), views_handler_field_user_language::render_link(), and views_handler_field_user::render_link().

00357                     {
00358     if (isset($this->definition['access callback']) && function_exists($this->definition['access callback'])) {
00359       if (isset($this->definition['access arguments']) && is_array($this->definition['access arguments'])) {
00360         return call_user_func_array($this->definition['access callback'], $this->definition['access arguments']);
00361       }
00362       return $this->definition['access callback']();
00363     }
00364 
00365     return TRUE;
00366   }

views_handler::admin_summary (  )  [inherited]

Provide text for the administrative summary.

Reimplemented in views_handler_field, views_handler_filter, views_handler_filter_boolean_operator, views_handler_filter_in_operator, views_handler_filter_numeric, views_handler_filter_string, views_handler_sort, views_handler_filter_history_user_timestamp, views_handler_filter_node_access, views_handler_filter_node_status, views_handler_filter_term_node_tid, views_handler_filter_node_tnid, views_handler_filter_node_tnid_child, and views_handler_filter_user_name.

Definition at line 428 of file handlers.inc.

00428 { }

views_handler::broken (  )  [inherited]

Determine if the handler is considered 'broken', meaning it's a a placeholder used when a handler can't be found.

Reimplemented in views_handler_argument_broken, views_handler_field_broken, views_handler_filter_broken, views_handler_relationship_broken, and views_handler_sort_broken.

Definition at line 497 of file handlers.inc.

00497 { }

views_handler::can_expose (  )  [inherited]

Determine if a handler can be exposed.

Reimplemented in views_handler_filter, views_handler_filter_node_access, views_handler_filter_node_tnid, and views_handler_filter_node_tnid_child.

Definition at line 350 of file handlers.inc.

00350 { return FALSE; }

views_handler_argument_node_type::construct (  ) 

Constructor.

Reimplemented from views_handler_argument.

Definition at line 7 of file views_handler_argument_node_type.inc.

00007                        {
00008     parent::construct('type');
00009   }

views_handler_argument::default_action ( info = NULL  )  [inherited]

Handle the default action, which means our argument wasn't present.

Override this method only with extreme care.

Returns:
A boolean value; if TRUE, continue building this view. If FALSE, building the view will be aborted here.

Definition at line 365 of file views_handler_argument.inc.

References views_handler_argument::default_actions(), and views_object::options().

Referenced by views_handler_argument::default_argument_form(), views_handler_argument::has_default_argument(), views_handler_argument::needs_style_plugin(), views_handler_argument::option_definition(), views_handler_argument::options_form(), views_handler_argument::uses_breadcrumb(), and views_handler_argument::validate_fail().

00365                                         {
00366     if (!isset($info)) {
00367       $info = $this->default_actions($this->options['default_action']);
00368     }
00369 
00370     if (!$info) {
00371       return FALSE;
00372     }
00373 
00374     if (!empty($info['method args'])) {
00375       return call_user_func_array(array(&$this, $info['method']), $info['method args']);
00376     }
00377     else {
00378       return $this->{$info['method']}();
00379     }
00380   }

views_handler_argument::default_actions ( which = NULL  )  [inherited]

Provide a list of default behaviors for this argument if the argument is not present.

Override this method to provide additional (or fewer) default behaviors.

Reimplemented in views_handler_argument_null, views_handler_argument_comment_user_uid, and views_handler_argument_term_node_tid_depth.

Definition at line 255 of file views_handler_argument.inc.

References views_handler_argument::default_argument_form(), views_handler_argument::default_default(), views_handler_argument::default_empty(), views_handler_argument::default_ignore(), views_handler_argument::default_not_found(), views_handler_argument::default_summary(), and views_handler_argument::title().

Referenced by views_handler_argument::default_action(), views_handler_argument::has_default_argument(), views_handler_argument::needs_style_plugin(), views_handler_argument::options_form(), views_handler_argument::uses_breadcrumb(), and views_handler_argument::validate_fail().

00255                                           {
00256     $defaults = array(
00257       'ignore' => array(
00258         'title' => t('Display all values'),
00259         'method' => 'default_ignore',
00260         'breadcrumb' => TRUE, // generate a breadcrumb to here
00261       ),
00262       'not found' => array(
00263         'title' => t('Hide view / Page not found (404)'),
00264         'method' => 'default_not_found',
00265         'hard fail' => TRUE, // This is a hard fail condition
00266       ),
00267       'empty' => array(
00268         'title' => t('Display empty text'),
00269         'method' => 'default_empty',
00270         'breadcrumb' => TRUE, // generate a breadcrumb to here
00271       ),
00272       'summary asc' => array(
00273         'title' => t('Summary, sorted ascending'),
00274         'method' => 'default_summary',
00275         'method args' => array('asc'),
00276         'style plugin' => TRUE,
00277         'breadcrumb' => TRUE, // generate a breadcrumb to here
00278       ),
00279       'summary desc' => array(
00280         'title' => t('Summary, sorted descending'),
00281         'method' => 'default_summary',
00282         'method args' => array('desc'),
00283         'style plugin' => TRUE,
00284         'breadcrumb' => TRUE, // generate a breadcrumb to here
00285       ),
00286       'default' => array(
00287         'title' => t('Provide default argument'),
00288         'method' => 'default_default',
00289         'form method' => 'default_argument_form',
00290         'has default argument' => TRUE,
00291         'default only' => TRUE, // this can only be used for missing argument, not validation failure
00292       ),
00293     );
00294 
00295     if ($which) {
00296       if (!empty($defaults[$which])) {
00297         return $defaults[$which];
00298       }
00299     }
00300     else {
00301       return $defaults;
00302     }
00303   }

views_handler_argument::default_argument_form ( &$  form,
&$  form_state 
) [inherited]

Provide a form for selecting the default argument when the default action is set to provide default argument.

Reimplemented in views_handler_argument_date.

Definition at line 309 of file views_handler_argument.inc.

References views_object::$options, views_handler::access(), views_handler_argument::default_action(), views_object::options(), views_handler_argument::title(), and views_process_dependency().

Referenced by views_handler_argument::default_actions().

00309                                                        {
00310     $plugins = views_fetch_plugin_data('argument default');
00311     $options = array();
00312 
00313     // This construct uses 'hidden' and not markup because process doesn't
00314     // run. It also has an extra div because the dependency wants to hide
00315     // the parent in situations like this, so we need a second div to
00316     // make this work.
00317     $form['default_options_div_prefix'] = array(
00318       '#type' => 'hidden',
00319       '#id' => 'views-default-options',
00320       '#prefix' => '<div><fieldset id="views-default-options"><legend>' . t('Provide default argument options') . '</legend>',
00321       '#process' => array('views_process_dependency'),
00322       '#dependency' => array('radio:options[default_action]' => array('default')),
00323     );
00324 
00325     $form['default_argument_type'] = array(
00326       '#prefix' => '<div id="edit-options-default-argument-type-wrapper">',
00327       '#suffix' => '</div>',
00328       '#type' => 'radios',
00329       '#id' => 'edit-options-default-argument-type',
00330       '#title' => t('Default argument type'),
00331       '#default_value' => $this->options['default_argument_type'],
00332       '#process' => array('expand_radios', 'views_process_dependency'),
00333       '#dependency' => array('radio:options[default_action]' => array('default')),
00334     );
00335 
00336     foreach ($plugins as $id => $info) {
00337       $plugin = views_get_plugin('argument default', $id);
00338       if ($plugin) {
00339         $plugin->init($this->view, $this, $id);
00340 
00341         if ($plugin->access() || $this->options['default_argument_type'] == $id) {
00342           $options[$id] = $info['title'];
00343           $plugin->argument_form($form, $form_state);
00344         }
00345       }
00346     }
00347 
00348     $form['default_options_div_suffix'] = array(
00349       '#value' => '</fieldset></div>',
00350     );
00351 
00352     asort($options);
00353     $form['default_argument_type']['#options'] = $options;
00354   }

views_handler_argument::default_default (  )  [inherited]

This just returns true.

The view argument builder will know where to find the argument from.

Definition at line 429 of file views_handler_argument.inc.

Referenced by views_handler_argument::default_actions().

00429                              {
00430     return TRUE;
00431   }

views_handler_argument::default_empty (  )  [inherited]

Default action: empty.

If an argument was expected and was not given, in this case, display the view's empty text

Definition at line 417 of file views_handler_argument.inc.

Referenced by views_handler_argument::default_actions().

00417                            {
00418     // We return with no query; this will force the empty text.
00419     $this->view->built = TRUE;
00420     $this->view->executed = TRUE;
00421     $this->view->result = array();
00422     return FALSE;
00423   }

views_handler_argument::default_ignore (  )  [inherited]

Default action: ignore.

If an argument was expected and was not given, in this case, simply ignore the argument entirely.

Definition at line 395 of file views_handler_argument.inc.

Referenced by views_handler_argument::default_actions().

00395                             {
00396     return TRUE;
00397   }

views_handler_argument::default_not_found (  )  [inherited]

Default action: not found.

If an argument was expected and was not given, in this case, report the view as 'not found' or hide it.

Definition at line 405 of file views_handler_argument.inc.

Referenced by views_handler_argument::default_actions().

00405                                {
00406     // Set a failure condition and let the display manager handle it.
00407     $this->view->build_info['fail'] = TRUE;
00408     return FALSE;
00409   }

views_handler_argument::default_summary ( order  )  [inherited]

Default action: summary.

If an argument was expected and was not given, in this case, display a summary query.

Definition at line 458 of file views_handler_argument.inc.

References views_object::options(), views_handler_argument::query(), views_handler_argument::summary_query(), and views_handler_argument::summary_sort().

Referenced by views_handler_argument::default_actions(), and views_handler_argument::option_definition().

00458                                    {
00459     $this->view->build_info['summary'] = TRUE;
00460     $this->view->build_info['summary_level'] = $this->options['id'];
00461 
00462     // Change the display style to the summary style for this
00463     // argument.
00464     $this->view->plugin_name = $this->options['style_plugin'];
00465     $this->view->style_options = $this->options['style_options'];
00466 
00467     // Clear out the normal primary field and whatever else may have
00468     // been added and let the summary do the work.
00469     $this->query->clear_fields();
00470     $this->summary_query();
00471 
00472     $this->summary_sort($order);
00473 
00474     // Summaries have their own sorting and fields, so tell the View not
00475     // to build these.
00476     $this->view->build_sort = $this->view->build_fields = FALSE;
00477     return TRUE;
00478   }

views_handler::ensure_my_table (  )  [inherited]

Ensure the main table for this handler is in the query.

This is used a lot.

Reimplemented in views_handler_argument_broken, views_handler_argument_many_to_one, views_handler_field_broken, views_handler_filter_broken, views_handler_filter_many_to_one, views_handler_relationship_broken, and views_handler_sort_broken.

Definition at line 417 of file handlers.inc.

References views_handler::query().

Referenced by views_handler_filter_in_operator::op_empty(), views_handler_filter_in_operator::op_simple(), views_handler_filter_user_current::query(), views_handler_field_user_link::query(), views_handler_field_is_online::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_field_node_translation_link::query(), views_handler_relationship_node_term_data::query(), views_handler_argument_term_node_tid_depth::query(), views_handler_filter_search::query(), views_handler_filter_node_status::query(), views_handler_filter_node_access::query(), views_handler_filter_history_user_timestamp::query(), views_handler_field_node_link::query(), views_handler_field_locale_link_edit::query(), views_handler_field_filter_format_name::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_ncs_last_updated::query(), views_handler_filter_comment_user_uid::query(), views_handler_field_node_new_comments::query(), views_handler_field_ncs_last_updated::query(), views_handler_field_ncs_last_comment_name::query(), views_handler_field_comment_node_link::query(), views_handler_field_comment_link::query(), views_handler_argument_comment_user_uid::query(), views_handler_sort_menu_hierarchy::query(), views_handler_sort_formula::query(), views_handler_sort_date::query(), views_handler_sort::query(), views_handler_relationship::query(), views_handler_filter_string::query(), views_handler_filter_numeric::query(), views_handler_filter_boolean_operator_string::query(), views_handler_filter_boolean_operator::query(), views_handler_filter::query(), views_handler_field::query(), views_handler_argument_string::query(), views_handler_argument_numeric::query(), views_handler_argument_formula::query(), views_handler_argument_string::summary_query(), views_handler_argument_formula::summary_query(), and views_handler_argument::summary_query().

00417                              {
00418     if (!isset($this->table_alias)) {
00419       if (!method_exists($this->query, 'ensure_table')) { vpr_trace(); exit; }
00420       $this->table_alias = $this->query->ensure_table($this->table, $this->relationship);
00421     }
00422     return $this->table_alias;
00423   }

views_handler::expose_options (  )  [inherited]

Set new exposed option defaults when exposed setting is flipped on.

Reimplemented in views_handler_filter, views_handler_filter_boolean_operator, and views_handler_filter_in_operator.

Definition at line 320 of file handlers.inc.

00320 { }

views_handler::exposed_form ( &$  form,
&$  form_state 
) [inherited]

Render our chunk of the exposed filter form when selecting.

Reimplemented in views_handler_filter, and views_handler_filter_search.

Definition at line 324 of file handlers.inc.

00324 { }

views_handler::exposed_info (  )  [inherited]

Get information about the exposed form for the form renderer.

Returns:
An array with the following keys:
  • operator: The $form key of the operator. Set to NULL if no operator.
  • value: The $form key of the value. Set to NULL if no value.
  • label: The label to use for this piece.

Reimplemented in views_handler_filter.

Definition at line 345 of file handlers.inc.

00345 { }

views_handler::exposed_submit ( &$  form,
&$  form_state 
) [inherited]

Submit the exposed filter form.

Definition at line 334 of file handlers.inc.

00334 { }

views_handler::exposed_validate ( &$  form,
&$  form_state 
) [inherited]

Validate the exposed filter form.

Reimplemented in views_handler_filter_date, views_handler_filter_term_node_tid, and views_handler_filter_user_name.

Definition at line 329 of file handlers.inc.

00329 { }

views_handler::extra_options ( &$  option  )  [inherited]

Provide defaults for the handler.

Definition at line 298 of file handlers.inc.

00298 { }

views_handler::extra_options_form ( &$  form,
&$  form_state 
) [inherited]

Provide a form for setting options.

Reimplemented in views_handler_filter_term_node_tid, and views_handler_filter_term_node_tid_depth.

Definition at line 303 of file handlers.inc.

00303 { }

views_handler::extra_options_submit ( form,
&$  form_state 
) [inherited]

Perform any necessary changes to the form values prior to storage.

There is no need for this function to actually store the data.

Definition at line 314 of file handlers.inc.

00314 { }

views_handler::extra_options_validate ( form,
&$  form_state 
) [inherited]

Validate the options form.

Definition at line 308 of file handlers.inc.

00308 { }

views_handler_argument::get_default_argument (  )  [inherited]

Get a default argument, if available.

Definition at line 444 of file views_handler_argument.inc.

References views_object::options().

00444                                   {
00445     $plugin = views_get_plugin('argument default', $this->options['default_argument_type']);
00446     if ($plugin) {
00447       $plugin->init($this->view, $this);
00448       return $plugin->get_argument();
00449     }
00450   }

views_handler::get_join (  )  [inherited]

Get the join object that should be used for this handler.

This method isn't used a great deal, but it's very handy for easily getting the join if it is necessary to make some changes to it, such as adding an 'extra'.

Definition at line 464 of file handlers.inc.

References views_handler::query(), and views_get_table_join().

Referenced by views_handler_argument_many_to_one::summary_query().

00464                       {
00465     // get the join from this table that links back to the base table.
00466     // Determine the primary table to seek
00467     if (empty($this->query->relationships[$this->relationship])) {
00468       $base_table = $this->query->base_table;
00469     }
00470     else {
00471       $base_table = $this->query->relationships[$this->relationship]['base'];
00472     }
00473 
00474     $join = views_get_table_join($this->table, $base_table);
00475     if ($join) {
00476       return drupal_clone($join);
00477     }
00478   }

views_handler_argument::get_title (  )  [inherited]

Called by the view object to get the title.

This may be set by a validator so we don't necessarily call through to title().

Definition at line 618 of file views_handler_argument.inc.

00618                        {
00619     if (isset($this->validated_title)) {
00620       return $this->validated_title;
00621     }
00622     else {
00623       return $this->title();
00624     }
00625   }

views_handler_argument::get_value (  )  [inherited]

Get the value of this argument.

Definition at line 712 of file views_handler_argument.inc.

00712                        {
00713     // If we already processed this argument, we're done.
00714     if (isset($this->argument)) {
00715       return $this->argument;
00716     }
00717     
00718     // Otherwise, we have to pretend to process ourself to find the value.
00719     $value = NULL;
00720     // Find the position of this argument within the view.
00721     $position = 0;
00722     foreach ($this->view->argument as $id => $argument) {
00723       if ($id == $this->options['id']) {
00724         break;
00725       }
00726       $position++;
00727     }
00728 
00729     $arg = isset($this->view->args[$position]) ? $this->view->args[$position] : NULL;
00730     $this->position = $position;
00731 
00732     // Clone ourselves so that we don't break things when we're really
00733     // processing the arguments.
00734     $argument = drupal_clone($this);
00735     if (!isset($arg) && $argument->has_default_argument()) {
00736       $arg = $argument->get_default_argument();
00737     }
00738     // Set the argument, which will also validate that the argument can be set.
00739     if ($argument->set_argument($arg)) {
00740       $value = $argument->argument;
00741     }
00742     unset($argument);
00743     return $value;
00744   }

views_handler_argument::has_default_argument (  )  [inherited]

Determine if the argument is set to provide a default argument.

Definition at line 436 of file views_handler_argument.inc.

References views_handler_argument::default_action(), views_handler_argument::default_actions(), and views_object::options().

00436                                   {
00437     $info = $this->default_actions($this->options['default_action']);
00438     return !empty($info['has default argument']);
00439   }

views_handler::has_extra_options (  )  [inherited]

If a handler has 'extra options' it will get a little settings widget and another form called extra_options.

Reimplemented in views_handler_filter_term_node_tid.

Definition at line 293 of file handlers.inc.

00293 { return FALSE; }

views_handler::init ( &$  view,
options 
) [inherited]

init the handler with necessary data.

Parameters:
$view The $view object this handler is attached to.
$options The item from the database; the actual contents of this will vary based upon the type of handler.

Reimplemented in views_handler_field, views_handler_filter, views_handler_relationship, views_handler_field_node_new_comments, views_handler_field_history_user_timestamp, and views_handler_field_term_node_tid.

Definition at line 238 of file handlers.inc.

References views_object::$options, views_object::options(), views_handler::query(), and views_object::unpack_options().

00238                                   {
00239     $this->view = &$view;
00240     $this->unpack_options($this->options, $options);
00241 
00242     // This exist on most handlers, but not all. So they are still optional.
00243     if (isset($options['table'])) {
00244       $this->table = $options['table'];
00245     }
00246 
00247     if (isset($this->definition['real field'])) {
00248       $this->real_field = $this->definition['real field'];
00249     }
00250 
00251     if (isset($this->definition['field'])) {
00252       $this->real_field = $this->definition['field'];
00253     }
00254 
00255     if (isset($options['field'])) {
00256       $this->field = $options['field'];
00257       if (!isset($this->real_field)) {
00258         $this->real_field = $options['field'];
00259       }
00260     }
00261 
00262     $this->query = &$view->query;
00263   }

views_handler::is_exposed (  )  [inherited]

Determine if this item is 'exposed', meaning it provides form elements to let users modify the view.

Returns:
TRUE/FALSE

Definition at line 443 of file handlers.inc.

References views_object::options().

00443                         {
00444     return !empty($this->options['exposed']);
00445   }

views_handler_argument::needs_style_plugin (  )  [inherited]

Determine if the argument needs a style plugin.

Returns:
TRUE/FALSE

Reimplemented from views_handler.

Definition at line 89 of file views_handler_argument.inc.

References views_handler_argument::default_action(), views_handler_argument::default_actions(), views_object::options(), and views_handler_argument::validate_fail().

00089                                 {
00090     $info = $this->default_actions($this->options['default_action']);
00091     $validate_info = $this->default_actions($this->options['validate_fail']);
00092     return !empty($info['style plugin']) || !empty($validate_info['style plugin']);
00093   }

views_handler_argument::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 from views_object.

Reimplemented in views_handler_argument_many_to_one, views_handler_argument_null, views_handler_argument_numeric, views_handler_argument_string, views_handler_argument_term_node_tid, and views_handler_argument_term_node_tid_depth.

Definition at line 95 of file views_handler_argument.inc.

References views_object::$options, views_handler_argument::default_action(), views_handler_argument::default_summary(), views_handler_argument::title(), and views_handler_argument::validate_fail().

00095                                {
00096     $options = parent::option_definition();
00097 
00098     $options['default_action'] = array('default' => 'ignore');
00099     $options['style_plugin'] = array('default' => 'default_summary');
00100     $options['style_options'] = array('default' => array());
00101     $options['wildcard'] = array('default' => 'all');
00102     $options['wildcard_substitution'] = array('default' => t('All'), 'translatable' => TRUE);
00103     $options['title'] = array('default' => '', 'translatable' => TRUE);
00104     $options['breadcrumb'] = array('default' => '', 'translatable' => TRUE);
00105     $options['default_argument_type'] = array('default' => 'fixed');
00106     $options['default_argument'] = array('default' => '');
00107     $options['validate_type'] = array('default' => 'none');
00108     $options['validate_fail'] = array('default' => 'not found');
00109 
00110     return $options;
00111   }

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(), views_plugin_cache::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_handler_argument::options_form ( &$  form,
&$  form_state 
) [inherited]

Provide a form for setting options.

Reimplemented from views_handler.

Reimplemented in views_handler_argument_broken, views_handler_argument_many_to_one, views_handler_argument_null, views_handler_argument_numeric, views_handler_argument_string, views_handler_argument_term_node_tid, views_handler_argument_term_node_tid_depth, and views_handler_argument_term_node_tid_depth_modifier.

Definition at line 113 of file views_handler_argument.inc.

References views_object::$options, views_handler::access(), views_handler_argument::default_action(), views_handler_argument::default_actions(), views_object::options(), views_handler_argument::title(), views_handler::validate(), and views_handler_argument::validate_fail().

00113                                               {
00114     $defaults = $this->default_actions();
00115 
00116     $form['title'] = array(
00117       '#prefix' => '<div class="clear-block">',
00118       '#suffix' => '</div>',
00119       '#type' => 'textfield',
00120       '#title' => t('Title'),
00121       '#default_value' => $this->options['title'],
00122       '#description' => t('The title to use when this argument is present. It will override the title of the view and titles from previous arguments. You can use percent substitution here to replace with argument titles. Use "%1" for the first argument, "%2" for the second, etc.'),
00123     );
00124 
00125     $form['breadcrumb'] = array(
00126       '#prefix' => '<div class="clear-block">',
00127       '#suffix' => '</div>',
00128       '#type' => 'textfield',
00129       '#title' => t('Breadcrumb'),
00130       '#default_value' => $this->options['breadcrumb'],
00131       '#description' => t('The Breadcrumb title to use when this argument is present. If no breadcrumb is set here, default Title values will be used, see "Title" for percent substitutions.'),
00132     );
00133 
00134     $form['clear_start'] = array(
00135       '#value' => '<div class="clear-block">',
00136     );
00137 
00138     $form['defaults_start'] = array(
00139       '#value' => '<div class="views-left-50">',
00140     );
00141 
00142     $form['default_action'] = array(
00143       '#type' => 'radios',
00144       '#title' => t('Action to take if argument is not present'),
00145       '#default_value' => $this->options['default_action'],
00146     );
00147 
00148     $form['defaults_stop'] = array(
00149       '#value' => '</div>',
00150     );
00151 
00152     $form['wildcard'] = array(
00153       '#prefix' => '<div class="views-right-50">',
00154       // prefix and no suffix means these two items will be grouped together.
00155       '#type' => 'textfield',
00156       '#title' => t('Wildcard'),
00157       '#size' => 20,
00158       '#default_value' => $this->options['wildcard'],
00159       '#description' => t('If this value is received as an argument, the argument will be ignored; i.e, "all values"'),
00160     );
00161 
00162     $form['wildcard_substitution'] = array(
00163       '#suffix' => '</div>',
00164       '#type' => 'textfield',
00165       '#title' => t('Wildcard title'),
00166       '#size' => 20,
00167       '#default_value' => $this->options['wildcard_substitution'],
00168       '#description' => t('The title to use for the wildcard in substitutions elsewhere.'),
00169     );
00170 
00171     $form['clear_stop'] = array(
00172       '#value' => '</div>',
00173     );
00174 
00175     $options = array();
00176     $validate_options = array();
00177     foreach ($defaults as $id => $info) {
00178       $options[$id] = $info['title'];
00179       if (empty($info['default only'])) {
00180         $validate_options[$id] = $info['title'];
00181       }
00182       if (!empty($info['form method'])) {
00183         $this->{$info['form method']}($form, $form_state);
00184       }
00185     }
00186 
00187     $form['default_action']['#options'] = $options;
00188 
00189     $form['validate_options_div_prefix'] = array(
00190       '#id' => 'views-validator-options',
00191       '#value' => '<fieldset id="views-validator-options"><legend>' . t('Validator options') . '</legend>',
00192     );
00193 
00194     $form['validate_type'] = array(
00195       '#type' => 'select',
00196       '#title' => t('Validator'),
00197       '#default_value' => $this->options['validate_type'],
00198     );
00199 
00200     $validate_types = array('none' => t('<Basic validation>'));
00201     $plugins = views_fetch_plugin_data('argument validator');
00202     foreach ($plugins as $id => $info) {
00203       if (!empty($info['no ui'])) {
00204         continue;
00205       }
00206 
00207       $valid = TRUE;
00208       if (!empty($info['type'])) {
00209         $valid = FALSE;
00210         if (empty($this->definition['validate type'])) {
00211           continue;
00212         }
00213         foreach ((array) $info['type'] as $type) {
00214           if ($type == $this->definition['validate type']) {
00215             $valid = TRUE;
00216             break;
00217           }
00218         }
00219       }
00220 
00221       // If we decide this validator is ok, add it to the list.
00222       if ($valid) {
00223         $plugin = views_get_plugin('argument validator', $id);
00224         if ($plugin) {
00225           $plugin->init($this->view, $this, $id);
00226           if ($plugin->access() || $this->options['validate_type'] == $id) {
00227             $plugin->validate_form($form, $form_state, $id);
00228             $validate_types[$id] = $info['title'];
00229           }
00230         }
00231       }
00232     }
00233 
00234     asort($validate_types);
00235     $form['validate_type']['#options'] = $validate_types;
00236 
00237     $form['validate_fail'] = array(
00238       '#type' => 'select',
00239       '#title' => t('Action to take if argument does not validate'),
00240       '#default_value' => $this->options['validate_fail'],
00241       '#options' => $validate_options,
00242     );
00243 
00244     $form['validate_options_div_suffix'] = array(
00245       '#value' => '</fieldset>',
00246     );
00247   }

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

Perform any necessary changes to the form values prior to storage.

There is no need for this function to actually store the data.

Definition at line 287 of file handlers.inc.

00287 { }

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

Validate the options form.

Definition at line 281 of file handlers.inc.

00281 { }

views_handler::pre_query (  )  [inherited]

Run before the view is built.

This gives all the handlers some time to set up before any handler has been fully run.

Reimplemented in views_handler_argument_term_node_tid_depth_modifier.

Definition at line 374 of file handlers.inc.

00374 { }

views_handler_argument::query (  )  [inherited]

Set up the query for this argument.

The argument sent may be found at $this->argument.

Reimplemented from views_handler.

Reimplemented in views_handler_argument_broken, views_handler_argument_formula, views_handler_argument_many_to_one, views_handler_argument_null, views_handler_argument_numeric, views_handler_argument_string, views_handler_argument_comment_user_uid, views_handler_argument_term_node_tid_depth, and views_handler_argument_term_node_tid_depth_modifier.

Definition at line 599 of file views_handler_argument.inc.

Referenced by views_handler_argument::default_summary(), views_handler_argument::summary_basics(), views_handler_argument::summary_name_field(), views_handler_argument::summary_query(), and views_handler_argument::summary_sort().

00599                    {
00600     $this->ensure_my_table();
00601     $placeholder = empty($this->definition['numeric']) ? "'%s'" : '%d';
00602     $this->query->add_where(0, "$this->table_alias.$this->real_field = $placeholder", $this->argument);
00603   }

views_handler_argument::set_argument ( arg  )  [inherited]

Set the input for this argument.

Returns:
TRUE if it successfully validates; FALSE if it does not.

Definition at line 704 of file views_handler_argument.inc.

00704                               {
00705     $this->argument = $arg;
00706     return $this->validate_arg($arg);
00707   }

views_handler_argument::set_breadcrumb ( &$  breadcrumb  )  [inherited]

Give an argument the opportunity to modify the breadcrumb, if it wants.

This only gets called on displays where a breadcrumb is actually used.

The breadcrumb will be in the form of an array, with the keys being the path and the value being the already sanitized title of the path.

Reimplemented in views_handler_argument_term_node_tid, and views_handler_argument_term_node_tid_depth.

Definition at line 60 of file views_handler_argument.inc.

00060 { }

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_handler::set_relationship (  )  [inherited]

Called just prior to query(), this lets a handler set up any relationship it needs.

Definition at line 380 of file handlers.inc.

References views_object::options().

00380                               {
00381     // Ensure this gets set to something.
00382     $this->relationship = NULL;
00383 
00384     // Don't process non-existant relationships.
00385     if (empty($this->options['relationship']) || $this->options['relationship'] == 'none') {
00386       return;
00387     }
00388 
00389     $relationship = $this->options['relationship'];
00390 
00391     // Ignore missing/broken relationships.
00392     if (empty($this->view->relationship[$relationship])) {
00393       return;
00394     }
00395 
00396     // Check to see if the relationship has already processed. If not, then we
00397     // cannot process it.
00398     if (empty($this->view->relationship[$relationship]->alias)) {
00399       return;
00400     }
00401 
00402     // Finally!
00403     $this->relationship = $this->view->relationship[$relationship]->alias;
00404   }

views_handler::store_exposed_input ( input,
status 
) [inherited]

If set to remember exposed input in the session, store it there.

Reimplemented in views_handler_filter.

Definition at line 455 of file handlers.inc.

00455 { return TRUE; }

views_handler_argument::summary_argument ( data  )  [inherited]

Provide the argument to use to link from the summary to the next level; this will be called once per row of a summary, and used as part of $view->get_url().

Parameters:
$data The query results for the row.

Reimplemented in views_handler_argument_many_to_one, views_handler_argument_string, views_handler_argument_node_created_month, and views_handler_argument_node_created_day.

Definition at line 575 of file views_handler_argument.inc.

00575                                    {
00576     return $data->{$this->base_alias};
00577   }

views_handler_argument::summary_basics ( count_field = TRUE  )  [inherited]

Some basic summary behavior that doesn't need to be repeated as much as code that goes into summary_query().

Definition at line 540 of file views_handler_argument.inc.

References $field, and views_handler_argument::query().

Referenced by views_handler_argument_string::summary_query(), views_handler_argument_many_to_one::summary_query(), views_handler_argument_formula::summary_query(), and views_handler_argument::summary_query().

00540                                                {
00541     // Add the number of nodes counter
00542     $field = $this->query->base_table . '.' . $this->query->base_field;
00543     $distinct = ($this->view->display_handler->get_option('distinct') && empty($this->query->no_distinct));
00544 
00545     $count_alias = $this->query->add_field(NULL, $field, 'num_records',
00546                                            array('count' => TRUE, 'distinct' => $distinct));
00547     $this->query->add_groupby($this->name_alias);
00548 
00549     if ($count_field) {
00550       $this->query->set_count_field($this->table_alias, $this->real_field);
00551     }
00552 
00553     $this->count_alias = $count_alias;
00554   }

views_handler_argument_node_type::summary_name ( data  ) 

Override the behavior of summary_name().

Get the user friendly version of the node type.

Reimplemented from views_handler_argument.

Definition at line 15 of file views_handler_argument_node_type.inc.

References node_type().

00015                                {
00016     return $this->node_type($data->{$this->name_alias});
00017   }

views_handler_argument::summary_name_field (  )  [inherited]

Add the name field, which is the field displayed in summary queries.

This is often used when the argument is numeric.

Definition at line 505 of file views_handler_argument.inc.

References views_handler_argument::query(), and views_get_table_join().

Referenced by views_handler_argument_many_to_one::summary_query(), and views_handler_argument::summary_query().

00505                                 {
00506     // Add the 'name' field. For example, if this is a uid argument, the
00507     // name field would be 'name' (i.e, the username).
00508 
00509     if (isset($this->name_table)) {
00510       // if the alias is different then we're probably added, not ensured,
00511       // so look up the join and add it instead.
00512       if ($this->table_alias != $this->table) {
00513         $j = views_get_table_join($this->name_table, $this->table);
00514         if ($j) {
00515           $join = drupal_clone($j);
00516           $join->left_table = $this->table_alias;
00517           $this->name_table_alias = $this->query->add_table($this->name_table, $this->relationship, $join);
00518         }
00519       }
00520       else {
00521         $this->name_table_alias = $this->query->ensure_table($this->name_table, $this->relationship);
00522       }
00523     }
00524     else {
00525       $this->name_table_alias = $this->table_alias;
00526     }
00527 
00528     if (isset($this->name_field)) {
00529       $this->name_alias = $this->query->add_field($this->name_table_alias, $this->name_field);
00530     }
00531     else {
00532       $this->name_alias = $this->base_alias;
00533     }
00534   }

views_handler_argument::summary_query (  )  [inherited]

Build the info for the summary query.

This must:

Returns:
The alias used to get the number of records (count) for this entry.

Reimplemented in views_handler_argument_formula, views_handler_argument_many_to_one, and views_handler_argument_string.

Definition at line 492 of file views_handler_argument.inc.

References views_handler::ensure_my_table(), views_handler_argument::query(), views_handler_argument::summary_basics(), and views_handler_argument::summary_name_field().

Referenced by views_handler_argument::default_summary().

00492                            {
00493     $this->ensure_my_table();
00494     // Add the field.
00495     $this->base_alias = $this->query->add_field($this->table_alias, $this->real_field);
00496 
00497     $this->summary_name_field();
00498     return $this->summary_basics();
00499   }

views_handler_argument::summary_sort ( order  )  [inherited]

Sorts the summary based upon the user's selection.

The base variant of this is usually adequte.

Parameters:
$order The order selected in the UI.

Definition at line 563 of file views_handler_argument.inc.

References views_handler_argument::query().

Referenced by views_handler_argument::default_summary().

00563                                 {
00564     $this->query->add_orderby(NULL, NULL, $order, $this->name_alias);
00565   }

views_handler_argument_node_type::title (  ) 

Override the behavior of title().

Get the user friendly version of the node type.

Reimplemented from views_handler_argument.

Definition at line 23 of file views_handler_argument_node_type.inc.

References node_type().

00023                    {
00024     return $this->node_type($this->argument);
00025   }

views_handler::ui_name ( short = FALSE  )  [inherited]

Return a string representing this handler's name in the UI.

Reimplemented in views_handler_argument_broken, views_handler_field_broken, views_handler_filter_broken, views_handler_relationship_broken, and views_handler_sort_broken.

Definition at line 268 of file handlers.inc.

References $title.

Referenced by views_handler_filter::expose_options(), views_handler_relationship::label(), and views_handler_field::options_form().

00268                                    {
00269     $title = ($short && isset($this->definition['title short'])) ? $this->definition['title short'] : $this->definition['title'];
00270     return t('!group: !title', array('!group' => $this->definition['group'], '!title' => $title));
00271   }

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_handler_argument::uses_breadcrumb (  )  [inherited]

Determine if the argument can generate a breadcrumb.

Returns:
TRUE/FALSE

Definition at line 67 of file views_handler_argument.inc.

References views_handler_argument::default_action(), views_handler_argument::default_actions(), and views_object::options().

00067                              {
00068     $info = $this->default_actions($this->options['default_action']);
00069     return !empty($info['breadcrumb']);
00070   }

views_handler::validate (  )  [inherited]

Validates the handler against the complete View.

This is called when the complete View is being validated. For validating the handler options form use options_validate().

See also:
views_handler::options_validate()
Returns:
Empty array if the handler is valid; an array of error strings if it is not.

Definition at line 491 of file handlers.inc.

Referenced by views_handler_argument::options_form().

00491 { return array(); }

views_handler_argument::validate_arg ( arg  )  [inherited]

Validate that this argument works.

By default, all arguments are valid.

Definition at line 630 of file views_handler_argument.inc.

00630                               {
00631     // By using % in URLs, arguments could be validated twice; this eases
00632     // that pain.
00633     if (isset($this->argument_validated)) {
00634       return $this->argument_validated;
00635     }
00636 
00637     if ($this->is_wildcard($arg)) {
00638       return $this->argument_validated = TRUE;
00639     }
00640 
00641     if ($this->options['validate_type'] == 'none') {
00642       return $this->argument_validated = $this->validate_argument_basic($arg);
00643     }
00644 
00645     $plugin = views_get_plugin('argument validator', $this->options['validate_type']);
00646     if ($plugin) {
00647       $plugin->init($this->view, $this, $this->options['validate_type']);
00648       return $this->argument_validated = $plugin->validate_argument($arg);
00649     }
00650 
00651     // If the plugin isn't found, fall back to the basic validation path:
00652     return $this->argument_validated = $this->validate_argument_basic($arg);
00653   }

views_handler_argument::validate_argument ( arg  )  [inherited]

Called by the menu system to validate an argument.

This checks to see if this is a 'soft fail', which means that if the argument fails to validate, but there is an action to take anyway, then validation cannot actually fail.

Definition at line 662 of file views_handler_argument.inc.

00662                                    {
00663     $validate_info = $this->default_actions($this->options['validate_fail']);
00664     if (empty($validate_info['hard fail'])) {
00665       return TRUE;
00666     }
00667 
00668     $rc = $this->validate_arg($arg);
00669 
00670     // If the validator has changed the validate fail condition to a
00671     // soft fail, deal with that:
00672     $validate_info = $this->default_actions($this->options['validate_fail']);
00673     if (empty($validate_info['hard fail'])) {
00674       return TRUE;
00675     }
00676 
00677     return $rc;
00678   }

views_handler_argument::validate_argument_basic ( arg  )  [inherited]

Provide a basic argument validation.

This can be overridden for more complex types; the basic validator only checks to see if the argument is not NULL or is numeric if the definition says it's numeric.

Reimplemented in views_handler_argument_null.

Definition at line 687 of file views_handler_argument.inc.

00687                                          {
00688     if (!isset($arg) || $arg === '') {
00689       return FALSE;
00690     }
00691 
00692     if (isset($this->definition['numeric']) && !isset($this->options['break_phrase']) && !is_numeric($arg)) {
00693       return FALSE;
00694     }
00695 
00696     return TRUE;
00697   }

views_handler_argument::validate_fail (  )  [inherited]

How to act if validation failes.

Definition at line 385 of file views_handler_argument.inc.

References views_handler_argument::default_action(), views_handler_argument::default_actions(), and views_object::options().

Referenced by views_handler_argument::needs_style_plugin(), views_handler_argument::option_definition(), and views_handler_argument::options_form().

00385                            {
00386     $info = $this->default_actions($this->options['validate_fail']);
00387     return $this->default_action($info);
00388   }


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().


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