Skip to content

Instantly share code, notes, and snippets.

@juukie
Created March 5, 2014 15:43
Show Gist options
  • Save juukie/9369729 to your computer and use it in GitHub Desktop.
Save juukie/9369729 to your computer and use it in GitHub Desktop.
<?php
/*
|--------------------------------------------------------------------------
| Other Routes
|--------------------------------------------------------------------------
|
| Routes for the sub-domains
|
*/
Route::group( array('before' => 'auth'), function()
{
Route::get('dashboard', function()
{
return "dashboard";
});
});
Route::get('/', function()
{
return "wahoo";
});
Route::get('login', function()
{
return "Login";
});
<?php
/*
|--------------------------------------------------------------------------
| Public Routes
|--------------------------------------------------------------------------
|
| Routes for the public
|
*/
Route::get('/', function()
{
return "teh home page";
});
Route::get('/login', function()
{
return "login, fool!";
});
<?php
/*
|--------------------------------------------------------------------------
| Application Routes
|--------------------------------------------------------------------------
|
| Simply tell Laravel the HTTP verbs and URIs it should respond to. It is a
| breeze to setup your application using Laravel's RESTful routing and it
| is perfectly suited for building large applications and simple APIs.
|
| Let's respond to a simple GET request to http://example.com/hello:
|
| Route::get('hello', function()
| {
| return 'Hello World!';
| });
|
| You can even respond to more than one URI:
|
| Route::post(array('hello', 'world'), function()
| {
| return 'Hello World!';
| });
|
| It's easy to allow URI wildcards using (:num) or (:any):
|
| Route::put('hello/(:any)', function($name)
| {
| return "Welcome, $name.";
| });
|
*/
// Check subdomain
$url = explode('.', $_SERVER['HTTP_HOST']);
$subdomain = $url[0];
switch ($subdomain) {
case 'www' :
case 'example' :
include_once('public_routes.php');
break;
default :
include_once('other_routes.php');
break;
}
/*
|--------------------------------------------------------------------------
| Application 404 & 500 Error Handlers
|--------------------------------------------------------------------------
|
| To centralize and simplify 404 handling, Laravel uses an awesome event
| system to retrieve the response. Feel free to modify this function to
| your tastes and the needs of your application.
|
| Similarly, we use an event to handle the display of 500 level errors
| within the application. These errors are fired when there is an
| uncaught exception thrown in the application.
|
*/
Event::listen('404', function()
{
return Response::error('404');
});
Event::listen('500', function()
{
return Response::error('500');
});
/*
|--------------------------------------------------------------------------
| Route Filters
|--------------------------------------------------------------------------
|
| Filters provide a convenient method for attaching functionality to your
| routes. The built-in before and after filters are called before and
| after every request to your application, and you may even create
| other filters that can be attached to individual routes.
|
| Let's walk through an example...
|
| First, define a filter:
|
| Route::filter('filter', function()
| {
| return 'Filtered!';
| });
|
| Next, attach the filter to a route:
|
| Router::register('GET /', array('before' => 'filter', function()
| {
| return 'Hello World!';
| }));
|
*/
Route::filter('before', function()
{
// Do stuff before every request to your application...
});
Route::filter('after', function($response)
{
// Do stuff after every request to your application...
});
Route::filter('csrf', function()
{
if (Request::forged()) return Response::error('500');
});
Route::filter('auth', function()
{
if (Auth::guest()) return Redirect::to('login');
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment