NAME
App::Office::Contacts::Import::vCards
- Import vCards for use by App::Office::Contacts
Synopsis
The scripts discussed here, vcards.cgi and vcards.psgi, are shipped with this module.
A classic CGI script, vcards.cgi:
use
strict;
use
warnings;
use
CGI;
# ---------------------
my
(
$cgi
) = CGI -> new;
CGI::Application::Dispatch -> dispatch
(
args_to_new
=> {
QUERY
=>
$cgi
},
prefix
=>
'App::Office::Contacts::Import::vCards::Controller'
,
table
=>
[
''
=> {
app
=>
'Initialize'
,
rm
=>
'display'
},
':app'
=> {
rm
=>
'display'
},
':app/:rm/:id?'
=> {},
],
);
A Plack script, vcards.psgi:
#!/usr/bin/perl
use
strict;
use
warnings;
use
Plack::Builder;
# ---------------------
my
(
$app
) = CGI::Application::Dispatch -> as_psgi
(
prefix
=>
'App::Office::Contacts::Import::vCards::Controller'
,
table
=>
[
''
=> {
app
=>
'Initialize'
,
rm
=>
'display'
},
':app'
=> {
rm
=>
'display'
},
':app/:rm/:id?'
=> {},
],
);
builder
{
enable
"Plack::Middleware::Static"
,
path
=>
qr!^/(assets|yui)/!
,
root
=>
'/var/www'
;
$app
;
};
For more on Plack, see My intro to Plack.
Description
App::Office::Contacts::Import::vCards
implements importing vCards for use by App::Office::Contacts
.
App::Office::Contacts::Import::vCards
uses Moose
.
Distributions
This module is available as a Unix-style distro (*.tgz).
See http://savage.net.au/Perl-modules/html/installing-a-module.html for help on unpacking and installing distros.
Installation Pre-requisites
The primary pre-requisite is App::Office::Contacts
. You should study the documentation for that module before proceeding.
Installing the module
Install App::Office::Contacts::Import::vCards
as you would for any Perl
module:
Run cpan: shell>sudo cpan App::Office::Contacts::Import::vCards
or unpack the distro, and then either:
perl Build.PL
./Build
./Build test
sudo ./Build install
or:
perl Makefile.PL
make (or dmake)
make test
make install
Either way, you'll need to install all the other files which are shipped in the distro.
Install the HTML::Template
files.
Copy the distro's htdocs/assets/ directory to your web server's doc root.
Specifically, my doc root is /var/www/, so I end up with /var/www/assets/.
Install the trivial CGI script and the Plack script
Copy the distro's httpd/cgi-bin/office/ directory to your web server's cgi-bin/ directory, and make vcards.cgi executable.
So, I end up with /usr/lib/cgi-bin/office/import/vcards.cgi.
Now I can run http://127.0.0.1/cgi-bin/office/import/vcards.cgi.
Start testing
Point your broswer at http://127.0.0.1/cgi-bin/import/vcards.cgi (trivial script).
FAQ
- Does the import code guess any values?
-
Yes, both gender and title are derived from the data, rather than being just pieces of data. This means neither of these 2 values are guaranteed to be correct.
Support
Email the author, or log a bug on RT:
https://rt.cpan.org/Public/Dist/Display.html?Name=App-Office-Contacts-Import-vCards
Author
App::Office::Contacts::Import::vCards
was written by Ron Savage <ron@savage.net.au> in 2009.
Home page: http://savage.net.au/index.html
Copyright
Australian copyright (c) 2009, Ron Savage. All Programs of mine are 'OSI Certified Open Source Software'; you can redistribute them and/or modify them under the terms of The Artistic License, a copy of which is available at: http://www.opensource.org/licenses/index.html