PluginProbe ʕ •ᴥ•ʔ
Matomo Analytics – Powerful, Privacy-First Insights for WordPress / 1.3.1
Matomo Analytics – Powerful, Privacy-First Insights for WordPress v1.3.1
5.11.1 5.11.0 5.10.2 5.10.1 trunk 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.1.0 1.1.1 1.1.2 1.1.3 1.2.0 1.3.0 1.3.1 1.3.2 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.1.0 4.1.1 4.1.2 4.1.3 4.10.0 4.11.0 4.12.0 4.13.0 4.13.2 4.13.3 4.13.4 4.13.5 4.14.0 4.14.1 4.14.2 4.15.0 4.15.1 4.15.2 4.15.3 4.2.0 4.3.0 4.3.1 4.4.1 4.4.2 4.5.0 4.6.0 5.0.1 5.0.2 5.0.3 5.0.4 5.0.5 5.0.6 5.0.7 5.0.8 5.1.0 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 5.1.7 5.10.0 5.2.0 5.2.1 5.2.2 5.3.0 5.3.1 5.3.2 5.3.3 5.6.0 5.6.1 5.7.0 5.7.1 5.8.0 5.8.1 5.8.2
matomo / app / libs / Zend / Validate / Callback.php
matomo / app / libs / Zend / Validate Last commit date
File 6 years ago Hostname 6 years ago Abstract.php 6 years ago Alnum.php 6 years ago Alpha.php 6 years ago Between.php 6 years ago Callback.php 6 years ago Ccnum.php 6 years ago CreditCard.php 6 years ago Date.php 6 years ago Digits.php 6 years ago Exception.php 6 years ago Float.php 6 years ago GreaterThan.php 6 years ago Hex.php 6 years ago Hostname.php 6 years ago Iban.php 6 years ago Identical.php 6 years ago InArray.php 6 years ago Int.php 6 years ago Interface.php 6 years ago Ip.php 6 years ago Isbn.php 6 years ago LessThan.php 6 years ago NotEmpty.php 6 years ago PostCode.php 6 years ago Regex.php 6 years ago StringLength.php 6 years ago
Callback.php
175 lines
1 <?php
2 /**
3 * Zend Framework
4 *
5 * LICENSE
6 *
7 * This source file is subject to the new BSD license that is bundled
8 * with this package in the file LICENSE.txt.
9 * It is also available through the world-wide-web at this URL:
10 * http://framework.zend.com/license/new-bsd
11 * If you did not receive a copy of the license and are unable to
12 * obtain it through the world-wide-web, please send an email
13 * to license@zend.com so we can send you a copy immediately.
14 *
15 * @category Zend
16 * @package Zend_Validate
17 * @copyright Copyright (c) 2005-2011 Zend Technologies USA Inc. (http://www.zend.com)
18 * @license http://framework.zend.com/license/new-bsd New BSD License
19 * @version $Id: Callback.php 23775 2011-03-01 17:25:24Z ralph $
20 */
21
22 /**
23 * @see Zend_Validate_Abstract
24 */
25 // require_once 'Zend/Validate/Abstract.php';
26
27 /**
28 * @category Zend
29 * @package Zend_Validate
30 * @copyright Copyright (c) 2005-2011 Zend Technologies USA Inc. (http://www.zend.com)
31 * @license http://framework.zend.com/license/new-bsd New BSD License
32 */
33 class Zend_Validate_Callback extends Zend_Validate_Abstract
34 {
35 /**
36 * Invalid callback
37 */
38 const INVALID_CALLBACK = 'callbackInvalid';
39
40 /**
41 * Invalid value
42 */
43 const INVALID_VALUE = 'callbackValue';
44
45 /**
46 * Validation failure message template definitions
47 *
48 * @var array
49 */
50 protected $_messageTemplates = array(
51 self::INVALID_VALUE => "'%value%' is not valid",
52 self::INVALID_CALLBACK => "An exception has been raised within the callback",
53 );
54
55 /**
56 * Callback in a call_user_func format
57 *
58 * @var string|array
59 */
60 protected $_callback = null;
61
62 /**
63 * Default options to set for the filter
64 *
65 * @var mixed
66 */
67 protected $_options = array();
68
69 /**
70 * Sets validator options
71 *
72 * @param string|array $callback
73 * @param mixed $max
74 * @param boolean $inclusive
75 * @return void
76 */
77 public function __construct($callback = null)
78 {
79 if (is_callable($callback)) {
80 $this->setCallback($callback);
81 } elseif (is_array($callback)) {
82 if (isset($callback['callback'])) {
83 $this->setCallback($callback['callback']);
84 }
85 if (isset($callback['options'])) {
86 $this->setOptions($callback['options']);
87 }
88 }
89
90 if (null === ($initializedCallack = $this->getCallback())) {
91 // require_once 'Zend/Validate/Exception.php';
92 throw new Zend_Validate_Exception('No callback registered');
93 }
94 }
95
96 /**
97 * Returns the set callback
98 *
99 * @return mixed
100 */
101 public function getCallback()
102 {
103 return $this->_callback;
104 }
105
106 /**
107 * Sets the callback
108 *
109 * @param string|array $callback
110 * @return Zend_Validate_Callback Provides a fluent interface
111 */
112 public function setCallback($callback)
113 {
114 if (!is_callable($callback)) {
115 // require_once 'Zend/Validate/Exception.php';
116 throw new Zend_Validate_Exception('Invalid callback given');
117 }
118 $this->_callback = $callback;
119 return $this;
120 }
121
122 /**
123 * Returns the set options for the callback
124 *
125 * @return mixed
126 */
127 public function getOptions()
128 {
129 return $this->_options;
130 }
131
132 /**
133 * Sets options for the callback
134 *
135 * @param mixed $max
136 * @return Zend_Validate_Callback Provides a fluent interface
137 */
138 public function setOptions($options)
139 {
140 $this->_options = (array) $options;
141 return $this;
142 }
143
144 /**
145 * Defined by Zend_Validate_Interface
146 *
147 * Returns true if and only if the set callback returns
148 * for the provided $value
149 *
150 * @param mixed $value
151 * @return boolean
152 */
153 public function isValid($value)
154 {
155 $this->_setValue($value);
156
157 $options = $this->getOptions();
158 $callback = $this->getCallback();
159 $args = func_get_args();
160 $options = array_merge($args, $options);
161
162 try {
163 if (!call_user_func_array($callback, $options)) {
164 $this->_error(self::INVALID_VALUE);
165 return false;
166 }
167 } catch (Exception $e) {
168 $this->_error(self::INVALID_CALLBACK);
169 return false;
170 }
171
172 return true;
173 }
174 }
175