The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

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

INHERITANCE

 User::Identity::Location
   is a User::Identity::Collection::Item
   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 User::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 undef. Some methods produce language or country specific output.

METHODS

Initiation

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     
     pobox                          undef     
     pobox_pc                       undef     
     postal_code                    undef     
     state                          undef     
     street                         undef     
     telephone                      undef     
     user          L<User::Identity::Collection::Item>  undef     

    . country STRING

    . country_code STRING

    . description STRING

    . fax STRING|ARRAY

    . name STRING

    . organization STRING

    . pobox STRING

    . pobox_pc STRING

    . postal_code STRING

    . state STRING

    . street STRING

    . telephone STRING|ARRAY

    . user OBJECT

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

$obj->fax

$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

$obj->organization

    The organization (for instance company) which is related to this location.

$obj->pobox

    Post Office mail box specification. Use "P.O.Box 314", not simple 314.

$obj->poboxPostalCode

    The postal code related to the Post-Office mail box. Defined by new() option pobox_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?

$obj->telephone

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

$obj->user([USER])