Catalyst::ActionRole::NeedsLogin(3p)

NAME
Catalyst::ActionRole::NeedsLogin - checks if a user is logged in and if not redirects him to login page

SYNOPSIS
    package MyApp::Controller::NeedsAuth;

    use Moose;
    use namespace::autoclean;

    # One needs to inherit from Catalyst::Controller in order
    # to get the Does('NeedsLogin') functionality.
    BEGIN { extends 'Catalyst::Controller'; }

    sub inbox : Path Does('NeedsLogin') {
        # Redirects to /login if not logged in
        my ($self, $c) = @_;

        $c->stash->{template} = "inbox.tt2";

        return;
    }

    sub inbox : Path Does('NeedsLogin') :LoginRedirectMessage('Your custom Message') {
        # Redirects to /login if not logged in-
    }

    # Turn on in config
    MyApp->config('Contoller::Login' => { traits => ['WithRedirect'] });

DESCRIPTION
Provides a ActionRole for forcing the user to login.

WRAPPED METHODS

  execute
If there is no logged-in user, call the login_redirect() method in the 'Login' controller with the Catalyst context object, $c, and the message specified by the ":LoginRedirectMessage('Message here')" method attribute (see the synopsis).

If there is a user logged-in (i.e: "$c->user" is true), execute the body of the action as it is.

SEE ALSO

CatalystX::SimpleLogin::TraitFor::Controller::Login::WithRedirect
CatalystX::SimpleLogin::Controller::Login
CatalystX::SimpleLogin::Form::Login

AUTHORS
See CatalystX::SimpleLogin for authors.

LICENSE
See CatalystX::SimpleLogin for license.