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>
get
Login/logout/user managment/password change/session refresh form dispatch.
get_login
Internal function.
get_logout
Internal function.
get_pwchange
Internal function.
get_sessionid
Internal function.
get_sessionrefresh
Internal function.
get_useredit
Internal function.
get_viewselect
Internal function.
postfilter
Internal function.
prefilter
Internal function.
prerender
Internal function. Blocks all unauthorized access.
validateSessionID
Internal function.
TODO
Get this module properly documented.
SEE ALSO
Maplat::Web
"If unsure, see source code or email the author"
AUTHOR
Rene Schickbauer, <rene.schickbauer@gmail.com>
COPYRIGHT AND LICENSE
Copyright (C) 2008-2010 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.