GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  SQLITE::WORK::MAIL (3)

.ds Aq ’

NAME

SQLite::Work::Mail - send mail with data from an SQLite table.

CONTENTS

VERSION

version 0.1601

SYNOPSIS



    use SQLite::Work::Mail;

    my $obj = SQLite::Work::Mail->new(%args);

    $obj->send_mail(%args);



DESCRIPTION

This module is an expansion of SQLite::Work used for sending email populated by row(s) from a table in an SQLite database.

CLASS METHODS

    new

my $obj = SQLite::Work::Mail->new(
database=>$database_file,
report_template=>$report_template,
default_format=>{
         ’episodes’ => {
                ’title’=>’title’,
                ’series_title’=>’title’,
         }
        },
},
);

Make a new report object.

Takes the same arguments as SQLite::Work::new().

OBJECT METHODS

    send_email

$obj->send_email();



    $rep->send_email(
        table=>$table,
        where=>\%where,
        not_where=>\%not_where,
        subject=>My Mail,
        email_col=>$email_col,
        email_address=>\@addresses,
        mailer=>$mailer,
        sort_by=>\@sort_by,
        sort_reversed=>\%sort_reversed,
        show=>\@show,
        limit=>$limit,
        page=>$page,
        row_template=>$row_template,
    );



Select data from a table in the database, and send each row as a separate email.

Arguments are as follows (in alphabetical order):
email_address An array of email addresses to send the email to. If this is given, this will send an email for each matching row, to each address in the array. Useful for broadcast mailing.

Give either this option or the ’email_col’ option.

email_col The name of the column to take email addresses from. If this is given, then each row is sent to the email address value in that column for that row. Useful for individual notification.

Give either this option or the ’email_address’ option.

limit The maximum number of rows to display per page. If this is zero, then all rows are displayed in one page.
mailer The name of the mailing program to use. Allowable values are ’mutt’, sendmail, mail, and elm.
not_where A hash containing the column names where the selection criteria in where should be negated.
page Select which page to generate, if limit is not zero.
row_template The template for each row. This uses the same format as for headers. If none is given, then a default row_template will be generated, depending on which columns are going to be shown (see show).

Therefore it is important that if one provides a row_template, that it matches the current layout.

The format is as follows:
{$colname} A variable; will display the value of the column, or nothing if that value is empty.
{?colname stuff [$colname] more stuff} A conditional. If the value of ’colname’ is not empty, this will display stuff value-of-column more stuff; otherwise it displays nothing.



    {?col1 stuff [$col1] thing [$col2]}



This would use both the values of col1 and col2 if col1 is not empty.

{?colname stuff [$colname] more stuff!!other stuff} A conditional with else. If the value of ’colname’ is not empty, this will display stuff value-of-column more stuff; otherwise it displays other stuff.

This version can likewise use multiple columns in its display parts.



    {?col1 stuff [$col1] thing [$col2]!![$col3]}



show An array of columns to select; also the order in which they should be shown when a row_template has not been given.
sort_by An array of column names by which the result should be sorted.
sort_reversed A hash of column names where the sorting given in sort_by should be reversed.
subject A template for the Subject: line of the emails.
table The table to report on. (required)
where A hash containing selection criteria. The keys are the column names and the values are strings suitable for using in a LIKE condition; that is, ’%’ is a multi-character wildcard, and ’_’ is a single-character wildcard. All the conditions will be ANDed together.

Yes, this is limited and doesn’t use the full power of SQL, but it’s useful enough for most purposes.

Private Methods

    send_one_email

    send_the_actual_mail

REQUIRES



    SQLite::Work
    CGI

    Test::More



INSTALLATION

To install this module, run the following commands:



    perl Build.PL
    ./Build
    ./Build test
    ./Build install



Or, if you’re on a platform (like DOS or Windows) that doesn’t like the ./ notation, you can do this:



   perl Build.PL
   perl Build
   perl Build test
   perl Build install



In order to install somewhere other than the default, such as in a directory under your home directory, like /home/fred/perl go



   perl Build.PL --install_base /home/fred/perl



as the first step instead.

This will install the files underneath /home/fred/perl.

You will then need to make sure that you alter the PERL5LIB variable to find the modules, and the PATH variable to find the script.

Therefore you will need to change: your path, to include /home/fred/perl/script (where the script will be)



        PATH=/home/fred/perl/script:${PATH}



the PERL5LIB variable to add /home/fred/perl/lib



        PERL5LIB=/home/fred/perl/lib:${PERL5LIB}



SEE ALSO

perl(1).

BUGS

Please report any bugs or feature requests to the author.

AUTHOR



    Kathryn Andersen (RUBYKAT)
    perlkat AT katspace dot com
    http://www.katspace.com



COPYRIGHT AND LICENCE

Copyright (c) 2005 by Kathryn Andersen

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 SQLITE::WORK::MAIL (3) 2016-04-04

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.