summaryrefslogtreecommitdiffstats
path: root/3rdparty/htmlpurifier/library/HTMLPurifier/ConfigSchema/ValidatorAtom.php
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/htmlpurifier/library/HTMLPurifier/ConfigSchema/ValidatorAtom.php')
-rw-r--r--3rdparty/htmlpurifier/library/HTMLPurifier/ConfigSchema/ValidatorAtom.php196
1 files changed, 130 insertions, 66 deletions
diff --git a/3rdparty/htmlpurifier/library/HTMLPurifier/ConfigSchema/ValidatorAtom.php b/3rdparty/htmlpurifier/library/HTMLPurifier/ConfigSchema/ValidatorAtom.php
index 7bb887bc4..c9aa3644a 100644
--- a/3rdparty/htmlpurifier/library/HTMLPurifier/ConfigSchema/ValidatorAtom.php
+++ b/3rdparty/htmlpurifier/library/HTMLPurifier/ConfigSchema/ValidatorAtom.php
@@ -1,66 +1,130 @@
-<?php
-
-/**
- * Fluent interface for validating the contents of member variables.
- * This should be immutable. See HTMLPurifier_ConfigSchema_Validator for
- * use-cases. We name this an 'atom' because it's ONLY for validations that
- * are independent and usually scalar.
- */
-class HTMLPurifier_ConfigSchema_ValidatorAtom
-{
-
- protected $context, $obj, $member, $contents;
-
- public function __construct($context, $obj, $member) {
- $this->context = $context;
- $this->obj = $obj;
- $this->member = $member;
- $this->contents =& $obj->$member;
- }
-
- public function assertIsString() {
- if (!is_string($this->contents)) $this->error('must be a string');
- return $this;
- }
-
- public function assertIsBool() {
- if (!is_bool($this->contents)) $this->error('must be a boolean');
- return $this;
- }
-
- public function assertIsArray() {
- if (!is_array($this->contents)) $this->error('must be an array');
- return $this;
- }
-
- public function assertNotNull() {
- if ($this->contents === null) $this->error('must not be null');
- return $this;
- }
-
- public function assertAlnum() {
- $this->assertIsString();
- if (!ctype_alnum($this->contents)) $this->error('must be alphanumeric');
- return $this;
- }
-
- public function assertNotEmpty() {
- if (empty($this->contents)) $this->error('must not be empty');
- return $this;
- }
-
- public function assertIsLookup() {
- $this->assertIsArray();
- foreach ($this->contents as $v) {
- if ($v !== true) $this->error('must be a lookup array');
- }
- return $this;
- }
-
- protected function error($msg) {
- throw new HTMLPurifier_ConfigSchema_Exception(ucfirst($this->member) . ' in ' . $this->context . ' ' . $msg);
- }
-
-}
-
-// vim: et sw=4 sts=4
+<?php
+
+/**
+ * Fluent interface for validating the contents of member variables.
+ * This should be immutable. See HTMLPurifier_ConfigSchema_Validator for
+ * use-cases. We name this an 'atom' because it's ONLY for validations that
+ * are independent and usually scalar.
+ */
+class HTMLPurifier_ConfigSchema_ValidatorAtom
+{
+ /**
+ * @type string
+ */
+ protected $context;
+
+ /**
+ * @type object
+ */
+ protected $obj;
+
+ /**
+ * @type string
+ */
+ protected $member;
+
+ /**
+ * @type mixed
+ */
+ protected $contents;
+
+ public function __construct($context, $obj, $member)
+ {
+ $this->context = $context;
+ $this->obj = $obj;
+ $this->member = $member;
+ $this->contents =& $obj->$member;
+ }
+
+ /**
+ * @return HTMLPurifier_ConfigSchema_ValidatorAtom
+ */
+ public function assertIsString()
+ {
+ if (!is_string($this->contents)) {
+ $this->error('must be a string');
+ }
+ return $this;
+ }
+
+ /**
+ * @return HTMLPurifier_ConfigSchema_ValidatorAtom
+ */
+ public function assertIsBool()
+ {
+ if (!is_bool($this->contents)) {
+ $this->error('must be a boolean');
+ }
+ return $this;
+ }
+
+ /**
+ * @return HTMLPurifier_ConfigSchema_ValidatorAtom
+ */
+ public function assertIsArray()
+ {
+ if (!is_array($this->contents)) {
+ $this->error('must be an array');
+ }
+ return $this;
+ }
+
+ /**
+ * @return HTMLPurifier_ConfigSchema_ValidatorAtom
+ */
+ public function assertNotNull()
+ {
+ if ($this->contents === null) {
+ $this->error('must not be null');
+ }
+ return $this;
+ }
+
+ /**
+ * @return HTMLPurifier_ConfigSchema_ValidatorAtom
+ */
+ public function assertAlnum()
+ {
+ $this->assertIsString();
+ if (!ctype_alnum($this->contents)) {
+ $this->error('must be alphanumeric');
+ }
+ return $this;
+ }
+
+ /**
+ * @return HTMLPurifier_ConfigSchema_ValidatorAtom
+ */
+ public function assertNotEmpty()
+ {
+ if (empty($this->contents)) {
+ $this->error('must not be empty');
+ }
+ return $this;
+ }
+
+ /**
+ * @return HTMLPurifier_ConfigSchema_ValidatorAtom
+ */
+ public function assertIsLookup()
+ {
+ $this->assertIsArray();
+ foreach ($this->contents as $v) {
+ if ($v !== true) {
+ $this->error('must be a lookup array');
+ }
+ }
+ return $this;
+ }
+
+ /**
+ * @param string $msg
+ * @throws HTMLPurifier_ConfigSchema_Exception
+ */
+ protected function error($msg)
+ {
+ throw new HTMLPurifier_ConfigSchema_Exception(ucfirst($this->member) . ' in ' . $this->context . ' ' . $msg);
+ }
+}
+
+// vim: et sw=4 sts=4