NAME

Maplat::Web::Login - this module handles login, user managment and views

SYNOPSIS

This modules provides a complete user managment, including login handling, views and a few other gimmicks.

DESCRIPTION

This module is currently documented somewhat poorly (it was hacked together over a few months). Basically, you have to play around with the configuration and take a peek at the source code.

We're sorry for that!

Configuration

<!-- Login module -->
<module>
        <modname>authentification</modname>
        <pm>Login</pm>
        <options>
                <db>maindb</db>
                <memcache>memcache</memcache>
                <sendmail>sendmail</sendmail>
                <expires>+1h</expires>

                <!-- Setting this flag to 1 enables the login module to
                        re-create the "admin" user if the table row does not
                        exist in the database - normally disabled because it
                        *might* be a security risk under certain circumstances -->
                <check_admin_user>0</check_admin_user>

                <userlevels admin="is_admin">
                        <!-- Highest to lowest, first applicable will be used
                                as the users default view -->
                        <userlevel display="Admin" db="is_admin" defaultview="Admin" path="/admin/" />
                        <userlevel display="RBS" db="has_rbs" defaultview="RBS" path="/rbs/" />
                        <userlevel display="WDNE" db="has_wdne" defaultview="WDNE" path="/wdne/" />
                        <userlevel display="Chipcard" db="has_chipcard" defaultview="Chipcard" path="/chipcard/" />
                        <userlevel display="AFM" db="has_afm" defaultview="AFM Parameters" path="/afm/" />
                        <userlevel display="CC WebAPI" db="has_ccwebapi" defaultview="Chipcard WebAPI" path="/ccwebapi/" />
                        <userlevel display="Dev Test" db="has_devtest" defaultview="Dev: Docs" path="/devtest/" />
                </userlevels>

                <login>
                        <webpath>/user/login</webpath>
                        <pagetitle>Login</pagetitle>
                </login>
                <logout>
                        <webpath>/user/logout</webpath>
                        <pagetitle>Logout</pagetitle>
                </logout>
                <pwchange>
                        <webpath>/user/pwchange</webpath>
                        <pagetitle>Change Password</pagetitle>
                </pwchange>
                <useredit>
                        <webpath>/admin/useredit</webpath>
                        <pagetitle>Users</pagetitle>
                </useredit>
               <sessionrefresh>
                        <webpath>/user/sessionrefresh</webpath>
                        <pagetitle>Sessionrefresh</pagetitle>
                </sessionrefresh>
                <viewselect>
                        <webpath>/user/viewselect</webpath>
                        <pagetitle>Changing view</pagetitle>
                        <views>
                                <view display="Admin" logodisplay="admin" path="/admin/"
                                          db="is_admin" startpage="Commands" class="admin">
                                        <menu display="Status" path="rbsstatus/" admin="1" />
                                        <menu display="Commands" path="command/" admin="1" />
                                        <menu display="ProdLines" path="prodlines/admin" admin="1" />
                                        <menu display="DirCleaner" path="dircleaner/" admin="1" />
                                        <menu display="Sendmail" path="sendmail/" admin="1" />
                                        <menu display="Variables" path="variablesadm/" admin="1" />
                                        <menu display="Users" path="authentification/useredit" admin="1" />
                                </view>
                                <view display="CC WebAPI" logodisplay="admin" path="/ccwebapi/"
                                          db="is_admin" startpage="Cards" class="admin">
                                        <menu display="Cards" path="ccwebapi/getcards" admin="0" />
                                </view>
                                <view display="Dev: Docs" logodisplay="devtest" path="/devtest/"
                                          db="has_devtest" startpage="Text" class="devel">
                                        <menu display="Text" path="docswordprocessor/list" admin="0" />
                                        <menu display="Table" path="docsspreadsheet/list" admin="0" />
                                        <menu display="Search" path="docssearch/" admin="1" />
                                </view>
                        </views>
                </viewselect>
        </options>
</module>

TODO

Get this module properly documented.

SEE ALSO

Maplat::Web

"If unsure, see source code or email the author"

AUTHOR

Rene Schickbauer, <rene.schickbauer@magnapowertrain.com>

COPYRIGHT AND LICENSE

Copyright (C) 2009 by Rene Schickbauer

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.10.0 or, at your option, any later version of Perl 5 you may have available.