| 12345678910111213141516171819202122232425262728293031323334353637383940414243 | 
							- <?php namespace System\Route;
 
- class Filter {
 
- 	/**
 
- 	 * The loaded route filters.
 
- 	 *
 
- 	 * @var array
 
- 	 */
 
- 	public static $filters;
 
- 	/**
 
- 	 * Call a set of route filters.
 
- 	 *
 
- 	 * @param  string  $filter
 
- 	 * @param  array   $parameters
 
- 	 * @param  bool    $override
 
- 	 * @return mixed
 
- 	 */
 
- 	public static function call($filters, $parameters = array(), $override = false)
 
- 	{
 
- 		if (is_null(static::$filters))
 
- 		{
 
- 			static::$filters = require APP_PATH.'filters'.EXT;
 
- 		}
 
- 		foreach (explode(', ', $filters) as $filter)
 
- 		{
 
- 			if ( ! isset(static::$filters[$filter]))
 
- 			{
 
- 				throw new \Exception("Route filter [$filter] is not defined.");						
 
- 			}
 
- 			$response = call_user_func_array(static::$filters[$filter], $parameters);
 
- 			if ( ! is_null($response) and $override)
 
- 			{
 
- 				return $response;
 
- 			}
 
- 		}
 
- 	}
 
- }
 
 
  |