diff options
Diffstat (limited to 'phpBB/includes/db/migration/tool/module.php')
| -rw-r--r-- | phpBB/includes/db/migration/tool/module.php | 31 | 
1 files changed, 31 insertions, 0 deletions
diff --git a/phpBB/includes/db/migration/tool/module.php b/phpBB/includes/db/migration/tool/module.php index 70a246849a..561faac552 100644 --- a/phpBB/includes/db/migration/tool/module.php +++ b/phpBB/includes/db/migration/tool/module.php @@ -471,4 +471,35 @@ class phpbb_db_migration_tool_module implements phpbb_db_migration_tool_interfac  			$this->cache->destroy("_modules_$class");  		}  	} + +	/** +	* Reverse an original install action +	* +	* First argument is the original call to the class (e.g. add, remove) +	* After the first argument, send the original arguments to the function in the original call +	* +	* @return null +	*/ +	public function reverse() +	{ +		$arguments = func_get_args(); +		$original_call = array_shift($arguments); + +		$call = false; +		switch ($original_call) +		{ +			case 'add': +				$call = 'remove'; +			break; + +			case 'remove': +				$call = 'add'; +			break; +		} + +		if ($call) +		{ +			return call_user_func_array(array(&$this, $call), $arguments); +		} +	}  }  | 
