Palm::Address

Langue: en

Version: 2006-03-16 (mandriva - 01/05/08)

Section: 3 (Bibliothèques de fonctions)

NAME

Palm::Address - Handler for Palm AddressBook databases

SYNOPSIS

     use Palm::Address;
 
 

DESCRIPTION

The Address PDB handler is a helper class for the Palm::PDB package. It parses AddressBook databases.

AppInfo block

The AppInfo block begins with standard category support. See Palm::StdAppInfo for details.

Other fields include:

     $pdb->{appinfo}{lastUniqueID}
     $pdb->{appinfo}{dirtyFields}
 
 

I don't know what these are.

     $pdb->{appinfo}{fieldLabels}{name}
     $pdb->{appinfo}{fieldLabels}{firstName}
     $pdb->{appinfo}{fieldLabels}{company}
     $pdb->{appinfo}{fieldLabels}{phone1}
     $pdb->{appinfo}{fieldLabels}{phone2}
     $pdb->{appinfo}{fieldLabels}{phone3}
     $pdb->{appinfo}{fieldLabels}{phone4}
     $pdb->{appinfo}{fieldLabels}{phone5}
     $pdb->{appinfo}{fieldLabels}{phone6}
     $pdb->{appinfo}{fieldLabels}{phone7}
     $pdb->{appinfo}{fieldLabels}{phone8}
     $pdb->{appinfo}{fieldLabels}{address}
     $pdb->{appinfo}{fieldLabels}{city}
     $pdb->{appinfo}{fieldLabels}{state}
     $pdb->{appinfo}{fieldLabels}{zipCode}
     $pdb->{appinfo}{fieldLabels}{country}
     $pdb->{appinfo}{fieldLabels}{title}
     $pdb->{appinfo}{fieldLabels}{custom1}
     $pdb->{appinfo}{fieldLabels}{custom2}
     $pdb->{appinfo}{fieldLabels}{custom3}
     $pdb->{appinfo}{fieldLabels}{custom4}
     $pdb->{appinfo}{fieldLabels}{note}
 
 

These are the names of the various fields in the address record.

     $pdb->{appinfo}{country}
 
 

An integer: the code for the country for which these labels were designed. The country name is available as

         $Palm::Address::countries[$pdb->{appinfo}{country}];
 
     $pdb->{appinfo}{misc}
 
 

An integer. The least-significant bit is a flag that indicates whether the database should be sorted by company. The other bits are reserved.

Sort block

     $pdb->{sort}
 
 

This is a scalar, the raw data of the sort block.

Records

     $record = $pdb->{records}[N];
 
     $record->{fields}{name}
     $record->{fields}{firstName}
     $record->{fields}{company}
     $record->{fields}{phone1}
     $record->{fields}{phone2}
     $record->{fields}{phone3}
     $record->{fields}{phone4}
     $record->{fields}{phone5}
     $record->{fields}{address}
     $record->{fields}{city}
     $record->{fields}{state}
     $record->{fields}{zipCode}
     $record->{fields}{country}
     $record->{fields}{title}
     $record->{fields}{custom1}
     $record->{fields}{custom2}
     $record->{fields}{custom3}
     $record->{fields}{custom4}
     $record->{fields}{note}
 
 

These are scalars, the values of the various address book fields.

     $record->{phoneLabel}{phone1}
     $record->{phoneLabel}{phone2}
     $record->{phoneLabel}{phone3}
     $record->{phoneLabel}{phone4}
     $record->{phoneLabel}{phone5}
 
 

Most fields in an AddressBook record are straightforward: the ``name'' field always gives the person's last name.

The "phoneN`` fields, on the other hand, can mean different things in different records. There are five such fields in each record, each of which can take on one of eight different values: ''Work``, ''Home``, ''Fax``, ''Other``, ''E-mail``, ''Main``, ''Pager`` and ''Mobile".

The $record->{phoneLabel}{phone*} fields are integers. Each one is an index into @Palm::Address::phoneLabels, and indicates which particular type of phone number each of the $record->{phone*} fields represents.

     $record->{phoneLabel}{display}
 
 

Like the phone* fields above, this is an index into @Palm::Address::phoneLabels. It indicates which of the phone* fields to display in the list view.

     $record->{phoneLabel}{reserved}
 
 

I don't know what this is.

METHODS


new

   $pdb = new Palm::Address;
 
 

Create a new PDB, initialized with the various Palm::Address fields and an empty record list.

Use this method if you're creating an Address PDB from scratch.

new_Record

   $record = $pdb->new_Record;
 
 

Creates a new Address record, with blank values for all of the fields. The AppInfo block will contain only an ``Unfiled'' category, with ID 0.

"new_Record" does not add the new record to $pdb. For that, you want "$pdb->append_Record".

AUTHOR

Andrew Arensburger <arensb@ooblick.com>

SEE ALSO

Palm::PDB(3)

Palm::StdAppInfo(3)

BUGS

The new() method initializes the AppInfo block with English labels and ``United States'' as the country.