/[drupal]/contributions/modules/views/plugins/views_plugin_argument_validate_php.inc
ViewVC logotype

Contents of /contributions/modules/views/plugins/views_plugin_argument_validate_php.inc

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1 - (show annotations) (download) (as text)
Wed Sep 3 19:21:30 2008 UTC (14 months, 3 weeks ago) by merlinofchaos
Branch: MAIN
CVS Tags: DRUPAL-6--2-7, DRUPAL-6--2-6, DRUPAL-6--2-5, DRUPAL-6--2-4, DRUPAL-6--2-3, DRUPAL-6--2-2, DRUPAL-6--2-1, DRUPAL-6--2-0, DRUPAL-6--3-0-ALPHA1, DRUPAL-6--2-0-RC5, DRUPAL-6--2-0-RC4, DRUPAL-6--2-0-RC3, DRUPAL-6--2-0-RC2, HEAD
Branch point for: DRUPAL-6--2, DRUPAL-6--3, DRUPAL-7--3
File MIME type: text/x-php
Major re-organization of handlers. PLEASE NOTE: This drastically affected the Views module API and until modules are updated to match, they will stop working. Efforts have been made to ensure that this won't cause your site to crash, but that's partly up to the individual module as well.
1 <?php
2 // $Id: comment.views_default.inc,v 1.6 2008/06/10 21:30:43 merlinofchaos Exp $
3 /**
4 * @file
5 * Contains the php code argument validator plugin.
6 */
7
8 /**
9 * Provide PHP code to validate whether or not an argument is ok.
10 *
11 * @ingroup views_argument_validate_plugins
12 */
13 class views_plugin_argument_validate_php extends views_plugin_argument_validate {
14 var $option_name = 'validate_argument_php';
15
16 function validate_form(&$form, &$form_state) {
17 $form[$this->option_name] = array(
18 '#type' => 'textarea',
19 '#title' => t('PHP validate code'),
20 '#default_value' => $this->get_argument(),
21 '#description' => t('Enter PHP code that returns TRUE or FALSE. No return is the same as FALSE, so be SURE to return something if you do not want to declare the argument invalid. Do not use &lt;?php ?&gt;. The argument to validate will be "$argument" and the view will be "$view". You may change the argument by setting "$handler->argument".'),
22 '#process' => array('views_process_dependency'),
23 '#dependency' => array('edit-options-validate-type' => array($this->id)),
24 );
25
26 $this->check_access($form);
27 }
28
29 /**
30 * Only let users with PHP block visibility permissions set/modify this
31 * validate plugin.
32 */
33 function access() {
34 return user_access('use PHP for block visibility');
35 }
36
37 function validate_argument($argument) {
38 // set up variables to make it easier to reference during the argument.
39 $view = &$this->view;
40 $handler = &$this->argument;
41
42 ob_start();
43 $result = eval($this->argument->options[$this->option_name]);
44 ob_end_clean();
45 return $result;
46 }
47 }
48

  ViewVC Help
Powered by ViewVC 1.1.2