Example #1
0
 /**
  * Add an item to the session flash data.
  *
  * This is useful for passing status messages or other temporary data to the next request.
  *
  * <code>
  *		// Create a redirect response and flash something to the session
  *		return Redirect::to('user/profile')->with('message', 'Welcome Back!');
  * </code>
  *
  * @param  string          $key
  * @param  mixed           $value
  * @return Response
  */
 public function with($key, $value)
 {
     if (Config::get('session.driver') == '') {
         throw new \LogicException('A session driver must be set before setting flash data.');
     }
     IoC::core('session')->flash($key, $value);
     return $this;
 }
Example #2
0
 /**
  * Generate a URL from a route name.
  *
  * For routes that have wildcard parameters, an array may be passed as the
  * second parameter to the method. The values of this array will be used to
  * fill the wildcard segments of the route URI.
  *
  * <code>
  *		// Create a URL to the "profile" named route
  *		$url = URL::to_route('profile');
  *
  *		// Create a URL to the "profile" named route with wildcard parameters
  *		$url = URL::to_route('profile', array($username));
  * </code>
  *
  * @param  string  $name
  * @param  array   $parameters
  * @param  bool    $https
  * @return string
  */
 public static function to_route($name, $parameters = array(), $https = false)
 {
     if (!is_null($route = IoC::core('routing.router')->find($name))) {
         $uris = explode(', ', key($route));
         $uri = substr($uris[0], strpos($uris[0], '/'));
         // Spin through each route parameter and replace the route wildcard
         // segment with the corresponding parameter passed to the method.
         // Afterwards, we will replace all of the remaining optional URI
         // segments with spaces since they may not have been specified
         // in the array of parameters.
         foreach ((array) $parameters as $parameter) {
             $uri = preg_replace('/\\(.+?\\)/', $parameter, $uri, 1);
         }
         return static::to(str_replace(array('/(:any?)', '/(:num?)'), '', $uri), $https);
     }
     throw new \OutOfBoundsException("Error creating URL for undefined route [{$name}].");
 }
Example #3
0
 /**
  * Get input data from the previous request.
  *
  * <code>
  *		// Get the "email" item from the old input
  *		$email = Input::old('email');
  *
  *		// Return a default value if the specified item doesn't exist
  *		$email = Input::old('name', 'Taylor');
  * </code>
  *
  * @param  string          $key
  * @param  mixed           $default
  * @return string
  */
 public static function old($key = null, $default = null)
 {
     $old = IoC::core('session')->get(Input::old_input, array());
     return Arr::get($old, $key, $default);
 }
Example #4
0
 /**
  * Log the current user out of the application.
  *
  * The "logout" closure in the authenciation configuration file will be
  * called. All authentication cookies will be deleted and the user ID
  * will be removed from the session.
  *
  * @return void
  */
 public static function logout()
 {
     call_user_func(Config::get('auth.logout'), static::user());
     static::$user = null;
     Cookie::forget(Auth::user_key);
     Cookie::forget(Auth::remember_key);
     IoC::core('session')->forget(Auth::user_key);
 }
Example #5
0
 * in the input array could cause unexpected results if the developer
 * fills an Eloquent model with the input.
 */
unset($input[Request::spoofer]);
Input::$input = $input;
/**
 * Route the request to the proper route in the application. If a
 * route is found, the route will be called with the current request
 * instance. If no route is found, the 404 response will be returned
 * to the browser.
 */
Routing\Filter::register(require APP_PATH . 'filters' . EXT);
$loader = new Routing\Loader(APP_PATH, ROUTE_PATH);
$router = new Routing\Router($loader, CONTROLLER_PATH);
IoC::instance('laravel.routing.router', $router);
Request::$route = $router->route(Request::method(), URI::current());
if (!is_null(Request::$route)) {
    $response = Request::$route->call();
} else {
    $response = Response::error('404');
}
/**
 * Close the session and write the active payload to persistent
 * storage. The session cookie will also be written and if the
 * driver is a sweeper, session garbage collection might be
 * performed depending on the "sweepage" probability.
 */
if (Config::$items['session']['driver'] !== '') {
    IoC::core('session')->save();
}
$response->send();
Example #6
0
 /**
  * Log the current user out of the application.
  *
  * The "logout" closure in the authenciation configuration file will be
  * called. All authentication cookies will be deleted and the user ID
  * will be removed from the session.
  *
  * @return void
  */
 public static function logout()
 {
     call_user_func(Config::get('auth.logout'), static::user());
     static::$user = null;
     $config = Config::get('session');
     extract($config, EXTR_SKIP);
     // When forgetting the cookie, we need to also pass in the path and
     // domain that would have been used when the cookie was originally
     // set by the framework, otherwise it will not be deleted.
     Cookie::forget(Auth::user_key, $path, $domain, $secure);
     Cookie::forget(Auth::remember_key, $path, $domain, $secure);
     IoC::core('session')->forget(Auth::user_key);
 }