<% include( '/elements/header.html', 'Developer Documentation' ) %> <& /elements/menubar.html, 'Freeside Perl Modules' => $fsurl.'docs/library/FS.html', 'Complete Index' => $fsurl.'docs/library/index.html', &>

FS::contact

NAME

FS::contact - Object methods for contact records

SYNOPSIS

  use FS::contact;

  $record = new FS::contact \%hash;
  $record = new FS::contact { 'column' => 'value' };

  $error = $record->insert;

  $error = $new_record->replace($old_record);

  $error = $record->delete;

  $error = $record->check;

DESCRIPTION

An FS::contact object represents an specific contact person for a prospect or customer. FS::contact inherits from FS::Record. The following fields are currently supported:

contactnum

primary key

prospectnum

prospectnum

custnum

custnum

locationnum

locationnum

last

last

first

first

title

title

comment

comment

selfservice_access

empty or Y

_password
_password_encoding

empty or bcrypt

disabled

disabled

METHODS

new HASHREF

Creates a new contact. To add the contact to the database, see "insert".

Note that this stores the hash reference, not a distinct copy of the hash it points to. You can ask the object for a copy with the hash method.

insert

Adds this record to the database. If there is an error, returns the error, otherwise returns false.

delete

Delete this record from the database.

replace OLD_RECORD

Replaces the OLD_RECORD with this one in the database. If there is an error, returns the error, otherwise returns false.

_parse_phonestring PHONENUMBER_STRING

Subroutine, takes a string and returns a list (suitable for assigning to a hash) with keys 'countrycode', 'phonenum' and 'extension'

(Should probably be moved to contact_phone.pm, hence the initial underscore.)

queue_fuzzyfiles_update

Used by insert & replace to update the fuzzy search cache

check

Checks all fields to make sure this is a valid contact. If there is an error, returns the error, otherwise returns false. Called by the insert and replace methods.

line

Returns a formatted string representing this contact, including name, title and comment.

firstlast

Returns a formatted string representing this contact, with just the name.

contact_classname

Returns the name of this contact's class (see FS::contact_class).

by_selfservice_email EMAILADDRESS

Alternate search constructor (class method). Given an email address, returns the contact for that address, or the empty string if no contact has that email address.

by_selfservice_email_custnum EMAILADDRESS, CUSTNUM

Alternate search constructor (class method). Given an email address and custnum, returns the contact for that address and custnum. If that contact doesn't have selfservice access, or there isn't one, returns the empty string.

change_password NEW_PASSWORD

Changes the contact's selfservice access password to NEW_PASSWORD. This does not check password policy rules (see is_password_allowed) and will return an error only if editing the record fails for some reason.

If NEW_PASSWORD is the same as the existing password, this does nothing.

cgi_contact_fields

Returns a list reference containing the set of contact fields used in the web interface for one-line editing (i.e. excluding contactnum, prospectnum, custnum and locationnum, as well as password fields, but including fields for contact_email and contact_phone records.)

BUGS

SEE ALSO

FS::Record, schema.html from the base documentation.

<% include ('/elements/footer.html' ) %>