logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

CatalystX::SimpleLogin::Controller::Login - Configurable login controller

Attributes

login_form_class
       A class attribute containing the class of the form to be initialised. One can override it in a derived
       class with the class of a new form, possibly subclassing CatalystX::SimpleLogin::Form::Login. For
       example:

           package MyApp::Controller::Login;

           use Moose;

           extends('CatalystX::SimpleLogin::Controller::Login');

           has '+login_form_class' => (
               default => "MyApp::Form::Login",
           );

           1;

   login_form_class_roles
       An attribute containing an array reference of roles to be consumed by the form. One can override it in a
       similar way to "login_form_class":

           package MyApp::Controller::Login;

           use Moose;

           extends('CatalystX::SimpleLogin::Controller::Login');

           has '+login_form_class_roles' => (
               default => sub { [qw(MyApp::FormRole::Foo MyApp::FormRole::Bar)] },
           );

           1;

Authors

       See CatalystX::SimpleLogin for authors.

Description

       Controller base class which exists to have login roles composed onto it for the login and logout actions.

License

       See CatalystX::SimpleLogin for license.

perl v5.36.0                                       2022-08-28              CatalystX::Sim...ntroller::Login(3pm)

Methods

BUILD
       Cause form instance to be built at application startup.

   do_post_login_redirect
       This method does a post-login redirect. TODO for BOBTFISH - should it even be public? If it does need to
       be public, then document it because the Pod coverage test failed.

   login
       Login action.

   login_redirect
       Redirect to the login action.

   login_GET
       Displays the login form

   login_POST
       Processes a submitted login form, and if correct, logs the user in and redirects

   not_required
       A stub action that is anchored at the root of the site ("/") and does not require registration (hence the
       name).

   redirect_after_login_uri
       If you are using WithRedirect (i.e. by default), then this method is overridden to redirect the user back
       to the page they initially hit which required authentication.

       Note that even if the original URI was a post, then the redirect back will only be a GET.

       If you choose NOT to compose the WithRedirect trait, then you can set the uri users are redirected to
       with the "redirect_after_login_uri" config key, or by overriding the redirect_after_login_uri method in
       your own login controller if you need custom logic.

   render_login_form
       Renders the login form. By default it just calls the form's render method. If you want to do something
       different, like rendering the form with a template through your view, this is the place to hook into.

   required
       A stub action that is anchored at the root of the site ("/") and does require registration (hence the
       name).

   remember_me
       An action that is called to deal with whether the remember me flag has been set or not.  If it has been
       it extends the session expiry time.

       This is only called if there was a successful login so if you want a hook into that part of the process
       this is a good place to hook into.

       It is also obviously a good place to hook into if you want to change the behaviour of the remember me
       flag.

Name

       CatalystX::SimpleLogin::Controller::Login - Configurable login controller

See Also

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

Synopsis

           # For simple useage exmple, see CatalystX::SimpleLogin, this is a
           # full config example
           __PACKAGE__->config(
               'Controller::Login' => {
                   traits => [
                       'WithRedirect', # Optional, enables redirect-back feature
                       '-RenderAsTTTemplate', # Optional, allows you to use your own template
                   ],
                   actions => {
                       login => { # Also optional
                           PathPart => ['theloginpage'], # Change login action to /theloginpage
                       },
                   },
               },
           );

       See CatalystX::SimpleLogin::Form::Login for configuring the form.

See Also