http://www.mediawiki.org/wiki/Special:Code/MediaWiki/73696
Revision: 73696
Author: jeroendedauw
Date: 2010-09-25 00:04:11 +0000 (Sat, 25 Sep 2010)
Log Message:
-----------
Changes for 0.4 - follow up to r73672
Modified Paths:
--------------
trunk/extensions/Validator/includes/ItemParameterManipualtion.php
Added Paths:
-----------
trunk/extensions/Validator/includes/manipulations/ParamManipualtionBoolean.php
Modified: trunk/extensions/Validator/includes/ItemParameterManipualtion.php
===================================================================
--- trunk/extensions/Validator/includes/ItemParameterManipualtion.php
2010-09-24 23:11:50 UTC (rev 73695)
+++ trunk/extensions/Validator/includes/ItemParameterManipualtion.php
2010-09-25 00:04:11 UTC (rev 73696)
@@ -16,6 +16,18 @@
abstract class ItemParameterManipulation extends ParameterManipulation {
/**
+ * Manipulate an actual value.
+ *
+ * @param string $value
+ * @param array $parameters
+ *
+ * @since 0.4
+ *
+ * @return mixed
+ */
+ protected abstract function doManipulation( &$value, array &$parameters
);
+
+ /**
* Constructor.
*
* @since 0.4
@@ -30,5 +42,23 @@
public function isForLists() {
return false;
}
+ /**
+ * Validate a parameter against the criterion.
+ *
+ * @param Parameter $parameter
+ * @param array $parameters
+ *
+ * @since 0.4
+ */
+ public abstract function manipulate( Parameter &$parameter, array
&$parameters ) {
+ if ( is_array( $parameter->value ) ) {
+ foreach ( $parameter->value as &$item ) {
+ $this->doManipulation( $item, $parameters );
+ }
+ }
+ else {
+ $this->doManipulation( $parameter->value, $parameters );
+ }
+ }
}
\ No newline at end of file
Added:
trunk/extensions/Validator/includes/manipulations/ParamManipualtionBoolean.php
===================================================================
---
trunk/extensions/Validator/includes/manipulations/ParamManipualtionBoolean.php
(rev 0)
+++
trunk/extensions/Validator/includes/manipulations/ParamManipualtionBoolean.php
2010-09-25 00:04:11 UTC (rev 73696)
@@ -0,0 +1,34 @@
+<?php
+
+/**
+ * Parameter manipulation converting the value to a boolean.
+ *
+ * @since 0.4
+ *
+ * @file ParamManipulationBoolean.php
+ * @ingroup Validator
+ * @ingroup ParameterManipulations
+ *
+ * @author Jeroen De Dauw
+ */
+class ParamManipulationBoolean extends ItemParameterManipulation {
+
+ /**
+ * Constructor.
+ *
+ * @since 0.4
+ */
+ public function __construct() {
+ parent::__construct();
+ }
+
+ /**
+ * @see ItemParameterManipulation::doManipulation
+ *
+ * @since 0.4
+ */
+ public function doManipulation( &$value, array &$parameters ) {
+ $value = in_array( $value, array( 'yes', 'on' ) );
+ }
+
+}
\ No newline at end of file
Property changes on:
trunk/extensions/Validator/includes/manipulations/ParamManipualtionBoolean.php
___________________________________________________________________
Added: svn:eol-style
+ native
_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs