I've written a new module as a wrapper around Apache::Session which
provides short term (ie session) tracking (which is something that
Apache::SessionManager and Apache::SessionX provide), but this adds long
term user tracking, and methods to aid login, logout etc.

It is meant to be subclassed, so that you can add your own database
access methods to the module - full examples included!

I would appreciate feedback, not least of all, what it should be
called!  Apache::SessionManager exists already, and I realise that
calling this module Apache::Session::Manager will cause confusion, so
please...

README is below.  The module is available from :

http://cpan.perl.org/modules/by-authors/id/D/DR/DRTECH/Apache-Session-Manager-0.02.tar.gz


thanks

Clinton


Apache/Session/Manager version 0.02
===================================

Apache::Session::Manager provides a wrapper around Apache::Session which
adds the following :

  * Short term session tracking using cookies or URLs (query string / 
    POST data rather than URL munging)
  * Long term user tracking with cookies and query string
  * User recognition through query string (eg from an emailed link)
  * Login, logout, create new account, remove cookies - all operating
    with your favourite database and schema!

It needs to be subclassed by your own module, which provides the methods
to interact with your database - ie you can integrate this module into
you own database schema.

Apache::Session::Manager is not a "drop in" module - it requires a bit
of work on your part to make it work - but once that work is done, it
makes a lot of user and session management easy.  Any website that wants
to have any sort of long term relationship with a user needs to be able
to track a user through a session, allow the user to register, and issue
them with a password challenge before allowing them to view restricted
pages... which is exactly what this module does.

All you need to provide is 6 subroutines which speak to your database to
perform a few simple functions (looking up a username etc).


Reply via email to