man User::Identity::Location () - physical location of a person

NAME

User::Identity::Location - physical location of a person

INHERITANCE

 User::Identity::Location
   is a User::Identity::Item

SYNOPSIS

 use User::Identity;
 use User::Identity::Location;
 my $me   = User::Identity->new(...);
 my $addr = User::Identity::Location->new(...);
 $me->add(location => $addr);

 # Simpler

 use User::Identity;
 my $me   = User::Identity->new(...);
 my $addr = $me->add(location => ...);

DESCRIPTION

The CWUser::Identity::Location object contains the description of a physical location of a person: home, work, travel. The locations are collected by a User::Identity::Collection::Locations object.

Nearly all methods can return CWundef. Some methods produce language or country specific output.

METHODS

Constructors

User::Identity::Location->new([NAME], OPTIONS) Create a new location. You can specify a name as first argument, or in the OPTION list. Without a specific name, the organization is used as name.

 Option        Defined in       Default             
 country                        undef               
 country_code                   undef               
 description   L<User::Identity::Item>  undef               
 fax                            undef               
 name          L<User::Identity::Item>  <required>          
 organization                   undef               
 parent        L<User::Identity::Item>  C<undef>            
 pc                             C<undef>            
 phone                          undef               
 pobox                          undef               
 pobox_pc                       undef               
 postal_code                    <value of option pc>
 state                          undef               
 street                         undef
. country STRING . country_code STRING . description STRING . fax STRING|ARRAY . name STRING . organization STRING . parent OBJECT . pc STRING Short name for CWpostal_code. . phone STRING|ARRAY . pobox STRING . pobox_pc STRING . postal_code STRING . state STRING . street STRING

Attributes

$obj->city The city where the address is located.

$obj->country The country where the address is located. If the name of the country is not known but a country code is defined, the name will be looked-up using Geography::Countries (if installed).

$obj->countryCode Each country has an ISO standard abbreviation. Specify the country or the country code, and the other will be filled in automatically.

$obj->description See Attributes in User::Identity::Item

$obj->fax One or more fax numbers, like phone().

$obj->fullAddress Create an address to put on a postal mailing, in the format as normal in the country where it must go to. To be able to achieve that, the country code must be known. If the city is not specified or no street or pobox is given, undef will be returned: an incomplete address. Example:

 print $uil->fullAddress;
 print $user->find(location => 'home')->fullAddress;

$obj->name([NEWNAME]) See Attributes in User::Identity::Item

$obj->organization The organization (for instance company) which is related to this location.

$obj->phone One or more phone numbers. Please use the internation notation, which starts with CW'+', for instance CW+31-26-12131. In scalar context, only the first number is produced. In list context, all numbers are presented.

$obj->pobox Post Office mail box specification. Use CW"P.O.Box 314", not simple CW314.

$obj->poboxPostalCode The postal code related to the Post-Office mail box. Defined by new() option CWpobox_pc.

$obj->postalCode The postal code is very country dependent. Also, the location of the code within the formatted string is country dependent.

$obj->state The state, which is important for some contries but certainly not for the smaller ones. Only set this value when you state has to appear on printed addresses.

$obj->street Returns the address of this location. Since Perl 5.7.3, you can use unicode in strings, so why not format the address nicely?

Collections

$obj->add(COLLECTION, ROLE) See Collections in User::Identity::Item

$obj->addCollection(OBJECT | ([TYPE], OPTIONS)) See Collections in User::Identity::Item

$obj->collection(NAME) See Collections in User::Identity::Item

$obj->find(COLLECTION, ROLE) See Collections in User::Identity::Item

$obj->parent([PARENT]) See Collections in User::Identity::Item

$obj->removeCollection(OBJECT|NAME) See Collections in User::Identity::Item

$obj->type

User::Identity::Location->type See Collections in User::Identity::Item

$obj->user See Collections in User::Identity::Item

DIAGNOSTICS

Error: CW$object is not a collection.

The first argument is an object, but not of a class which extends User::Identity::Collection.

Error: Cannot load collection module for CW$type ($class).

Either the specified CW$type does not exist, or that module named CW$class returns compilation errors. If the type as specified in the warning is not the name of a package, you specified a nickname which was not defined. Maybe you forgot the 'require' the package which defines the nickname.

Error: Creation of a collection via CW$class failed.

The CW$class did compile, but it was not possible to create an object of that class using the options you specified.

Error: Don't know what type of collection you want to add.

If you add a collection, it must either by a collection object or a list of options which can be used to create a collection object. In the latter case, the type of collection must be specified.

Warning: No collection CW$name

The collection with CW$name does not exist and can not be created.

REFERENCES

See the User::Identity website at <http://perl.overmeer.net/userid/> for more details.

COPYRIGHTS

User::Identity version 0.90. Written by Mark Overmeer (mark@overmeer.net). See the ChangeLog for other contributors.

Copyright (c) 2003 by the author(s). All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.