NAME

Rubric::User - a Rubric user

VERSION

version 0.150

DESCRIPTION

This class provides an interface to Rubric users. It inherits from Rubric::DBI, which is a Class::DBI class.

COLUMNS

username - the user's login name
password - the hex md5sum of the user's password
email    - the user's email address
created  - the user's date of registration

verification_code - the code sent to the user for verification
                    NULL if verified

RELATIONSHIPS

entries

Every user has_many entries, which are Rubric::Entry objects. They can be retrieved with the entries accessor, as usual.

tags

A user has as "his" tags all the tags that occur on his entries. There exist a number of accessors for his tag list.

tags

This returns an arrayref of all the user's (non-system) tags in their database colation order.

tags_counted

This returns an arrayref of arrayrefs, each containing a tag name and the number of entries tagged with that tag. The pairs are sorted in colation order by tag name.

This method returns a reference to an array of tags related to all the given tags. Tags are related if they occur together on entries.

This is the obvious conjunction of related_tags and tags_counted. It returns an arrayref of arrayrefs, each a pair of tag/occurance values.

INFLATIONS

created

The created column is stored as seconds since epoch, but inflated to Time::Piece objects.

METHODS

quick_entry(\%entry)

This method creates or updates an entry for the user. The passed entry should include the following data:

uri         - the URI for the entry
tags        - the tags for the entry, as a space delimited string
title       - the title for the entry
description - the description for the entry
body        - the body for the entry

If an entry for the link exists, it is updated. Existing tags are replaced with the new tags. If no entry exists, the Rubric::Link is created if needed, and a new entry is then created.

The Rubric::Entry object is returned.

verify($code)

If the given code matches this user's verification_code, the user will be verified; that is, his verification_code will be undefined.

reset_password($code)

If the given code matches this user's reset_code, the user's password will be reset via randomize_password and his reset code will be undefined. If successful, the new password is returned. Otherwise, the routine returns false.

randomize_password

This method resets the user's password to a pseudo-random string and returns the new password.

randomize_reset_code

This method resets the user's reset code to the md5sum of a pseudo-random string.

randomize_verification_code

This method resets the user's verification code to the md5sum of a pseudo-random string.

AUTHOR

Ricardo SIGNES <rjbs@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2004 by Ricardo SIGNES.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.