Jifty::LetMe.3pm

Langue: en

Version: 2009-11-03 (ubuntu - 24/10/10)

Section: 3 (Bibliothèques de fonctions)

NAME

Jifty::LetMe - A way to expose single-link URLs to your applications

new

Create a new ``LetMe'' authentication object; it takes no parameters. It calls ``_init'' to do any initialization.

A LetMe is a way to provide a one-time-use URL for a particular purpose. All LetMe objects give you a way to validate someone's identity and to allow them a very small set of possible actions or page-access permissions.

For example, you can put a LetMe URL in an email to a new user, so that when they click on the URL you know that their email address is valid.

_init @_

Called with whatever ``new'' was called with. By default, does nothing.

user

Contains an app-specific ``user'' object.

validated_current_user

If the user has presented a valid token, returns an (app-specific subclass of the) Jifty::CurrentUser object for the user who has the email address in $self->email. If no user has that email address, returns undef.

_user_from_email ADDRESS

Returns an (app-specific subclass of the) Jifty::CurrentUser object for the user who has the email address ADDRESS.

generate_checksum

Returns an auth checksum for the current combination of
     user
     path
     arguments
     until
 
 

generate_koremutake_checksum

Generate a slightly more pronouncable version of the checksum using String::Koremutake. Due to hex -> integer limitations, this is imporecise and may vary depending on the platform it is used on; as such, it is deprecated.

from_token PATH

Parse a string of the form

mylongusername@example.com/update_task/23/until/20050101/bekidrikufryvagygefuba

into

       email => mylongusername@example.com,
       path  => 'update_task/23'
       until => 20050101,
       checksum_provided => bekidrikufryvagygefuba
 
 

as_token

Returns the ``letme'' token for this set of credentials. This should round trip cleanly with from_token

as_encoded_token

A variant of as_token that encodes the user's email address suitably for passing in a URL

as_url

Returns the fully qualified URL for this LetMe. It's composed of Jifty->web->url, ``base_path'' and ``as_encoded_token''

base_path

By default, all ``LetMe'' actions live at URLs under '/let' inside your application. Override this subroutine to change that.

By default, it returns '/let/'

validate

Returns true if the credentials the user presented validate ok. Returns false otherwise.

_correct_checksum_provided

Returns true if the checksum the user provided is correct. Doesn't actually do much input checking. You want to call ``validate''