macro() public static method

Register a custom macro.
public static macro ( string $name, callable $macro ) : void
$name string
$macro callable
return void
Example #1
0
<?php

Route::macro('after', function ($callback) {
    $this->events->listen('router.filter:after:newrelic-patch', $callback);
});
Route::group(['middleware' => ['web']], function () {
    Route::get('logout', ['as' => 'logout', 'uses' => 'SessionsController@destroy']);
    Route::get('terms', ['as' => 'terms', 'uses' => 'PagesController@terms']);
    Route::group(['middleware' => 'guest'], function () {
        Route::get('/', ['middleware' => 'guest', 'as' => 'splash', 'uses' => 'HomeController@splash']);
        Route::get('login', ['middleware' => 'guest', 'as' => 'login', 'uses' => 'SessionsController@create']);
        Route::post('login', ['as' => 'login', 'middleware' => 'csrf', 'uses' => 'SessionsController@store']);
        Route::get('register', ['middleware' => 'guest', 'as' => 'register', 'uses' => 'RegistrationController@create']);
        Route::post('register', ['as' => 'register', 'middleware' => 'csrf', 'uses' => "RegistrationController@store"]);
    });
    Route::group(['middleware' => 'auth'], function () {
        Route::get('friends/requests', ['as' => 'friends.request', 'uses' => 'FriendsController@index']);
        Route::get('friends', ['as' => 'friends.index', 'uses' => 'FriendsController@all']);
        Route::get('home', ['as' => 'home', 'uses' => 'HomeController@index']);
        Route::get('search', ['as' => 'search', 'uses' => 'SearchController@index']);
        //settings
        Route::get('settings/account', ['as' => 'settings.account', 'uses' => 'SettingsController@index']);
        Route::put('settings/profile', ['as' => 'settings.profile', 'uses' => 'SettingsController@updateProfile']);
        Route::put('settings/change_password', ['as' => 'settings.change_password', 'uses' => 'SettingsController@updatePassword']);
        Route::post('settings/picture', ['as' => 'settings.picture', 'uses' => 'SettingsController@updatePicture']);
        Route::get('settings/password', ['as' => 'user.password', 'uses' => 'SettingsController@password']);
        // should show user password section
        Route::get('settings/mobile', ['as' => 'user.mobile', 'uses' => 'SettingsController@mobile']);
        // should show user mobile section
        Route::get('settings/blocked', ['as' => 'user.blocked', 'uses' => 'SettingsController@blocked']);
        // should show user's blocked preference