From 51984ac3d3da3006809c6866fdecd4ad83610731 Mon Sep 17 00:00:00 2001 From: ivan Date: Mon, 30 Jul 2001 07:36:04 +0000 Subject: templates!!! --- httemplate/docs/man/FS.html | 138 +++++++++++ httemplate/docs/man/FS/Bill.html | 32 +++ httemplate/docs/man/FS/CGI.html | 95 +++++++ httemplate/docs/man/FS/CGIwrapper.html | 16 ++ httemplate/docs/man/FS/Conf.html | 81 ++++++ httemplate/docs/man/FS/Invoice.html | 32 +++ httemplate/docs/man/FS/Record.html | 342 ++++++++++++++++++++++++++ httemplate/docs/man/FS/SessionClient.html | 97 ++++++++ httemplate/docs/man/FS/SignupClient.html | 125 ++++++++++ httemplate/docs/man/FS/UI/Base.html | 100 ++++++++ httemplate/docs/man/FS/UI/CGI.html | 94 +++++++ httemplate/docs/man/FS/UI/Gtk.html | 91 +++++++ httemplate/docs/man/FS/UI/agent.html | 16 ++ httemplate/docs/man/FS/UID.html | 142 +++++++++++ httemplate/docs/man/FS/agent.html | 121 +++++++++ httemplate/docs/man/FS/agent_type.html | 126 ++++++++++ httemplate/docs/man/FS/cust_bill.html | 161 ++++++++++++ httemplate/docs/man/FS/cust_bill_pkg.html | 112 +++++++++ httemplate/docs/man/FS/cust_credit.html | 118 +++++++++ httemplate/docs/man/FS/cust_main.html | 279 +++++++++++++++++++++ httemplate/docs/man/FS/cust_main_county.html | 106 ++++++++ httemplate/docs/man/FS/cust_main_invoice.html | 114 +++++++++ httemplate/docs/man/FS/cust_pay.html | 108 ++++++++ httemplate/docs/man/FS/cust_pay_batch.html | 132 ++++++++++ httemplate/docs/man/FS/cust_pkg.html | 205 +++++++++++++++ httemplate/docs/man/FS/cust_refund.html | 108 ++++++++ httemplate/docs/man/FS/cust_svc.html | 118 +++++++++ httemplate/docs/man/FS/domain_record.html | 124 ++++++++++ httemplate/docs/man/FS/nas.html | 117 +++++++++ httemplate/docs/man/FS/part_pkg.html | 138 +++++++++++ httemplate/docs/man/FS/part_referral.html | 100 ++++++++ httemplate/docs/man/FS/part_svc.html | 110 +++++++++ httemplate/docs/man/FS/pkg_svc.html | 115 +++++++++ httemplate/docs/man/FS/port.html | 120 +++++++++ httemplate/docs/man/FS/prepay_credit.html | 118 +++++++++ httemplate/docs/man/FS/session.html | 129 ++++++++++ httemplate/docs/man/FS/svc_Common.html | 94 +++++++ httemplate/docs/man/FS/svc_acct.html | 219 +++++++++++++++++ httemplate/docs/man/FS/svc_acct_pop.html | 107 ++++++++ httemplate/docs/man/FS/svc_acct_sm.html | 141 +++++++++++ httemplate/docs/man/FS/svc_domain.html | 162 ++++++++++++ httemplate/docs/man/FS/svc_www.html | 150 +++++++++++ httemplate/docs/man/FS/type_pkgs.html | 100 ++++++++ 43 files changed, 5253 insertions(+) create mode 100644 httemplate/docs/man/FS.html create mode 100644 httemplate/docs/man/FS/Bill.html create mode 100644 httemplate/docs/man/FS/CGI.html create mode 100644 httemplate/docs/man/FS/CGIwrapper.html create mode 100644 httemplate/docs/man/FS/Conf.html create mode 100644 httemplate/docs/man/FS/Invoice.html create mode 100644 httemplate/docs/man/FS/Record.html create mode 100644 httemplate/docs/man/FS/SessionClient.html create mode 100644 httemplate/docs/man/FS/SignupClient.html create mode 100644 httemplate/docs/man/FS/UI/Base.html create mode 100644 httemplate/docs/man/FS/UI/CGI.html create mode 100644 httemplate/docs/man/FS/UI/Gtk.html create mode 100644 httemplate/docs/man/FS/UI/agent.html create mode 100644 httemplate/docs/man/FS/UID.html create mode 100644 httemplate/docs/man/FS/agent.html create mode 100644 httemplate/docs/man/FS/agent_type.html create mode 100644 httemplate/docs/man/FS/cust_bill.html create mode 100644 httemplate/docs/man/FS/cust_bill_pkg.html create mode 100644 httemplate/docs/man/FS/cust_credit.html create mode 100644 httemplate/docs/man/FS/cust_main.html create mode 100644 httemplate/docs/man/FS/cust_main_county.html create mode 100644 httemplate/docs/man/FS/cust_main_invoice.html create mode 100644 httemplate/docs/man/FS/cust_pay.html create mode 100644 httemplate/docs/man/FS/cust_pay_batch.html create mode 100644 httemplate/docs/man/FS/cust_pkg.html create mode 100644 httemplate/docs/man/FS/cust_refund.html create mode 100644 httemplate/docs/man/FS/cust_svc.html create mode 100644 httemplate/docs/man/FS/domain_record.html create mode 100644 httemplate/docs/man/FS/nas.html create mode 100644 httemplate/docs/man/FS/part_pkg.html create mode 100644 httemplate/docs/man/FS/part_referral.html create mode 100644 httemplate/docs/man/FS/part_svc.html create mode 100644 httemplate/docs/man/FS/pkg_svc.html create mode 100644 httemplate/docs/man/FS/port.html create mode 100644 httemplate/docs/man/FS/prepay_credit.html create mode 100644 httemplate/docs/man/FS/session.html create mode 100644 httemplate/docs/man/FS/svc_Common.html create mode 100644 httemplate/docs/man/FS/svc_acct.html create mode 100644 httemplate/docs/man/FS/svc_acct_pop.html create mode 100644 httemplate/docs/man/FS/svc_acct_sm.html create mode 100644 httemplate/docs/man/FS/svc_domain.html create mode 100644 httemplate/docs/man/FS/svc_www.html create mode 100644 httemplate/docs/man/FS/type_pkgs.html (limited to 'httemplate/docs/man') diff --git a/httemplate/docs/man/FS.html b/httemplate/docs/man/FS.html new file mode 100644 index 000000000..23e8ca42f --- /dev/null +++ b/httemplate/docs/man/FS.html @@ -0,0 +1,138 @@ + + +FS - Freeside Perl modules + + + + + + + + + + + +
+

+

NAME

+

FS - Freeside Perl modules

+

+


+

SYNOPSIS

+

FS is the unofficial (i.e. non-CPAN) prefix for the Perl module portion of the +Freeside ISP billing software. This includes:

+

+

Utility classes

+

the FS::Conf manpage - Freeside configuration values

+

the FS::UID manpage - User class (not yet OO)

+

the FS::CGI manpage - Non OO-subroutines for the web interface. This is +depriciated. Future development will be focused on the FS::UI user-interface +classes (see below).

+

+

Database record classes

+

the FS::Record manpage - Database record base class

+

the FS::svc_acct_pop manpage - POP (Point of Presence, not Post +Office Protocol) class

+

the FS::part_referral manpage - Referral class

+

the FS::cust_main_county manpage - Locale (tax rate) class

+

the FS::svc_Common manpage - Service base class

+

the FS::svc_acct manpage - Account (shell, RADIUS, POP3) class

+

the FS::svc_domain manpage - Domain class

+

the FS::domain_record manpage - DNS zone entries

+

the FS::svc_acct_sm manpage - Vitual mail alias class

+

the FS::svc_www manpage - Web virtual host class.

+

the FS::part_svc manpage - Service definition class

+

the FS::part_pkg manpage - Package (billing item) definition class

+

the FS::pkg_svc manpage - Class linking package (billing item) +definitions (see the FS::part_pkg manpage) with service definitions +(see the FS::part_svc manpage)

+

the FS::agent manpage - Agent (reseller) class

+

the FS::agent_type manpage - Agent type class

+

the FS::type_pkgs manpage - Class linking agent types (see +the FS::agent_type manpage) with package (billing item) definitions +(see the FS::part_pkg manpage)

+

the FS::cust_svc manpage - Service class

+

the FS::cust_pkg manpage - Package (billing item) class

+

the FS::cust_main manpage - Customer class

+

the FS::cust_main_invoice manpage - Invoice destination +class

+

the FS::cust_bill manpage - Invoice class

+

the FS::cust_bill_pkg manpage - Invoice line item class

+

the FS::cust_pay manpage - Payment class

+

the FS::cust_credit manpage - Credit class

+

the FS::cust_refund manpage - Refund class

+

the FS::cust_pay_batch manpage - Credit card transaction queue class

+

the FS::prepay_credit manpage - Prepaid ``calling card'' credit class.

+

the FS::nas manpage - Network Access Server class

+

the FS::port manpage - NAS port class

+

the FS::session manpage - User login session class

+

+

User Interface classes (under development; not yet usable)

+

the FS::UI::Base manpage - User-interface base class

+

the FS::UI::Gtk manpage - Gtk user-interface class

+

the FS::UI::CGI manpage - CGI (HTML) user-interface class

+

the FS::UI::agent manpage - agent table user-interface class

+

+

Notes

+

To quote perl(1), ``If you're intending to read these straight through for the +first time, the suggested order will tend to reduce the number of forward +references.''

+

+


+

DESCRIPTION

+

Freeside is a billing and administration package for Internet Service +Providers.

+

The Freeside home page is at <http://www.sisd.com/freeside>.

+

The main documentation is in htdocs/docs.

+

+


+

VERSION

+

$Id: FS.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

+

+


+

SUPPORT

+

A mailing list for users and developers is available. Send a blank message to +<ivan-freeside-subscribe@sisd.com> to subscribe.

+

Commercial support is available; see +<http://www.sisd.com/freeside/commercial.html>.

+

+


+

AUTHOR

+

Primarily Ivan Kohler <ivan@sisd.com>, with help from many kind folks.

+

See the CREDITS file in the Freeside distribution for a (hopefully) complete +list and the individal files for details.

+

+


+

SEE ALSO

+

perl(1), main Freeside documentation in htdocs/docs/

+

+


+

BUGS

+

The version number of the FS Perl extension differs from the version of the +Freeside distribution, which are both different from the CVS version tag for +each file, which appears under the VERSION heading.

+

Those modules which would be useful separately should be pulled out, +renamed appropriately and uploaded to CPAN. So far: DBIx::DBSchema, Net::SSH +and Net::SCP...

+ + + + diff --git a/httemplate/docs/man/FS/Bill.html b/httemplate/docs/man/FS/Bill.html new file mode 100644 index 000000000..cf996ae80 --- /dev/null +++ b/httemplate/docs/man/FS/Bill.html @@ -0,0 +1,32 @@ + + +FS::Bill - Legacy stub + + + + + + + + + + +
+

+

NAME

+

+FS::Bill - Legacy stub + +

+


+

SYNOPSIS

+

+The functionality of FS::Bill has been integrated into FS::cust_main. + + + + diff --git a/httemplate/docs/man/FS/CGI.html b/httemplate/docs/man/FS/CGI.html new file mode 100644 index 000000000..05f7823b4 --- /dev/null +++ b/httemplate/docs/man/FS/CGI.html @@ -0,0 +1,95 @@ + + +FS::CGI - Subroutines for the web interface + + + + + + + + +

+ + +
+

+

NAME

+

FS::CGI - Subroutines for the web interface

+

+


+

SYNOPSIS

+
+  use FS::CGI qw(header menubar idiot eidiot popurl);
+
+  print header( 'Title', '' );
+  print header( 'Title', menubar('item', 'URL', ... ) );
+
+  idiot "error message"; 
+  eidiot "error message";
+
+  $url = popurl; #returns current url
+  $url = popurl(3); #three levels up
+

+


+

DESCRIPTION

+

Provides a few common subroutines for the web interface.

+

+


+

SUBROUTINES

+
+
header TITLE, MENUBAR
+
+Returns an HTML header. +

+
menubar ITEM, URL, ...
+
+Returns an HTML menubar. +

+
idiot ERROR
+
+This is depriciated. Don't use it. +

Sends headers and an HTML error message.

+

+
eidiot ERROR
+
+This is depriciated. Don't use it. +

Sends headers and an HTML error message, then exits.

+

+
popurl LEVEL
+
+Returns current URL with LEVEL levels of path removed from the end (default 0). +

+
table
+
+Returns HTML tag for beginning a table. +

+
itable
+
+Returns HTML tag for beginning an (invisible) table. +

+
ntable
+
+This is getting silly. +

+

+


+

BUGS

+

Not OO.

+

Not complete.

+

+


+

SEE ALSO

+

the CGI manpage, the CGI::Base manpage

+ + + + diff --git a/httemplate/docs/man/FS/CGIwrapper.html b/httemplate/docs/man/FS/CGIwrapper.html new file mode 100644 index 000000000..bab5e7f37 --- /dev/null +++ b/httemplate/docs/man/FS/CGIwrapper.html @@ -0,0 +1,16 @@ + + +./FS/FS/CGIwrapper.pm + + + + + + + + + + + + + diff --git a/httemplate/docs/man/FS/Conf.html b/httemplate/docs/man/FS/Conf.html new file mode 100644 index 000000000..7b1613efd --- /dev/null +++ b/httemplate/docs/man/FS/Conf.html @@ -0,0 +1,81 @@ + + +FS::Conf - Read access to Freeside configuration values + + + + + + + + + + + +
+

+

NAME

+

FS::Conf - Read access to Freeside configuration values

+

+


+

SYNOPSIS

+
+  use FS::Conf;
+
+  $conf = new FS::Conf "/config/directory";
+
+  $FS::Conf::default_dir = "/config/directory";
+  $conf = new FS::Conf;
+
+  $dir = $conf->dir;
+
+  $value = $conf->config('key');
+  @list  = $conf->config('key');
+  $bool  = $conf->exists('key');
+

+


+

DESCRIPTION

+

Read access to Freeside configuration values. Keys currently map to filenames, +but this may change in the future.

+

+


+

METHODS

+
+
new [ DIRECTORY ]
+
+Create a new configuration object. A directory arguement is required if +$FS::Conf::default_dir has not been set. +

+
dir
+
+Returns the directory. +

+
config
+
+Returns the configuration value or values (depending on context) for key. +

+
exists
+
+Returns true if the specified key exists, even if the corresponding value +is undefined. +

+

+


+

BUGS

+

Write access (with locking) should be implemented.

+

+


+

SEE ALSO

+

config.html from the base documentation contains a list of configuration files.

+ + + + diff --git a/httemplate/docs/man/FS/Invoice.html b/httemplate/docs/man/FS/Invoice.html new file mode 100644 index 000000000..cc837be2e --- /dev/null +++ b/httemplate/docs/man/FS/Invoice.html @@ -0,0 +1,32 @@ + + +FS::Invoice - Legacy stub + + + + + + + + + + +
+

+

NAME

+

+FS::Invoice - Legacy stub + +

+


+

SYNOPSIS

+

+The functionality of FS::Invoice has been integrated in FS::cust_bill. + + + + diff --git a/httemplate/docs/man/FS/Record.html b/httemplate/docs/man/FS/Record.html new file mode 100644 index 000000000..09304083f --- /dev/null +++ b/httemplate/docs/man/FS/Record.html @@ -0,0 +1,342 @@ + + +FS::Record - Database record objects + + + + + + + + +

+ + +
+

+

NAME

+

FS::Record - Database record objects

+

+


+

SYNOPSIS

+
+    use FS::Record;
+    use FS::Record qw(dbh fields qsearch qsearchs dbdef);
+
+    $record = new FS::Record 'table', \%hash;
+    $record = new FS::Record 'table', { 'column' => 'value', ... };
+
+    $record  = qsearchs FS::Record 'table', \%hash;
+    $record  = qsearchs FS::Record 'table', { 'column' => 'value', ... };
+    @records = qsearch  FS::Record 'table', \%hash; 
+    @records = qsearch  FS::Record 'table', { 'column' => 'value', ... };
+
+    $table = $record->table;
+    $dbdef_table = $record->dbdef_table;
+
+    $value = $record->get('column');
+    $value = $record->getfield('column');
+    $value = $record->column;
+
+    $record->set( 'column' => 'value' );
+    $record->setfield( 'column' => 'value' );
+    $record->column('value');
+
+    %hash = $record->hash;
+
+    $hashref = $record->hashref;
+
+    $error = $record->insert;
+    #$error = $record->add; #depriciated
+
+    $error = $record->delete;
+    #$error = $record->del; #depriciated
+
+    $error = $new_record->replace($old_record);
+    #$error = $new_record->rep($old_record); #depriciated
+
+    $value = $record->unique('column');
+
+    $value = $record->ut_float('column');
+    $value = $record->ut_number('column');
+    $value = $record->ut_numbern('column');
+    $value = $record->ut_money('column');
+    $value = $record->ut_text('column');
+    $value = $record->ut_textn('column');
+    $value = $record->ut_alpha('column');
+    $value = $record->ut_alphan('column');
+    $value = $record->ut_phonen('column');
+    $value = $record->ut_anythingn('column');
+
+    $dbdef = reload_dbdef;
+    $dbdef = reload_dbdef "/non/standard/filename";
+    $dbdef = dbdef;
+
+    $quoted_value = _quote($value,'table','field');
+
+    #depriciated
+    $fields = hfields('table');
+    if ( $fields->{Field} ) { # etc.
+
+    @fields = fields 'table'; #as a subroutine
+    @fields = $record->fields; #as a method call
+

+


+

DESCRIPTION

+

(Mostly) object-oriented interface to database records. Records are currently +implemented on top of DBI. FS::Record is intended as a base class for +table-specific classes to inherit from, i.e. FS::cust_main.

+

+


+

CONSTRUCTORS

+
+
new [ TABLE, ] HASHREF
+
+Creates a new record. It doesn't store it in the database, though. See +insert for that. +

Note that the object stores this hash reference, not a distinct copy of the +hash it points to. You can ask the object for a copy with the hash +method.

+

TABLE can only be omitted when a dervived class overrides the table method.

+

+
qsearch TABLE, HASHREF, SELECT, EXTRA_SQL
+
+Searches the database for all records matching (at least) the key/value pairs +in HASHREF. Returns all the records found as `FS::TABLE' objects if that +module is loaded (i.e. via `use FS::cust_main;'), otherwise returns FS::Record +objects. +

###oops, argh, FS::Record::new only lets us create database fields. +#Normal behaviour if SELECT is not specified is `*', as in +#SELECT * FROM table WHERE .... However, there is an experimental new +#feature where you can specify SELECT - remember, the objects returned, +#although blessed into the appropriate `FS::TABLE' package, will only have the +#fields you specify. This might have unwanted results if you then go calling +#regular FS::TABLE methods +#on it.

+

+
qsearchs TABLE, HASHREF
+
+Same as qsearch, except that if more than one record matches, it carps but +returns the first. If this happens, you either made a logic error in asking +for a single item, or your data is corrupted. +

+

+


+

METHODS

+
+
table
+
+Returns the table name. +

+
dbdef_table
+
+Returns the FS::dbdef_table object for the table. +

+
get, getfield COLUMN
+
+Returns the value of the column/field/key COLUMN. +

+
set, setfield COLUMN, VALUE
+
+Sets the value of the column/field/key COLUMN to VALUE. Returns VALUE. +

+
AUTLOADED METHODS
+
+$record->column is a synonym for $record->get('column'); +

$record->column('value') is a synonym for $record->set('column','value');

+

+
hash
+
+Returns a list of the column/value pairs, usually for assigning to a new hash. +

To make a distinct duplicate of an FS::Record object, you can do:

+
+    $new = new FS::Record ( $old->table, { $old->hash } );
+

+
hashref
+
+Returns a reference to the column/value hash. +

+
insert
+
+Inserts this record to the database. If there is an error, returns the error, +otherwise returns false. +

+
add
+
+Depriciated (use insert instead). +

+
delete
+
+Delete this record from the database. If there is an error, returns the error, +otherwise returns false. +

+
del
+
+Depriciated (use delete instead). +

+
replace OLD_RECORD
+
+Replace the OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. +

+
rep
+
+Depriciated (use replace instead). +

+
check
+
+Not yet implemented, croaks. Derived classes should provide a check method. +

+
unique COLUMN
+
+Replaces COLUMN in record with a unique number. Called by the add method +on primary keys and single-field unique columns (see the DBIx::DBSchema::Table manpage). +Returns the new value. +

+
ut_float COLUMN
+
+Check/untaint floating point numeric data: 1.1, 1, 1.1e10, 1e10. May not be +null. If there is an error, returns the error, otherwise returns false. +

+
ut_number COLUMN
+
+Check/untaint simple numeric data (whole numbers). May not be null. If there +is an error, returns the error, otherwise returns false. +

+
ut_numbern COLUMN
+
+Check/untaint simple numeric data (whole numbers). May be null. If there is +an error, returns the error, otherwise returns false. +

+
ut_money COLUMN
+
+Check/untaint monetary numbers. May be negative. Set to 0 if null. If there +is an error, returns the error, otherwise returns false. +

+
ut_text COLUMN
+
+Check/untaint text. Alphanumerics, spaces, and the following punctuation +symbols are currently permitted: ! @ # $ % & ( ) - + ; : ' `` , . ? / +May not be null. If there is an error, returns the error, otherwise returns +false. +

+
ut_textn COLUMN
+
+Check/untaint text. Alphanumerics, spaces, and the following punctuation +symbols are currently permitted: ! @ # $ % & ( ) - + ; : ' `` , . ? / +May be null. If there is an error, returns the error, otherwise returns false. +

+
ut_alpha COLUMN
+
+Check/untaint alphanumeric strings (no spaces). May not be null. If there is +an error, returns the error, otherwise returns false. +

+
ut_alpha COLUMN
+
+Check/untaint alphanumeric strings (no spaces). May be null. If there is an +error, returns the error, otherwise returns false. +

+
ut_phonen COLUMN [ COUNTRY ]
+
+Check/untaint phone numbers. May be null. If there is an error, returns +the error, otherwise returns false. +

Takes an optional two-letter ISO country code; without it or with unsupported +countries, ut_phonen simply calls ut_alphan.

+

+
ut_ip COLUMN
+
+Check/untaint ip addresses. IPv4 only for now. +

+
ut_ipn COLUMN
+
+Check/untaint ip addresses. IPv4 only for now. May be null. +

+
ut_domain COLUMN
+
+Check/untaint host and domain names. +

+
ut_anything COLUMN
+
+Untaints arbitrary data. Be careful. +

+
fields [ TABLE ]
+
+This can be used as both a subroutine and a method call. It returns a list +of the columns in this record's table, or an explicitly specified table. +(See the DBIx::DBSchema::Table manpage). +

+

+


+

SUBROUTINES

+
+
reload_dbdef([FILENAME])
+
+Load a database definition (see the DBIx::DBSchema manpage), optionally from a +non-default filename. This command is executed at startup unless +$FS::Record::setup_hack is true. Returns a DBIx::DBSchema object. +

+
dbdef
+
+Returns the current database definition. See the FS::dbdef manpage. +

+
_quote VALUE, TABLE, COLUMN
+
+This is an internal function used to construct SQL statements. It returns +VALUE DBI-quoted (see DBI/``quote'') unless VALUE is a number and the column +type (see the FS::dbdef_column manpage) does not end in `char' or `binary'. +

+
hfields TABLE
+
+This is depriciated. Don't use it. +

It returns a hash-type list with the fields of this record's table set true.

+

+

+


+

VERSION

+

$Id: Record.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

+

+


+

BUGS

+

This module should probably be renamed, since much of the functionality is +of general use. It is not completely unlike Adapter::DBI (see below).

+

Exported qsearch and qsearchs should be depriciated in favor of method calls +(against an FS::Record object like the old search and searchs that qsearch +and qsearchs were on top of.)

+

The whole fields / hfields mess should be removed.

+

The various WHERE clauses should be subroutined.

+

table string should be depriciated in favor of FS::dbdef_table.

+

No doubt we could benefit from a Tied hash. Documenting how exists / defined +true maps to the database (and WHERE clauses) would also help.

+

The ut_ methods should ask the dbdef for a default length.

+

ut_sqltype (like ut_varchar) should all be defined

+

A fallback check method should be provided which uses the dbdef.

+

The ut_money method assumes money has two decimal digits.

+

The Pg money kludge in the new method only strips `$'.

+

The ut_phonen method assumes US-style phone numbers.

+

The _quote function should probably use ut_float instead of a regex.

+

All the subroutines probably should be methods, here or elsewhere.

+

Probably should borrow/use some dbdef methods where appropriate (like sub +fields)

+

As of 1.14, DBI fetchall_hashref( {} ) doesn't set fetchrow_hashref NAME_lc, +or allow it to be set. Working around it is ugly any way around - DBI should +be fixed. (only affects RDBMS which return uppercase column names)

+

+


+

SEE ALSO

+

the DBIx::DBSchema manpage, the FS::UID manpage, DBI

+

Adapter::DBI from Ch. 11 of Advanced Perl Programming by Sriram Srinivasan.

+ + + + diff --git a/httemplate/docs/man/FS/SessionClient.html b/httemplate/docs/man/FS/SessionClient.html new file mode 100644 index 000000000..615f35e0e --- /dev/null +++ b/httemplate/docs/man/FS/SessionClient.html @@ -0,0 +1,97 @@ + + +FS::SessionClient - Freeside session client API + + + + + + + + + + + +
+

+

NAME

+

FS::SessionClient - Freeside session client API

+

+


+

SYNOPSIS

+
+  use FS::SessionClient qw( login portnum logout );
+
+  $error = login ( {
+    'username' => $username,
+    'password' => $password,
+    'login'    => $timestamp,
+    'portnum'  => $portnum,
+  } );
+
+  $portnum = portnum( { 'ip' => $ip } ) or die "unknown ip!"
+  $portnum = portnum( { 'nasnum' => $nasnum, 'nasport' => $nasport } )
+    or die "unknown nasnum/nasport";
+
+  $error = logout ( {
+    'username' => $username,
+    'password' => $password,
+    'logout'   => $timestamp,
+    'portnum'  => $portnum,
+  } );
+

+


+

DESCRIPTION

+

This modules provides an API for a remote session application.

+

It needs to be run as the freeside user. Because of this, the program which +calls these subroutines should be written very carefully.

+

+


+

SUBROUTINES

+
+
login HASHREF
+
+HASHREF should have the following keys: username, password, login and portnum. +login is a UNIX timestamp; if not specified, will default to the current time. +Starts a new session for the specified user and portnum. The password is +optional, but must be correct if specified. +

Returns a scalar error message, or the empty string for success.

+

+
portnum
+
+HASHREF should contain a single key: ip, or the two keys: nasnum and nasport. +Returns a portnum suitable for the login and logout subroutines, or false +on error. +

+
logout HASHREF
+
+HASHREF should have the following keys: usrename, password, logout and portnum. +logout is a UNIX timestamp; if not specified, will default to the current time. +Starts a new session for the specified user and portnum. The password is +optional, but must be correct if specified. +

Returns a scalar error message, or the empty string for success.

+

+

+


+

VERSION

+

$Id: SessionClient.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

+

+


+

BUGS

+

+


+

SEE ALSO

+

fs_sessiond

+ + + + diff --git a/httemplate/docs/man/FS/SignupClient.html b/httemplate/docs/man/FS/SignupClient.html new file mode 100644 index 000000000..844f64f33 --- /dev/null +++ b/httemplate/docs/man/FS/SignupClient.html @@ -0,0 +1,125 @@ + + +FS::SignupClient - Freeside signup client API + + + + + + + + + + +
+

+

NAME

+

+FS::SignupClient - Freeside signup client API + +

+


+

SYNOPSIS

+

+

  use FS::SignupClient qw( signup_info new_customer );
+
+

+

  ( $locales, $packages, $pops ) = signup_info;
+
+

+

  $error = new_customer ( {
+    'first'          => $first,
+    'last'           => $last,
+    'ss'             => $ss,
+    'comapny'        => $company,
+    'address1'       => $address1,
+    'address2'       => $address2,
+    'city'           => $city,
+    'county'         => $county,
+    'state'          => $state,
+    'zip'            => $zip,
+    'country'        => $country,
+    'daytime'        => $daytime,
+    'night'          => $night,
+    'fax'            => $fax,
+    'payby'          => $payby,
+    'payinfo'        => $payinfo,
+    'paydate'        => $paydate,
+    'payname'        => $payname,
+    'invoicing_list' => $invoicing_list,
+    'pkgpart'        => $pkgpart,
+    'username'       => $username,
+    '_password'       => $password,
+    'popnum'         => $popnum,
+  } );
+
+

+


+

DESCRIPTION

+

+This module provides an API for a remote signup server. + +

+It needs to be run as the freeside user. Because of this, the program which +calls these subroutines should be written very carefully. + +

+


+

SUBROUTINES

+
+
signup_info
+

+Returns three array references of hash references. + +

+The first set of hash references is of allowable locales. Each hash +reference has the following keys: taxnum state county country + +

+The second set of hash references is of allowable packages. Each hash +reference has the following keys: pkgpart pkg + +

+The third set of hash references is of allowable POPs (Points Of Presence). +Each hash reference has the following keys: popnum city state ac exch + +

new_customer HASHREF
+

+Adds a customer to the remote Freeside system. Requires a hash reference as +a paramater with the following keys: first last ss comapny address1 +address2 city county state zip country daytime night fax payby payinfo +paydate payname invoicing_list pkgpart username _password popnum + +

+Returns a scalar error message, or the empty string for success. + +

+

+


+

VERSION

+

+$Id: SignupClient.html,v 1.1 2001-07-30 07:36:03 ivan Exp $ + +

+


+

BUGS

+

+


+

SEE ALSO

+

+fs_signupd, FS::SignupServer, FS::cust_main + + + + + + diff --git a/httemplate/docs/man/FS/UI/Base.html b/httemplate/docs/man/FS/UI/Base.html new file mode 100644 index 000000000..445fd0d0b --- /dev/null +++ b/httemplate/docs/man/FS/UI/Base.html @@ -0,0 +1,100 @@ + + +FS::UI::Base - Base class for all user-interface objects + + + + + + + + +

+ + +
+

+

NAME

+

FS::UI::Base - Base class for all user-interface objects

+

+


+

SYNOPSIS

+
+  use FS::UI::SomeInterface;
+  use FS::UI::some_table;
+
+  $interface = new FS::UI::some_table;
+
+  $error = $interface->browse;
+  $error = $interface->search;
+  $error = $interface->view;
+  $error = $interface->edit;
+  $error = $interface->process;
+

+


+

DESCRIPTION

+

An FS::UI::Base object represents a user interface object. FS::UI::Base +is intended as a base class for table-specfic classes to inherit from, i.e. +FS::UI::cust_main. The simplest case, which will provide a default UI for your +new table, is as follows:

+
+  package FS::UI::table_name;
+  use vars qw ( @ISA );
+  use FS::UI::Base;
+  @ISA = qw( FS::UI::Base );
+  sub db_table { 'table_name'; }
+

Currently available interfaces are: + FS::UI::Gtk, an X-Windows UI implemented using the Gtk+ toolkit + FS::UI::CGI, a web interface implemented using CGI.pm, etc.

+

+


+

METHODS

+
+
new
+
+
browse
+
+
title
+
+
addwidget
+
+
+

+


+

VERSION

+

$Id: Base.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

+

+


+

BUGS

+

This documentation is incomplete.

+

There should be some sort of per-(freeside)-user preferences and the ability +for specific FS::UI:: modules to put their own values there as well.

+

+


+

SEE ALSO

+

the FS::UI::Gtk manpage, the FS::UI::CGI manpage

+

+


+

HISTORY

+

$Log: Base.html,v $ +

Revision 1.3 2002-01-29 17:42:46 ivan +

weight, plan and plandata fields in part_bill_event +

+Revision 1.1 1999/08/04 09:03:53 ivan +initial checkin of module files for proper perl installation

+

Revision 1.1 1999/01/20 09:30:36 ivan +skeletal cross-UI UI code.

+ + + + diff --git a/httemplate/docs/man/FS/UI/CGI.html b/httemplate/docs/man/FS/UI/CGI.html new file mode 100644 index 000000000..22b6c76b8 --- /dev/null +++ b/httemplate/docs/man/FS/UI/CGI.html @@ -0,0 +1,94 @@ + + +FS::UI::CGI - Base class for CGI user-interface objects + + + + + + + + + + + +
+

+

NAME

+

FS::UI::CGI - Base class for CGI user-interface objects

+

+


+

SYNOPSIS

+
+  use FS::UI::CGI;
+  use FS::UI::some_table;
+
+  $interface = new FS::UI::some_table;
+
+  $error = $interface->browse;
+  $error = $interface->search;
+  $error = $interface->view;
+  $error = $interface->edit;
+  $error = $interface->process;
+

+


+

DESCRIPTION

+

An FS::UI::CGI object represents a CGI interface object.

+

+


+

METHODS

+
+
new
+
+
_header
+
+
_footer
+
+
interface
+
+Returns the string `CGI'. Useful for the author of a table-specific UI class +to conditionally specify certain behaviour. +

+

+


+

VERSION

+

$Id: CGI.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

+

+


+

BUGS

+

This documentation is incomplete.

+

In _Tableborder, headers should be links that sort on their fields.

+

_Link uses a constant $BASE_URL

+

_Link passes the arguments as a manually-constructed GET string instead +of POSTing, for compatability while the web interface is upgraded. Once +this is done it should pass arguements properly (i.e. as a POST, 8-bit clean)

+

Still some small bits of widget code same as FS::UI::Gtk.

+

+


+

SEE ALSO

+

the FS::UI::Base manpage

+

+


+

HISTORY

+

$Log: CGI.html,v $ +

Revision 1.3 2002-01-29 17:42:46 ivan +

weight, plan and plandata fields in part_bill_event +

+Revision 1.1 1999/08/04 09:03:53 ivan +initial checkin of module files for proper perl installation

+

Revision 1.1 1999/01/20 09:30:36 ivan +skeletal cross-UI UI code.

+ + + + diff --git a/httemplate/docs/man/FS/UI/Gtk.html b/httemplate/docs/man/FS/UI/Gtk.html new file mode 100644 index 000000000..6f203c7bb --- /dev/null +++ b/httemplate/docs/man/FS/UI/Gtk.html @@ -0,0 +1,91 @@ + + +FS::UI::Gtk - Base class for Gtk user-interface objects + + + + + + + + + + + +
+

+

NAME

+

FS::UI::Gtk - Base class for Gtk user-interface objects

+

+


+

SYNOPSIS

+
+  use FS::UI::Gtk;
+  use FS::UI::some_table;
+
+  $interface = new FS::UI::some_table;
+
+  $error = $interface->browse;
+  $error = $interface->search;
+  $error = $interface->view;
+  $error = $interface->edit;
+  $error = $interface->process;
+

+


+

DESCRIPTION

+

An FS::UI::Gtk object represents a Gtk user interface object.

+

+


+

METHODS

+
+
new
+
+
interface
+
+Returns the string `Gtk'. Useful for the author of a table-specific UI class +to conditionally specify certain behaviour. +

+

+


+

VERSION

+

$Id: Gtk.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

+

+


+

BUGS

+

This documentation is incomplete.

+

_Tableborder is just a _Table now. _Tableborders should scroll (but not the +headers) and need and need more decoration. (data in white section ala gtksql +and sliding field widths) headers should be buttons that callback to sort on +their fields.

+

There should be a persistant, per-(freeside)-user store for window positions +and sizes and sort fields etc (see BUGS in the FS::UI::CGI manpage.

+

Still some small bits of widget code same as FS::UI::CGI.

+

+


+

SEE ALSO

+

the FS::UI::Base manpage

+

+


+

HISTORY

+

$Log: Gtk.html,v $ +

Revision 1.3 2002-01-29 17:42:46 ivan +

weight, plan and plandata fields in part_bill_event +

+Revision 1.1 1999/08/04 09:03:53 ivan +initial checkin of module files for proper perl installation

+

Revision 1.1 1999/01/20 09:30:36 ivan +skeletal cross-UI UI code.

+ + + + diff --git a/httemplate/docs/man/FS/UI/agent.html b/httemplate/docs/man/FS/UI/agent.html new file mode 100644 index 000000000..8608e4ef4 --- /dev/null +++ b/httemplate/docs/man/FS/UI/agent.html @@ -0,0 +1,16 @@ + + +./FS/FS/UI/agent.pm + + + + + + + + + + + + + diff --git a/httemplate/docs/man/FS/UID.html b/httemplate/docs/man/FS/UID.html new file mode 100644 index 000000000..9f4947765 --- /dev/null +++ b/httemplate/docs/man/FS/UID.html @@ -0,0 +1,142 @@ + + +FS::UID - Subroutines for database login and assorted other stuff + + + + + + + + + + + +
+

+

NAME

+

FS::UID - Subroutines for database login and assorted other stuff

+

+


+

SYNOPSIS

+
+  use FS::UID qw(adminsuidsetup cgisuidsetup dbh datasrc getotaker
+  checkeuid checkruid swapuid);
+
+  adminsuidsetup $user;
+
+  $cgi = new CGI;
+  $dbh = cgisuidsetup($cgi);
+
+  $dbh = dbh;
+
+  $datasrc = datasrc;
+
+  $driver_name = driver_name;
+

+


+

DESCRIPTION

+

Provides a hodgepodge of subroutines.

+

+


+

SUBROUTINES

+
+
adminsuidsetup USER
+
+Sets the user to USER (see config.html from the base documentation). +Cleans the environment. +Make sure the script is running as freeside, or setuid freeside. +Opens a connection to the database. +Swaps real and effective UIDs. +Runs any defined callbacks (see below). +Returns the DBI database handle (usually you don't need this). +

+
cgisuidsetup CGI_object
+
+Takes a single argument, which is a CGI (see the CGI manpage) or Apache (see Apache) +object (CGI::Base is depriciated). Runs cgisetotaker and then adminsuidsetup. +

+
cgi
+
+Returns the CGI (see the CGI manpage) object. +

+
dbh
+
+Returns the DBI database handle. +

+
datasrc
+
+Returns the DBI data source. +

+
driver_name
+
+Returns just the driver name portion of the DBI data source. +

+
getotaker
+
+Returns the current Freeside user. +

+
cgisetotaker
+
+Sets and returns the CGI REMOTE_USER. $cgi should be defined as a CGI.pm +object (see the CGI manpage) or an Apache object (see Apache). Support for CGI::Base +and derived classes is depriciated. +

+
checkeuid
+
+Returns true if effective UID is that of the freeside user. +

+
checkruid
+
+Returns true if the real UID is that of the freeside user. +

+
swapuid
+
+Swaps real and effective UIDs. +

+
getsecrets [ USER ]
+
+Sets the user to USER, if supplied. +Sets and returns the DBI datasource, username and password for this user from +the `/usr/local/etc/freeside/mapsecrets' file. +

+

+


+

CALLBACKS

+

Warning: this interface is likely to change in future releases.

+

A package can install a callback to be run in adminsuidsetup by putting a +coderef into the hash %FS::UID::callback :

+
+    $coderef = sub { warn "Hi, I'm returning your call!" };
+    $FS::UID::callback{'Package::Name'};
+

+


+

VERSION

+

$Id: UID.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

+

+


+

BUGS

+

Too many package-global variables.

+

Not OO.

+

No capabilities yet. When mod_perl and Authen::DBI are implemented, +cgisuidsetup will go away as well.

+

Goes through contortions to support non-OO syntax with multiple datasrc's.

+

Callbacks are inelegant.

+

+


+

SEE ALSO

+

the FS::Record manpage, the CGI manpage, DBI, config.html from the base documentation.

+ + + + diff --git a/httemplate/docs/man/FS/agent.html b/httemplate/docs/man/FS/agent.html new file mode 100644 index 000000000..a660ed427 --- /dev/null +++ b/httemplate/docs/man/FS/agent.html @@ -0,0 +1,121 @@ + + +FS::agent - Object methods for agent records + + + + + + + + + + + +
+

+

NAME

+

FS::agent - Object methods for agent records

+

+


+

SYNOPSIS

+
+  use FS::agent;
+
+  $record = new FS::agent \%hash;
+  $record = new FS::agent { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+
+  $agent_type = $record->agent_type;
+
+  $hashref = $record->pkgpart_hashref;
+  #may purchase $pkgpart if $hashref->{$pkgpart};
+

+


+

DESCRIPTION

+

An FS::agent object represents an agent. Every customer has an agent. Agents +can be used to track things like resellers or salespeople. FS::agent inherits +from FS::Record. The following fields are currently supported:

+
+
agemtnum - primary key (assigned automatically for new agents)
+
+
agent - Text name of this agent
+
+
typenum - Agent type. See the FS::agent_type manpage
+
+
prog - For future use.
+
+
freq - For future use.
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new agent. To add the agent to the database, see insert. +

+
insert
+
+Adds this agent to the database. If there is an error, returns the error, +otherwise returns false. +

+
delete
+
+Deletes this agent from the database. Only agents with no customers can be +deleted. If there is an error, returns the error, otherwise returns false. +

+
replace OLD_RECORD
+
+Replaces OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. +

+
check
+
+Checks all fields to make sure this is a valid agent. If there is an error, +returns the error, otherwise returns false. Called by the insert and replace +methods. +

+
agent_type
+
+Returns the FS::agent_type object (see the FS::agent_type manpage) for this agent. +

+
pkgpart_hashref
+
+Returns a hash reference. The keys of the hash are pkgparts. The value is +true if this agent may purchase the specified package definition. See +the FS::part_pkg manpage. +

+

+


+

VERSION

+

$Id: agent.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

+

+


+

BUGS

+

+


+

SEE ALSO

+

the FS::Record manpage, the FS::agent_type manpage, the FS::cust_main manpage, the FS::part_pkg manpage, +schema.html from the base documentation.

+ + + + diff --git a/httemplate/docs/man/FS/agent_type.html b/httemplate/docs/man/FS/agent_type.html new file mode 100644 index 000000000..40552d6d3 --- /dev/null +++ b/httemplate/docs/man/FS/agent_type.html @@ -0,0 +1,126 @@ + + +FS::agent_type - Object methods for agent_type records + + + + + + + + + + + +
+

+

NAME

+

FS::agent_type - Object methods for agent_type records

+

+


+

SYNOPSIS

+
+  use FS::agent_type;
+
+  $record = new FS::agent_type \%hash;
+  $record = new FS::agent_type { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+
+  $hashref = $record->pkgpart_hashref;
+  #may purchase $pkgpart if $hashref->{$pkgpart};
+
+  @type_pkgs = $record->type_pkgs;
+
+  @pkgparts = $record->pkgpart;
+

+


+

DESCRIPTION

+

An FS::agent_type object represents an agent type. Every agent (see +the FS::agent manpage) has an agent type. Agent types define which packages (see +the FS::part_pkg manpage) may be purchased by customers (see the FS::cust_main manpage), via +FS::type_pkgs records (see the FS::type_pkgs manpage). FS::agent_type inherits from +FS::Record. The following fields are currently supported:

+
+
typenum - primary key (assigned automatically for new agent types)
+
+
atype - Text name of this agent type
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new agent type. To add the agent type to the database, see +insert. +

+
insert
+
+Adds this agent type to the database. If there is an error, returns the error, +otherwise returns false. +

+
delete
+
+Deletes this agent type from the database. Only agent types with no agents +can be deleted. If there is an error, returns the error, otherwise returns +false. +

+
replace OLD_RECORD
+
+Replaces OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. +

+
check
+
+Checks all fields to make sure this is a valid agent type. If there is an +error, returns the error, otherwise returns false. Called by the insert and +replace methods. +

+
pkgpart_hashref
+
+Returns a hash reference. The keys of the hash are pkgparts. The value is +true iff this agent may purchase the specified package definition. See +the FS::part_pkg manpage. +

+
type_pkgs
+
+Returns all FS::type_pkgs objects (see the FS::type_pkgs manpage) for this agent type. +

+
pkgpart
+
+Returns the pkgpart of all package definitions (see the FS::part_pkg manpage) for this +agent type. +

+

+


+

VERSION

+

$Id: agent_type.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

+

+


+

BUGS

+

+


+

SEE ALSO

+

the FS::Record manpage, the FS::agent manpage, the FS::type_pkgs manpage, the FS::cust_main manpage, +the FS::part_pkg manpage, schema.html from the base documentation.

+ + + + diff --git a/httemplate/docs/man/FS/cust_bill.html b/httemplate/docs/man/FS/cust_bill.html new file mode 100644 index 000000000..2e2ad37fe --- /dev/null +++ b/httemplate/docs/man/FS/cust_bill.html @@ -0,0 +1,161 @@ + + +FS::cust_bill - Object methods for cust_bill records + + + + + + + + + + + +
+

+

NAME

+

FS::cust_bill - Object methods for cust_bill records

+

+


+

SYNOPSIS

+
+  use FS::cust_bill;
+
+  $record = new FS::cust_bill \%hash;
+  $record = new FS::cust_bill { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+
+  ( $total_previous_balance, @previous_cust_bill ) = $record->previous;
+
+  @cust_bill_pkg_objects = $cust_bill->cust_bill_pkg;
+
+  ( $total_previous_credits, @previous_cust_credit ) = $record->cust_credit;
+
+  @cust_pay_objects = $cust_bill->cust_pay;
+
+  @lines = $cust_bill->print_text;
+  @lines = $cust_bill->print_text $time;
+

+


+

DESCRIPTION

+

An FS::cust_bill object represents an invoice; a declaration that a customer +owes you money. The specific charges are itemized as cust_bill_pkg records +(see the FS::cust_bill_pkg manpage). FS::cust_bill inherits from FS::Record. The +following fields are currently supported:

+
+
invnum - primary key (assigned automatically for new invoices)
+
+
custnum - customer (see the FS::cust_main manpage)
+
+
_date - specified as a UNIX timestamp; see perlfunc/``time''. Also see +the Time::Local manpage and the Date::Parse manpage for conversion functions.
+
+
charged - amount of this invoice
+
+
printed - how many times this invoice has been printed automatically +(see collect in the FS::cust_main manpage).
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new invoice. To add the invoice to the database, see insert. +Invoices are normally created by calling the bill method of a customer object +(see the FS::cust_main manpage). +

+
insert
+
+Adds this invoice to the database (``Posts'' the invoice). If there is an error, +returns the error, otherwise returns false. +

+
delete
+
+Currently unimplemented. I don't remove invoices because there would then be +no record you ever posted this invoice (which is bad, no?) +

+
replace OLD_RECORD
+
+Replaces the OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. +

Only printed may be changed. printed is normally updated by calling the +collect method of a customer object (see the FS::cust_main manpage).

+

+
check
+
+Checks all fields to make sure this is a valid invoice. If there is an error, +returns the error, otherwise returns false. Called by the insert and replace +methods. +

+
previous
+
+Returns a list consisting of the total previous balance for this customer, +followed by the previous outstanding invoices (as FS::cust_bill objects also). +

+
cust_bill_pkg
+
+Returns the line items (see the FS::cust_bill_pkg manpage) for this invoice. +

+
cust_credit
+
+Returns a list consisting of the total previous credited (see +the FS::cust_credit manpage) for this customer, followed by the previous outstanding +credits (FS::cust_credit objects). +

+
cust_pay
+
+Returns all payments (see the FS::cust_pay manpage) for this invoice. +

+
owed
+
+Returns the amount owed (still outstanding) on this invoice, which is charged +minus all payments (see the FS::cust_pay manpage). +

+
print_text [TIME];
+
+Returns an text invoice, as a list of lines. +

TIME an optional value used to control the printing of overdue messages. The +default is now. It isn't the date of the invoice; that's the `_date' field. +It is specified as a UNIX timestamp; see perlfunc/``time''. Also see +the Time::Local manpage and the Date::Parse manpage for conversion functions.

+

+

+


+

VERSION

+

$Id: cust_bill.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

+

+


+

BUGS

+

The delete method.

+

print_text formatting (and some logic :/) is in source, but needs to be +slurped in from a file. Also number of lines ($=).

+

missing print_ps for a nice postscript copy (maybe HylaFAX-cover-page-style +or something similar so the look can be completely customized?)

+

+


+

SEE ALSO

+

the FS::Record manpage, the FS::cust_main manpage, the FS::cust_pay manpage, the FS::cust_bill_pkg manpage, +the FS::cust_credit manpage, schema.html from the base documentation.

+ + + + diff --git a/httemplate/docs/man/FS/cust_bill_pkg.html b/httemplate/docs/man/FS/cust_bill_pkg.html new file mode 100644 index 000000000..0557b4aee --- /dev/null +++ b/httemplate/docs/man/FS/cust_bill_pkg.html @@ -0,0 +1,112 @@ + + +FS::cust_bill_pkg - Object methods for cust_bill_pkg records + + + + + + + + + + + +
+

+

NAME

+

FS::cust_bill_pkg - Object methods for cust_bill_pkg records

+

+


+

SYNOPSIS

+
+  use FS::cust_bill_pkg;
+
+  $record = new FS::cust_bill_pkg \%hash;
+  $record = new FS::cust_bill_pkg { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+

+


+

DESCRIPTION

+

An FS::cust_bill_pkg object represents an invoice line item. +FS::cust_bill_pkg inherits from FS::Record. The following fields are currently +supported:

+
+
invnum - invoice (see the FS::cust_bill manpage)
+
+
pkgnum - package (see the FS::cust_pkg manpage) or 0 for the special virtual sales tax package
+
+
setup - setup fee
+
+
recur - recurring fee
+
+
sdate - starting date of recurring fee
+
+
edate - ending date of recurring fee
+
+
+

sdate and edate are specified as UNIX timestamps; see perlfunc/``time''. Also +see the Time::Local manpage and the Date::Parse manpage for conversion functions.

+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new line item. To add the line item to the database, see +insert. Line items are normally created by calling the bill method of a +customer object (see the FS::cust_main manpage). +

+
insert
+
+Adds this line item to the database. If there is an error, returns the error, +otherwise returns false. +

+
delete
+
+Currently unimplemented. I don't remove line items because there would then be +no record the items ever existed (which is bad, no?) +

+
replace OLD_RECORD
+
+Currently unimplemented. This would be even more of an accounting nightmare +than deleteing the items. Just don't do it. +

+
check
+
+Checks all fields to make sure this is a valid line item. If there is an +error, returns the error, otherwise returns false. Called by the insert +method. +

+

+


+

VERSION

+

$Id: cust_bill_pkg.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

+

+


+

BUGS

+

+


+

SEE ALSO

+

the FS::Record manpage, the FS::cust_bill manpage, the FS::cust_pkg manpage, the FS::cust_main manpage, schema.html +from the base documentation.

+ + + + diff --git a/httemplate/docs/man/FS/cust_credit.html b/httemplate/docs/man/FS/cust_credit.html new file mode 100644 index 000000000..16caca60d --- /dev/null +++ b/httemplate/docs/man/FS/cust_credit.html @@ -0,0 +1,118 @@ + + +FS::cust_credit - Object methods for cust_credit records + + + + + + + + + + + +
+

+

NAME

+

FS::cust_credit - Object methods for cust_credit records

+

+


+

SYNOPSIS

+
+  use FS::cust_credit;
+
+  $record = new FS::cust_credit \%hash;
+  $record = new FS::cust_credit { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+

+


+

DESCRIPTION

+

An FS::cust_credit object represents a credit; the equivalent of a negative +cust_bill record (see the FS::cust_bill manpage). FS::cust_credit inherits from +FS::Record. The following fields are currently supported:

+
+
crednum - primary key (assigned automatically for new credits)
+
+
custnum - customer (see the FS::cust_main manpage)
+
+
amount - amount of the credit
+
+
_date - specified as a UNIX timestamp; see perlfunc/``time''. Also see +the Time::Local manpage and the Date::Parse manpage for conversion functions.
+
+
otaker - order taker (assigned automatically, see the FS::UID manpage)
+
+
reason - text
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new credit. To add the credit to the database, see insert. +

+
insert
+
+Adds this credit to the database (``Posts'' the credit). If there is an error, +returns the error, otherwise returns false. +

+
delete
+
+Currently unimplemented. +

+
replace OLD_RECORD
+
+Credits may not be modified; there would then be no record the credit was ever +posted. +

+
check
+
+Checks all fields to make sure this is a valid credit. If there is an error, +returns the error, otherwise returns false. Called by the insert and replace +methods. +

+
cust_refund
+
+Returns all refunds (see the FS::cust_refund manpage) for this credit. +

+
credited
+
+Returns the amount of this credit that is still outstanding; which is +amount minus all refunds (see the FS::cust_refund manpage). +

+

+


+

VERSION

+

$Id: cust_credit.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

+

+


+

BUGS

+

The delete method.

+

+


+

SEE ALSO

+

the FS::Record manpage, the FS::cust_refund manpage, the FS::cust_bill manpage, schema.html from the base +documentation.

+ + + + diff --git a/httemplate/docs/man/FS/cust_main.html b/httemplate/docs/man/FS/cust_main.html new file mode 100644 index 000000000..f8e9a8cfb --- /dev/null +++ b/httemplate/docs/man/FS/cust_main.html @@ -0,0 +1,279 @@ + + +FS::cust_main - Object methods for cust_main records + + + + + + + + + + + +
+

+

NAME

+

FS::cust_main - Object methods for cust_main records

+

+


+

SYNOPSIS

+
+  use FS::cust_main;
+
+  $record = new FS::cust_main \%hash;
+  $record = new FS::cust_main { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+
+  @cust_pkg = $record->all_pkgs;
+
+  @cust_pkg = $record->ncancelled_pkgs;
+
+  $error = $record->bill;
+  $error = $record->bill %options;
+  $error = $record->bill 'time' => $time;
+
+  $error = $record->collect;
+  $error = $record->collect %options;
+  $error = $record->collect 'invoice_time'   => $time,
+                            'batch_card'     => 'yes',
+                            'report_badcard' => 'yes',
+                          ;
+

+


+

DESCRIPTION

+

An FS::cust_main object represents a customer. FS::cust_main inherits from +FS::Record. The following fields are currently supported:

+
+
custnum - primary key (assigned automatically for new customers)
+
+
agentnum - agent (see the FS::agent manpage)
+
+
refnum - referral (see the FS::part_referral manpage)
+
+
first - name
+
+
last - name
+
+
ss - social security number (optional)
+
+
company - (optional)
+
+
address1
+
+
address2 - (optional)
+
+
city
+
+
county - (optional, see the FS::cust_main_county manpage)
+
+
state - (see the FS::cust_main_county manpage)
+
+
zip
+
+
country - (see the FS::cust_main_county manpage)
+
+
daytime - phone (optional)
+
+
night - phone (optional)
+
+
fax - phone (optional)
+
+
ship_first - name
+
+
ship_last - name
+
+
ship_company - (optional)
+
+
ship_address1
+
+
ship_address2 - (optional)
+
+
ship_city
+
+
ship_county - (optional, see the FS::cust_main_county manpage)
+
+
ship_state - (see the FS::cust_main_county manpage)
+
+
ship_zip
+
+
ship_country - (see the FS::cust_main_county manpage)
+
+
ship_daytime - phone (optional)
+
+
ship_night - phone (optional)
+
+
ship_fax - phone (optional)
+
+
payby - `CARD' (credit cards), `BILL' (billing), `COMP' (free), or `PREPAY' (special billing type: applies a credit - see the FS::prepay_credit manpage and sets billing type to BILL)
+
+
payinfo - card number, P.O., comp issuer (4-8 lowercase alphanumerics; think username) or prepayment identifier (see the FS::prepay_credit manpage)
+
+
paydate - expiration date, mm/yyyy, m/yyyy, mm/yy or m/yy
+
+
payname - name on card or billing name
+
+
tax - tax exempt, empty or `Y'
+
+
otaker - order taker (assigned automatically, see the FS::UID manpage)
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new customer. To add the customer to the database, see insert. +

Note that this stores the hash reference, not a distinct copy of the hash it +points to. You can ask the object for a copy with the hash method.

+

+
insert
+
+Adds this customer to the database. If there is an error, returns the error, +otherwise returns false. +

There is a special insert mode in which you pass a data structure to the insert +method containing FS::cust_pkg and FS::svc_tablename objects. When +running under a transactional database, all records are inserted atomicly, or +the transaction is rolled back. There should be a better explanation of this, +but until then, here's an example:

+
+  use Tie::RefHash;
+  tie %hash, 'Tie::RefHash'; #this part is important
+  %hash = (
+    $cust_pkg => [ $svc_acct ],
+    ...
+  );
+  $cust_main->insert( \%hash );
+

+
delete NEW_CUSTNUM
+
+This deletes the customer. If there is an error, returns the error, otherwise +returns false. +

This will completely remove all traces of the customer record. This is not +what you want when a customer cancels service; for that, cancel all of the +customer's packages (see cancel in the FS::cust_pkg manpage).

+

If the customer has any packages, you need to pass a new (valid) customer +number for those packages to be transferred to.

+

You can't delete a customer with invoices (see the FS::cust_bill manpage), +or credits (see the FS::cust_credit manpage).

+

+
replace OLD_RECORD
+
+Replaces the OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. +

+
check
+
+Checks all fields to make sure this is a valid customer record. If there is +an error, returns the error, otherwise returns false. Called by the insert +and repalce methods. +

+
all_pkgs
+
+Returns all packages (see the FS::cust_pkg manpage) for this customer. +

+
ncancelled_pkgs
+
+Returns all non-cancelled packages (see the FS::cust_pkg manpage) for this customer. +

+
bill OPTIONS
+
+Generates invoices (see the FS::cust_bill manpage) for this customer. Usually used in +conjunction with the collect method. +

The only currently available option is `time', which bills the customer as if +it were that time. It is specified as a UNIX timestamp; see +perlfunc/``time''). Also see the Time::Local manpage and the Date::Parse manpage for conversion +functions.

+

If there is an error, returns the error, otherwise returns false.

+

+
collect OPTIONS
+
+(Attempt to) collect money for this customer's outstanding invoices (see +the FS::cust_bill manpage). Usually used after the bill method. +

Depending on the value of `payby', this may print an invoice (`BILL'), charge +a credit card (`CARD'), or just add any necessary (pseudo-)payment (`COMP').

+

If there is an error, returns the error, otherwise returns false.

+

Currently available options are:

+

invoice_time - Use this time when deciding when to print invoices and +late notices on those invoices. The default is now. It is specified as a UNIX timestamp; see perlfunc/``time''). Also see the Time::Local manpage and the Date::Parse manpage +for conversion functions.

+

batch_card - Set this true to batch cards (see the cust_pay_batch manpage). By +default, cards are processed immediately, which will generate an error if +CyberCash is not installed.

+

report_badcard - Set this true if you want bad card transactions to +return an error. By default, they don't.

+

+
total_owed
+
+Returns the total owed for this customer on all invoices +(see the FS::cust_bill manpage). +

+
total_credited
+
+Returns the total credits (see the FS::cust_credit manpage) for this customer. +

+
balance
+
+Returns the balance for this customer (total owed minus total credited). +

+
invoicing_list [ ARRAYREF ]
+
+If an arguement is given, sets these email addresses as invoice recipients +(see the FS::cust_main_invoice manpage). Errors are not fatal and are not reported +(except as warnings), so use check_invoicing_list first. +

Returns a list of email addresses (with svcnum entries expanded).

+

Note: You can clear the invoicing list by passing an empty ARRAYREF. You can +check it without disturbing anything by passing nothing.

+

This interface may change in the future.

+

+
check_invoicing_list ARRAYREF
+
+Checks these arguements as valid input for the invoicing_list method. If there +is an error, returns the error, otherwise returns false. +

+

+


+

VERSION

+

$Id: cust_main.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

+

+


+

BUGS

+

The delete method.

+

The delete method should possibly take an FS::cust_main object reference +instead of a scalar customer number.

+

Bill and collect options should probably be passed as references instead of a +list.

+

CyberCash v2 forces us to define some variables in package main.

+

There should probably be a configuration file with a list of allowed credit +card types.

+

CyberCash is the only processor.

+

No multiple currency support (probably a larger project than just this module).

+

+


+

SEE ALSO

+

the FS::Record manpage, the FS::cust_pkg manpage, the FS::cust_bill manpage, the FS::cust_credit manpage +the FS::cust_pay_batch manpage, the FS::agent manpage, the FS::part_referral manpage, +the FS::cust_main_county manpage, the FS::cust_main_invoice manpage, +the FS::UID manpage, schema.html from the base documentation.

+ + + + diff --git a/httemplate/docs/man/FS/cust_main_county.html b/httemplate/docs/man/FS/cust_main_county.html new file mode 100644 index 000000000..2c5dcd3fc --- /dev/null +++ b/httemplate/docs/man/FS/cust_main_county.html @@ -0,0 +1,106 @@ + + +FS::cust_main_county - Object methods for cust_main_county objects + + + + + + + + + + + +
+

+

NAME

+

FS::cust_main_county - Object methods for cust_main_county objects

+

+


+

SYNOPSIS

+
+  use FS::cust_main_county;
+
+  $record = new FS::cust_main_county \%hash;
+  $record = new FS::cust_main_county { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+

+


+

DESCRIPTION

+

An FS::cust_main_county object represents a tax rate, defined by locale. +FS::cust_main_county inherits from FS::Record. The following fields are +currently supported:

+
+
taxnum - primary key (assigned automatically for new tax rates)
+
+
state
+
+
county
+
+
country
+
+
tax - percentage
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new tax rate. To add the tax rate to the database, see insert. +

+
insert
+
+Adds this tax rate to the database. If there is an error, returns the error, +otherwise returns false. +

+
delete
+
+Deletes this tax rate from the database. If there is an error, returns the +error, otherwise returns false. +

+
replace OLD_RECORD
+
+Replaces the OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. +

+
check
+
+Checks all fields to make sure this is a valid tax rate. If there is an error, +returns the error, otherwise returns false. Called by the insert and replace +methods. +

+

+


+

VERSION

+

$Id: cust_main_county.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

+

+


+

BUGS

+

+


+

SEE ALSO

+

the FS::Record manpage, the FS::cust_main manpage, the FS::cust_bill manpage, schema.html from the base +documentation.

+ + + + diff --git a/httemplate/docs/man/FS/cust_main_invoice.html b/httemplate/docs/man/FS/cust_main_invoice.html new file mode 100644 index 000000000..6ab7fa289 --- /dev/null +++ b/httemplate/docs/man/FS/cust_main_invoice.html @@ -0,0 +1,114 @@ + + +FS::cust_main_invoice - Object methods for cust_main_invoice records + + + + + + + + + + + +
+

+

NAME

+

FS::cust_main_invoice - Object methods for cust_main_invoice records

+

+


+

SYNOPSIS

+
+  use FS::cust_main_invoice;
+
+  $record = new FS::cust_main_invoice \%hash;
+  $record = new FS::cust_main_invoice { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+
+  $email_address = $record->address;
+

+


+

DESCRIPTION

+

An FS::cust_main_invoice object represents an invoice destination. FS::cust_main_invoice inherits from +FS::Record. The following fields are currently supported:

+
+
destnum - primary key
+
+
custnum - customer (see the FS::cust_main manpage)
+
+
dest - Invoice destination: If numeric, a svcnum (see the FS::svc_acct manpage), if string, a literal email address, or `POST' to enable mailing (the default if no cust_main_invoice records exist)
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new invoice destination. To add the invoice destination to the database, see insert. +

Note that this stores the hash reference, not a distinct copy of the hash it +points to. You can ask the object for a copy with the hash method.

+

+
insert
+
+Adds this record to the database. If there is an error, returns the error, +otherwise returns false. +

+
delete
+
+Delete this record from the database. +

+
replace OLD_RECORD
+
+Replaces the OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. +

+
check
+
+Checks all fields to make sure this is a valid invoice destination. If there is +an error, returns the error, otherwise returns false. Called by the insert +and repalce methods. +

+
checkdest
+
+Checks the dest field only. If it finds that the account ends in the +same domain configured as the domain configuration file, it will change the +invoice destination from an email address to a service number (see +the FS::svc_acct manpage). +

+
address
+
+Returns the literal email address for this record (or `POST'). +

+

+


+

VERSION

+

$Id: cust_main_invoice.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

+

+


+

BUGS

+

+


+

SEE ALSO

+

the FS::Record manpage, the FS::cust_main manpage

+ + + + diff --git a/httemplate/docs/man/FS/cust_pay.html b/httemplate/docs/man/FS/cust_pay.html new file mode 100644 index 000000000..803376260 --- /dev/null +++ b/httemplate/docs/man/FS/cust_pay.html @@ -0,0 +1,108 @@ + + +FS::cust_pay - Object methods for cust_pay objects + + + + + + + + + + + +
+

+

NAME

+

FS::cust_pay - Object methods for cust_pay objects

+

+


+

SYNOPSIS

+
+  use FS::cust_pay;
+
+  $record = new FS::cust_pay \%hash;
+  $record = new FS::cust_pay { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+

+


+

DESCRIPTION

+

An FS::cust_pay object represents a payment; the transfer of money from a +customer. FS::cust_pay inherits from FS::Record. The following fields are +currently supported:

+
+
paynum - primary key (assigned automatically for new payments)
+
+
invnum - Invoice (see the FS::cust_bill manpage)
+
+
paid - Amount of this payment
+
+
_date - specified as a UNIX timestamp; see perlfunc/``time''. Also see +the Time::Local manpage and the Date::Parse manpage for conversion functions.
+
+
payby - `CARD' (credit cards), `BILL' (billing), or `COMP' (free)
+
+
payinfo - card number, P.O.#, or comp issuer (4-8 lowercase alphanumerics; think username)
+
+
paybatch - text field for tracking card processing
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new payment. To add the payment to the databse, see insert. +

+
insert
+
+Adds this payment to the databse, and updates the invoice (see +the FS::cust_bill manpage). +

+
delete
+
+Currently unimplemented (accounting reasons). +

+
replace OLD_RECORD
+
+Currently unimplemented (accounting reasons). +

+
check
+
+Checks all fields to make sure this is a valid payment. If there is an error, +returns the error, otherwise returns false. Called by the insert method. +

+

+


+

VERSION

+

$Id: cust_pay.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

+

+


+

BUGS

+

Delete and replace methods.

+

+


+

SEE ALSO

+

the FS::Record manpage, the FS::cust_bill manpage, schema.html from the base documentation.

+ + + + diff --git a/httemplate/docs/man/FS/cust_pay_batch.html b/httemplate/docs/man/FS/cust_pay_batch.html new file mode 100644 index 000000000..c1c73c301 --- /dev/null +++ b/httemplate/docs/man/FS/cust_pay_batch.html @@ -0,0 +1,132 @@ + + +FS::cust_pay_batch - Object methods for batch cards + + + + + + + + + + + +
+

+

NAME

+

FS::cust_pay_batch - Object methods for batch cards

+

+


+

SYNOPSIS

+
+  use FS::cust_pay_batch;
+
+  $record = new FS::cust_pay_batch \%hash;
+  $record = new FS::cust_pay_batch { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+

+


+

DESCRIPTION

+

An FS::cust_pay_batch object represents a credit card transaction ready to be +batched (sent to a processor). FS::cust_pay_batch inherits from FS::Record. +Typically called by the collect method of an FS::cust_main object. The +following fields are currently supported:

+
+
trancode - 77 for charges
+
+
cardnum
+
+
exp - card expiration
+
+
amount
+
+
invnum - invoice
+
+
custnum - customer
+
+
payname - name on card
+
+
first - name
+
+
last - name
+
+
address1
+
+
address2
+
+
city
+
+
state
+
+
zip
+
+
country
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new record. To add the record to the database, see insert. +

Note that this stores the hash reference, not a distinct copy of the hash it +points to. You can ask the object for a copy with the hash method.

+

+
insert
+
+Adds this record to the database. If there is an error, returns the error, +otherwise returns false. +

+
delete
+
+Delete this record from the database. If there is an error, returns the error, +otherwise returns false. +

+
replace OLD_RECORD
+
+#inactive +# +#Replaces the OLD_RECORD with this one in the database. If there is an error, +#returns the error, otherwise returns false. +

+
check
+
+Checks all fields to make sure this is a valid transaction. If there is +an error, returns the error, otherwise returns false. Called by the insert +and repalce methods. +

+

+


+

VERSION

+

$Id: cust_pay_batch.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

+

+


+

BUGS

+

There should probably be a configuration file with a list of allowed credit +card types.

+

+


+

SEE ALSO

+

the FS::cust_main manpage, the FS::Record manpage

+ + + + diff --git a/httemplate/docs/man/FS/cust_pkg.html b/httemplate/docs/man/FS/cust_pkg.html new file mode 100644 index 000000000..459d1297c --- /dev/null +++ b/httemplate/docs/man/FS/cust_pkg.html @@ -0,0 +1,205 @@ + + +FS::cust_pkg - Object methods for cust_pkg objects + + + + + + + + + + + +
+

+

NAME

+

FS::cust_pkg - Object methods for cust_pkg objects

+

+


+

SYNOPSIS

+
+  use FS::cust_pkg;
+
+  $record = new FS::cust_pkg \%hash;
+  $record = new FS::cust_pkg { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+
+  $error = $record->cancel;
+
+  $error = $record->suspend;
+
+  $error = $record->unsuspend;
+
+  $part_pkg = $record->part_pkg;
+
+  @labels = $record->labels;
+
+  $error = FS::cust_pkg::order( $custnum, \@pkgparts );
+  $error = FS::cust_pkg::order( $custnum, \@pkgparts, \@remove_pkgnums ] );
+

+


+

DESCRIPTION

+

An FS::cust_pkg object represents a customer billing item. FS::cust_pkg +inherits from FS::Record. The following fields are currently supported:

+
+
pkgnum - primary key (assigned automatically for new billing items)
+
+
custnum - Customer (see the FS::cust_main manpage)
+
+
pkgpart - Billing item definition (see the FS::part_pkg manpage)
+
+
setup - date
+
+
bill - date
+
+
susp - date
+
+
expire - date
+
+
cancel - date
+
+
otaker - order taker (assigned automatically if null, see the FS::UID manpage)
+
+
+

Note: setup, bill, susp, expire and cancel are specified as UNIX timestamps; +see perlfunc/``time''. Also see the Time::Local manpage and the Date::Parse manpage for +conversion functions.

+

+


+

METHODS

+
+
new HASHREF
+
+Create a new billing item. To add the item to the database, see insert. +

+
insert
+
+Adds this billing item to the database (``Orders'' the item). If there is an +error, returns the error, otherwise returns false. +

sub insert { + my $self = shift;

+
+  # custnum might not have have been defined in sub check (for one-shot new
+  # customers), so check it here instead
+
+  my $error = $self->ut_number('custnum');
+  return $error if $error
+
+  return "Unknown customer"
+    unless qsearchs( 'cust_main', { 'custnum' => $self->custnum } );
+
+  $self->SUPER::insert;
+

}

+

+
delete
+
+Currently unimplemented. You don't want to delete billing items, because there +would then be no record the customer ever purchased the item. Instead, see +the cancel method. +

+
replace OLD_RECORD
+
+Replaces the OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. +

Currently, custnum, setup, bill, susp, expire, and cancel may be changed.

+

Changing pkgpart may have disasterous effects. See the order subroutine.

+

setup and bill are normally updated by calling the bill method of a customer +object (see the FS::cust_main manpage).

+

suspend is normally updated by the suspend and unsuspend methods.

+

cancel is normally updated by the cancel method (and also the order subroutine +in some cases).

+

+
check
+
+Checks all fields to make sure this is a valid billing item. If there is an +error, returns the error, otherwise returns false. Called by the insert and +replace methods. +

+
cancel
+
+Cancels and removes all services (see the FS::cust_svc manpage and the FS::part_svc manpage) +in this package, then cancels the package itself (sets the cancel field to +now). +

If there is an error, returns the error, otherwise returns false.

+

+
suspend
+
+Suspends all services (see the FS::cust_svc manpage and the FS::part_svc manpage) in this +package, then suspends the package itself (sets the susp field to now). +

If there is an error, returns the error, otherwise returns false.

+

+
unsuspend
+
+Unsuspends all services (see the FS::cust_svc manpage and the FS::part_svc manpage) in this +package, then unsuspends the package itself (clears the susp field). +

If there is an error, returns the error, otherwise returns false.

+

+
part_pkg
+
+Returns the definition for this billing item, as an FS::part_pkg object (see +the FS::part_pkg manpage). +

+
labels
+
+Returns a list of lists, calling the label method for all services +(see the FS::cust_svc manpage) of this billing item. +

+

+


+

SUBROUTINES

+
+
order CUSTNUM, PKGPARTS_ARYREF, [ REMOVE_PKGNUMS_ARYREF ]
+
+CUSTNUM is a customer (see the FS::cust_main manpage) +

PKGPARTS is a list of pkgparts specifying the the billing item definitions (see +the FS::part_pkg manpage) to order for this customer. Duplicates are of course +permitted.

+

REMOVE_PKGNUMS is an optional list of pkgnums specifying the billing items to +remove for this customer. The services (see the FS::cust_svc manpage) are moved to the +new billing items. An error is returned if this is not possible (see +the FS::pkg_svc manpage).

+

+

+


+

VERSION

+

$Id: cust_pkg.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

+

+


+

BUGS

+

sub order is not OO. Perhaps it should be moved to FS::cust_main and made so?

+

In sub order, the @pkgparts array (passed by reference) is clobbered.

+

Also in sub order, no money is adjusted. Once FS::part_pkg defines a standard +method to pass dates to the recur_prog expression, it should do so.

+

FS::svc_acct, FS::svc_acct_sm, and FS::svc_domain are loaded via 'use' at +compile time, rather than via 'require' in sub { setup, suspend, unsuspend, +cancel } because they use %FS::UID::callback to load configuration values. +Probably need a subroutine which decides what to do based on whether or not +we've fetched the user yet, rather than a hash. See FS::UID and the TODO.

+

+


+

SEE ALSO

+

the FS::Record manpage, the FS::cust_main manpage, the FS::part_pkg manpage, the FS::cust_svc manpage +, the FS::pkg_svc manpage, schema.html from the base documentation

+ + + + diff --git a/httemplate/docs/man/FS/cust_refund.html b/httemplate/docs/man/FS/cust_refund.html new file mode 100644 index 000000000..39ed14de4 --- /dev/null +++ b/httemplate/docs/man/FS/cust_refund.html @@ -0,0 +1,108 @@ + + +FS::cust_refund - Object method for cust_refund objects + + + + + + + + + + + +
+

+

NAME

+

FS::cust_refund - Object method for cust_refund objects

+

+


+

SYNOPSIS

+
+  use FS::cust_refund;
+
+  $record = new FS::cust_refund \%hash;
+  $record = new FS::cust_refund { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+

+


+

DESCRIPTION

+

An FS::cust_refund represents a refund: the transfer of money to a customer; +equivalent to a negative payment (see the FS::cust_pay manpage). FS::cust_refund +inherits from FS::Record. The following fields are currently supported:

+
+
refundnum - primary key (assigned automatically for new refunds)
+
+
crednum - Credit (see the FS::cust_credit manpage)
+
+
refund - Amount of the refund
+
+
_date - specified as a UNIX timestamp; see perlfunc/``time''. Also see +the Time::Local manpage and the Date::Parse manpage for conversion functions.
+
+
payby - `CARD' (credit cards), `BILL' (billing), or `COMP' (free)
+
+
payinfo - card number, P.O.#, or comp issuer (4-8 lowercase alphanumerics; think username)
+
+
otaker - order taker (assigned automatically, see the FS::UID manpage)
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new refund. To add the refund to the database, see insert. +

+
insert
+
+Adds this refund to the database, and updates the credit (see +the FS::cust_credit manpage). +

+
delete
+
+Currently unimplemented (accounting reasons). +

+
replace OLD_RECORD
+
+Currently unimplemented (accounting reasons). +

+
check
+
+Checks all fields to make sure this is a valid refund. If there is an error, +returns the error, otherwise returns false. Called by the insert method. +

+

+


+

VERSION

+

$Id: cust_refund.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

+

+


+

BUGS

+

Delete and replace methods.

+

+


+

SEE ALSO

+

the FS::Record manpage, the FS::cust_credit manpage, schema.html from the base documentation.

+ + + + diff --git a/httemplate/docs/man/FS/cust_svc.html b/httemplate/docs/man/FS/cust_svc.html new file mode 100644 index 000000000..c1ca2d700 --- /dev/null +++ b/httemplate/docs/man/FS/cust_svc.html @@ -0,0 +1,118 @@ + + +FS::cust_svc - Object method for cust_svc objects + + + + + + + + + + + +
+

+

NAME

+

FS::cust_svc - Object method for cust_svc objects

+

+


+

SYNOPSIS

+
+  use FS::cust_svc;
+
+  $record = new FS::cust_svc \%hash
+  $record = new FS::cust_svc { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+
+  ($label, $value) = $record->label;
+

+


+

DESCRIPTION

+

An FS::cust_svc represents a service. FS::cust_svc inherits from FS::Record. +The following fields are currently supported:

+
+
svcnum - primary key (assigned automatically for new services)
+
+
pkgnum - Package (see the FS::cust_pkg manpage)
+
+
svcpart - Service definition (see the FS::part_svc manpage)
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new service. To add the refund to the database, see insert. +Services are normally created by creating FS::svc_ objects (see +the FS::svc_acct manpage, the FS::svc_domain manpage, and the FS::svc_acct_sm manpage, among others). +

+
insert
+
+Adds this service to the database. If there is an error, returns the error, +otherwise returns false. +

+
delete
+
+Deletes this service from the database. If there is an error, returns the +error, otherwise returns false. +

Called by the cancel method of the package (see the FS::cust_pkg manpage).

+

+
replace OLD_RECORD
+
+Replaces the OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. +

+
check
+
+Checks all fields to make sure this is a valid service. If there is an error, +returns the error, otehrwise returns false. Called by the insert and +replace methods. +

+
label
+
+Returns a list consisting of: +- The name of this service (from part_svc) +- A meaningful identifier (username, domain, or mail alias) +- The table name (i.e. svc_domain) for this service +

+

+


+

VERSION

+

$Id: cust_svc.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

+

+


+

BUGS

+

Behaviour of changing the svcpart of cust_svc records is undefined and should +possibly be prohibited, and pkg_svc records are not checked.

+

pkg_svc records are not checked in general (here).

+

Deleting this record doesn't check or delete the svc_* record associated +with this record.

+

+


+

SEE ALSO

+

the FS::Record manpage, the FS::cust_pkg manpage, the FS::part_svc manpage, the FS::pkg_svc manpage, +schema.html from the base documentation

+ + + + diff --git a/httemplate/docs/man/FS/domain_record.html b/httemplate/docs/man/FS/domain_record.html new file mode 100644 index 000000000..7a1bf3e32 --- /dev/null +++ b/httemplate/docs/man/FS/domain_record.html @@ -0,0 +1,124 @@ + + +FS::domain_record - Object methods for domain_record records + + + + + + + + + + + +
+

+

NAME

+

FS::domain_record - Object methods for domain_record records

+

+


+

SYNOPSIS

+
+  use FS::domain_record;
+
+  $record = new FS::domain_record \%hash;
+  $record = new FS::domain_record { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+

+


+

DESCRIPTION

+

An FS::domain_record object represents an entry in a DNS zone. +FS::domain_record inherits from FS::Record. The following fields are currently +supported:

+
+
recnum - primary key
+
+
svcnum - Domain (see the FS::svc_domain manpage) of this entry
+
+
reczone - partial (or full) zone for this entry
+
+
recaf - address family for this entry, currently only `IN' is recognized.
+
+
rectype - record type for this entry (A, MX, etc.)
+
+
recdata - data for this entry
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new entry. To add the example to the database, see insert. +

Note that this stores the hash reference, not a distinct copy of the hash it +points to. You can ask the object for a copy with the hash method.

+

+
insert
+
+Adds this record to the database. If there is an error, returns the error, +otherwise returns false. +

+
delete
+
+Delete this record from the database. +

+
replace OLD_RECORD
+
+Replaces the OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. +

+
check
+
+Checks all fields to make sure this is a valid example. If there is +an error, returns the error, otherwise returns false. Called by the insert +and replace methods. +

+

+


+

VERSION

+

$Id: domain_record.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

+

+


+

BUGS

+

The data validation doesn't check everything it could. In particular, +there is no protection against bad data that passes the regex, duplicate +SOA records, forgetting the trailing `.', impossible IP addersses, etc. Of +course, it's still better than editing the zone files directly. :)

+

+


+

SEE ALSO

+

the FS::Record manpage, schema.html from the base documentation.

+

+


+

HISTORY

+

$Log: domain_record.html,v $ +

Revision 1.1 2001-07-30 07:36:03 ivan +

templates!!! +

+Revision 1.2 2001/05/18 14:08:55 ivan +tyop

+

Revision 1.1 2000/02/03 05:16:52 ivan +beginning of DNS and Apache support

+ + + + diff --git a/httemplate/docs/man/FS/nas.html b/httemplate/docs/man/FS/nas.html new file mode 100644 index 000000000..5a55964e1 --- /dev/null +++ b/httemplate/docs/man/FS/nas.html @@ -0,0 +1,117 @@ + + +FS::nas - Object methods for nas records + + + + + + + + + + + +
+

+

NAME

+

FS::nas - Object methods for nas records

+

+


+

SYNOPSIS

+
+  use FS::nas;
+
+  $record = new FS::nas \%hash;
+  $record = new FS::nas {
+    'nasnum'  => 1,
+    'nasip'   => '10.4.20.23',
+    'nasfqdn' => 'box1.brc.nv.us.example.net',
+  };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+
+  $error = $record->heartbeat($timestamp);
+

+


+

DESCRIPTION

+

An FS::nas object represents an Network Access Server on your network, such as +a terminal server or equivalent. FS::nas inherits from FS::Record. The +following fields are currently supported:

+
+
nasnum - primary key
+
+
nas - NAS name
+
+
nasip - NAS ip address
+
+
nasfqdn - NAS fully-qualified domain name
+
+
last - timestamp indicating the last instant the NAS was in a known + state (used by the session monitoring).
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new NAS. To add the NAS to the database, see insert. +

Note that this stores the hash reference, not a distinct copy of the hash it +points to. You can ask the object for a copy with the hash method.

+

+
insert
+
+Adds this record to the database. If there is an error, returns the error, +otherwise returns false. +

+
delete
+
+Delete this record from the database. +

+
replace OLD_RECORD
+
+Replaces the OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. +

+
check
+
+Checks all fields to make sure this is a valid example. If there is +an error, returns the error, otherwise returns false. Called by the insert +and replace methods. +

+
heartbeat TIMESTAMP
+
+Updates the timestamp for this nas +

+

+


+

VERSION

+

$Id: nas.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

+

+


+

BUGS

+

+


+

SEE ALSO

+

the FS::Record manpage, schema.html from the base documentation.

+ + + + diff --git a/httemplate/docs/man/FS/part_pkg.html b/httemplate/docs/man/FS/part_pkg.html new file mode 100644 index 000000000..9aeaa3d3d --- /dev/null +++ b/httemplate/docs/man/FS/part_pkg.html @@ -0,0 +1,138 @@ + + +FS::part_pkg - Object methods for part_pkg objects + + + + + + + + + + + +
+

+

NAME

+

FS::part_pkg - Object methods for part_pkg objects

+

+


+

SYNOPSIS

+
+  use FS::part_pkg;
+
+  $record = new FS::part_pkg \%hash
+  $record = new FS::part_pkg { 'column' => 'value' };
+
+  $custom_record = $template_record->clone;
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+
+  @pkg_svc = $record->pkg_svc;
+
+  $svcnum = $record->svcpart;
+  $svcnum = $record->svcpart( 'svc_acct' );
+

+


+

DESCRIPTION

+

An FS::part_pkg object represents a billing item definition. FS::part_pkg +inherits from FS::Record. The following fields are currently supported:

+
+
pkgpart - primary key (assigned automatically for new billing item definitions)
+
+
pkg - Text name of this billing item definition (customer-viewable)
+
+
comment - Text name of this billing item definition (non-customer-viewable)
+
+
setup - Setup fee
+
+
freq - Frequency of recurring fee
+
+
recur - Recurring fee
+
+
+

setup and recur are evaluated as Safe perl expressions. You can use numbers +just as you would normally. More advanced semantics are not yet defined.

+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new billing item definition. To add the billing item definition to +the database, see insert. +

+
clone
+
+An alternate constructor. Creates a new billing item definition by duplicating +an existing definition. A new pkgpart is assigned and `(CUSTOM) ' is prepended +to the comment field. To add the billing item definition to the database, see +insert. +

+
insert
+
+Adds this billing item definition to the database. If there is an error, +returns the error, otherwise returns false. +

+
delete
+
+Currently unimplemented. +

+
replace OLD_RECORD
+
+Replaces OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. +

+
check
+
+Checks all fields to make sure this is a valid billing item definition. If +there is an error, returns the error, otherwise returns false. Called by the +insert and replace methods. +

+
pkg_svc
+
+Returns all FS::pkg_svc objects (see the FS::pkg_svc manpage) for this package +definition (with non-zero quantity). +

+
svcpart [ SVCDB ]
+
+Returns the svcpart of a single service definition (see the FS::part_svc manpage) +associated with this billing item definition (see the FS::pkg_svc manpage). Returns +false if there not exactly one service definition with quantity 1, or if +SVCDB is specified and does not match the svcdb of the service definition, +

+

+


+

VERSION

+

$Id: part_pkg.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

+

+


+

BUGS

+

The delete method is unimplemented.

+

setup and recur semantics are not yet defined (and are implemented in +FS::cust_bill. hmm.).

+

+


+

SEE ALSO

+

the FS::Record manpage, the FS::cust_pkg manpage, the FS::type_pkgs manpage, the FS::pkg_svc manpage, Safe. +schema.html from the base documentation.

+ + + + diff --git a/httemplate/docs/man/FS/part_referral.html b/httemplate/docs/man/FS/part_referral.html new file mode 100644 index 000000000..815b15cf1 --- /dev/null +++ b/httemplate/docs/man/FS/part_referral.html @@ -0,0 +1,100 @@ + + +FS::part_referral - Object methods for part_referral objects + + + + + + + + + + + +
+

+

NAME

+

FS::part_referral - Object methods for part_referral objects

+

+


+

SYNOPSIS

+
+  use FS::part_referral;
+
+  $record = new FS::part_referral \%hash
+  $record = new FS::part_referral { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+

+


+

DESCRIPTION

+

An FS::part_referral represents a referral - where a customer heard of your +services. This can be used to track the effectiveness of a particular piece of +advertising, for example. FS::part_referral inherits from FS::Record. The +following fields are currently supported:

+
+
refnum - primary key (assigned automatically for new referrals)
+
+
referral - Text name of this referral
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new referral. To add the referral to the database, see insert. +

+
insert
+
+Adds this referral to the database. If there is an error, returns the error, +otherwise returns false. +

+
delete
+
+Currently unimplemented. +

+
replace OLD_RECORD
+
+Replaces OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. +

+
check
+
+Checks all fields to make sure this is a valid referral. If there is an error, +returns the error, otherwise returns false. Called by the insert and replace +methods. +

+

+


+

VERSION

+

$Id: part_referral.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

+

+


+

BUGS

+

The delete method is unimplemented.

+

+


+

SEE ALSO

+

the FS::Record manpage, the FS::cust_main manpage, schema.html from the base documentation.

+ + + + diff --git a/httemplate/docs/man/FS/part_svc.html b/httemplate/docs/man/FS/part_svc.html new file mode 100644 index 000000000..ca0a5dc71 --- /dev/null +++ b/httemplate/docs/man/FS/part_svc.html @@ -0,0 +1,110 @@ + + +FS::part_svc - Object methods for part_svc objects + + + + + + + + + + + +
+

+

NAME

+

FS::part_svc - Object methods for part_svc objects

+

+


+

SYNOPSIS

+
+  use FS::part_svc;
+
+  $record = new FS::part_referral \%hash
+  $record = new FS::part_referral { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+

+


+

DESCRIPTION

+

An FS::part_svc represents a service definition. FS::part_svc inherits from +FS::Record. The following fields are currently supported:

+
+
svcpart - primary key (assigned automatically for new service definitions)
+
+
svc - text name of this service definition
+
+
svcdb - table used for this service. See the FS::svc_acct manpage, +the FS::svc_domain manpage, and the FS::svc_acct_sm manpage, among others.
+
+
svcdb__field - Default or fixed value for field in svcdb.
+
+
svcdb__field_flag - defines svcdb__field action: null, `D' for default, or `F' for fixed
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new service definition. To add the service definition to the +database, see insert. +

+
insert
+
+Adds this service definition to the database. If there is an error, returns +the error, otherwise returns false. +

+
delete
+
+Currently unimplemented. +

+
replace OLD_RECORD
+
+Replaces OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. +

+
check
+
+Checks all fields to make sure this is a valid service definition. If there is +an error, returns the error, otherwise returns false. Called by the insert +and replace methods. +

+

+


+

VERSION

+

$Id: part_svc.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

+

+


+

BUGS

+

Delete is unimplemented.

+

The list of svc_* tables is hardcoded. When svc_acct_pop is renamed, this +should be fixed.

+

+


+

SEE ALSO

+

the FS::Record manpage, the FS::part_pkg manpage, the FS::pkg_svc manpage, the FS::cust_svc manpage, +the FS::svc_acct manpage, the FS::svc_acct_sm manpage, the FS::svc_domain manpage, schema.html from the +base documentation.

+ + + + diff --git a/httemplate/docs/man/FS/pkg_svc.html b/httemplate/docs/man/FS/pkg_svc.html new file mode 100644 index 000000000..44db9d5ff --- /dev/null +++ b/httemplate/docs/man/FS/pkg_svc.html @@ -0,0 +1,115 @@ + + +FS::pkg_svc - Object methods for pkg_svc records + + + + + + + + + + + +
+

+

NAME

+

FS::pkg_svc - Object methods for pkg_svc records

+

+


+

SYNOPSIS

+
+  use FS::pkg_svc;
+
+  $record = new FS::pkg_svc \%hash;
+  $record = new FS::pkg_svc { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+
+  $part_pkg = $record->part_pkg;
+
+  $part_svc = $record->part_svc;
+

+


+

DESCRIPTION

+

An FS::pkg_svc record links a billing item definition (see the FS::part_pkg manpage) to +a service definition (see the FS::part_svc manpage). FS::pkg_svc inherits from +FS::Record. The following fields are currently supported:

+
+
pkgpart - Billing item definition (see the FS::part_pkg manpage)
+
+
svcpart - Service definition (see the FS::part_svc manpage)
+
+
quantity - Quantity of this service definition that this billing item +definition includes
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Create a new record. To add the record to the database, see insert. +

+
insert
+
+Adds this record to the database. If there is an error, returns the error, +otherwise returns false. +

+
delete
+
+Deletes this record from the database. If there is an error, returns the +error, otherwise returns false. +

+
replace OLD_RECORD
+
+Replaces OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. +

+
check
+
+Checks all fields to make sure this is a valid record. If there is an error, +returns the error, otherwise returns false. Called by the insert and replace +methods. +

+
part_pkg
+
+Returns the FS::part_pkg object (see the FS::part_pkg manpage). +

+
part_svc
+
+Returns the FS::part_svc object (see the FS::part_svc manpage). +

+

+


+

VERSION

+

$Id: pkg_svc.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

+

+


+

BUGS

+

+


+

SEE ALSO

+

the FS::Record manpage, the FS::part_pkg manpage, the FS::part_svc manpage, schema.html from the base +documentation.

+ + + + diff --git a/httemplate/docs/man/FS/port.html b/httemplate/docs/man/FS/port.html new file mode 100644 index 000000000..3851390c8 --- /dev/null +++ b/httemplate/docs/man/FS/port.html @@ -0,0 +1,120 @@ + + +FS::port - Object methods for port records + + + + + + + + + + + +
+

+

NAME

+

FS::port - Object methods for port records

+

+


+

SYNOPSIS

+
+  use FS::port;
+
+  $record = new FS::port \%hash;
+  $record = new FS::port { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+
+  $session = $port->session;
+

+


+

DESCRIPTION

+

An FS::port object represents an individual port on a NAS. FS::port inherits +from FS::Record. The following fields are currently supported:

+
+
portnum - primary key
+
+
ip - IP address of this port
+
+
nasport - port number on the NAS
+
+
nasnum - NAS this port is on - see the FS::nas manpage
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new port. To add the example to the database, see insert. +

Note that this stores the hash reference, not a distinct copy of the hash it +points to. You can ask the object for a copy with the hash method.

+

+
insert
+
+Adds this record to the database. If there is an error, returns the error, +otherwise returns false. +

+
delete
+
+Delete this record from the database. +

+
replace OLD_RECORD
+
+Replaces the OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. +

+
check
+
+Checks all fields to make sure this is a valid example. If there is +an error, returns the error, otherwise returns false. Called by the insert +and replace methods. +

+
session
+
+Returns the currently open session on this port, or if no session is currently +open, the most recent session. See the FS::session manpage. +

+

+


+

VERSION

+

$Id: port.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

+

+


+

BUGS

+

The author forgot to customize this manpage.

+

The session method won't deal well if you have multiple open sessions on a +port, for example if your RADIUS server drops stop records. Suggestions for +how to deal with this sort of lossage welcome; should we close the session +when we get a new session on that port? Tag it as invalid somehow? Close it +one second after it was opened? *sigh* Maybe FS::session shouldn't let you +create overlapping sessions, at least folks will find out their logging is +dropping records.

+

If you think the above refers multiple user logins you need to read the +manpages again.

+

+


+

SEE ALSO

+

the FS::Record manpage, schema.html from the base documentation.

+ + + + diff --git a/httemplate/docs/man/FS/prepay_credit.html b/httemplate/docs/man/FS/prepay_credit.html new file mode 100644 index 000000000..4e77897a3 --- /dev/null +++ b/httemplate/docs/man/FS/prepay_credit.html @@ -0,0 +1,118 @@ + + +FS::prepay_credit - Object methods for prepay_credit records + + + + + + + + + + + +
+

+

NAME

+

FS::prepay_credit - Object methods for prepay_credit records

+

+


+

SYNOPSIS

+
+  use FS::prepay_credit;
+
+  $record = new FS::prepay_credit \%hash;
+  $record = new FS::prepay_credit {
+    'identifier' => '4198123455512121'
+    'amount'     => '19.95',
+  };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+

+


+

DESCRIPTION

+

An FS::table_name object represents an pre--paid credit, such as a pre-paid +``calling card''. FS::prepay_credit inherits from FS::Record. The following +fields are currently supported:

+
+
field - description
+
+
identifier - identifier entered by the user to receive the credit
+
+
amount - amount of the credit
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new pre-paid credit. To add the example to the database, see +insert. +

Note that this stores the hash reference, not a distinct copy of the hash it +points to. You can ask the object for a copy with the hash method.

+

+
insert
+
+Adds this record to the database. If there is an error, returns the error, +otherwise returns false. +

+
delete
+
+Delete this record from the database. +

+
replace OLD_RECORD
+
+Replaces the OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. +

+
check
+
+Checks all fields to make sure this is a valid pre-paid credit. If there is +an error, returns the error, otherwise returns false. Called by the insert +and replace methods. +

+

+


+

VERSION

+

$Id: prepay_credit.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

+

+


+

BUGS

+

+


+

SEE ALSO

+

the FS::Record manpage, schema.html from the base documentation.

+

+


+

HISTORY

+

$Log: prepay_credit.html,v $ +

Revision 1.1 2001-07-30 07:36:03 ivan +

templates!!! +

+Revision 1.2 2000/02/02 20:22:18 ivan +bugfix prepayment in signup server

+

Revision 1.1 2000/01/31 05:22:23 ivan +prepaid ``internet cards''

+ + + + diff --git a/httemplate/docs/man/FS/session.html b/httemplate/docs/man/FS/session.html new file mode 100644 index 000000000..571c2d44d --- /dev/null +++ b/httemplate/docs/man/FS/session.html @@ -0,0 +1,129 @@ + + +FS::session - Object methods for session records + + + + + + + + + + + +
+

+

NAME

+

FS::session - Object methods for session records

+

+


+

SYNOPSIS

+
+  use FS::session;
+
+  $record = new FS::session \%hash;
+  $record = new FS::session {
+    'portnum' => 1,
+    'svcnum'  => 2,
+    'login'   => $timestamp,
+    'logout'  => $timestamp,
+  };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+
+  $error = $record->nas_heartbeat($timestamp);
+

+


+

DESCRIPTION

+

An FS::session object represents an user login session. FS::session inherits +from FS::Record. The following fields are currently supported:

+
+
sessionnum - primary key
+
+
portnum - NAS port for this session - see the FS::port manpage
+
+
svcnum - User for this session - see the FS::svc_acct manpage
+
+
login - timestamp indicating the beginning of this user session.
+
+
logout - timestamp indicating the end of this user session. May be null, + which indicates a currently open session.
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new session. To add the session to the database, see insert. +

Note that this stores the hash reference, not a distinct copy of the hash it +points to. You can ask the object for a copy with the hash method.

+

+
insert
+
+Adds this record to the database. If there is an error, returns the error, +otherwise returns false. If the `login' field is empty, it is replaced with +the current time. +

+
delete
+
+Delete this record from the database. +

+
replace OLD_RECORD
+
+Replaces the OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. If the `logout' field is empty, +it is replaced with the current time. +

+
check
+
+Checks all fields to make sure this is a valid session. If there is +an error, returns the error, otherwise returns false. Called by the insert +and replace methods. +

+
nas_heartbeat
+
+Heartbeats the nas associated with this session (see the FS::nas manpage). +

+
svc_acct
+
+Returns the svc_acct record associated with this session (see the FS::svc_acct manpage). +

+

+


+

VERSION

+

$Id: session.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

+

+


+

BUGS

+

Maybe you shouldn't be able to insert a session if there's currently an open +session on that port. Or maybe the open session on that port should be flagged +as problematic? autoclosed? *sigh*

+

Hmm, sessions refer to current svc_acct records... probably need to constrain +deletions to svc_acct records such that no svc_acct records are deleted which +have a session (even if long-closed).

+

+


+

SEE ALSO

+

the FS::Record manpage, schema.html from the base documentation.

+ + + + diff --git a/httemplate/docs/man/FS/svc_Common.html b/httemplate/docs/man/FS/svc_Common.html new file mode 100644 index 000000000..100aee880 --- /dev/null +++ b/httemplate/docs/man/FS/svc_Common.html @@ -0,0 +1,94 @@ + + +FS::svc_Common - Object method for all svc_ records + + + + + + + + + + + +
+

+

NAME

+

FS::svc_Common - Object method for all svc_ records

+

+


+

SYNOPSIS

+

use FS::svc_Common;

+

@ISA = qw( FS::svc_Common );

+

+


+

DESCRIPTION

+

FS::svc_Common is intended as a base class for table-specific classes to +inherit from, i.e. FS::svc_acct. FS::svc_Common inherits from FS::Record.

+

+


+

METHODS

+
+
insert
+
+Adds this record to the database. If there is an error, returns the error, +otherwise returns false. +

The additional fields pkgnum and svcpart (see the FS::cust_svc manpage) should be +defined. An FS::cust_svc record will be created and inserted.

+

+
delete
+
+Deletes this account from the database. If there is an error, returns the +error, otherwise returns false. +

The corresponding FS::cust_svc record will be deleted as well.

+

+
setfixed
+
+Sets any fixed fields for this service (see the FS::part_svc manpage). If there is an +error, returns the error, otherwise returns the FS::part_svc object (use ref() +to test the return). Usually called by the check method. +

+
setdefault
+
+Sets all fields to their defaults (see the FS::part_svc manpage), overriding their +current values. If there is an error, returns the error, otherwise returns +the FS::part_svc object (use ref() to test the return). +

+
suspend
+
+
unsuspend
+
+
cancel
+
+Stubs - return false (no error) so derived classes don't need to define these +methods. Called by the cancel method of FS::cust_pkg (see the FS::cust_pkg manpage). +

+

+


+

VERSION

+

$Id: svc_Common.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

+

+


+

BUGS

+

The setfixed method return value.

+

The new method should set defaults from part_svc (like the check method +sets fixed values)?

+

+


+

SEE ALSO

+

the FS::Record manpage, the FS::cust_svc manpage, the FS::part_svc manpage, the FS::cust_pkg manpage, schema.html +from the base documentation.

+ + + + diff --git a/httemplate/docs/man/FS/svc_acct.html b/httemplate/docs/man/FS/svc_acct.html new file mode 100644 index 000000000..81bc118df --- /dev/null +++ b/httemplate/docs/man/FS/svc_acct.html @@ -0,0 +1,219 @@ + + +FS::svc_acct - Object methods for svc_acct records + + + + + + + + + + + +
+

+

NAME

+

FS::svc_acct - Object methods for svc_acct records

+

+


+

SYNOPSIS

+
+  use FS::svc_acct;
+
+  $record = new FS::svc_acct \%hash;
+  $record = new FS::svc_acct { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+
+  $error = $record->suspend;
+
+  $error = $record->unsuspend;
+
+  $error = $record->cancel;
+
+  %hash = $record->radius;
+

+


+

DESCRIPTION

+

An FS::svc_acct object represents an account. FS::svc_acct inherits from +FS::svc_Common. The following fields are currently supported:

+
+
svcnum - primary key (assigned automatcially for new accounts)
+
+
username
+
+
_password - generated if blank
+
+
popnum - Point of presence (see the FS::svc_acct_pop manpage)
+
+
uid
+
+
gid
+
+
finger - GECOS
+
+
dir - set automatically if blank (and uid is not)
+
+
shell
+
+
quota - (unimplementd)
+
+
slipip - IP address
+
+
radius_Radius_Attribute - Radius-Attribute
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new account. To add the account to the database, see insert. +

+
insert
+
+Adds this account to the database. If there is an error, returns the error, +otherwise returns false. +

The additional fields pkgnum and svcpart (see the FS::cust_svc manpage) should be +defined. An FS::cust_svc record will be created and inserted.

+

If the configuration value (see the FS::Conf manpage) shellmachine exists, and the +username, uid, and dir fields are defined, the command(s) specified in +the shellmachine-useradd configuration are exectued on shellmachine via ssh. +This behaviour can be surpressed by setting $FS::svc_acct::nossh_hack true. +If the shellmachine-useradd configuration file does not exist,

+
+  useradd -d $dir -m -s $shell -u $uid $username
+

is the default. If the shellmachine-useradd configuration file exists but +it empty,

+
+  cp -pr /etc/skel $dir; chown -R $uid.$gid $dir
+

is the default instead. Otherwise the contents of the file are treated as +a double-quoted perl string, with the following variables available: +$username, $uid, $gid, $dir, and $shell.

+

+
delete
+
+Deletes this account from the database. If there is an error, returns the +error, otherwise returns false. +

The corresponding FS::cust_svc record will be deleted as well.

+

If the configuration value (see the FS::Conf manpage) shellmachine exists, the +command(s) specified in the shellmachine-userdel configuration file are +executed on shellmachine via ssh. This behavior can be surpressed by setting +$FS::svc_acct::nossh_hack true. If the shellmachine-userdel configuration +file does not exist,

+
+  userdel $username
+

is the default. If the shellmachine-userdel configuration file exists but +is empty,

+
+  rm -rf $dir
+

is the default instead. Otherwise the contents of the file are treated as a +double-quoted perl string, with the following variables available: +$username and $dir.

+

+
replace OLD_RECORD
+
+Replaces OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. +

If the configuration value (see the FS::Conf manpage) shellmachine exists, and the +dir field has changed, the command(s) specified in the shellmachine-usermod +configuraiton file are executed on shellmachine via ssh. This behavior can +be surpressed by setting $FS::svc-acct::nossh_hack true. If the +shellmachine-userdel configuration file does not exist or is empty, :

+
+  [ -d $old_dir ] && mv $old_dir $new_dir || (
+    chmod u+t $old_dir;
+    mkdir $new_dir;
+    cd $old_dir;
+    find . -depth -print | cpio -pdm $new_dir;
+    chmod u-t $new_dir;
+    chown -R $uid.$gid $new_dir;
+    rm -rf $old_dir
+  )
+

is executed on shellmachine via ssh. This behaviour can be surpressed by +setting $FS::svc_acct::nossh_hack true.

+

+
suspend
+
+Suspends this account by prefixing *SUSPENDED* to the password. If there is an +error, returns the error, otherwise returns false. +

Called by the suspend method of FS::cust_pkg (see the FS::cust_pkg manpage).

+

+
unsuspend
+
+Unsuspends this account by removing *SUSPENDED* from the password. If there is +an error, returns the error, otherwise returns false. +

Called by the unsuspend method of FS::cust_pkg (see the FS::cust_pkg manpage).

+

+
cancel
+
+Just returns false (no error) for now. +

Called by the cancel method of FS::cust_pkg (see the FS::cust_pkg manpage).

+

+
check
+
+Checks all fields to make sure this is a valid service. If there is an error, +returns the error, otherwise returns false. Called by the insert and replace +methods. +

Sets any fixed values; see the FS::part_svc manpage.

+

+
radius
+
+Depriciated, use radius_reply instead. +

+
radius_reply
+
+Returns key/value pairs, suitable for assigning to a hash, for any RADIUS +reply attributes of this record. +

Note that this is now the preferred method for reading RADIUS attributes - +accessing the columns directly is discouraged, as the column names are +expected to change in the future.

+

+
radius_check
+
+Returns key/value pairs, suitable for assigning to a hash, for any RADIUS +check attributes of this record. +

Accessing RADIUS attributes directly is not supported and will break in the +future.

+

+

+


+

VERSION

+

$Id: svc_acct.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

+

+


+

BUGS

+

The bits which ssh should fork before doing so (or maybe queue jobs for a +daemon).

+

The $recref stuff in sub check should be cleaned up.

+

The suspend, unsuspend and cancel methods update the database, but not the +current object. This is probably a bug as it's unexpected and +counterintuitive.

+

+


+

SEE ALSO

+

the FS::svc_Common manpage, the FS::Record manpage, the FS::Conf manpage, the FS::cust_svc manpage, +the FS::part_svc manpage, the FS::cust_pkg manpage, the Net::SSH manpage, ssh, the FS::svc_acct_pop manpage, +schema.html from the base documentation.

+ + + + diff --git a/httemplate/docs/man/FS/svc_acct_pop.html b/httemplate/docs/man/FS/svc_acct_pop.html new file mode 100644 index 000000000..d65ca5778 --- /dev/null +++ b/httemplate/docs/man/FS/svc_acct_pop.html @@ -0,0 +1,107 @@ + + +FS::svc_acct_pop - Object methods for svc_acct_pop records + + + + + + + + + + + +
+

+

NAME

+

FS::svc_acct_pop - Object methods for svc_acct_pop records

+

+


+

SYNOPSIS

+
+  use FS::svc_acct_pop;
+
+  $record = new FS::svc_acct_pop \%hash;
+  $record = new FS::svc_acct_pop { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+

+


+

DESCRIPTION

+

An FS::svc_acct object represents an point of presence. FS::svc_acct_pop +inherits from FS::Record. The following fields are currently supported:

+
+
popnum - primary key (assigned automatically for new accounts)
+
+
city
+
+
state
+
+
ac - area code
+
+
exch - exchange
+
+
loc - rest of number
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new point of presence (if only it were that easy!). To add the +point of presence to the database, see insert. +

+
insert
+
+Adds this point of presence to the database. If there is an error, returns the +error, otherwise returns false. +

+
delete
+
+Removes this point of presence from the database. +

+
replace OLD_RECORD
+
+Replaces OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. +

+
check
+
+Checks all fields to make sure this is a valid point of presence. If there is +an error, returns the error, otherwise returns false. Called by the insert +and replace methods. +

+

+


+

VERSION

+

$Id: svc_acct_pop.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

+

+


+

BUGS

+

It should be renamed to part_pop.

+

+


+

SEE ALSO

+

the FS::Record manpage, the svc_acct manpage, schema.html from the base documentation.

+ + + + diff --git a/httemplate/docs/man/FS/svc_acct_sm.html b/httemplate/docs/man/FS/svc_acct_sm.html new file mode 100644 index 000000000..ca50e7202 --- /dev/null +++ b/httemplate/docs/man/FS/svc_acct_sm.html @@ -0,0 +1,141 @@ + + +FS::svc_acct_sm - Object methods for svc_acct_sm records + + + + + + + + + + + +
+

+

NAME

+

FS::svc_acct_sm - Object methods for svc_acct_sm records

+

+


+

SYNOPSIS

+
+  use FS::svc_acct_sm;
+
+  $record = new FS::svc_acct_sm \%hash;
+  $record = new FS::svc_acct_sm { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+
+  $error = $record->suspend;
+
+  $error = $record->unsuspend;
+
+  $error = $record->cancel;
+

+


+

DESCRIPTION

+

An FS::svc_acct object represents a virtual mail alias. FS::svc_acct inherits +from FS::Record. The following fields are currently supported:

+
+
svcnum - primary key (assigned automatcially for new accounts)
+
+
domsvc - svcnum of the virtual domain (see the FS::svc_domain manpage)
+
+
domuid - uid of the target account (see the FS::svc_acct manpage)
+
+
domuser - virtual username
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new virtual mail alias. To add the virtual mail alias to the +database, see insert. +

+
insert
+
+Adds this virtual mail alias to the database. If there is an error, returns +the error, otherwise returns false. +

The additional fields pkgnum and svcpart (see the FS::cust_svc manpage) should be +defined. An FS::cust_svc record will be created and inserted.

+

If the configuration values (see the FS::Conf manpage) shellmachine and qmailmachines +exist, and domuser is `*' (meaning a catch-all mailbox), the command:

+
+  [ -e $dir/.qmail-$qdomain-default ] || {
+    touch $dir/.qmail-$qdomain-default;
+    chown $uid:$gid $dir/.qmail-$qdomain-default;
+  }
+

is executed on shellmachine via ssh (see dot-qmail/``EXTENSION ADDRESSES''). +This behaviour can be surpressed by setting $FS::svc_acct_sm::nossh_hack true.

+

+
delete
+
+Deletes this virtual mail alias from the database. If there is an error, +returns the error, otherwise returns false. +

The corresponding FS::cust_svc record will be deleted as well.

+

+
replace OLD_RECORD
+
+Replaces OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. +

+
suspend
+
+Just returns false (no error) for now. +

Called by the suspend method of FS::cust_pkg (see the FS::cust_pkg manpage).

+

+
unsuspend
+
+Just returns false (no error) for now. +

Called by the unsuspend method of FS::cust_pkg (see the FS::cust_pkg manpage).

+

+
cancel
+
+Just returns false (no error) for now. +

Called by the cancel method of FS::cust_pkg (see the FS::cust_pkg manpage).

+

+
check
+
+Checks all fields to make sure this is a valid virtual mail alias. If there is +an error, returns the error, otherwise returns false. Called by the insert and +replace methods. +

Sets any fixed values; see the FS::part_svc manpage.

+

+

+


+

VERSION

+

$Id: svc_acct_sm.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

+

+


+

BUGS

+

The remote commands should be configurable.

+

The $recref stuff in sub check should be cleaned up.

+

+


+

SEE ALSO

+

the FS::Record manpage, the FS::Conf manpage, the FS::cust_svc manpage, the FS::part_svc manpage, the FS::cust_pkg manpage, +the FS::svc_acct manpage, the FS::svc_domain manpage, the Net::SSH manpage, ssh, dot-qmail, +schema.html from the base documentation.

+ + + + diff --git a/httemplate/docs/man/FS/svc_domain.html b/httemplate/docs/man/FS/svc_domain.html new file mode 100644 index 000000000..ace3de154 --- /dev/null +++ b/httemplate/docs/man/FS/svc_domain.html @@ -0,0 +1,162 @@ + + +FS::svc_domain - Object methods for svc_domain records + + + + + + + + + + + +
+

+

NAME

+

FS::svc_domain - Object methods for svc_domain records

+

+


+

SYNOPSIS

+
+  use FS::svc_domain;
+
+  $record = new FS::svc_domain \%hash;
+  $record = new FS::svc_domain { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+
+  $error = $record->suspend;
+
+  $error = $record->unsuspend;
+
+  $error = $record->cancel;
+

+


+

DESCRIPTION

+

An FS::svc_domain object represents a domain. FS::svc_domain inherits from +FS::svc_Common. The following fields are currently supported:

+
+
svcnum - primary key (assigned automatically for new accounts)
+
+
domain
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new domain. To add the domain to the database, see insert. +

+
insert
+
+Adds this domain to the database. If there is an error, returns the error, +otherwise returns false. +

The additional fields pkgnum and svcpart (see the FS::cust_svc manpage) should be +defined. An FS::cust_svc record will be created and inserted.

+

The additional field action should be set to N for new domains or M +for transfers.

+

A registration or transfer email will be submitted unless +$FS::svc_domain::whois_hack is true.

+

The additional field email can be used to manually set the admin contact +email address on this email. Otherwise, the svc_acct records for this package +(see the FS::cust_pkg manpage) are searched. If there is exactly one svc_acct record +in the same package, it is automatically used. Otherwise an error is returned.

+

If any soamachine configuration file exists, an SOA record is added to +the domain_record table (see <FS::domain_record>).

+

If any machines are defined in the nsmachines configuration file, NS +records are added to the domain_record table (see the FS::domain_record manpage).

+

If any machines are defined in the mxmachines configuration file, MX +records are added to the domain_record table (see the FS::domain_record manpage).

+

Any problems adding FS::domain_record records will emit warnings, but will +not return errors from this method. If your configuration files are correct +you shouln't have any problems.

+

+
delete
+
+Deletes this domain from the database. If there is an error, returns the +error, otherwise returns false. +

The corresponding FS::cust_svc record will be deleted as well.

+

+
replace OLD_RECORD
+
+Replaces OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. +

+
suspend
+
+Just returns false (no error) for now. +

Called by the suspend method of FS::cust_pkg (see the FS::cust_pkg manpage).

+

+
unsuspend
+
+Just returns false (no error) for now. +

Called by the unsuspend method of FS::cust_pkg (see the FS::cust_pkg manpage).

+

+
cancel
+
+Just returns false (no error) for now. +

Called by the cancel method of FS::cust_pkg (see the FS::cust_pkg manpage).

+

+
check
+
+Checks all fields to make sure this is a valid domain. If there is an error, +returns the error, otherwise returns false. Called by the insert and replace +methods. +

Sets any fixed values; see the FS::part_svc manpage.

+

+
whois
+
+Returns the Net::Whois::Domain object (see the Net::Whois manpage) for this domain, or +undef if the domain is not found in whois. +

(If $FS::svc_domain::whois_hack is true, returns that in all cases instead.)

+

+
_whois
+
+Depriciated. +

+
submit_internic
+
+Submits a registration email for this domain. +

+

+


+

VERSION

+

$Id: svc_domain.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

+

+


+

BUGS

+

All BIND/DNS fields should be included (and exported).

+

Delete doesn't send a registration template.

+

All registries should be supported.

+

Should change action to a real field.

+

The $recref stuff in sub check should be cleaned up.

+

+


+

SEE ALSO

+

the FS::svc_Common manpage, the FS::Record manpage, the FS::Conf manpage, the FS::cust_svc manpage, +the FS::part_svc manpage, the FS::cust_pkg manpage, the Net::Whois manpage, ssh, +dot-qmail, schema.html from the base documentation, config.html from the +base documentation.

+ + + + diff --git a/httemplate/docs/man/FS/svc_www.html b/httemplate/docs/man/FS/svc_www.html new file mode 100644 index 000000000..e72b219be --- /dev/null +++ b/httemplate/docs/man/FS/svc_www.html @@ -0,0 +1,150 @@ + + +FS::svc_www - Object methods for svc_www records + + + + + + + + + + + +
+

+

NAME

+

FS::svc_www - Object methods for svc_www records

+

+


+

SYNOPSIS

+
+  use FS::svc_www;
+
+  $record = new FS::svc_www \%hash;
+  $record = new FS::svc_www { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+
+  $error = $record->suspend;
+
+  $error = $record->unsuspend;
+
+  $error = $record->cancel;
+

+


+

DESCRIPTION

+

An FS::svc_www object represents an web virtual host. FS::svc_www inherits +from FS::svc_Common. The following fields are currently supported:

+
+
svcnum - primary key
+
+
recnum - DNS `A' record corresponding to this web virtual host. (see the FS::domain_record manpage)
+
+
usersvc - account (see the FS::svc_acct manpage) corresponding to this web virtual host.
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Creates a new web virtual host. To add the record to the database, see +insert. +

Note that this stores the hash reference, not a distinct copy of the hash it +points to. You can ask the object for a copy with the hash method.

+

+
insert
+
+Adds this record to the database. If there is an error, returns the error, +otherwise returns false. +

The additional fields pkgnum and svcpart (see the FS::cust_svc manpage) should be +defined. An FS::cust_svc record will be created and inserted.

+

If the configuration values (see the FS::Conf manpage) apachemachine, and +apacheroot exist, the command:

+
+  mkdir $apacheroot/$zone;
+  chown $username $apacheroot/$zone;
+  ln -s $apacheroot/$zone $homedir/$zone
+

$zone is the DNS A record pointed to by recnum +$username is the username pointed to by usersvc +$homedir is that user's home directory

+

is executed on apachemachine via ssh. This behaviour can be surpressed by +setting $FS::svc_www::nossh_hack true.

+

+
delete
+
+Delete this record from the database. +

+
replace OLD_RECORD
+
+Replaces the OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. +

+
suspend
+
+Called by the suspend method of FS::cust_pkg (see the FS::cust_pkg manpage). +

+
unsuspend
+
+Called by the unsuspend method of FS::cust_pkg (see the FS::cust_pkg manpage). +

+
cancel
+
+Called by the cancel method of FS::cust_pkg (see the FS::cust_pkg manpage). +

+
check
+
+Checks all fields to make sure this is a valid example. If there is +an error, returns the error, otherwise returns false. Called by the insert +and repalce methods. +

+

+


+

VERSION

+

$Id: svc_www.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

+

+


+

BUGS

+

+


+

SEE ALSO

+

the FS::svc_Common manpage, the FS::Record manpage, the FS::domain_record manpage, the FS::cust_svc manpage, +the FS::part_svc manpage, the FS::cust_pkg manpage, schema.html from the base documentation.

+

+


+

HISTORY

+

$Log: svc_www.html,v $ +

Revision 1.1 2001-07-30 07:36:03 ivan +

templates!!! +

+Revision 1.4 2001/04/22 01:56:15 ivan +get rid of FS::SSH.pm (became Net::SSH and Net::SCP on CPAN)

+

Revision 1.3 2000/11/22 23:30:51 ivan +tyop

+

Revision 1.2 2000/03/01 08:13:59 ivan +compilation bugfixes

+

Revision 1.1 2000/02/03 05:16:52 ivan +beginning of DNS and Apache support

+ + + + diff --git a/httemplate/docs/man/FS/type_pkgs.html b/httemplate/docs/man/FS/type_pkgs.html new file mode 100644 index 000000000..ba258252f --- /dev/null +++ b/httemplate/docs/man/FS/type_pkgs.html @@ -0,0 +1,100 @@ + + +FS::type_pkgs - Object methods for type_pkgs records + + + + + + + + + + + +
+

+

NAME

+

FS::type_pkgs - Object methods for type_pkgs records

+

+


+

SYNOPSIS

+
+  use FS::type_pkgs;
+
+  $record = new FS::type_pkgs \%hash;
+  $record = new FS::type_pkgs { 'column' => 'value' };
+
+  $error = $record->insert;
+
+  $error = $new_record->replace($old_record);
+
+  $error = $record->delete;
+
+  $error = $record->check;
+

+


+

DESCRIPTION

+

An FS::type_pkgs record links an agent type (see the FS::agent_type manpage) to a +billing item definition (see the FS::part_pkg manpage). FS::type_pkgs inherits from +FS::Record. The following fields are currently supported:

+
+
typenum - Agent type, see the FS::agent_type manpage
+
+
pkgpart - Billing item definition, see the FS::part_pkg manpage
+
+
+

+


+

METHODS

+
+
new HASHREF
+
+Create a new record. To add the record to the database, see insert. +

+
insert
+
+Adds this record to the database. If there is an error, returns the error, +otherwise returns false. +

+
delete
+
+Deletes this record from the database. If there is an error, returns the +error, otherwise returns false. +

+
replace OLD_RECORD
+
+Replaces OLD_RECORD with this one in the database. If there is an error, +returns the error, otherwise returns false. +

+
check
+
+Checks all fields to make sure this is a valid record. If there is an error, +returns the error, otherwise returns false. Called by the insert and replace +methods. +

+

+


+

VERSION

+

$Id: type_pkgs.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

+

+


+

BUGS

+

+


+

SEE ALSO

+

the FS::Record manpage, the FS::agent_type manpage, the FS::part_pkgs manpage, schema.html from the base +documentation.

+ + + + -- cgit v1.2.1 From 6991d4986df7fb3a6c7c49b5ae1b3713e87a16c4 Mon Sep 17 00:00:00 2001 From: ivan Date: Tue, 29 Jan 2002 16:33:16 +0000 Subject: - web interface for hourly account charges! (FS::cust_pkg, FS::cust_svc and FS::svc_acct seconds_since methods) - Makefile target to regenerate HTML manpages on install - FS.pm doc update - $FS::Record::Debug now dumps all SQL - new FS::cust_main methods: ->cancel, ->invoicing_list_addpost - start of a billing event web interface - cust_pay::upgrade_replace doesn't error out if history includes overapplied payments --- httemplate/docs/man/FS.html | 62 ++++++--- httemplate/docs/man/FS/CGI.html | 5 + httemplate/docs/man/FS/Conf.html | 26 +++- httemplate/docs/man/FS/Record.html | 56 +++++--- httemplate/docs/man/FS/SessionClient.html | 2 +- httemplate/docs/man/FS/SignupClient.html | 193 +++++++++++++------------- httemplate/docs/man/FS/UID.html | 8 +- httemplate/docs/man/FS/cust_bill.html | 37 +++-- httemplate/docs/man/FS/cust_credit.html | 22 ++- httemplate/docs/man/FS/cust_main.html | 174 ++++++++++++++++++++--- httemplate/docs/man/FS/cust_main_invoice.html | 2 +- httemplate/docs/man/FS/cust_pay.html | 27 +++- httemplate/docs/man/FS/cust_pay_batch.html | 4 +- httemplate/docs/man/FS/cust_pkg.html | 56 +++++--- httemplate/docs/man/FS/cust_refund.html | 14 +- httemplate/docs/man/FS/cust_svc.html | 25 +++- httemplate/docs/man/FS/domain_record.html | 14 +- httemplate/docs/man/FS/part_pkg.html | 16 ++- httemplate/docs/man/FS/part_svc.html | 32 +++-- httemplate/docs/man/FS/prepay_credit.html | 14 +- httemplate/docs/man/FS/svc_Common.html | 9 +- httemplate/docs/man/FS/svc_acct.html | 76 ++++++++-- httemplate/docs/man/FS/svc_acct_pop.html | 22 ++- httemplate/docs/man/FS/svc_acct_sm.html | 31 +++-- httemplate/docs/man/FS/svc_domain.html | 19 ++- httemplate/docs/man/FS/svc_www.html | 18 +-- 26 files changed, 672 insertions(+), 292 deletions(-) (limited to 'httemplate/docs/man') diff --git a/httemplate/docs/man/FS.html b/httemplate/docs/man/FS.html index 23e8ca42f..7db6bb9fd 100644 --- a/httemplate/docs/man/FS.html +++ b/httemplate/docs/man/FS.html @@ -17,12 +17,17 @@
  • Utility classes
  • Database record classes
  • -
  • User Interface classes (under development; not yet usable)
  • + + +
  • Remote API modules
  • +
  • DESCRIPTION
  • -
  • VERSION
  • SUPPORT
  • AUTHOR
  • SEE ALSO
  • @@ -37,29 +42,32 @@


    SYNOPSIS

    -

    FS is the unofficial (i.e. non-CPAN) prefix for the Perl module portion of the -Freeside ISP billing software. This includes:

    +

    Freeside perl modules and CLI utilities.

    Utility classes

    the FS::Conf manpage - Freeside configuration values

    +

    the FS::ConfItem manpage - Freeside configuration option meta-data.

    the FS::UID manpage - User class (not yet OO)

    -

    the FS::CGI manpage - Non OO-subroutines for the web interface. This is -depriciated. Future development will be focused on the FS::UI user-interface -classes (see below).

    +

    the FS::CGI manpage - Non OO-subroutines for the web interface.

    Database record classes

    the FS::Record manpage - Database record base class

    the FS::svc_acct_pop manpage - POP (Point of Presence, not Post Office Protocol) class

    +

    the FS::part_pop_local manpage - Local calling area class

    the FS::part_referral manpage - Referral class

    the FS::cust_main_county manpage - Locale (tax rate) class

    the FS::svc_Common manpage - Service base class

    the FS::svc_acct manpage - Account (shell, RADIUS, POP3) class

    the FS::svc_domain manpage - Domain class

    the FS::domain_record manpage - DNS zone entries

    -

    the FS::svc_acct_sm manpage - Vitual mail alias class

    +

    the FS::svc_forward manpage - Mail forwarding class

    +

    the FS::svc_acct_sm manpage - (Depreciated) Vitual mail alias class

    the FS::svc_www manpage - Web virtual host class.

    the FS::part_svc manpage - Service definition class

    +

    the FS::part_svc_column manpage - Column constraint class

    +

    the FS::part_export manpage - External provisioning export class

    +

    the FS::part_export_option manpage - Export option class

    the FS::part_pkg manpage - Package (billing item) definition class

    the FS::pkg_svc manpage - Class linking package (billing item) definitions (see the FS::part_pkg manpage) with service definitions @@ -76,16 +84,36 @@ definitions (see the FS::part_pkg manpage) wi class

    the FS::cust_bill manpage - Invoice class

    the FS::cust_bill_pkg manpage - Invoice line item class

    +

    the FS::part_bill_event manpage - Invoice event definition class

    +

    the FS::cust_bill_event manpage - Completed invoice event class

    the FS::cust_pay manpage - Payment class

    +

    the FS::cust_bill_pay manpage - Payment application class

    the FS::cust_credit manpage - Credit class

    the FS::cust_refund manpage - Refund class

    +

    the FS::cust_credit_refund manpage - Refund application class

    +

    the FS::cust_credit_bill manpage - Credit invoice application class

    the FS::cust_pay_batch manpage - Credit card transaction queue class

    the FS::prepay_credit manpage - Prepaid ``calling card'' credit class.

    the FS::nas manpage - Network Access Server class

    the FS::port manpage - NAS port class

    the FS::session manpage - User login session class

    +

    the FS::queue manpage - Job queue

    +

    the FS::queue_arg manpage - Job arguments

    -

    User Interface classes (under development; not yet usable)

    +
    +

    Remote API modules

    +

    the FS::SignupClient manpage

    +

    the FS::SessionClient manpage

    +

    the FS::MailAdminServer manpage

    +

    +

    Command-line utilities

    +

    the freeside-email manpage

    +

    the freeside-queued manpage

    +

    the freeside-adduser manpage

    +

    the freeside-bill manpage

    +

    the freeside-overdue manpage

    +

    +

    User Interface classes (under (stalled) development; not yet usable)

    the FS::UI::Base manpage - User-interface base class

    the FS::UI::Gtk manpage - Gtk user-interface class

    the FS::UI::CGI manpage - CGI (HTML) user-interface class

    @@ -95,22 +123,23 @@ class

    To quote perl(1), ``If you're intending to read these straight through for the first time, the suggested order will tend to reduce the number of forward references.''

    +

    If you've never used OO modules before, +http://www.cpan.org/doc/FMTEYEWTK/easy_objects.html might help you out.


    DESCRIPTION

    Freeside is a billing and administration package for Internet Service Providers.

    The Freeside home page is at <http://www.sisd.com/freeside>.

    -

    The main documentation is in htdocs/docs.

    -

    -


    -

    VERSION

    -

    $Id: FS.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

    +

    The main documentation is in httemplate/docs.


    SUPPORT

    -

    A mailing list for users and developers is available. Send a blank message to +

    A mailing list for users is available. Send a blank message to <ivan-freeside-subscribe@sisd.com> to subscribe.

    +

    A mailing list for developers is available. It is intended to be lower volume +and higher SNR than the users list. Send a blank message to +<ivan-freeside-devel-subscribe@sisd.com> to subscribe.

    Commercial support is available; see <http://www.sisd.com/freeside/commercial.html>.

    @@ -126,9 +155,6 @@ list and the individal files for details.


    BUGS

    -

    The version number of the FS Perl extension differs from the version of the -Freeside distribution, which are both different from the CVS version tag for -each file, which appears under the VERSION heading.

    Those modules which would be useful separately should be pulled out, renamed appropriately and uploaded to CPAN. So far: DBIx::DBSchema, Net::SSH and Net::SCP...

    diff --git a/httemplate/docs/man/FS/CGI.html b/httemplate/docs/man/FS/CGI.html index 05f7823b4..54a0bf39b 100644 --- a/httemplate/docs/man/FS/CGI.html +++ b/httemplate/docs/man/FS/CGI.html @@ -79,12 +79,17 @@ Returns HTML tag for beginning an (invisible) table.
    ntable
    This is getting silly. +

    +
    small_custview CUSTNUM || CUST_MAIN_OBJECT, COUNTRYDEFAULT
    +
    +Sheesh. I should just switch to Mason.


    BUGS

    Not OO.

    Not complete.

    +

    small_custview sooooo doesn't belong here. i should just switch to Mason.


    SEE ALSO

    diff --git a/httemplate/docs/man/FS/Conf.html b/httemplate/docs/man/FS/Conf.html index 7b1613efd..be49be31f 100644 --- a/httemplate/docs/man/FS/Conf.html +++ b/httemplate/docs/man/FS/Conf.html @@ -1,6 +1,6 @@ -FS::Conf - Read access to Freeside configuration values +FS::Conf - Freeside configuration values @@ -23,7 +23,7 @@

    NAME

    -

    FS::Conf - Read access to Freeside configuration values

    +

    FS::Conf - Freeside configuration values


    SYNOPSIS

    @@ -40,10 +40,12 @@ $value = $conf->config('key'); @list = $conf->config('key'); $bool = $conf->exists('key'); +
    +  @config_items = $conf->config_items;


    DESCRIPTION

    -

    Read access to Freeside configuration values. Keys currently map to filenames, +

    Read and write Freeside configuration values. Keys currently map to filenames, but this may change in the future.


    @@ -66,15 +68,29 @@ Returns the configuration value or values (depending on context) for key.
    Returns true if the specified key exists, even if the corresponding value is undefined. +

    +
    touch
    +
    +
    set
    +
    +
    delete
    +
    +
    config_items
    +
    +Returns all of the possible configuration items as FS::ConfItem objects. See +the FS::ConfItem manpage.


    BUGS

    -

    Write access (with locking) should be implemented.

    +

    Write access (touch, set, delete) should be documented.

    +

    If this was more than just crud that will never be useful outside Freeside I'd +worry that config_items is freeside-specific and icky.


    SEE ALSO

    -

    config.html from the base documentation contains a list of configuration files.

    +

    ``Configuration'' in the web interface (config/config.cgi).

    +

    httemplate/docs/config.html

    diff --git a/httemplate/docs/man/FS/Record.html b/httemplate/docs/man/FS/Record.html index 09304083f..108a84ad7 100644 --- a/httemplate/docs/man/FS/Record.html +++ b/httemplate/docs/man/FS/Record.html @@ -17,7 +17,6 @@
  • CONSTRUCTORS
  • METHODS
  • SUBROUTINES
  • -
  • VERSION
  • BUGS
  • SEE ALSO
  • @@ -68,16 +67,17 @@
         $value = $record->unique('column');
    -    $value = $record->ut_float('column');
    -    $value = $record->ut_number('column');
    -    $value = $record->ut_numbern('column');
    -    $value = $record->ut_money('column');
    -    $value = $record->ut_text('column');
    -    $value = $record->ut_textn('column');
    -    $value = $record->ut_alpha('column');
    -    $value = $record->ut_alphan('column');
    -    $value = $record->ut_phonen('column');
    -    $value = $record->ut_anythingn('column');
    + $error = $record->ut_float('column'); + $error = $record->ut_number('column'); + $error = $record->ut_numbern('column'); + $error = $record->ut_money('column'); + $error = $record->ut_text('column'); + $error = $record->ut_textn('column'); + $error = $record->ut_alpha('column'); + $error = $record->ut_alphan('column'); + $error = $record->ut_phonen('column'); + $error = $record->ut_anything('column'); + $error = $record->ut_name('column');
         $dbdef = reload_dbdef;
         $dbdef = reload_dbdef "/non/standard/filename";
    @@ -125,6 +125,14 @@ objects.
     #regular FS::TABLE methods
     #on it.

    +
    jsearch TABLE, HASHREF, SELECT, EXTRA_SQL, PRIMARY_TABLE, PRIMARY_KEY
    +
    +Experimental JOINed search method. Using this method, you can execute a +single SELECT spanning multiple tables, and cache the results for subsequent +method calls. Interface will almost definately change in an incompatible +fashion. +

    Arguments:

    +

    qsearchs TABLE, HASHREF
    Same as qsearch, except that if more than one record matches, it carps but @@ -266,10 +274,29 @@ Check/untaint ip addresses. IPv4 only for now. May be null.
    Check/untaint host and domain names.

    +
    ut_name COLUMN
    +
    +Check/untaint proper names; allows alphanumerics, spaces and the following +punctuation: , . - ' +

    May not be null.

    +

    +
    ut_zip COLUMN
    +
    +Check/untaint zip codes. +

    +
    ut_country COLUMN
    +
    +Check/untaint country codes. Country names are changed to codes, if possible - +see the Locale::Country manpage. +

    ut_anything COLUMN
    Untaints arbitrary data. Be careful.

    +
    ut_enum COLUMN CHOICES_ARRAYREF
    +
    +Check/untaint a column, supplying all possible choices, like the ``enum'' type. +

    fields [ TABLE ]
    This can be used as both a subroutine and a method call. It returns a list @@ -303,10 +330,6 @@ This is depriciated. Don't use it.


    -

    VERSION

    -

    $Id: Record.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

    -

    -


    BUGS

    This module should probably be renamed, since much of the functionality is of general use. It is not completely unlike Adapter::DBI (see below).

    @@ -323,7 +346,7 @@ true maps to the database (and WHERE clauses) would also help.

    A fallback check method should be provided which uses the dbdef.

    The ut_money method assumes money has two decimal digits.

    The Pg money kludge in the new method only strips `$'.

    -

    The ut_phonen method assumes US-style phone numbers.

    +

    The ut_phonen method only checks US-style phone numbers.

    The _quote function should probably use ut_float instead of a regex.

    All the subroutines probably should be methods, here or elsewhere.

    Probably should borrow/use some dbdef methods where appropriate (like sub @@ -331,6 +354,7 @@ fields)

    As of 1.14, DBI fetchall_hashref( {} ) doesn't set fetchrow_hashref NAME_lc, or allow it to be set. Working around it is ugly any way around - DBI should be fixed. (only affects RDBMS which return uppercase column names)

    +

    ut_zip should take an optional country like ut_phone.


    SEE ALSO

    diff --git a/httemplate/docs/man/FS/SessionClient.html b/httemplate/docs/man/FS/SessionClient.html index 615f35e0e..0abb2a6a1 100644 --- a/httemplate/docs/man/FS/SessionClient.html +++ b/httemplate/docs/man/FS/SessionClient.html @@ -83,7 +83,7 @@ optional, but must be correct if specified.


    VERSION

    -

    $Id: SessionClient.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

    +

    $Id: SessionClient.html,v 1.3 2002-01-29 17:42:46 ivan Exp $


    BUGS

    diff --git a/httemplate/docs/man/FS/SignupClient.html b/httemplate/docs/man/FS/SignupClient.html index 844f64f33..3438c804a 100644 --- a/httemplate/docs/man/FS/SignupClient.html +++ b/httemplate/docs/man/FS/SignupClient.html @@ -1,124 +1,131 @@ FS::SignupClient - Freeside signup client API - + +

    -

    NAME

    -

    -FS::SignupClient - Freeside signup client API - +

    NAME

    +

    FS::SignupClient - Freeside signup client API


    -

    SYNOPSIS

    -

    -

      use FS::SignupClient qw( signup_info new_customer );
    -
    -

    -

      ( $locales, $packages, $pops ) = signup_info;
    -
    -

    -

      $error = new_customer ( {
    -    'first'          => $first,
    -    'last'           => $last,
    -    'ss'             => $ss,
    -    'comapny'        => $company,
    -    'address1'       => $address1,
    -    'address2'       => $address2,
    -    'city'           => $city,
    -    'county'         => $county,
    -    'state'          => $state,
    -    'zip'            => $zip,
    -    'country'        => $country,
    -    'daytime'        => $daytime,
    -    'night'          => $night,
    -    'fax'            => $fax,
    -    'payby'          => $payby,
    -    'payinfo'        => $payinfo,
    -    'paydate'        => $paydate,
    -    'payname'        => $payname,
    -    'invoicing_list' => $invoicing_list,
    -    'pkgpart'        => $pkgpart,
    -    'username'       => $username,
    -    '_password'       => $password,
    -    'popnum'         => $popnum,
    -  } );
    -
    +

    SYNOPSIS

    +
    +  use FS::SignupClient qw( signup_info new_customer );
    +
    +  ( $locales, $packages, $pops ) = signup_info;
    +
    +  $error = new_customer ( {
    +    'first'            => $first,
    +    'last'             => $last,
    +    'ss'               => $ss,
    +    'comapny'          => $company,
    +    'address1'         => $address1,
    +    'address2'         => $address2,
    +    'city'             => $city,
    +    'county'           => $county,
    +    'state'            => $state,
    +    'zip'              => $zip,
    +    'country'          => $country,
    +    'daytime'          => $daytime,
    +    'night'            => $night,
    +    'fax'              => $fax,
    +    'payby'            => $payby,
    +    'payinfo'          => $payinfo,
    +    'paydate'          => $paydate,
    +    'payname'          => $payname,
    +    'invoicing_list'   => $invoicing_list,
    +    'referral_custnum' => $referral_custnum,
    +    'pkgpart'          => $pkgpart,
    +    'username'         => $username,
    +    '_password'        => $password,
    +    'popnum'           => $popnum,
    +  } );


    -

    DESCRIPTION

    -

    -This module provides an API for a remote signup server. - -

    -It needs to be run as the freeside user. Because of this, the program which -calls these subroutines should be written very carefully. - +

    DESCRIPTION

    +

    This module provides an API for a remote signup server.

    +

    It needs to be run as the freeside user. Because of this, the program which +calls these subroutines should be written very carefully.


    -

    SUBROUTINES

    +

    SUBROUTINES

    -
    signup_info
    -

    +

    signup_info
    +
    Returns three array references of hash references. - -

    -The first set of hash references is of allowable locales. Each hash -reference has the following keys: taxnum state county country - -

    -The second set of hash references is of allowable packages. Each hash -reference has the following keys: pkgpart pkg - -

    -The third set of hash references is of allowable POPs (Points Of Presence). -Each hash reference has the following keys: popnum city state ac exch - -

    new_customer HASHREF
    -

    -Adds a customer to the remote Freeside system. Requires a hash reference as -a paramater with the following keys: first last ss comapny address1 -address2 city county state zip country daytime night fax payby payinfo -paydate payname invoicing_list pkgpart username _password popnum - -

    -Returns a scalar error message, or the empty string for success. - -

    +

    The first set of hash references is of allowable locales. Each hash reference +has the following keys: + taxnum + state + county + country

    +

    The second set of hash references is of allowable packages. Each hash +reference has the following keys: + pkgpart + pkg

    +

    The third set of hash references is of allowable POPs (Points Of Presence). +Each hash reference has the following keys: + popnum + city + state + ac + exch

    +

    +
    new_customer HASHREF
    +
    +Adds a customer to the remote Freeside system. Requires a hash reference as +a paramater with the following keys: + first + last + ss + comapny + address1 + address2 + city + county + state + zip + country + daytime + night + fax + payby + payinfo + paydate + payname + invoicing_list + referral_custnum + pkgpart + username + _password + popnum +

    Returns a scalar error message, or the empty string for success.

    +


    -

    VERSION

    -

    -$Id: SignupClient.html,v 1.1 2001-07-30 07:36:03 ivan Exp $ - -

    -


    -

    BUGS

    +

    BUGS


    -

    SEE ALSO

    -

    -fs_signupd, FS::SignupServer, FS::cust_main - - +

    SEE ALSO

    +

    fs_signupd, the FS::SignupServer manpage, the FS::cust_main manpage

    diff --git a/httemplate/docs/man/FS/UID.html b/httemplate/docs/man/FS/UID.html index 9f4947765..3c28eebfd 100644 --- a/httemplate/docs/man/FS/UID.html +++ b/httemplate/docs/man/FS/UID.html @@ -31,7 +31,7 @@

    SYNOPSIS

       use FS::UID qw(adminsuidsetup cgisuidsetup dbh datasrc getotaker
    -  checkeuid checkruid swapuid);
    + checkeuid checkruid);
       adminsuidsetup $user;
    @@ -100,10 +100,6 @@ Returns true if effective UID is that of the freeside user.
     
    Returns true if the real UID is that of the freeside user.

    -
    swapuid
    -
    -Swaps real and effective UIDs. -

    getsecrets [ USER ]
    Sets the user to USER, if supplied. @@ -122,7 +118,7 @@ coderef into the hash %FS::UID::callback :


    VERSION

    -

    $Id: UID.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

    +

    $Id: UID.html,v 1.3 2002-01-29 17:42:46 ivan Exp $


    BUGS

    diff --git a/httemplate/docs/man/FS/cust_bill.html b/httemplate/docs/man/FS/cust_bill.html index 2e2ad37fe..8bdb87b56 100644 --- a/httemplate/docs/man/FS/cust_bill.html +++ b/httemplate/docs/man/FS/cust_bill.html @@ -49,6 +49,8 @@ ( $total_previous_credits, @previous_cust_credit ) = $record->cust_credit;
       @cust_pay_objects = $cust_bill->cust_pay;
    +
    +  $tax_amount = $record->tax;
       @lines = $cust_bill->print_text;
       @lines = $cust_bill->print_text $time;
    @@ -72,6 +74,8 @@ following fields are currently supported:

    printed - how many times this invoice has been printed automatically (see collect in the FS::cust_main manpage).
    +
    closed - books closed flag, empty or `Y'
    +


    @@ -117,18 +121,34 @@ Returns the line items (see the FS::cust_bi

    cust_credit
    -Returns a list consisting of the total previous credited (see -the FS::cust_credit manpage) for this customer, followed by the previous outstanding -credits (FS::cust_credit objects). +Depreciated. See the cust_credited method. +
    + #Returns a list consisting of the total previous credited (see
    + #L<FS::cust_credit>) and unapplied for this customer, followed by the previous
    + #outstanding credits (FS::cust_credit objects).

    cust_pay
    -Returns all payments (see the FS::cust_pay manpage) for this invoice. +Depreciated. See the cust_bill_pay method. +

    #Returns all payments (see the FS::cust_pay manpage) for this invoice.

    +

    +
    cust_bill_pay
    +
    +Returns all payment applications (see the FS::cust_bill_pay manpage) for this invoice. +

    +
    cust_credited
    +
    +Returns all applied credits (see the FS::cust_credit_bill manpage) for this invoice. +

    +
    tax
    +
    +Returns the tax amount (see the FS::cust_bill_pkg manpage) for this invoice.

    owed
    Returns the amount owed (still outstanding) on this invoice, which is charged -minus all payments (see the FS::cust_pay manpage). +minus all payment applications (see the FS::cust_bill_pay manpage) and credit +applications (see the FS::cust_credit_bill manpage).

    print_text [TIME];
    @@ -141,7 +161,7 @@ It is specified as a UNIX timestamp; see perlfunc/``time''. Also see


    VERSION

    -

    $Id: cust_bill.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

    +

    $Id: cust_bill.html,v 1.3 2002-01-29 17:42:46 ivan Exp $


    BUGS

    @@ -153,8 +173,9 @@ or something similar so the look can be completely customized?)


    SEE ALSO

    -

    the FS::Record manpage, the FS::cust_main manpage, the FS::cust_pay manpage, the FS::cust_bill_pkg manpage, -the FS::cust_credit manpage, schema.html from the base documentation.

    +

    the FS::Record manpage, the FS::cust_main manpage, the FS::cust_bill_pay manpage, FS:;cust_pay, +the FS::cust_bill_pkg manpage, the FS::cust_bill_credit manpage, schema.html from the base +documentation.

    diff --git a/httemplate/docs/man/FS/cust_credit.html b/httemplate/docs/man/FS/cust_credit.html index 16caca60d..f30241371 100644 --- a/httemplate/docs/man/FS/cust_credit.html +++ b/httemplate/docs/man/FS/cust_credit.html @@ -61,6 +61,8 @@ FS::Record. The following fields are currently supported:

    reason - text
    +
    closed - books closed flag, empty or `Y'
    +


    @@ -92,17 +94,28 @@ methods.

    cust_refund
    -Returns all refunds (see the FS::cust_refund manpage) for this credit. +Depreciated. See the cust_credit_refund method. +

    #Returns all refunds (see the FS::cust_refund manpage) for this credit.

    +

    +
    cust_credit_refund
    +
    +Returns all refund applications (see the FS::cust_credit_refund manpage) for this credit. +

    +
    cust_credit_bill
    +
    +Returns all application to invoices (see the FS::cust_credit_bill manpage) for this +credit.

    credited
    Returns the amount of this credit that is still outstanding; which is -amount minus all refunds (see the FS::cust_refund manpage). +amount minus all refund applications (see the FS::cust_credit_refund manpage) and +applications to invoices (see the FS::cust_credit_bill manpage).


    VERSION

    -

    $Id: cust_credit.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

    +

    $Id: cust_credit.html,v 1.3 2002-01-29 17:42:46 ivan Exp $


    BUGS

    @@ -110,7 +123,8 @@ amount minus all refunds (see the FS::cust_re


    SEE ALSO

    -

    the FS::Record manpage, the FS::cust_refund manpage, the FS::cust_bill manpage, schema.html from the base +

    the FS::Record manpage, the FS::cust_credit_refund manpage, the FS::cust_refund manpage, +the FS::cust_credit_bill manpage the FS::cust_bill manpage, schema.html from the base documentation.

    diff --git a/httemplate/docs/man/FS/cust_main.html b/httemplate/docs/man/FS/cust_main.html index f8e9a8cfb..86e659ad0 100644 --- a/httemplate/docs/man/FS/cust_main.html +++ b/httemplate/docs/man/FS/cust_main.html @@ -15,6 +15,7 @@
  • SYNOPSIS
  • DESCRIPTION
  • METHODS
  • +
  • SUBROUTINES
  • VERSION
  • BUGS
  • SEE ALSO
  • @@ -45,6 +46,8 @@ @cust_pkg = $record->all_pkgs;
       @cust_pkg = $record->ncancelled_pkgs;
    +
    +  @cust_pkg = $record->suspended_pkgs;
       $error = $record->bill;
       $error = $record->bill %options;
    @@ -134,6 +137,8 @@ FS::Record.  The following fields are currently supported:

    otaker - order taker (assigned automatically, see the FS::UID manpage)
    +
    comments - comments (optional)
    +


    @@ -145,15 +150,15 @@ Creates a new customer. To add the customer to the database, see insert
    +
    insert [ CUST_PKG_HASHREF [ , INVOICING_LIST_ARYREF ] ]
    Adds this customer to the database. If there is an error, returns the error, otherwise returns false. -

    There is a special insert mode in which you pass a data structure to the insert -method containing FS::cust_pkg and FS::svc_tablename objects. When -running under a transactional database, all records are inserted atomicly, or -the transaction is rolled back. There should be a better explanation of this, -but until then, here's an example:

    +

    CUST_PKG_HASHREF: If you pass a Tie::RefHash data structure to the insert +method containing FS::cust_pkg and FS::svc_tablename objects, all records +are inserted atomicly, or the transaction is rolled back. Passing an empty +hash reference is equivalent to not supplying this parameter. There should be +a better explanation of this, but until then, here's an example:

       use Tie::RefHash;
       tie %hash, 'Tie::RefHash'; #this part is important
    @@ -162,6 +167,14 @@ but until then, here's an example:

    ... ); $cust_main->insert( \%hash );
    +

    INVOICING_LIST_ARYREF: If you pass an arrarref to the insert method, it will +be set as the invoicing list (see invoicing_list). Errors return as +expected and rollback the entire transaction; it is not necessary to call +check_invoicing_list first. The invoicing_list is set after the records in the +CUST_PKG_HASHREF above are inserted, so it is now possible to set an +invoicing_list destination to the newly-created svc_acct. Here's an example:

    +
    +  $cust_main->insert( {}, [ $email, 'POST' ] );

    delete NEW_CUSTNUM
    @@ -170,15 +183,23 @@ returns false.

    This will completely remove all traces of the customer record. This is not what you want when a customer cancels service; for that, cancel all of the customer's packages (see cancel in the FS::cust_pkg manpage).

    -

    If the customer has any packages, you need to pass a new (valid) customer -number for those packages to be transferred to.

    +

    If the customer has any uncancelled packages, you need to pass a new (valid) +customer number for those packages to be transferred to. Cancelled packages +will be deleted. Did I mention that this is NOT what you want when a customer +cancels service and that you really should be looking see cancel in the FS::cust_pkg manpage?

    You can't delete a customer with invoices (see the FS::cust_bill manpage), -or credits (see the FS::cust_credit manpage).

    +or credits (see the FS::cust_credit manpage) or payments (see the FS::cust_pay manpage).

    -
    replace OLD_RECORD
    +
    replace OLD_RECORD [ INVOICING_LIST_ARYREF ]
    Replaces the OLD_RECORD with this one in the database. If there is an error, returns the error, otherwise returns false. +

    INVOICING_LIST_ARYREF: If you pass an arrarref to the insert method, it will +be set as the invoicing list (see invoicing_list). Errors return as +expected and rollback the entire transaction; it is not necessary to call +check_invoicing_list first. Here's an example:

    +
    +  $new_cust_main->replace( $old_cust_main, [ $email, 'POST' ] );

    check
    @@ -194,14 +215,49 @@ Returns all packages (see the FS::cust_pkg manpa
    Returns all non-cancelled packages (see the FS::cust_pkg manpage) for this customer.

    +
    suspended_pkgs
    +
    +Returns all suspended packages (see the FS::cust_pkg manpage) for this customer. +

    +
    unflagged_suspended_pkgs
    +
    +Returns all unflagged suspended packages (see the FS::cust_pkg manpage) for this +customer (thouse packages without the `manual_flag' set). +

    +
    unsuspended_pkgs
    +
    +Returns all unsuspended (and uncancelled) packages (see the FS::cust_pkg manpage) for +this customer. +

    +
    unsuspend
    +
    +Unsuspends all unflagged suspended packages (see unflagged_suspended_pkgs +and the FS::cust_pkg manpage) for this customer. Always returns a list: an empty list +on success or a list of errors. +

    +
    suspend
    +
    +Suspends all unsuspended packages (see the FS::cust_pkg manpage) for this customer. +Always returns a list: an empty list on success or a list of errors. +

    +
    cancel
    +
    +Cancels all uncancelled packages (see the FS::cust_pkg manpage) for this customer. +Always returns a list: an empty list on success or a list of errors. +

    bill OPTIONS
    Generates invoices (see the FS::cust_bill manpage) for this customer. Usually used in conjunction with the collect method. +

    Options are passed as name-value pairs.

    The only currently available option is `time', which bills the customer as if it were that time. It is specified as a UNIX timestamp; see perlfunc/``time''). Also see the Time::Local manpage and the Date::Parse manpage for conversion -functions.

    +functions. For example:

    +
    + use Date::Parse;
    + ...
    + $cust_main->bill( 'time' => str2time('April 20th, 2001') );

    If there is an error, returns the error, otherwise returns false.

    collect OPTIONS
    @@ -211,28 +267,66 @@ functions.

    Depending on the value of `payby', this may print an invoice (`BILL'), charge a credit card (`CARD'), or just add any necessary (pseudo-)payment (`COMP').

    If there is an error, returns the error, otherwise returns false.

    +

    Options are passed as name-value pairs.

    Currently available options are:

    invoice_time - Use this time when deciding when to print invoices and late notices on those invoices. The default is now. It is specified as a UNIX timestamp; see perlfunc/``time''). Also see the Time::Local manpage and the Date::Parse manpage for conversion functions.

    -

    batch_card - Set this true to batch cards (see the cust_pay_batch manpage). By +

    batch_card - Set this true to batch cards (see the FS::cust_pay_batch manpage). By default, cards are processed immediately, which will generate an error if CyberCash is not installed.

    report_badcard - Set this true if you want bad card transactions to return an error. By default, they don't.

    +

    force_print - force printing even if invoice has been printed more than once +every 30 days, and don't increment the `printed' field.

    total_owed
    Returns the total owed for this customer on all invoices -(see the FS::cust_bill manpage). +(see owed in the FS::cust_bill manpage). +

    +
    total_owed_date TIME
    +
    +Returns the total owed for this customer on all invoices with date earlier than +TIME. TIME is specified as a UNIX timestamp; see perlfunc/``time''). Also +see the Time::Local manpage and the Date::Parse manpage for conversion functions. +

    +
    apply_credits
    +
    +Applies (see the FS::cust_credit_bill manpage) unapplied credits (see the FS::cust_credit manpage) +to outstanding invoice balances in chronological order and returns the value +of any remaining unapplied credits available for refund +(see the FS::cust_refund manpage). +

    +
    apply_payments
    +
    +Applies (see the FS::cust_bill_pay manpage) unapplied payments (see the FS::cust_pay manpage) +to outstanding invoice balances in chronological order. +
    + #and returns the value of any remaining unapplied payments.

    total_credited
    -Returns the total credits (see the FS::cust_credit manpage) for this customer. +Returns the total outstanding credit (see the FS::cust_credit manpage) for this +customer. See credited in the FS::cust_credit manpage. +

    +
    total_unapplied_payments
    +
    +Returns the total unapplied payments (see the FS::cust_pay manpage) for this customer. +See unapplied in the FS::cust_pay manpage.

    balance
    -Returns the balance for this customer (total owed minus total credited). +Returns the balance for this customer (total_owed minus total_credited +minus total_unapplied_payments). +

    +
    balance_date TIME
    +
    +Returns the balance for this customer, only considering invoices with date +earlier than TIME (total_owed_date minus total_credited minus +total_unapplied_payments). TIME is specified as a UNIX timestamp; see +perlfunc/``time''). Also see the Time::Local manpage and the Date::Parse manpage for conversion +functions.

    invoicing_list [ ARRAYREF ]
    @@ -248,11 +342,58 @@ check it without disturbing anything by passing nothing.

    Checks these arguements as valid input for the invoicing_list method. If there is an error, returns the error, otherwise returns false. +

    +
    default_invoicing_list
    +
    +Sets the invoicing list to all accounts associated with this customer. +

    +
    invoicing_list_addpost
    +
    +Adds postal invoicing to this customer. If this customer is already configured +to receive postal invoices, does nothing. +

    +
    referral_cust_main [ DEPTH [ EXCLUDE_HASHREF ] ]
    +
    +Returns an array of customers referred by this customer (referral_custnum set +to this custnum). If DEPTH is given, recurses up to the given depth, returning +customers referred by customers referred by this customer and so on, inclusive. +The default behavior is DEPTH 1 (no recursion). +

    +
    referral_cust_pkg [ DEPTH ]
    +
    +Like referral_cust_main, except returns a flat list of all unsuspended packages +for each customer. The number of items in this list may be useful for +comission calculations (perhaps after a grep). +

    +
    credit AMOUNT, REASON
    +
    +Applies a credit to this customer. If there is an error, returns the error, +otherwise returns false. +

    +
    charge AMOUNT PKG COMMENT
    +
    +Creates a one-time charge for this customer. If there is an error, returns +the error, otherwise returns false.


    +

    SUBROUTINES

    +
    +
    check_and_rebuild_fuzzyfiles
    +
    +
    rebuild_fuzzyfiles
    +
    +
    all_last
    +
    +
    all_company
    +
    +
    append_fuzzyfiles LASTNAME COMPANY
    +
    +
    +

    +


    VERSION

    -

    $Id: cust_main.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

    +

    $Id: cust_main.html,v 1.2 2002-01-29 16:33:15 ivan Exp $


    BUGS

    @@ -264,7 +405,6 @@ list.

    CyberCash v2 forces us to define some variables in package main.

    There should probably be a configuration file with a list of allowed credit card types.

    -

    CyberCash is the only processor.

    No multiple currency support (probably a larger project than just this module).


    diff --git a/httemplate/docs/man/FS/cust_main_invoice.html b/httemplate/docs/man/FS/cust_main_invoice.html index 6ab7fa289..a7929a943 100644 --- a/httemplate/docs/man/FS/cust_main_invoice.html +++ b/httemplate/docs/man/FS/cust_main_invoice.html @@ -100,7 +100,7 @@ Returns the literal email address for this record (or `POST').


    VERSION

    -

    $Id: cust_main_invoice.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

    +

    $Id: cust_main_invoice.html,v 1.3 2002-01-29 17:42:46 ivan Exp $


    BUGS

    diff --git a/httemplate/docs/man/FS/cust_pay.html b/httemplate/docs/man/FS/cust_pay.html index 803376260..ce057f068 100644 --- a/httemplate/docs/man/FS/cust_pay.html +++ b/httemplate/docs/man/FS/cust_pay.html @@ -50,7 +50,7 @@ currently supported:

    paynum - primary key (assigned automatically for new payments)
    -
    invnum - Invoice (see the FS::cust_bill manpage)
    +
    custnum - customer (see the FS::cust_main manpage)
    paid - Amount of this payment
    @@ -59,10 +59,12 @@ currently supported:

    payby - `CARD' (credit cards), `BILL' (billing), or `COMP' (free)
    -
    payinfo - card number, P.O.#, or comp issuer (4-8 lowercase alphanumerics; think username)
    +
    payinfo - card number, check #, or comp issuer (4-8 lowercase alphanumerics; think username), respectively
    paybatch - text field for tracking card processing
    +
    closed - books closed flag, empty or `Y'
    +


    @@ -74,8 +76,10 @@ Creates a new payment. To add the payment to the databse, see

    insert
    -Adds this payment to the databse, and updates the invoice (see -the FS::cust_bill manpage). +Adds this payment to the database. +

    For backwards-compatibility and convenience, if the additional field invnum +is defined, an FS::cust_bill_pay record for the full amount of the payment +will be created. In this case, custnum is optional.

    delete
    @@ -89,11 +93,21 @@ Currently unimplemented (accounting reasons).
    Checks all fields to make sure this is a valid payment. If there is an error, returns the error, otherwise returns false. Called by the insert method. +

    +
    cust_bill_pay
    +
    +Returns all applications to invoices (see the FS::cust_bill_pay manpage) for this +payment. +

    +
    unapplied
    +
    +Returns the amount of this payment that is still unapplied; which is +paid minus all payment applications (see the FS::cust_bill_pay manpage).


    VERSION

    -

    $Id: cust_pay.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

    +

    $Id: cust_pay.html,v 1.2 2002-01-29 16:33:15 ivan Exp $


    BUGS

    @@ -101,7 +115,8 @@ returns the error, otherwise returns false. Called by the insert method.


    SEE ALSO

    -

    the FS::Record manpage, the FS::cust_bill manpage, schema.html from the base documentation.

    +

    the FS::cust_bill_pay manpage, the FS::cust_bill manpage, the FS::Record manpage, schema.html from the +base documentation.

    diff --git a/httemplate/docs/man/FS/cust_pay_batch.html b/httemplate/docs/man/FS/cust_pay_batch.html index c1c73c301..052ccac39 100644 --- a/httemplate/docs/man/FS/cust_pay_batch.html +++ b/httemplate/docs/man/FS/cust_pay_batch.html @@ -49,7 +49,7 @@ batched (sent to a processor). FS::cust_pay_batch inherits from FS::Record. Typically called by the collect method of an FS::cust_main object. The following fields are currently supported:

    -
    trancode - 77 for charges
    +
    paybatchnum - primary key (automatically assigned)
    cardnum
    @@ -116,7 +116,7 @@ and repalce methods.


    VERSION

    -

    $Id: cust_pay_batch.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

    +

    $Id: cust_pay_batch.html,v 1.3 2002-01-29 17:42:46 ivan Exp $


    BUGS

    diff --git a/httemplate/docs/man/FS/cust_pkg.html b/httemplate/docs/man/FS/cust_pkg.html index 459d1297c..9f1005da7 100644 --- a/httemplate/docs/man/FS/cust_pkg.html +++ b/httemplate/docs/man/FS/cust_pkg.html @@ -52,6 +52,8 @@ $part_pkg = $record->part_pkg;
       @labels = $record->labels;
    +
    +  $seconds = $record->seconds_since($timestamp);
       $error = FS::cust_pkg::order( $custnum, \@pkgparts );
       $error = FS::cust_pkg::order( $custnum, \@pkgparts, \@remove_pkgnums ] );
    @@ -79,6 +81,9 @@ inherits from FS::Record. The following fields are currently supported:

    otaker - order taker (assigned automatically if null, see the FS::UID manpage)
    +
    manual_flag - If this field is set to 1, disables the automatic +unsuspension of this package when using the unsuspendauto config file.
    +

    Note: setup, bill, susp, expire and cancel are specified as UNIX timestamps; see perlfunc/``time''. Also see the Time::Local manpage and the Date::Parse manpage for @@ -95,26 +100,12 @@ Create a new billing item. To add the item to the database, see delete

    -Currently unimplemented. You don't want to delete billing items, because there -would then be no record the customer ever purchased the item. Instead, see -the cancel method. +This method now works but you probably shouldn't use it. +

    You don't want to delete billing items, because there would then be no record +the customer ever purchased the item. Instead, see the cancel method.

    replace OLD_RECORD
    @@ -158,16 +149,32 @@ package, then unsuspends the package itself (clears the susp field). Returns the definition for this billing item, as an FS::part_pkg object (see the FS::part_pkg manpage).

    +
    cust_svc
    +
    +Returns the services for this package, as FS::cust_svc objects (see +the FS::cust_svc manpage) +

    labels
    Returns a list of lists, calling the label method for all services (see the FS::cust_svc manpage) of this billing item. +

    +
    cust_main
    +
    +Returns the parent customer object (see the FS::cust_main manpage). +

    +
    seconds_since TIMESTAMP
    +
    +Returns the number of seconds all accounts (see the FS::svc_acct manpage) in this +package have been online since TIMESTAMP. +

    TIMESTAMP is specified as a UNIX timestamp; see perlfunc/``time''. Also see +the Time::Local manpage and the Date::Parse manpage for conversion functions.


    SUBROUTINES

    -
    order CUSTNUM, PKGPARTS_ARYREF, [ REMOVE_PKGNUMS_ARYREF ]
    +
    order CUSTNUM, PKGPARTS_ARYREF, [ REMOVE_PKGNUMS_ARYREF [ RETURN_CUST_PKG_ARRAYREF ] ]
    CUSTNUM is a customer (see the FS::cust_main manpage)

    PKGPARTS is a list of pkgparts specifying the the billing item definitions (see @@ -176,12 +183,15 @@ permitted.

    REMOVE_PKGNUMS is an optional list of pkgnums specifying the billing items to remove for this customer. The services (see the FS::cust_svc manpage) are moved to the new billing items. An error is returned if this is not possible (see -the FS::pkg_svc manpage).

    +the FS::pkg_svc manpage). An empty arrayref is equivalent to not specifying this +parameter.

    +

    RETURN_CUST_PKG_ARRAYREF, if specified, will be filled in with the +newly-created cust_pkg objects.


    VERSION

    -

    $Id: cust_pkg.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

    +

    $Id: cust_pkg.html,v 1.2 2002-01-29 16:33:15 ivan Exp $


    BUGS

    @@ -194,11 +204,13 @@ compile time, rather than via 'require' in sub { setup, suspend, unsuspend, cancel } because they use %FS::UID::callback to load configuration values. Probably need a subroutine which decides what to do based on whether or not we've fetched the user yet, rather than a hash. See FS::UID and the TODO.

    +

    Now that things are transactional should the check in the insert method be +moved to check ?


    SEE ALSO

    -

    the FS::Record manpage, the FS::cust_main manpage, the FS::part_pkg manpage, the FS::cust_svc manpage -, the FS::pkg_svc manpage, schema.html from the base documentation

    +

    the FS::Record manpage, the FS::cust_main manpage, the FS::part_pkg manpage, the FS::cust_svc manpage, +the FS::pkg_svc manpage, schema.html from the base documentation

    diff --git a/httemplate/docs/man/FS/cust_refund.html b/httemplate/docs/man/FS/cust_refund.html index 39ed14de4..93bb07b2d 100644 --- a/httemplate/docs/man/FS/cust_refund.html +++ b/httemplate/docs/man/FS/cust_refund.html @@ -50,7 +50,7 @@ inherits from FS::Record. The following fields are currently supported:

    refundnum - primary key (assigned automatically for new refunds)
    -
    crednum - Credit (see the FS::cust_credit manpage)
    +
    custnum - customer (see the FS::cust_main manpage)
    refund - Amount of the refund
    @@ -61,8 +61,12 @@ inherits from FS::Record. The following fields are currently supported:

    payinfo - card number, P.O.#, or comp issuer (4-8 lowercase alphanumerics; think username)
    +
    paybatch - text field for tracking card processing
    +
    otaker - order taker (assigned automatically, see the FS::UID manpage)
    +
    closed - books closed flag, empty or `Y'
    +


    @@ -74,8 +78,10 @@ Creates a new refund. To add the refund to the database, see

    insert
    -Adds this refund to the database, and updates the credit (see -the FS::cust_credit manpage). +Adds this refund to the database. +

    For backwards-compatibility and convenience, if the additional field crednum is +defined, an FS::cust_credit_refund record for the full amount of the refund +will be created. In this case, custnum is optional.

    delete
    @@ -93,7 +99,7 @@ returns the error, otherwise returns false. Called by the insert method.


    VERSION

    -

    $Id: cust_refund.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

    +

    $Id: cust_refund.html,v 1.3 2002-01-29 17:42:46 ivan Exp $


    BUGS

    diff --git a/httemplate/docs/man/FS/cust_svc.html b/httemplate/docs/man/FS/cust_svc.html index c1ca2d700..97a299c52 100644 --- a/httemplate/docs/man/FS/cust_svc.html +++ b/httemplate/docs/man/FS/cust_svc.html @@ -64,7 +64,7 @@ The following fields are currently supported:

    Creates a new service. To add the refund to the database, see insert. Services are normally created by creating FS::svc_ objects (see -the FS::svc_acct manpage, the FS::svc_domain manpage, and the FS::svc_acct_sm manpage, among others). +the FS::svc_acct manpage, the FS::svc_domain manpage, and the FS::svc_forward manpage, among others).

    insert
    @@ -88,17 +88,38 @@ Checks all fields to make sure this is a valid service. If there is an error, returns the error, otehrwise returns false. Called by the insert and replace methods.

    +
    part_svc
    +
    +Returns the definition for this service, as a FS::part_svc object (see +the FS::part_svc manpage). +

    +
    cust_pkg
    +
    +Returns the definition for this service, as a FS::part_svc object (see +the FS::part_svc manpage). +

    label
    Returns a list consisting of: - The name of this service (from part_svc) - A meaningful identifier (username, domain, or mail alias) - The table name (i.e. svc_domain) for this service +

    +
    svc_x
    +
    +Returns the FS::svc_XXX object for this service (i.e. an FS::svc_acct object or +FS::svc_domain object, etc.) +

    +
    seconds_since TIMESTAMP
    +
    +See seconds_since in the FS::svc_acct manpage. Equivalent to +$cust_svc->svc_x->seconds_since, but more efficient. Meaningless for records +where svcdb is not ``svc_acct''.


    VERSION

    -

    $Id: cust_svc.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

    +

    $Id: cust_svc.html,v 1.2 2002-01-29 16:33:16 ivan Exp $


    BUGS

    diff --git a/httemplate/docs/man/FS/domain_record.html b/httemplate/docs/man/FS/domain_record.html index 7a1bf3e32..0349f7b78 100644 --- a/httemplate/docs/man/FS/domain_record.html +++ b/httemplate/docs/man/FS/domain_record.html @@ -18,7 +18,6 @@
  • VERSION
  • BUGS
  • SEE ALSO
  • -
  • HISTORY
  • @@ -95,7 +94,7 @@ and replace methods.


    VERSION

    -

    $Id: domain_record.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

    +

    $Id: domain_record.html,v 1.3 2002-01-29 17:42:46 ivan Exp $


    BUGS

    @@ -107,17 +106,6 @@ course, it's still better than editing the zone files directly. :)


    SEE ALSO

    the FS::Record manpage, schema.html from the base documentation.

    -

    -


    -

    HISTORY

    -

    $Log: domain_record.html,v $ -

    Revision 1.1 2001-07-30 07:36:03 ivan -

    templates!!! -

    -Revision 1.2 2001/05/18 14:08:55 ivan -tyop

    -

    Revision 1.1 2000/02/03 05:16:52 ivan -beginning of DNS and Apache support

    diff --git a/httemplate/docs/man/FS/part_pkg.html b/httemplate/docs/man/FS/part_pkg.html index 9aeaa3d3d..e1e96b54c 100644 --- a/httemplate/docs/man/FS/part_pkg.html +++ b/httemplate/docs/man/FS/part_pkg.html @@ -60,11 +60,21 @@ inherits from FS::Record. The following fields are currently supported:

    comment - Text name of this billing item definition (non-customer-viewable)
    -
    setup - Setup fee
    +
    setup - Setup fee expression
    freq - Frequency of recurring fee
    -
    recur - Recurring fee
    +
    recur - Recurring fee expression
    +
    +
    setuptax - Setup fee tax exempt flag, empty or `Y'
    +
    +
    recurtax - Recurring fee tax exempt flag, empty or `Y'
    +
    +
    plan - Price plan
    +
    +
    plandata - Price plan data
    +
    +
    disabled - Disabled flag, empty or `Y'

    setup and recur are evaluated as Safe perl expressions. You can use numbers @@ -120,7 +130,7 @@ SVCDB is specified and does not match the svcdb of the service definition,


    VERSION

    -

    $Id: part_pkg.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

    +

    $Id: part_pkg.html,v 1.3 2002-01-29 17:42:46 ivan Exp $


    BUGS

    diff --git a/httemplate/docs/man/FS/part_svc.html b/httemplate/docs/man/FS/part_svc.html index ca0a5dc71..0f5126f81 100644 --- a/httemplate/docs/man/FS/part_svc.html +++ b/httemplate/docs/man/FS/part_svc.html @@ -31,8 +31,8 @@
       use FS::part_svc;
    -  $record = new FS::part_referral \%hash
    -  $record = new FS::part_referral { 'column' => 'value' };
    + $record = new FS::part_svc \%hash + $record = new FS::part_svc { 'column' => 'value' };
       $error = $record->insert;
    @@ -52,11 +52,9 @@ FS::Record.  The following fields are currently supported:

    svc - text name of this service definition
    svcdb - table used for this service. See the FS::svc_acct manpage, -the FS::svc_domain manpage, and the FS::svc_acct_sm manpage, among others.
    +the FS::svc_domain manpage, and the FS::svc_forward manpage, among others.
    -
    svcdb__field - Default or fixed value for field in svcdb.
    -
    -
    svcdb__field_flag - defines svcdb__field action: null, `D' for default, or `F' for fixed
    +
    disabled - Disabled flag, empty or `Y'

    @@ -73,6 +71,10 @@ database, see insert. Adds this service definition to the database. If there is an error, returns the error, otherwise returns false.

    +
    svcdb__field - Default or fixed value for field in svcdb.
    +
    +
    svcdb__field_flag - defines svcdb__field action: null, `D' for default, or `F' for fixed
    +
    delete
    Currently unimplemented. @@ -87,11 +89,19 @@ returns the error, otherwise returns false. Checks all fields to make sure this is a valid service definition. If there is an error, returns the error, otherwise returns false. Called by the insert and replace methods. -

    +

    +
    part_svc_column COLUMNNAME
    +
    +Returns the part_svc_column object (see the FS::part_svc_column manpage) for the given +COLUMNNAME, or a new part_svc_column object if none exists. +

    +
    all_part_svc_column
    +
    +


    VERSION

    -

    $Id: part_svc.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

    +

    $Id: part_svc.html,v 1.3 2002-01-29 17:42:46 ivan Exp $


    BUGS

    @@ -101,9 +111,9 @@ should be fixed.


    SEE ALSO

    -

    the FS::Record manpage, the FS::part_pkg manpage, the FS::pkg_svc manpage, the FS::cust_svc manpage, -the FS::svc_acct manpage, the FS::svc_acct_sm manpage, the FS::svc_domain manpage, schema.html from the -base documentation.

    +

    the FS::Record manpage, the FS::part_svc_column manpage, the FS::part_pkg manpage, the FS::pkg_svc manpage, +the FS::cust_svc manpage, the FS::svc_acct manpage, the FS::svc_forward manpage, the FS::svc_domain manpage, +schema.html from the base documentation.

    diff --git a/httemplate/docs/man/FS/prepay_credit.html b/httemplate/docs/man/FS/prepay_credit.html index 4e77897a3..bb0c281c2 100644 --- a/httemplate/docs/man/FS/prepay_credit.html +++ b/httemplate/docs/man/FS/prepay_credit.html @@ -18,7 +18,6 @@
  • VERSION
  • BUGS
  • SEE ALSO
  • -
  • HISTORY
  • @@ -93,7 +92,7 @@ and replace methods.


    VERSION

    -

    $Id: prepay_credit.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

    +

    $Id: prepay_credit.html,v 1.3 2002-01-29 17:42:46 ivan Exp $


    BUGS

    @@ -101,17 +100,6 @@ and replace methods.

    SEE ALSO

    the FS::Record manpage, schema.html from the base documentation.

    -

    -


    -

    HISTORY

    -

    $Log: prepay_credit.html,v $ -

    Revision 1.1 2001-07-30 07:36:03 ivan -

    templates!!! -

    -Revision 1.2 2000/02/02 20:22:18 ivan -bugfix prepayment in signup server

    -

    Revision 1.1 2000/01/31 05:22:23 ivan -prepaid ``internet cards''

    diff --git a/httemplate/docs/man/FS/svc_Common.html b/httemplate/docs/man/FS/svc_Common.html index 100aee880..ccac5efa0 100644 --- a/httemplate/docs/man/FS/svc_Common.html +++ b/httemplate/docs/man/FS/svc_Common.html @@ -64,6 +64,11 @@ Sets all fields to their defaults (see the FS::p current values. If there is an error, returns the error, otherwise returns the FS::part_svc object (use ref() to test the return).

    +
    cust_svc
    +
    +Returns the cust_svc record associated with this svc_ record, as a FS::cust_svc +object (see the FS::cust_svc manpage). +

    suspend
    unsuspend
    @@ -76,13 +81,11 @@ methods. Called by the cancel method of FS::cust_pkg (see VERSION -

    $Id: svc_Common.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

    +

    $Id: svc_Common.html,v 1.3 2002-01-29 17:42:46 ivan Exp $


    BUGS

    The setfixed method return value.

    -

    The new method should set defaults from part_svc (like the check method -sets fixed values)?


    SEE ALSO

    diff --git a/httemplate/docs/man/FS/svc_acct.html b/httemplate/docs/man/FS/svc_acct.html index 81bc118df..9c41db3f0 100644 --- a/httemplate/docs/man/FS/svc_acct.html +++ b/httemplate/docs/man/FS/svc_acct.html @@ -49,6 +49,18 @@ $error = $record->cancel;
       %hash = $record->radius;
    +
    +  %hash = $record->radius_reply;
    +
    +  %hash = $record->radius_check;
    +
    +  $domain = $record->domain;
    +
    +  $svc_domain = $record->svc_domain;
    +
    +  $email = $record->email;
    +
    +  $seconds_since = $record->seconds_since($timestamp);


    DESCRIPTION

    @@ -77,8 +89,14 @@ FS::svc_Common. The following fields are currently supported:

    slipip - IP address
    +
    seconds -
    +
    +
    domsvc - svcnum from svc_domain
    +
    radius_Radius_Attribute - Radius-Attribute
    +
    domsvc - service number of svc_domain with which to associate
    +


    @@ -96,7 +114,8 @@ otherwise returns false. defined. An FS::cust_svc record will be created and inserted.

    If the configuration value (see the FS::Conf manpage) shellmachine exists, and the username, uid, and dir fields are defined, the command(s) specified in -the shellmachine-useradd configuration are exectued on shellmachine via ssh. +the shellmachine-useradd configuration are added to the job queue (see +the FS::queue manpage and the freeside-queued manpage) to be exectued on shellmachine via ssh. This behaviour can be surpressed by setting $FS::svc_acct::nossh_hack true. If the shellmachine-useradd configuration file does not exist,

    @@ -108,6 +127,7 @@ it empty,

    is the default instead. Otherwise the contents of the file are treated as a double-quoted perl string, with the following variables available: $username, $uid, $gid, $dir, and $shell.

    +

    (TODOC: cyrus config file, the FS::queue manpage and the freeside-queued manpage)

    delete
    @@ -116,7 +136,8 @@ error, otherwise returns false.

    The corresponding FS::cust_svc record will be deleted as well.

    If the configuration value (see the FS::Conf manpage) shellmachine exists, the command(s) specified in the shellmachine-userdel configuration file are -executed on shellmachine via ssh. This behavior can be surpressed by setting +added to the job queue (see the FS::queue manpage and the freeside-queued manpage) to be executed +on shellmachine via ssh. This behavior can be surpressed by setting $FS::svc_acct::nossh_hack true. If the shellmachine-userdel configuration file does not exist,

    @@ -128,6 +149,7 @@ is empty,

    is the default instead. Otherwise the contents of the file are treated as a double-quoted perl string, with the following variables available: $username and $dir.

    +

    (TODOC: cyrus config file)

    replace OLD_RECORD
    @@ -135,9 +157,10 @@ Replaces OLD_RECORD with this one in the database. If there is an error, returns the error, otherwise returns false.

    If the configuration value (see the FS::Conf manpage) shellmachine exists, and the dir field has changed, the command(s) specified in the shellmachine-usermod -configuraiton file are executed on shellmachine via ssh. This behavior can +configuraiton file are added to the job queue (see the FS::queue manpage and +the freeside-queued manpage) to be executed on shellmachine via ssh. This behavior can be surpressed by setting $FS::svc-acct::nossh_hack true. If the -shellmachine-userdel configuration file does not exist or is empty, :

    +shellmachine-userdel configuration file does not exist or is empty,

       [ -d $old_dir ] && mv $old_dir $new_dir || (
         chmod u+t $old_dir;
    @@ -148,8 +171,8 @@ shellmachine-userdel configuration file does not exist or is empty, :

    chown -R $uid.$gid $new_dir; rm -rf $old_dir )
    -

    is executed on shellmachine via ssh. This behaviour can be surpressed by -setting $FS::svc_acct::nossh_hack true.

    +

    is the default. This behaviour can be surpressed by setting +$FS::svc_acct::nossh_hack true.

    suspend
    @@ -193,11 +216,42 @@ Returns key/value pairs, suitable for assigning to a hash, for any RADIUS check attributes of this record.

    Accessing RADIUS attributes directly is not supported and will break in the future.

    -

    +

    +
    domain
    +
    +Returns the domain associated with this account. +

    +
    svc_domain
    +
    +Returns the FS::svc_domain record for this account's domain (see +the FS::svc_domain manpage. +

    +
    cust_svc
    +
    +Returns the FS::cust_svc record for this account (see the FS::cust_svc manpage). +

    sub cust_svc { + my $self = shift; + qsearchs( 'cust_svc', { 'svcnum' => $self->svcnum } ); +}

    +

    +
    email
    +
    +Returns an email address associated with the account. +

    +
    seconds_since TIMESTAMP
    +
    +Returns the number of seconds this account has been online since TIMESTAMP. +See the FS::session manpage +

    TIMESTAMP is specified as a UNIX timestamp; see perlfunc/``time''. Also see +the Time::Local manpage and the Date::Parse manpage for conversion functions.

    +

    +
    ssh
    +
    +


    VERSION

    -

    $Id: svc_acct.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

    +

    $Id: svc_acct.html,v 1.2 2002-01-29 16:33:16 ivan Exp $


    BUGS

    @@ -210,8 +264,10 @@ counterintuitive.


    SEE ALSO

    -

    the FS::svc_Common manpage, the FS::Record manpage, the FS::Conf manpage, the FS::cust_svc manpage, -the FS::part_svc manpage, the FS::cust_pkg manpage, the Net::SSH manpage, ssh, the FS::svc_acct_pop manpage, +

    the FS::svc_Common manpage, edit/part_svc.cgi from an installed web interface, +export.html from the base documentation, the FS::Record manpage, the FS::Conf manpage, +the FS::cust_svc manpage, the FS::part_svc manpage, the FS::cust_pkg manpage, the FS::queue manpage, +the freeside-queued manpage), the Net::SSH manpage, ssh, the FS::svc_acct_pop manpage, schema.html from the base documentation.

    diff --git a/httemplate/docs/man/FS/svc_acct_pop.html b/httemplate/docs/man/FS/svc_acct_pop.html index d65ca5778..80900627e 100644 --- a/httemplate/docs/man/FS/svc_acct_pop.html +++ b/httemplate/docs/man/FS/svc_acct_pop.html @@ -15,6 +15,7 @@
  • SYNOPSIS
  • DESCRIPTION
  • METHODS
  • +
  • SUBROUTINES
  • VERSION
  • BUGS
  • SEE ALSO
  • @@ -41,6 +42,8 @@ $error = $record->delete;
       $error = $record->check;
    +
    +  $html = FS::svc_acct_pop::popselector( $popnum, $state );


    DESCRIPTION

    @@ -88,19 +91,34 @@ returns the error, otherwise returns false. Checks all fields to make sure this is a valid point of presence. If there is an error, returns the error, otherwise returns false. Called by the insert and replace methods. +

    +
    text
    +
    +Returns: +

    ``$city, $state ($ac)/$exch''


    +

    SUBROUTINES

    +
    +
    popselector [ POPNUM [ STATE ] ]
    +
    +
    +

    +


    VERSION

    -

    $Id: svc_acct_pop.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

    +

    $Id: svc_acct_pop.html,v 1.3 2002-01-29 17:42:46 ivan Exp $


    BUGS

    It should be renamed to part_pop.

    +

    popselector? putting web ui components in here? they should probably live +somewhere else...


    SEE ALSO

    -

    the FS::Record manpage, the svc_acct manpage, schema.html from the base documentation.

    +

    the FS::Record manpage, the FS::svc_acct manpage, the FS::part_pop_local manpage, schema.html from the +base documentation.

    diff --git a/httemplate/docs/man/FS/svc_acct_sm.html b/httemplate/docs/man/FS/svc_acct_sm.html index ca50e7202..86c7b8b3b 100644 --- a/httemplate/docs/man/FS/svc_acct_sm.html +++ b/httemplate/docs/man/FS/svc_acct_sm.html @@ -13,6 +13,7 @@
  • NAME
  • SYNOPSIS
  • +
  • WARNING
  • DESCRIPTION
  • METHODS
  • VERSION
  • @@ -49,9 +50,14 @@ $error = $record->cancel;


    +

    WARNING

    +

    FS::svc_acct_sm is depreciated. This class is only included for migration +purposes. See the FS::svc_forward manpage.

    +

    +


    DESCRIPTION

    -

    An FS::svc_acct object represents a virtual mail alias. FS::svc_acct inherits -from FS::Record. The following fields are currently supported:

    +

    An FS::svc_acct_sm object represents a virtual mail alias. FS::svc_acct_sm +inherits from FS::Record. The following fields are currently supported:

    svcnum - primary key (assigned automatcially for new accounts)
    @@ -77,15 +83,17 @@ Adds this virtual mail alias to the database. If there is an error, returns the error, otherwise returns false.

    The additional fields pkgnum and svcpart (see the FS::cust_svc manpage) should be defined. An FS::cust_svc record will be created and inserted.

    -

    If the configuration values (see the FS::Conf manpage) shellmachine and qmailmachines -exist, and domuser is `*' (meaning a catch-all mailbox), the command:

    -  [ -e $dir/.qmail-$qdomain-default ] || {
    -    touch $dir/.qmail-$qdomain-default;
    -    chown $uid:$gid $dir/.qmail-$qdomain-default;
    -  }
    -

    is executed on shellmachine via ssh (see dot-qmail/``EXTENSION ADDRESSES''). -This behaviour can be surpressed by setting $FS::svc_acct_sm::nossh_hack true.

    + #If the configuration values (see L<FS::Conf>) shellmachine and qmailmachines + #exist, and domuser is `*' (meaning a catch-all mailbox), the command: + # + # [ -e $dir/.qmail-$qdomain-default ] || { + # touch $dir/.qmail-$qdomain-default; + # chown $uid:$gid $dir/.qmail-$qdomain-default; + # } + # + #is executed on shellmachine via ssh (see L<dot-qmail/"EXTENSION ADDRESSES">). + #This behaviour can be surpressed by setting $FS::svc_acct_sm::nossh_hack true.

    delete
    @@ -123,7 +131,7 @@ replace methods.


    VERSION

    -

    $Id: svc_acct_sm.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

    +

    $Id: svc_acct_sm.html,v 1.3 2002-01-29 17:42:46 ivan Exp $


    BUGS

    @@ -132,6 +140,7 @@ replace methods.


    SEE ALSO

    +

    the FS::svc_forward manpage

    the FS::Record manpage, the FS::Conf manpage, the FS::cust_svc manpage, the FS::part_svc manpage, the FS::cust_pkg manpage, the FS::svc_acct manpage, the FS::svc_domain manpage, the Net::SSH manpage, ssh, dot-qmail, schema.html from the base documentation.

    diff --git a/httemplate/docs/man/FS/svc_domain.html b/httemplate/docs/man/FS/svc_domain.html index ace3de154..266e0b355 100644 --- a/httemplate/docs/man/FS/svc_domain.html +++ b/httemplate/docs/man/FS/svc_domain.html @@ -57,6 +57,8 @@ FS::svc_Common. The following fields are currently supported:

    domain
    +
    catchall - optional svcnum of an svc_acct record, designating an email catchall account.
    +


    @@ -86,9 +88,18 @@ the domain_record table (see <FS::domain_record>).

    records are added to the domain_record table (see the FS::domain_record manpage).

    If any machines are defined in the mxmachines configuration file, MX records are added to the domain_record table (see the FS::domain_record manpage).

    -

    Any problems adding FS::domain_record records will emit warnings, but will -not return errors from this method. If your configuration files are correct -you shouln't have any problems.

    +

    If a machine is defined in the shellmachine configuration value, the +qmailmachines configuration file exists, and the catchall field points +to an an account with a home directory (see the FS::svc_acct manpage), the command:

    +
    +  [ -e $dir/.qmail-$qdomain-defualt ] || {
    +    touch $dir/.qmail-$qdomain-default;
    +    chown $uid:$gid $dir/.qmail-$qdomain-default;
    +  }
    +

    is executed on shellmachine via ssh (see dot-qmail/``EXTENSION ADDRESSES''). +This behaviour can be supressed by setting $FS::svc_domain::nossh_hack true.

    +

    a machine is defined +in the

    delete
    @@ -140,7 +151,7 @@ Submits a registration email for this domain.


    VERSION

    -

    $Id: svc_domain.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

    +

    $Id: svc_domain.html,v 1.3 2002-01-29 17:42:46 ivan Exp $


    BUGS

    diff --git a/httemplate/docs/man/FS/svc_www.html b/httemplate/docs/man/FS/svc_www.html index e72b219be..0e7f4f197 100644 --- a/httemplate/docs/man/FS/svc_www.html +++ b/httemplate/docs/man/FS/svc_www.html @@ -18,7 +18,6 @@
  • VERSION
  • BUGS
  • SEE ALSO
  • -
  • HISTORY
  • @@ -120,7 +119,7 @@ and repalce methods.


    VERSION

    -

    $Id: svc_www.html,v 1.1 2001-07-30 07:36:03 ivan Exp $

    +

    $Id: svc_www.html,v 1.3 2002-01-29 17:42:46 ivan Exp $


    BUGS

    @@ -129,21 +128,6 @@ and repalce methods.

    SEE ALSO

    the FS::svc_Common manpage, the FS::Record manpage, the FS::domain_record manpage, the FS::cust_svc manpage, the FS::part_svc manpage, the FS::cust_pkg manpage, schema.html from the base documentation.

    -

    -


    -

    HISTORY

    -

    $Log: svc_www.html,v $ -

    Revision 1.1 2001-07-30 07:36:03 ivan -

    templates!!! -

    -Revision 1.4 2001/04/22 01:56:15 ivan -get rid of FS::SSH.pm (became Net::SSH and Net::SCP on CPAN)

    -

    Revision 1.3 2000/11/22 23:30:51 ivan -tyop

    -

    Revision 1.2 2000/03/01 08:13:59 ivan -compilation bugfixes

    -

    Revision 1.1 2000/02/03 05:16:52 ivan -beginning of DNS and Apache support

    -- cgit v1.2.1 From c5c0ba135749164ec8ba75d18f76c29625e1bc7e Mon Sep 17 00:00:00 2001 From: ivan Date: Tue, 29 Jan 2002 17:42:46 +0000 Subject: weight, plan and plandata fields in part_bill_event --- httemplate/docs/man/FS/cust_main.html | 2 +- httemplate/docs/man/FS/cust_pay.html | 2 +- httemplate/docs/man/FS/cust_pkg.html | 2 +- httemplate/docs/man/FS/cust_svc.html | 2 +- httemplate/docs/man/FS/svc_acct.html | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) (limited to 'httemplate/docs/man') diff --git a/httemplate/docs/man/FS/cust_main.html b/httemplate/docs/man/FS/cust_main.html index 86e659ad0..1fb339124 100644 --- a/httemplate/docs/man/FS/cust_main.html +++ b/httemplate/docs/man/FS/cust_main.html @@ -393,7 +393,7 @@ the error, otherwise returns false.


    VERSION

    -

    $Id: cust_main.html,v 1.2 2002-01-29 16:33:15 ivan Exp $

    +

    $Id: cust_main.html,v 1.3 2002-01-29 17:42:46 ivan Exp $


    BUGS

    diff --git a/httemplate/docs/man/FS/cust_pay.html b/httemplate/docs/man/FS/cust_pay.html index ce057f068..a8c481fc0 100644 --- a/httemplate/docs/man/FS/cust_pay.html +++ b/httemplate/docs/man/FS/cust_pay.html @@ -107,7 +107,7 @@ paid minus all payment applications (see th


    VERSION

    -

    $Id: cust_pay.html,v 1.2 2002-01-29 16:33:15 ivan Exp $

    +

    $Id: cust_pay.html,v 1.3 2002-01-29 17:42:46 ivan Exp $


    BUGS

    diff --git a/httemplate/docs/man/FS/cust_pkg.html b/httemplate/docs/man/FS/cust_pkg.html index 9f1005da7..76cb9e786 100644 --- a/httemplate/docs/man/FS/cust_pkg.html +++ b/httemplate/docs/man/FS/cust_pkg.html @@ -191,7 +191,7 @@ newly-created cust_pkg objects.


    VERSION

    -

    $Id: cust_pkg.html,v 1.2 2002-01-29 16:33:15 ivan Exp $

    +

    $Id: cust_pkg.html,v 1.3 2002-01-29 17:42:46 ivan Exp $


    BUGS

    diff --git a/httemplate/docs/man/FS/cust_svc.html b/httemplate/docs/man/FS/cust_svc.html index 97a299c52..55c90e28e 100644 --- a/httemplate/docs/man/FS/cust_svc.html +++ b/httemplate/docs/man/FS/cust_svc.html @@ -119,7 +119,7 @@ where svcdb is not ``svc_acct''.


    VERSION

    -

    $Id: cust_svc.html,v 1.2 2002-01-29 16:33:16 ivan Exp $

    +

    $Id: cust_svc.html,v 1.3 2002-01-29 17:42:46 ivan Exp $


    BUGS

    diff --git a/httemplate/docs/man/FS/svc_acct.html b/httemplate/docs/man/FS/svc_acct.html index 9c41db3f0..93483f67d 100644 --- a/httemplate/docs/man/FS/svc_acct.html +++ b/httemplate/docs/man/FS/svc_acct.html @@ -251,7 +251,7 @@ See the FS::session manpage


    VERSION

    -

    $Id: svc_acct.html,v 1.2 2002-01-29 16:33:16 ivan Exp $

    +

    $Id: svc_acct.html,v 1.3 2002-01-29 17:42:46 ivan Exp $


    BUGS

    -- cgit v1.2.1 From ea0d3938b57a079ce4aa6db0cae316e3ac6da654 Mon Sep 17 00:00:00 2001 From: ivan Date: Tue, 29 Jan 2002 17:46:41 +0000 Subject: these are all auto-generated by the installation; don't check them into CVS (probably should generate them for a release tarball though) --- httemplate/docs/man/FS.html | 164 ---------- httemplate/docs/man/FS/CGI.html | 100 ------ httemplate/docs/man/FS/CGIwrapper.html | 16 - httemplate/docs/man/FS/Conf.html | 97 ------ httemplate/docs/man/FS/Record.html | 366 ---------------------- httemplate/docs/man/FS/SessionClient.html | 97 ------ httemplate/docs/man/FS/SignupClient.html | 132 -------- httemplate/docs/man/FS/UI/Base.html | 100 ------ httemplate/docs/man/FS/UI/CGI.html | 94 ------ httemplate/docs/man/FS/UI/Gtk.html | 91 ------ httemplate/docs/man/FS/UI/agent.html | 16 - httemplate/docs/man/FS/UID.html | 138 --------- httemplate/docs/man/FS/agent.html | 121 -------- httemplate/docs/man/FS/agent_type.html | 126 -------- httemplate/docs/man/FS/cust_bill.html | 182 ----------- httemplate/docs/man/FS/cust_bill_pkg.html | 112 ------- httemplate/docs/man/FS/cust_credit.html | 132 -------- httemplate/docs/man/FS/cust_main.html | 419 -------------------------- httemplate/docs/man/FS/cust_main_county.html | 106 ------- httemplate/docs/man/FS/cust_main_invoice.html | 114 ------- httemplate/docs/man/FS/cust_pay.html | 123 -------- httemplate/docs/man/FS/cust_pay_batch.html | 132 -------- httemplate/docs/man/FS/cust_pkg.html | 217 ------------- httemplate/docs/man/FS/cust_refund.html | 114 ------- httemplate/docs/man/FS/cust_svc.html | 139 --------- httemplate/docs/man/FS/domain_record.html | 112 ------- httemplate/docs/man/FS/nas.html | 117 ------- httemplate/docs/man/FS/part_pkg.html | 148 --------- httemplate/docs/man/FS/part_referral.html | 100 ------ httemplate/docs/man/FS/part_svc.html | 120 -------- httemplate/docs/man/FS/pkg_svc.html | 115 ------- httemplate/docs/man/FS/port.html | 120 -------- httemplate/docs/man/FS/prepay_credit.html | 106 ------- httemplate/docs/man/FS/session.html | 129 -------- httemplate/docs/man/FS/svc_Common.html | 97 ------ httemplate/docs/man/FS/svc_acct.html | 275 ----------------- httemplate/docs/man/FS/svc_acct_pop.html | 125 -------- httemplate/docs/man/FS/svc_acct_sm.html | 150 --------- httemplate/docs/man/FS/svc_domain.html | 173 ----------- httemplate/docs/man/FS/svc_www.html | 134 -------- httemplate/docs/man/FS/type_pkgs.html | 100 ------ 41 files changed, 5569 deletions(-) delete mode 100644 httemplate/docs/man/FS.html delete mode 100644 httemplate/docs/man/FS/CGI.html delete mode 100644 httemplate/docs/man/FS/CGIwrapper.html delete mode 100644 httemplate/docs/man/FS/Conf.html delete mode 100644 httemplate/docs/man/FS/Record.html delete mode 100644 httemplate/docs/man/FS/SessionClient.html delete mode 100644 httemplate/docs/man/FS/SignupClient.html delete mode 100644 httemplate/docs/man/FS/UI/Base.html delete mode 100644 httemplate/docs/man/FS/UI/CGI.html delete mode 100644 httemplate/docs/man/FS/UI/Gtk.html delete mode 100644 httemplate/docs/man/FS/UI/agent.html delete mode 100644 httemplate/docs/man/FS/UID.html delete mode 100644 httemplate/docs/man/FS/agent.html delete mode 100644 httemplate/docs/man/FS/agent_type.html delete mode 100644 httemplate/docs/man/FS/cust_bill.html delete mode 100644 httemplate/docs/man/FS/cust_bill_pkg.html delete mode 100644 httemplate/docs/man/FS/cust_credit.html delete mode 100644 httemplate/docs/man/FS/cust_main.html delete mode 100644 httemplate/docs/man/FS/cust_main_county.html delete mode 100644 httemplate/docs/man/FS/cust_main_invoice.html delete mode 100644 httemplate/docs/man/FS/cust_pay.html delete mode 100644 httemplate/docs/man/FS/cust_pay_batch.html delete mode 100644 httemplate/docs/man/FS/cust_pkg.html delete mode 100644 httemplate/docs/man/FS/cust_refund.html delete mode 100644 httemplate/docs/man/FS/cust_svc.html delete mode 100644 httemplate/docs/man/FS/domain_record.html delete mode 100644 httemplate/docs/man/FS/nas.html delete mode 100644 httemplate/docs/man/FS/part_pkg.html delete mode 100644 httemplate/docs/man/FS/part_referral.html delete mode 100644 httemplate/docs/man/FS/part_svc.html delete mode 100644 httemplate/docs/man/FS/pkg_svc.html delete mode 100644 httemplate/docs/man/FS/port.html delete mode 100644 httemplate/docs/man/FS/prepay_credit.html delete mode 100644 httemplate/docs/man/FS/session.html delete mode 100644 httemplate/docs/man/FS/svc_Common.html delete mode 100644 httemplate/docs/man/FS/svc_acct.html delete mode 100644 httemplate/docs/man/FS/svc_acct_pop.html delete mode 100644 httemplate/docs/man/FS/svc_acct_sm.html delete mode 100644 httemplate/docs/man/FS/svc_domain.html delete mode 100644 httemplate/docs/man/FS/svc_www.html delete mode 100644 httemplate/docs/man/FS/type_pkgs.html (limited to 'httemplate/docs/man') diff --git a/httemplate/docs/man/FS.html b/httemplate/docs/man/FS.html deleted file mode 100644 index 7db6bb9fd..000000000 --- a/httemplate/docs/man/FS.html +++ /dev/null @@ -1,164 +0,0 @@ - - -FS - Freeside Perl modules - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS - Freeside Perl modules

    -

    -


    -

    SYNOPSIS

    -

    Freeside perl modules and CLI utilities.

    -

    -

    Utility classes

    -

    the FS::Conf manpage - Freeside configuration values

    -

    the FS::ConfItem manpage - Freeside configuration option meta-data.

    -

    the FS::UID manpage - User class (not yet OO)

    -

    the FS::CGI manpage - Non OO-subroutines for the web interface.

    -

    -

    Database record classes

    -

    the FS::Record manpage - Database record base class

    -

    the FS::svc_acct_pop manpage - POP (Point of Presence, not Post -Office Protocol) class

    -

    the FS::part_pop_local manpage - Local calling area class

    -

    the FS::part_referral manpage - Referral class

    -

    the FS::cust_main_county manpage - Locale (tax rate) class

    -

    the FS::svc_Common manpage - Service base class

    -

    the FS::svc_acct manpage - Account (shell, RADIUS, POP3) class

    -

    the FS::svc_domain manpage - Domain class

    -

    the FS::domain_record manpage - DNS zone entries

    -

    the FS::svc_forward manpage - Mail forwarding class

    -

    the FS::svc_acct_sm manpage - (Depreciated) Vitual mail alias class

    -

    the FS::svc_www manpage - Web virtual host class.

    -

    the FS::part_svc manpage - Service definition class

    -

    the FS::part_svc_column manpage - Column constraint class

    -

    the FS::part_export manpage - External provisioning export class

    -

    the FS::part_export_option manpage - Export option class

    -

    the FS::part_pkg manpage - Package (billing item) definition class

    -

    the FS::pkg_svc manpage - Class linking package (billing item) -definitions (see the FS::part_pkg manpage) with service definitions -(see the FS::part_svc manpage)

    -

    the FS::agent manpage - Agent (reseller) class

    -

    the FS::agent_type manpage - Agent type class

    -

    the FS::type_pkgs manpage - Class linking agent types (see -the FS::agent_type manpage) with package (billing item) definitions -(see the FS::part_pkg manpage)

    -

    the FS::cust_svc manpage - Service class

    -

    the FS::cust_pkg manpage - Package (billing item) class

    -

    the FS::cust_main manpage - Customer class

    -

    the FS::cust_main_invoice manpage - Invoice destination -class

    -

    the FS::cust_bill manpage - Invoice class

    -

    the FS::cust_bill_pkg manpage - Invoice line item class

    -

    the FS::part_bill_event manpage - Invoice event definition class

    -

    the FS::cust_bill_event manpage - Completed invoice event class

    -

    the FS::cust_pay manpage - Payment class

    -

    the FS::cust_bill_pay manpage - Payment application class

    -

    the FS::cust_credit manpage - Credit class

    -

    the FS::cust_refund manpage - Refund class

    -

    the FS::cust_credit_refund manpage - Refund application class

    -

    the FS::cust_credit_bill manpage - Credit invoice application class

    -

    the FS::cust_pay_batch manpage - Credit card transaction queue class

    -

    the FS::prepay_credit manpage - Prepaid ``calling card'' credit class.

    -

    the FS::nas manpage - Network Access Server class

    -

    the FS::port manpage - NAS port class

    -

    the FS::session manpage - User login session class

    -

    the FS::queue manpage - Job queue

    -

    the FS::queue_arg manpage - Job arguments

    -

    -


    -

    Remote API modules

    -

    the FS::SignupClient manpage

    -

    the FS::SessionClient manpage

    -

    the FS::MailAdminServer manpage

    -

    -

    Command-line utilities

    -

    the freeside-email manpage

    -

    the freeside-queued manpage

    -

    the freeside-adduser manpage

    -

    the freeside-bill manpage

    -

    the freeside-overdue manpage

    -

    -

    User Interface classes (under (stalled) development; not yet usable)

    -

    the FS::UI::Base manpage - User-interface base class

    -

    the FS::UI::Gtk manpage - Gtk user-interface class

    -

    the FS::UI::CGI manpage - CGI (HTML) user-interface class

    -

    the FS::UI::agent manpage - agent table user-interface class

    -

    -

    Notes

    -

    To quote perl(1), ``If you're intending to read these straight through for the -first time, the suggested order will tend to reduce the number of forward -references.''

    -

    If you've never used OO modules before, -http://www.cpan.org/doc/FMTEYEWTK/easy_objects.html might help you out.

    -

    -


    -

    DESCRIPTION

    -

    Freeside is a billing and administration package for Internet Service -Providers.

    -

    The Freeside home page is at <http://www.sisd.com/freeside>.

    -

    The main documentation is in httemplate/docs.

    -

    -


    -

    SUPPORT

    -

    A mailing list for users is available. Send a blank message to -<ivan-freeside-subscribe@sisd.com> to subscribe.

    -

    A mailing list for developers is available. It is intended to be lower volume -and higher SNR than the users list. Send a blank message to -<ivan-freeside-devel-subscribe@sisd.com> to subscribe.

    -

    Commercial support is available; see -<http://www.sisd.com/freeside/commercial.html>.

    -

    -


    -

    AUTHOR

    -

    Primarily Ivan Kohler <ivan@sisd.com>, with help from many kind folks.

    -

    See the CREDITS file in the Freeside distribution for a (hopefully) complete -list and the individal files for details.

    -

    -


    -

    SEE ALSO

    -

    perl(1), main Freeside documentation in htdocs/docs/

    -

    -


    -

    BUGS

    -

    Those modules which would be useful separately should be pulled out, -renamed appropriately and uploaded to CPAN. So far: DBIx::DBSchema, Net::SSH -and Net::SCP...

    - - - - diff --git a/httemplate/docs/man/FS/CGI.html b/httemplate/docs/man/FS/CGI.html deleted file mode 100644 index 54a0bf39b..000000000 --- a/httemplate/docs/man/FS/CGI.html +++ /dev/null @@ -1,100 +0,0 @@ - - -FS::CGI - Subroutines for the web interface - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::CGI - Subroutines for the web interface

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::CGI qw(header menubar idiot eidiot popurl);
    -
    -  print header( 'Title', '' );
    -  print header( 'Title', menubar('item', 'URL', ... ) );
    -
    -  idiot "error message"; 
    -  eidiot "error message";
    -
    -  $url = popurl; #returns current url
    -  $url = popurl(3); #three levels up
    -

    -


    -

    DESCRIPTION

    -

    Provides a few common subroutines for the web interface.

    -

    -


    -

    SUBROUTINES

    -
    -
    header TITLE, MENUBAR
    -
    -Returns an HTML header. -

    -
    menubar ITEM, URL, ...
    -
    -Returns an HTML menubar. -

    -
    idiot ERROR
    -
    -This is depriciated. Don't use it. -

    Sends headers and an HTML error message.

    -

    -
    eidiot ERROR
    -
    -This is depriciated. Don't use it. -

    Sends headers and an HTML error message, then exits.

    -

    -
    popurl LEVEL
    -
    -Returns current URL with LEVEL levels of path removed from the end (default 0). -

    -
    table
    -
    -Returns HTML tag for beginning a table. -

    -
    itable
    -
    -Returns HTML tag for beginning an (invisible) table. -

    -
    ntable
    -
    -This is getting silly. -

    -
    small_custview CUSTNUM || CUST_MAIN_OBJECT, COUNTRYDEFAULT
    -
    -Sheesh. I should just switch to Mason. -

    -

    -


    -

    BUGS

    -

    Not OO.

    -

    Not complete.

    -

    small_custview sooooo doesn't belong here. i should just switch to Mason.

    -

    -


    -

    SEE ALSO

    -

    the CGI manpage, the CGI::Base manpage

    - - - - diff --git a/httemplate/docs/man/FS/CGIwrapper.html b/httemplate/docs/man/FS/CGIwrapper.html deleted file mode 100644 index bab5e7f37..000000000 --- a/httemplate/docs/man/FS/CGIwrapper.html +++ /dev/null @@ -1,16 +0,0 @@ - - -./FS/FS/CGIwrapper.pm - - - - - - - - - - - - - diff --git a/httemplate/docs/man/FS/Conf.html b/httemplate/docs/man/FS/Conf.html deleted file mode 100644 index be49be31f..000000000 --- a/httemplate/docs/man/FS/Conf.html +++ /dev/null @@ -1,97 +0,0 @@ - - -FS::Conf - Freeside configuration values - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::Conf - Freeside configuration values

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::Conf;
    -
    -  $conf = new FS::Conf "/config/directory";
    -
    -  $FS::Conf::default_dir = "/config/directory";
    -  $conf = new FS::Conf;
    -
    -  $dir = $conf->dir;
    -
    -  $value = $conf->config('key');
    -  @list  = $conf->config('key');
    -  $bool  = $conf->exists('key');
    -
    -  @config_items = $conf->config_items;
    -

    -


    -

    DESCRIPTION

    -

    Read and write Freeside configuration values. Keys currently map to filenames, -but this may change in the future.

    -

    -


    -

    METHODS

    -
    -
    new [ DIRECTORY ]
    -
    -Create a new configuration object. A directory arguement is required if -$FS::Conf::default_dir has not been set. -

    -
    dir
    -
    -Returns the directory. -

    -
    config
    -
    -Returns the configuration value or values (depending on context) for key. -

    -
    exists
    -
    -Returns true if the specified key exists, even if the corresponding value -is undefined. -

    -
    touch
    -
    -
    set
    -
    -
    delete
    -
    -
    config_items
    -
    -Returns all of the possible configuration items as FS::ConfItem objects. See -the FS::ConfItem manpage. -

    -

    -


    -

    BUGS

    -

    Write access (touch, set, delete) should be documented.

    -

    If this was more than just crud that will never be useful outside Freeside I'd -worry that config_items is freeside-specific and icky.

    -

    -


    -

    SEE ALSO

    -

    ``Configuration'' in the web interface (config/config.cgi).

    -

    httemplate/docs/config.html

    - - - - diff --git a/httemplate/docs/man/FS/Record.html b/httemplate/docs/man/FS/Record.html deleted file mode 100644 index 108a84ad7..000000000 --- a/httemplate/docs/man/FS/Record.html +++ /dev/null @@ -1,366 +0,0 @@ - - -FS::Record - Database record objects - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::Record - Database record objects

    -

    -


    -

    SYNOPSIS

    -
    -    use FS::Record;
    -    use FS::Record qw(dbh fields qsearch qsearchs dbdef);
    -
    -    $record = new FS::Record 'table', \%hash;
    -    $record = new FS::Record 'table', { 'column' => 'value', ... };
    -
    -    $record  = qsearchs FS::Record 'table', \%hash;
    -    $record  = qsearchs FS::Record 'table', { 'column' => 'value', ... };
    -    @records = qsearch  FS::Record 'table', \%hash; 
    -    @records = qsearch  FS::Record 'table', { 'column' => 'value', ... };
    -
    -    $table = $record->table;
    -    $dbdef_table = $record->dbdef_table;
    -
    -    $value = $record->get('column');
    -    $value = $record->getfield('column');
    -    $value = $record->column;
    -
    -    $record->set( 'column' => 'value' );
    -    $record->setfield( 'column' => 'value' );
    -    $record->column('value');
    -
    -    %hash = $record->hash;
    -
    -    $hashref = $record->hashref;
    -
    -    $error = $record->insert;
    -    #$error = $record->add; #depriciated
    -
    -    $error = $record->delete;
    -    #$error = $record->del; #depriciated
    -
    -    $error = $new_record->replace($old_record);
    -    #$error = $new_record->rep($old_record); #depriciated
    -
    -    $value = $record->unique('column');
    -
    -    $error = $record->ut_float('column');
    -    $error = $record->ut_number('column');
    -    $error = $record->ut_numbern('column');
    -    $error = $record->ut_money('column');
    -    $error = $record->ut_text('column');
    -    $error = $record->ut_textn('column');
    -    $error = $record->ut_alpha('column');
    -    $error = $record->ut_alphan('column');
    -    $error = $record->ut_phonen('column');
    -    $error = $record->ut_anything('column');
    -    $error = $record->ut_name('column');
    -
    -    $dbdef = reload_dbdef;
    -    $dbdef = reload_dbdef "/non/standard/filename";
    -    $dbdef = dbdef;
    -
    -    $quoted_value = _quote($value,'table','field');
    -
    -    #depriciated
    -    $fields = hfields('table');
    -    if ( $fields->{Field} ) { # etc.
    -
    -    @fields = fields 'table'; #as a subroutine
    -    @fields = $record->fields; #as a method call
    -

    -


    -

    DESCRIPTION

    -

    (Mostly) object-oriented interface to database records. Records are currently -implemented on top of DBI. FS::Record is intended as a base class for -table-specific classes to inherit from, i.e. FS::cust_main.

    -

    -


    -

    CONSTRUCTORS

    -
    -
    new [ TABLE, ] HASHREF
    -
    -Creates a new record. It doesn't store it in the database, though. See -insert for that. -

    Note that the object stores this hash reference, not a distinct copy of the -hash it points to. You can ask the object for a copy with the hash -method.

    -

    TABLE can only be omitted when a dervived class overrides the table method.

    -

    -
    qsearch TABLE, HASHREF, SELECT, EXTRA_SQL
    -
    -Searches the database for all records matching (at least) the key/value pairs -in HASHREF. Returns all the records found as `FS::TABLE' objects if that -module is loaded (i.e. via `use FS::cust_main;'), otherwise returns FS::Record -objects. -

    ###oops, argh, FS::Record::new only lets us create database fields. -#Normal behaviour if SELECT is not specified is `*', as in -#SELECT * FROM table WHERE .... However, there is an experimental new -#feature where you can specify SELECT - remember, the objects returned, -#although blessed into the appropriate `FS::TABLE' package, will only have the -#fields you specify. This might have unwanted results if you then go calling -#regular FS::TABLE methods -#on it.

    -

    -
    jsearch TABLE, HASHREF, SELECT, EXTRA_SQL, PRIMARY_TABLE, PRIMARY_KEY
    -
    -Experimental JOINed search method. Using this method, you can execute a -single SELECT spanning multiple tables, and cache the results for subsequent -method calls. Interface will almost definately change in an incompatible -fashion. -

    Arguments:

    -

    -
    qsearchs TABLE, HASHREF
    -
    -Same as qsearch, except that if more than one record matches, it carps but -returns the first. If this happens, you either made a logic error in asking -for a single item, or your data is corrupted. -

    -

    -


    -

    METHODS

    -
    -
    table
    -
    -Returns the table name. -

    -
    dbdef_table
    -
    -Returns the FS::dbdef_table object for the table. -

    -
    get, getfield COLUMN
    -
    -Returns the value of the column/field/key COLUMN. -

    -
    set, setfield COLUMN, VALUE
    -
    -Sets the value of the column/field/key COLUMN to VALUE. Returns VALUE. -

    -
    AUTLOADED METHODS
    -
    -$record->column is a synonym for $record->get('column'); -

    $record->column('value') is a synonym for $record->set('column','value');

    -

    -
    hash
    -
    -Returns a list of the column/value pairs, usually for assigning to a new hash. -

    To make a distinct duplicate of an FS::Record object, you can do:

    -
    -    $new = new FS::Record ( $old->table, { $old->hash } );
    -

    -
    hashref
    -
    -Returns a reference to the column/value hash. -

    -
    insert
    -
    -Inserts this record to the database. If there is an error, returns the error, -otherwise returns false. -

    -
    add
    -
    -Depriciated (use insert instead). -

    -
    delete
    -
    -Delete this record from the database. If there is an error, returns the error, -otherwise returns false. -

    -
    del
    -
    -Depriciated (use delete instead). -

    -
    replace OLD_RECORD
    -
    -Replace the OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. -

    -
    rep
    -
    -Depriciated (use replace instead). -

    -
    check
    -
    -Not yet implemented, croaks. Derived classes should provide a check method. -

    -
    unique COLUMN
    -
    -Replaces COLUMN in record with a unique number. Called by the add method -on primary keys and single-field unique columns (see the DBIx::DBSchema::Table manpage). -Returns the new value. -

    -
    ut_float COLUMN
    -
    -Check/untaint floating point numeric data: 1.1, 1, 1.1e10, 1e10. May not be -null. If there is an error, returns the error, otherwise returns false. -

    -
    ut_number COLUMN
    -
    -Check/untaint simple numeric data (whole numbers). May not be null. If there -is an error, returns the error, otherwise returns false. -

    -
    ut_numbern COLUMN
    -
    -Check/untaint simple numeric data (whole numbers). May be null. If there is -an error, returns the error, otherwise returns false. -

    -
    ut_money COLUMN
    -
    -Check/untaint monetary numbers. May be negative. Set to 0 if null. If there -is an error, returns the error, otherwise returns false. -

    -
    ut_text COLUMN
    -
    -Check/untaint text. Alphanumerics, spaces, and the following punctuation -symbols are currently permitted: ! @ # $ % & ( ) - + ; : ' `` , . ? / -May not be null. If there is an error, returns the error, otherwise returns -false. -

    -
    ut_textn COLUMN
    -
    -Check/untaint text. Alphanumerics, spaces, and the following punctuation -symbols are currently permitted: ! @ # $ % & ( ) - + ; : ' `` , . ? / -May be null. If there is an error, returns the error, otherwise returns false. -

    -
    ut_alpha COLUMN
    -
    -Check/untaint alphanumeric strings (no spaces). May not be null. If there is -an error, returns the error, otherwise returns false. -

    -
    ut_alpha COLUMN
    -
    -Check/untaint alphanumeric strings (no spaces). May be null. If there is an -error, returns the error, otherwise returns false. -

    -
    ut_phonen COLUMN [ COUNTRY ]
    -
    -Check/untaint phone numbers. May be null. If there is an error, returns -the error, otherwise returns false. -

    Takes an optional two-letter ISO country code; without it or with unsupported -countries, ut_phonen simply calls ut_alphan.

    -

    -
    ut_ip COLUMN
    -
    -Check/untaint ip addresses. IPv4 only for now. -

    -
    ut_ipn COLUMN
    -
    -Check/untaint ip addresses. IPv4 only for now. May be null. -

    -
    ut_domain COLUMN
    -
    -Check/untaint host and domain names. -

    -
    ut_name COLUMN
    -
    -Check/untaint proper names; allows alphanumerics, spaces and the following -punctuation: , . - ' -

    May not be null.

    -

    -
    ut_zip COLUMN
    -
    -Check/untaint zip codes. -

    -
    ut_country COLUMN
    -
    -Check/untaint country codes. Country names are changed to codes, if possible - -see the Locale::Country manpage. -

    -
    ut_anything COLUMN
    -
    -Untaints arbitrary data. Be careful. -

    -
    ut_enum COLUMN CHOICES_ARRAYREF
    -
    -Check/untaint a column, supplying all possible choices, like the ``enum'' type. -

    -
    fields [ TABLE ]
    -
    -This can be used as both a subroutine and a method call. It returns a list -of the columns in this record's table, or an explicitly specified table. -(See the DBIx::DBSchema::Table manpage). -

    -

    -


    -

    SUBROUTINES

    -
    -
    reload_dbdef([FILENAME])
    -
    -Load a database definition (see the DBIx::DBSchema manpage), optionally from a -non-default filename. This command is executed at startup unless -$FS::Record::setup_hack is true. Returns a DBIx::DBSchema object. -

    -
    dbdef
    -
    -Returns the current database definition. See the FS::dbdef manpage. -

    -
    _quote VALUE, TABLE, COLUMN
    -
    -This is an internal function used to construct SQL statements. It returns -VALUE DBI-quoted (see DBI/``quote'') unless VALUE is a number and the column -type (see the FS::dbdef_column manpage) does not end in `char' or `binary'. -

    -
    hfields TABLE
    -
    -This is depriciated. Don't use it. -

    It returns a hash-type list with the fields of this record's table set true.

    -

    -

    -


    -

    BUGS

    -

    This module should probably be renamed, since much of the functionality is -of general use. It is not completely unlike Adapter::DBI (see below).

    -

    Exported qsearch and qsearchs should be depriciated in favor of method calls -(against an FS::Record object like the old search and searchs that qsearch -and qsearchs were on top of.)

    -

    The whole fields / hfields mess should be removed.

    -

    The various WHERE clauses should be subroutined.

    -

    table string should be depriciated in favor of FS::dbdef_table.

    -

    No doubt we could benefit from a Tied hash. Documenting how exists / defined -true maps to the database (and WHERE clauses) would also help.

    -

    The ut_ methods should ask the dbdef for a default length.

    -

    ut_sqltype (like ut_varchar) should all be defined

    -

    A fallback check method should be provided which uses the dbdef.

    -

    The ut_money method assumes money has two decimal digits.

    -

    The Pg money kludge in the new method only strips `$'.

    -

    The ut_phonen method only checks US-style phone numbers.

    -

    The _quote function should probably use ut_float instead of a regex.

    -

    All the subroutines probably should be methods, here or elsewhere.

    -

    Probably should borrow/use some dbdef methods where appropriate (like sub -fields)

    -

    As of 1.14, DBI fetchall_hashref( {} ) doesn't set fetchrow_hashref NAME_lc, -or allow it to be set. Working around it is ugly any way around - DBI should -be fixed. (only affects RDBMS which return uppercase column names)

    -

    ut_zip should take an optional country like ut_phone.

    -

    -


    -

    SEE ALSO

    -

    the DBIx::DBSchema manpage, the FS::UID manpage, DBI

    -

    Adapter::DBI from Ch. 11 of Advanced Perl Programming by Sriram Srinivasan.

    - - - - diff --git a/httemplate/docs/man/FS/SessionClient.html b/httemplate/docs/man/FS/SessionClient.html deleted file mode 100644 index 0abb2a6a1..000000000 --- a/httemplate/docs/man/FS/SessionClient.html +++ /dev/null @@ -1,97 +0,0 @@ - - -FS::SessionClient - Freeside session client API - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::SessionClient - Freeside session client API

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::SessionClient qw( login portnum logout );
    -
    -  $error = login ( {
    -    'username' => $username,
    -    'password' => $password,
    -    'login'    => $timestamp,
    -    'portnum'  => $portnum,
    -  } );
    -
    -  $portnum = portnum( { 'ip' => $ip } ) or die "unknown ip!"
    -  $portnum = portnum( { 'nasnum' => $nasnum, 'nasport' => $nasport } )
    -    or die "unknown nasnum/nasport";
    -
    -  $error = logout ( {
    -    'username' => $username,
    -    'password' => $password,
    -    'logout'   => $timestamp,
    -    'portnum'  => $portnum,
    -  } );
    -

    -


    -

    DESCRIPTION

    -

    This modules provides an API for a remote session application.

    -

    It needs to be run as the freeside user. Because of this, the program which -calls these subroutines should be written very carefully.

    -

    -


    -

    SUBROUTINES

    -
    -
    login HASHREF
    -
    -HASHREF should have the following keys: username, password, login and portnum. -login is a UNIX timestamp; if not specified, will default to the current time. -Starts a new session for the specified user and portnum. The password is -optional, but must be correct if specified. -

    Returns a scalar error message, or the empty string for success.

    -

    -
    portnum
    -
    -HASHREF should contain a single key: ip, or the two keys: nasnum and nasport. -Returns a portnum suitable for the login and logout subroutines, or false -on error. -

    -
    logout HASHREF
    -
    -HASHREF should have the following keys: usrename, password, logout and portnum. -logout is a UNIX timestamp; if not specified, will default to the current time. -Starts a new session for the specified user and portnum. The password is -optional, but must be correct if specified. -

    Returns a scalar error message, or the empty string for success.

    -

    -

    -


    -

    VERSION

    -

    $Id: SessionClient.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    -


    -

    SEE ALSO

    -

    fs_sessiond

    - - - - diff --git a/httemplate/docs/man/FS/SignupClient.html b/httemplate/docs/man/FS/SignupClient.html deleted file mode 100644 index 3438c804a..000000000 --- a/httemplate/docs/man/FS/SignupClient.html +++ /dev/null @@ -1,132 +0,0 @@ - - -FS::SignupClient - Freeside signup client API - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::SignupClient - Freeside signup client API

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::SignupClient qw( signup_info new_customer );
    -
    -  ( $locales, $packages, $pops ) = signup_info;
    -
    -  $error = new_customer ( {
    -    'first'            => $first,
    -    'last'             => $last,
    -    'ss'               => $ss,
    -    'comapny'          => $company,
    -    'address1'         => $address1,
    -    'address2'         => $address2,
    -    'city'             => $city,
    -    'county'           => $county,
    -    'state'            => $state,
    -    'zip'              => $zip,
    -    'country'          => $country,
    -    'daytime'          => $daytime,
    -    'night'            => $night,
    -    'fax'              => $fax,
    -    'payby'            => $payby,
    -    'payinfo'          => $payinfo,
    -    'paydate'          => $paydate,
    -    'payname'          => $payname,
    -    'invoicing_list'   => $invoicing_list,
    -    'referral_custnum' => $referral_custnum,
    -    'pkgpart'          => $pkgpart,
    -    'username'         => $username,
    -    '_password'        => $password,
    -    'popnum'           => $popnum,
    -  } );
    -

    -


    -

    DESCRIPTION

    -

    This module provides an API for a remote signup server.

    -

    It needs to be run as the freeside user. Because of this, the program which -calls these subroutines should be written very carefully.

    -

    -


    -

    SUBROUTINES

    -
    -
    signup_info
    -
    -Returns three array references of hash references. -

    The first set of hash references is of allowable locales. Each hash reference -has the following keys: - taxnum - state - county - country

    -

    The second set of hash references is of allowable packages. Each hash -reference has the following keys: - pkgpart - pkg

    -

    The third set of hash references is of allowable POPs (Points Of Presence). -Each hash reference has the following keys: - popnum - city - state - ac - exch

    -

    -
    new_customer HASHREF
    -
    -Adds a customer to the remote Freeside system. Requires a hash reference as -a paramater with the following keys: - first - last - ss - comapny - address1 - address2 - city - county - state - zip - country - daytime - night - fax - payby - payinfo - paydate - payname - invoicing_list - referral_custnum - pkgpart - username - _password - popnum -

    Returns a scalar error message, or the empty string for success.

    -

    -

    -


    -

    BUGS

    -

    -


    -

    SEE ALSO

    -

    fs_signupd, the FS::SignupServer manpage, the FS::cust_main manpage

    - - - - diff --git a/httemplate/docs/man/FS/UI/Base.html b/httemplate/docs/man/FS/UI/Base.html deleted file mode 100644 index 445fd0d0b..000000000 --- a/httemplate/docs/man/FS/UI/Base.html +++ /dev/null @@ -1,100 +0,0 @@ - - -FS::UI::Base - Base class for all user-interface objects - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::UI::Base - Base class for all user-interface objects

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::UI::SomeInterface;
    -  use FS::UI::some_table;
    -
    -  $interface = new FS::UI::some_table;
    -
    -  $error = $interface->browse;
    -  $error = $interface->search;
    -  $error = $interface->view;
    -  $error = $interface->edit;
    -  $error = $interface->process;
    -

    -


    -

    DESCRIPTION

    -

    An FS::UI::Base object represents a user interface object. FS::UI::Base -is intended as a base class for table-specfic classes to inherit from, i.e. -FS::UI::cust_main. The simplest case, which will provide a default UI for your -new table, is as follows:

    -
    -  package FS::UI::table_name;
    -  use vars qw ( @ISA );
    -  use FS::UI::Base;
    -  @ISA = qw( FS::UI::Base );
    -  sub db_table { 'table_name'; }
    -

    Currently available interfaces are: - FS::UI::Gtk, an X-Windows UI implemented using the Gtk+ toolkit - FS::UI::CGI, a web interface implemented using CGI.pm, etc.

    -

    -


    -

    METHODS

    -
    -
    new
    -
    -
    browse
    -
    -
    title
    -
    -
    addwidget
    -
    -
    -

    -


    -

    VERSION

    -

    $Id: Base.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    This documentation is incomplete.

    -

    There should be some sort of per-(freeside)-user preferences and the ability -for specific FS::UI:: modules to put their own values there as well.

    -

    -


    -

    SEE ALSO

    -

    the FS::UI::Gtk manpage, the FS::UI::CGI manpage

    -

    -


    -

    HISTORY

    -

    $Log: Base.html,v $ -

    Revision 1.3 2002-01-29 17:42:46 ivan -

    weight, plan and plandata fields in part_bill_event -

    -Revision 1.1 1999/08/04 09:03:53 ivan -initial checkin of module files for proper perl installation

    -

    Revision 1.1 1999/01/20 09:30:36 ivan -skeletal cross-UI UI code.

    - - - - diff --git a/httemplate/docs/man/FS/UI/CGI.html b/httemplate/docs/man/FS/UI/CGI.html deleted file mode 100644 index 22b6c76b8..000000000 --- a/httemplate/docs/man/FS/UI/CGI.html +++ /dev/null @@ -1,94 +0,0 @@ - - -FS::UI::CGI - Base class for CGI user-interface objects - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::UI::CGI - Base class for CGI user-interface objects

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::UI::CGI;
    -  use FS::UI::some_table;
    -
    -  $interface = new FS::UI::some_table;
    -
    -  $error = $interface->browse;
    -  $error = $interface->search;
    -  $error = $interface->view;
    -  $error = $interface->edit;
    -  $error = $interface->process;
    -

    -


    -

    DESCRIPTION

    -

    An FS::UI::CGI object represents a CGI interface object.

    -

    -


    -

    METHODS

    -
    -
    new
    -
    -
    _header
    -
    -
    _footer
    -
    -
    interface
    -
    -Returns the string `CGI'. Useful for the author of a table-specific UI class -to conditionally specify certain behaviour. -

    -

    -


    -

    VERSION

    -

    $Id: CGI.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    This documentation is incomplete.

    -

    In _Tableborder, headers should be links that sort on their fields.

    -

    _Link uses a constant $BASE_URL

    -

    _Link passes the arguments as a manually-constructed GET string instead -of POSTing, for compatability while the web interface is upgraded. Once -this is done it should pass arguements properly (i.e. as a POST, 8-bit clean)

    -

    Still some small bits of widget code same as FS::UI::Gtk.

    -

    -


    -

    SEE ALSO

    -

    the FS::UI::Base manpage

    -

    -


    -

    HISTORY

    -

    $Log: CGI.html,v $ -

    Revision 1.3 2002-01-29 17:42:46 ivan -

    weight, plan and plandata fields in part_bill_event -

    -Revision 1.1 1999/08/04 09:03:53 ivan -initial checkin of module files for proper perl installation

    -

    Revision 1.1 1999/01/20 09:30:36 ivan -skeletal cross-UI UI code.

    - - - - diff --git a/httemplate/docs/man/FS/UI/Gtk.html b/httemplate/docs/man/FS/UI/Gtk.html deleted file mode 100644 index 6f203c7bb..000000000 --- a/httemplate/docs/man/FS/UI/Gtk.html +++ /dev/null @@ -1,91 +0,0 @@ - - -FS::UI::Gtk - Base class for Gtk user-interface objects - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::UI::Gtk - Base class for Gtk user-interface objects

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::UI::Gtk;
    -  use FS::UI::some_table;
    -
    -  $interface = new FS::UI::some_table;
    -
    -  $error = $interface->browse;
    -  $error = $interface->search;
    -  $error = $interface->view;
    -  $error = $interface->edit;
    -  $error = $interface->process;
    -

    -


    -

    DESCRIPTION

    -

    An FS::UI::Gtk object represents a Gtk user interface object.

    -

    -


    -

    METHODS

    -
    -
    new
    -
    -
    interface
    -
    -Returns the string `Gtk'. Useful for the author of a table-specific UI class -to conditionally specify certain behaviour. -

    -

    -


    -

    VERSION

    -

    $Id: Gtk.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    This documentation is incomplete.

    -

    _Tableborder is just a _Table now. _Tableborders should scroll (but not the -headers) and need and need more decoration. (data in white section ala gtksql -and sliding field widths) headers should be buttons that callback to sort on -their fields.

    -

    There should be a persistant, per-(freeside)-user store for window positions -and sizes and sort fields etc (see BUGS in the FS::UI::CGI manpage.

    -

    Still some small bits of widget code same as FS::UI::CGI.

    -

    -


    -

    SEE ALSO

    -

    the FS::UI::Base manpage

    -

    -


    -

    HISTORY

    -

    $Log: Gtk.html,v $ -

    Revision 1.3 2002-01-29 17:42:46 ivan -

    weight, plan and plandata fields in part_bill_event -

    -Revision 1.1 1999/08/04 09:03:53 ivan -initial checkin of module files for proper perl installation

    -

    Revision 1.1 1999/01/20 09:30:36 ivan -skeletal cross-UI UI code.

    - - - - diff --git a/httemplate/docs/man/FS/UI/agent.html b/httemplate/docs/man/FS/UI/agent.html deleted file mode 100644 index 8608e4ef4..000000000 --- a/httemplate/docs/man/FS/UI/agent.html +++ /dev/null @@ -1,16 +0,0 @@ - - -./FS/FS/UI/agent.pm - - - - - - - - - - - - - diff --git a/httemplate/docs/man/FS/UID.html b/httemplate/docs/man/FS/UID.html deleted file mode 100644 index 3c28eebfd..000000000 --- a/httemplate/docs/man/FS/UID.html +++ /dev/null @@ -1,138 +0,0 @@ - - -FS::UID - Subroutines for database login and assorted other stuff - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::UID - Subroutines for database login and assorted other stuff

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::UID qw(adminsuidsetup cgisuidsetup dbh datasrc getotaker
    -  checkeuid checkruid);
    -
    -  adminsuidsetup $user;
    -
    -  $cgi = new CGI;
    -  $dbh = cgisuidsetup($cgi);
    -
    -  $dbh = dbh;
    -
    -  $datasrc = datasrc;
    -
    -  $driver_name = driver_name;
    -

    -


    -

    DESCRIPTION

    -

    Provides a hodgepodge of subroutines.

    -

    -


    -

    SUBROUTINES

    -
    -
    adminsuidsetup USER
    -
    -Sets the user to USER (see config.html from the base documentation). -Cleans the environment. -Make sure the script is running as freeside, or setuid freeside. -Opens a connection to the database. -Swaps real and effective UIDs. -Runs any defined callbacks (see below). -Returns the DBI database handle (usually you don't need this). -

    -
    cgisuidsetup CGI_object
    -
    -Takes a single argument, which is a CGI (see the CGI manpage) or Apache (see Apache) -object (CGI::Base is depriciated). Runs cgisetotaker and then adminsuidsetup. -

    -
    cgi
    -
    -Returns the CGI (see the CGI manpage) object. -

    -
    dbh
    -
    -Returns the DBI database handle. -

    -
    datasrc
    -
    -Returns the DBI data source. -

    -
    driver_name
    -
    -Returns just the driver name portion of the DBI data source. -

    -
    getotaker
    -
    -Returns the current Freeside user. -

    -
    cgisetotaker
    -
    -Sets and returns the CGI REMOTE_USER. $cgi should be defined as a CGI.pm -object (see the CGI manpage) or an Apache object (see Apache). Support for CGI::Base -and derived classes is depriciated. -

    -
    checkeuid
    -
    -Returns true if effective UID is that of the freeside user. -

    -
    checkruid
    -
    -Returns true if the real UID is that of the freeside user. -

    -
    getsecrets [ USER ]
    -
    -Sets the user to USER, if supplied. -Sets and returns the DBI datasource, username and password for this user from -the `/usr/local/etc/freeside/mapsecrets' file. -

    -

    -


    -

    CALLBACKS

    -

    Warning: this interface is likely to change in future releases.

    -

    A package can install a callback to be run in adminsuidsetup by putting a -coderef into the hash %FS::UID::callback :

    -
    -    $coderef = sub { warn "Hi, I'm returning your call!" };
    -    $FS::UID::callback{'Package::Name'};
    -

    -


    -

    VERSION

    -

    $Id: UID.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    Too many package-global variables.

    -

    Not OO.

    -

    No capabilities yet. When mod_perl and Authen::DBI are implemented, -cgisuidsetup will go away as well.

    -

    Goes through contortions to support non-OO syntax with multiple datasrc's.

    -

    Callbacks are inelegant.

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, the CGI manpage, DBI, config.html from the base documentation.

    - - - - diff --git a/httemplate/docs/man/FS/agent.html b/httemplate/docs/man/FS/agent.html deleted file mode 100644 index a660ed427..000000000 --- a/httemplate/docs/man/FS/agent.html +++ /dev/null @@ -1,121 +0,0 @@ - - -FS::agent - Object methods for agent records - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::agent - Object methods for agent records

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::agent;
    -
    -  $record = new FS::agent \%hash;
    -  $record = new FS::agent { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -
    -  $agent_type = $record->agent_type;
    -
    -  $hashref = $record->pkgpart_hashref;
    -  #may purchase $pkgpart if $hashref->{$pkgpart};
    -

    -


    -

    DESCRIPTION

    -

    An FS::agent object represents an agent. Every customer has an agent. Agents -can be used to track things like resellers or salespeople. FS::agent inherits -from FS::Record. The following fields are currently supported:

    -
    -
    agemtnum - primary key (assigned automatically for new agents)
    -
    -
    agent - Text name of this agent
    -
    -
    typenum - Agent type. See the FS::agent_type manpage
    -
    -
    prog - For future use.
    -
    -
    freq - For future use.
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new agent. To add the agent to the database, see insert. -

    -
    insert
    -
    -Adds this agent to the database. If there is an error, returns the error, -otherwise returns false. -

    -
    delete
    -
    -Deletes this agent from the database. Only agents with no customers can be -deleted. If there is an error, returns the error, otherwise returns false. -

    -
    replace OLD_RECORD
    -
    -Replaces OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. -

    -
    check
    -
    -Checks all fields to make sure this is a valid agent. If there is an error, -returns the error, otherwise returns false. Called by the insert and replace -methods. -

    -
    agent_type
    -
    -Returns the FS::agent_type object (see the FS::agent_type manpage) for this agent. -

    -
    pkgpart_hashref
    -
    -Returns a hash reference. The keys of the hash are pkgparts. The value is -true if this agent may purchase the specified package definition. See -the FS::part_pkg manpage. -

    -

    -


    -

    VERSION

    -

    $Id: agent.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, the FS::agent_type manpage, the FS::cust_main manpage, the FS::part_pkg manpage, -schema.html from the base documentation.

    - - - - diff --git a/httemplate/docs/man/FS/agent_type.html b/httemplate/docs/man/FS/agent_type.html deleted file mode 100644 index 40552d6d3..000000000 --- a/httemplate/docs/man/FS/agent_type.html +++ /dev/null @@ -1,126 +0,0 @@ - - -FS::agent_type - Object methods for agent_type records - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::agent_type - Object methods for agent_type records

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::agent_type;
    -
    -  $record = new FS::agent_type \%hash;
    -  $record = new FS::agent_type { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -
    -  $hashref = $record->pkgpart_hashref;
    -  #may purchase $pkgpart if $hashref->{$pkgpart};
    -
    -  @type_pkgs = $record->type_pkgs;
    -
    -  @pkgparts = $record->pkgpart;
    -

    -


    -

    DESCRIPTION

    -

    An FS::agent_type object represents an agent type. Every agent (see -the FS::agent manpage) has an agent type. Agent types define which packages (see -the FS::part_pkg manpage) may be purchased by customers (see the FS::cust_main manpage), via -FS::type_pkgs records (see the FS::type_pkgs manpage). FS::agent_type inherits from -FS::Record. The following fields are currently supported:

    -
    -
    typenum - primary key (assigned automatically for new agent types)
    -
    -
    atype - Text name of this agent type
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new agent type. To add the agent type to the database, see -insert. -

    -
    insert
    -
    -Adds this agent type to the database. If there is an error, returns the error, -otherwise returns false. -

    -
    delete
    -
    -Deletes this agent type from the database. Only agent types with no agents -can be deleted. If there is an error, returns the error, otherwise returns -false. -

    -
    replace OLD_RECORD
    -
    -Replaces OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. -

    -
    check
    -
    -Checks all fields to make sure this is a valid agent type. If there is an -error, returns the error, otherwise returns false. Called by the insert and -replace methods. -

    -
    pkgpart_hashref
    -
    -Returns a hash reference. The keys of the hash are pkgparts. The value is -true iff this agent may purchase the specified package definition. See -the FS::part_pkg manpage. -

    -
    type_pkgs
    -
    -Returns all FS::type_pkgs objects (see the FS::type_pkgs manpage) for this agent type. -

    -
    pkgpart
    -
    -Returns the pkgpart of all package definitions (see the FS::part_pkg manpage) for this -agent type. -

    -

    -


    -

    VERSION

    -

    $Id: agent_type.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, the FS::agent manpage, the FS::type_pkgs manpage, the FS::cust_main manpage, -the FS::part_pkg manpage, schema.html from the base documentation.

    - - - - diff --git a/httemplate/docs/man/FS/cust_bill.html b/httemplate/docs/man/FS/cust_bill.html deleted file mode 100644 index 8bdb87b56..000000000 --- a/httemplate/docs/man/FS/cust_bill.html +++ /dev/null @@ -1,182 +0,0 @@ - - -FS::cust_bill - Object methods for cust_bill records - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::cust_bill - Object methods for cust_bill records

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::cust_bill;
    -
    -  $record = new FS::cust_bill \%hash;
    -  $record = new FS::cust_bill { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -
    -  ( $total_previous_balance, @previous_cust_bill ) = $record->previous;
    -
    -  @cust_bill_pkg_objects = $cust_bill->cust_bill_pkg;
    -
    -  ( $total_previous_credits, @previous_cust_credit ) = $record->cust_credit;
    -
    -  @cust_pay_objects = $cust_bill->cust_pay;
    -
    -  $tax_amount = $record->tax;
    -
    -  @lines = $cust_bill->print_text;
    -  @lines = $cust_bill->print_text $time;
    -

    -


    -

    DESCRIPTION

    -

    An FS::cust_bill object represents an invoice; a declaration that a customer -owes you money. The specific charges are itemized as cust_bill_pkg records -(see the FS::cust_bill_pkg manpage). FS::cust_bill inherits from FS::Record. The -following fields are currently supported:

    -
    -
    invnum - primary key (assigned automatically for new invoices)
    -
    -
    custnum - customer (see the FS::cust_main manpage)
    -
    -
    _date - specified as a UNIX timestamp; see perlfunc/``time''. Also see -the Time::Local manpage and the Date::Parse manpage for conversion functions.
    -
    -
    charged - amount of this invoice
    -
    -
    printed - how many times this invoice has been printed automatically -(see collect in the FS::cust_main manpage).
    -
    -
    closed - books closed flag, empty or `Y'
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new invoice. To add the invoice to the database, see insert. -Invoices are normally created by calling the bill method of a customer object -(see the FS::cust_main manpage). -

    -
    insert
    -
    -Adds this invoice to the database (``Posts'' the invoice). If there is an error, -returns the error, otherwise returns false. -

    -
    delete
    -
    -Currently unimplemented. I don't remove invoices because there would then be -no record you ever posted this invoice (which is bad, no?) -

    -
    replace OLD_RECORD
    -
    -Replaces the OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. -

    Only printed may be changed. printed is normally updated by calling the -collect method of a customer object (see the FS::cust_main manpage).

    -

    -
    check
    -
    -Checks all fields to make sure this is a valid invoice. If there is an error, -returns the error, otherwise returns false. Called by the insert and replace -methods. -

    -
    previous
    -
    -Returns a list consisting of the total previous balance for this customer, -followed by the previous outstanding invoices (as FS::cust_bill objects also). -

    -
    cust_bill_pkg
    -
    -Returns the line items (see the FS::cust_bill_pkg manpage) for this invoice. -

    -
    cust_credit
    -
    -Depreciated. See the cust_credited method. -
    - #Returns a list consisting of the total previous credited (see
    - #L<FS::cust_credit>) and unapplied for this customer, followed by the previous
    - #outstanding credits (FS::cust_credit objects).
    -

    -
    cust_pay
    -
    -Depreciated. See the cust_bill_pay method. -

    #Returns all payments (see the FS::cust_pay manpage) for this invoice.

    -

    -
    cust_bill_pay
    -
    -Returns all payment applications (see the FS::cust_bill_pay manpage) for this invoice. -

    -
    cust_credited
    -
    -Returns all applied credits (see the FS::cust_credit_bill manpage) for this invoice. -

    -
    tax
    -
    -Returns the tax amount (see the FS::cust_bill_pkg manpage) for this invoice. -

    -
    owed
    -
    -Returns the amount owed (still outstanding) on this invoice, which is charged -minus all payment applications (see the FS::cust_bill_pay manpage) and credit -applications (see the FS::cust_credit_bill manpage). -

    -
    print_text [TIME];
    -
    -Returns an text invoice, as a list of lines. -

    TIME an optional value used to control the printing of overdue messages. The -default is now. It isn't the date of the invoice; that's the `_date' field. -It is specified as a UNIX timestamp; see perlfunc/``time''. Also see -the Time::Local manpage and the Date::Parse manpage for conversion functions.

    -

    -

    -


    -

    VERSION

    -

    $Id: cust_bill.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    The delete method.

    -

    print_text formatting (and some logic :/) is in source, but needs to be -slurped in from a file. Also number of lines ($=).

    -

    missing print_ps for a nice postscript copy (maybe HylaFAX-cover-page-style -or something similar so the look can be completely customized?)

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, the FS::cust_main manpage, the FS::cust_bill_pay manpage, FS:;cust_pay, -the FS::cust_bill_pkg manpage, the FS::cust_bill_credit manpage, schema.html from the base -documentation.

    - - - - diff --git a/httemplate/docs/man/FS/cust_bill_pkg.html b/httemplate/docs/man/FS/cust_bill_pkg.html deleted file mode 100644 index 0557b4aee..000000000 --- a/httemplate/docs/man/FS/cust_bill_pkg.html +++ /dev/null @@ -1,112 +0,0 @@ - - -FS::cust_bill_pkg - Object methods for cust_bill_pkg records - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::cust_bill_pkg - Object methods for cust_bill_pkg records

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::cust_bill_pkg;
    -
    -  $record = new FS::cust_bill_pkg \%hash;
    -  $record = new FS::cust_bill_pkg { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -

    -


    -

    DESCRIPTION

    -

    An FS::cust_bill_pkg object represents an invoice line item. -FS::cust_bill_pkg inherits from FS::Record. The following fields are currently -supported:

    -
    -
    invnum - invoice (see the FS::cust_bill manpage)
    -
    -
    pkgnum - package (see the FS::cust_pkg manpage) or 0 for the special virtual sales tax package
    -
    -
    setup - setup fee
    -
    -
    recur - recurring fee
    -
    -
    sdate - starting date of recurring fee
    -
    -
    edate - ending date of recurring fee
    -
    -
    -

    sdate and edate are specified as UNIX timestamps; see perlfunc/``time''. Also -see the Time::Local manpage and the Date::Parse manpage for conversion functions.

    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new line item. To add the line item to the database, see -insert. Line items are normally created by calling the bill method of a -customer object (see the FS::cust_main manpage). -

    -
    insert
    -
    -Adds this line item to the database. If there is an error, returns the error, -otherwise returns false. -

    -
    delete
    -
    -Currently unimplemented. I don't remove line items because there would then be -no record the items ever existed (which is bad, no?) -

    -
    replace OLD_RECORD
    -
    -Currently unimplemented. This would be even more of an accounting nightmare -than deleteing the items. Just don't do it. -

    -
    check
    -
    -Checks all fields to make sure this is a valid line item. If there is an -error, returns the error, otherwise returns false. Called by the insert -method. -

    -

    -


    -

    VERSION

    -

    $Id: cust_bill_pkg.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, the FS::cust_bill manpage, the FS::cust_pkg manpage, the FS::cust_main manpage, schema.html -from the base documentation.

    - - - - diff --git a/httemplate/docs/man/FS/cust_credit.html b/httemplate/docs/man/FS/cust_credit.html deleted file mode 100644 index f30241371..000000000 --- a/httemplate/docs/man/FS/cust_credit.html +++ /dev/null @@ -1,132 +0,0 @@ - - -FS::cust_credit - Object methods for cust_credit records - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::cust_credit - Object methods for cust_credit records

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::cust_credit;
    -
    -  $record = new FS::cust_credit \%hash;
    -  $record = new FS::cust_credit { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -

    -


    -

    DESCRIPTION

    -

    An FS::cust_credit object represents a credit; the equivalent of a negative -cust_bill record (see the FS::cust_bill manpage). FS::cust_credit inherits from -FS::Record. The following fields are currently supported:

    -
    -
    crednum - primary key (assigned automatically for new credits)
    -
    -
    custnum - customer (see the FS::cust_main manpage)
    -
    -
    amount - amount of the credit
    -
    -
    _date - specified as a UNIX timestamp; see perlfunc/``time''. Also see -the Time::Local manpage and the Date::Parse manpage for conversion functions.
    -
    -
    otaker - order taker (assigned automatically, see the FS::UID manpage)
    -
    -
    reason - text
    -
    -
    closed - books closed flag, empty or `Y'
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new credit. To add the credit to the database, see insert. -

    -
    insert
    -
    -Adds this credit to the database (``Posts'' the credit). If there is an error, -returns the error, otherwise returns false. -

    -
    delete
    -
    -Currently unimplemented. -

    -
    replace OLD_RECORD
    -
    -Credits may not be modified; there would then be no record the credit was ever -posted. -

    -
    check
    -
    -Checks all fields to make sure this is a valid credit. If there is an error, -returns the error, otherwise returns false. Called by the insert and replace -methods. -

    -
    cust_refund
    -
    -Depreciated. See the cust_credit_refund method. -

    #Returns all refunds (see the FS::cust_refund manpage) for this credit.

    -

    -
    cust_credit_refund
    -
    -Returns all refund applications (see the FS::cust_credit_refund manpage) for this credit. -

    -
    cust_credit_bill
    -
    -Returns all application to invoices (see the FS::cust_credit_bill manpage) for this -credit. -

    -
    credited
    -
    -Returns the amount of this credit that is still outstanding; which is -amount minus all refund applications (see the FS::cust_credit_refund manpage) and -applications to invoices (see the FS::cust_credit_bill manpage). -

    -

    -


    -

    VERSION

    -

    $Id: cust_credit.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    The delete method.

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, the FS::cust_credit_refund manpage, the FS::cust_refund manpage, -the FS::cust_credit_bill manpage the FS::cust_bill manpage, schema.html from the base -documentation.

    - - - - diff --git a/httemplate/docs/man/FS/cust_main.html b/httemplate/docs/man/FS/cust_main.html deleted file mode 100644 index 1fb339124..000000000 --- a/httemplate/docs/man/FS/cust_main.html +++ /dev/null @@ -1,419 +0,0 @@ - - -FS::cust_main - Object methods for cust_main records - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::cust_main - Object methods for cust_main records

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::cust_main;
    -
    -  $record = new FS::cust_main \%hash;
    -  $record = new FS::cust_main { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -
    -  @cust_pkg = $record->all_pkgs;
    -
    -  @cust_pkg = $record->ncancelled_pkgs;
    -
    -  @cust_pkg = $record->suspended_pkgs;
    -
    -  $error = $record->bill;
    -  $error = $record->bill %options;
    -  $error = $record->bill 'time' => $time;
    -
    -  $error = $record->collect;
    -  $error = $record->collect %options;
    -  $error = $record->collect 'invoice_time'   => $time,
    -                            'batch_card'     => 'yes',
    -                            'report_badcard' => 'yes',
    -                          ;
    -

    -


    -

    DESCRIPTION

    -

    An FS::cust_main object represents a customer. FS::cust_main inherits from -FS::Record. The following fields are currently supported:

    -
    -
    custnum - primary key (assigned automatically for new customers)
    -
    -
    agentnum - agent (see the FS::agent manpage)
    -
    -
    refnum - referral (see the FS::part_referral manpage)
    -
    -
    first - name
    -
    -
    last - name
    -
    -
    ss - social security number (optional)
    -
    -
    company - (optional)
    -
    -
    address1
    -
    -
    address2 - (optional)
    -
    -
    city
    -
    -
    county - (optional, see the FS::cust_main_county manpage)
    -
    -
    state - (see the FS::cust_main_county manpage)
    -
    -
    zip
    -
    -
    country - (see the FS::cust_main_county manpage)
    -
    -
    daytime - phone (optional)
    -
    -
    night - phone (optional)
    -
    -
    fax - phone (optional)
    -
    -
    ship_first - name
    -
    -
    ship_last - name
    -
    -
    ship_company - (optional)
    -
    -
    ship_address1
    -
    -
    ship_address2 - (optional)
    -
    -
    ship_city
    -
    -
    ship_county - (optional, see the FS::cust_main_county manpage)
    -
    -
    ship_state - (see the FS::cust_main_county manpage)
    -
    -
    ship_zip
    -
    -
    ship_country - (see the FS::cust_main_county manpage)
    -
    -
    ship_daytime - phone (optional)
    -
    -
    ship_night - phone (optional)
    -
    -
    ship_fax - phone (optional)
    -
    -
    payby - `CARD' (credit cards), `BILL' (billing), `COMP' (free), or `PREPAY' (special billing type: applies a credit - see the FS::prepay_credit manpage and sets billing type to BILL)
    -
    -
    payinfo - card number, P.O., comp issuer (4-8 lowercase alphanumerics; think username) or prepayment identifier (see the FS::prepay_credit manpage)
    -
    -
    paydate - expiration date, mm/yyyy, m/yyyy, mm/yy or m/yy
    -
    -
    payname - name on card or billing name
    -
    -
    tax - tax exempt, empty or `Y'
    -
    -
    otaker - order taker (assigned automatically, see the FS::UID manpage)
    -
    -
    comments - comments (optional)
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new customer. To add the customer to the database, see insert. -

    Note that this stores the hash reference, not a distinct copy of the hash it -points to. You can ask the object for a copy with the hash method.

    -

    -
    insert [ CUST_PKG_HASHREF [ , INVOICING_LIST_ARYREF ] ]
    -
    -Adds this customer to the database. If there is an error, returns the error, -otherwise returns false. -

    CUST_PKG_HASHREF: If you pass a Tie::RefHash data structure to the insert -method containing FS::cust_pkg and FS::svc_tablename objects, all records -are inserted atomicly, or the transaction is rolled back. Passing an empty -hash reference is equivalent to not supplying this parameter. There should be -a better explanation of this, but until then, here's an example:

    -
    -  use Tie::RefHash;
    -  tie %hash, 'Tie::RefHash'; #this part is important
    -  %hash = (
    -    $cust_pkg => [ $svc_acct ],
    -    ...
    -  );
    -  $cust_main->insert( \%hash );
    -

    INVOICING_LIST_ARYREF: If you pass an arrarref to the insert method, it will -be set as the invoicing list (see invoicing_list). Errors return as -expected and rollback the entire transaction; it is not necessary to call -check_invoicing_list first. The invoicing_list is set after the records in the -CUST_PKG_HASHREF above are inserted, so it is now possible to set an -invoicing_list destination to the newly-created svc_acct. Here's an example:

    -
    -  $cust_main->insert( {}, [ $email, 'POST' ] );
    -

    -
    delete NEW_CUSTNUM
    -
    -This deletes the customer. If there is an error, returns the error, otherwise -returns false. -

    This will completely remove all traces of the customer record. This is not -what you want when a customer cancels service; for that, cancel all of the -customer's packages (see cancel in the FS::cust_pkg manpage).

    -

    If the customer has any uncancelled packages, you need to pass a new (valid) -customer number for those packages to be transferred to. Cancelled packages -will be deleted. Did I mention that this is NOT what you want when a customer -cancels service and that you really should be looking see cancel in the FS::cust_pkg manpage?

    -

    You can't delete a customer with invoices (see the FS::cust_bill manpage), -or credits (see the FS::cust_credit manpage) or payments (see the FS::cust_pay manpage).

    -

    -
    replace OLD_RECORD [ INVOICING_LIST_ARYREF ]
    -
    -Replaces the OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. -

    INVOICING_LIST_ARYREF: If you pass an arrarref to the insert method, it will -be set as the invoicing list (see invoicing_list). Errors return as -expected and rollback the entire transaction; it is not necessary to call -check_invoicing_list first. Here's an example:

    -
    -  $new_cust_main->replace( $old_cust_main, [ $email, 'POST' ] );
    -

    -
    check
    -
    -Checks all fields to make sure this is a valid customer record. If there is -an error, returns the error, otherwise returns false. Called by the insert -and repalce methods. -

    -
    all_pkgs
    -
    -Returns all packages (see the FS::cust_pkg manpage) for this customer. -

    -
    ncancelled_pkgs
    -
    -Returns all non-cancelled packages (see the FS::cust_pkg manpage) for this customer. -

    -
    suspended_pkgs
    -
    -Returns all suspended packages (see the FS::cust_pkg manpage) for this customer. -

    -
    unflagged_suspended_pkgs
    -
    -Returns all unflagged suspended packages (see the FS::cust_pkg manpage) for this -customer (thouse packages without the `manual_flag' set). -

    -
    unsuspended_pkgs
    -
    -Returns all unsuspended (and uncancelled) packages (see the FS::cust_pkg manpage) for -this customer. -

    -
    unsuspend
    -
    -Unsuspends all unflagged suspended packages (see unflagged_suspended_pkgs -and the FS::cust_pkg manpage) for this customer. Always returns a list: an empty list -on success or a list of errors. -

    -
    suspend
    -
    -Suspends all unsuspended packages (see the FS::cust_pkg manpage) for this customer. -Always returns a list: an empty list on success or a list of errors. -

    -
    cancel
    -
    -Cancels all uncancelled packages (see the FS::cust_pkg manpage) for this customer. -Always returns a list: an empty list on success or a list of errors. -

    -
    bill OPTIONS
    -
    -Generates invoices (see the FS::cust_bill manpage) for this customer. Usually used in -conjunction with the collect method. -

    Options are passed as name-value pairs.

    -

    The only currently available option is `time', which bills the customer as if -it were that time. It is specified as a UNIX timestamp; see -perlfunc/``time''). Also see the Time::Local manpage and the Date::Parse manpage for conversion -functions. For example:

    -
    - use Date::Parse;
    - ...
    - $cust_main->bill( 'time' => str2time('April 20th, 2001') );
    -

    If there is an error, returns the error, otherwise returns false.

    -

    -
    collect OPTIONS
    -
    -(Attempt to) collect money for this customer's outstanding invoices (see -the FS::cust_bill manpage). Usually used after the bill method. -

    Depending on the value of `payby', this may print an invoice (`BILL'), charge -a credit card (`CARD'), or just add any necessary (pseudo-)payment (`COMP').

    -

    If there is an error, returns the error, otherwise returns false.

    -

    Options are passed as name-value pairs.

    -

    Currently available options are:

    -

    invoice_time - Use this time when deciding when to print invoices and -late notices on those invoices. The default is now. It is specified as a UNIX timestamp; see perlfunc/``time''). Also see the Time::Local manpage and the Date::Parse manpage -for conversion functions.

    -

    batch_card - Set this true to batch cards (see the FS::cust_pay_batch manpage). By -default, cards are processed immediately, which will generate an error if -CyberCash is not installed.

    -

    report_badcard - Set this true if you want bad card transactions to -return an error. By default, they don't.

    -

    force_print - force printing even if invoice has been printed more than once -every 30 days, and don't increment the `printed' field.

    -

    -
    total_owed
    -
    -Returns the total owed for this customer on all invoices -(see owed in the FS::cust_bill manpage). -

    -
    total_owed_date TIME
    -
    -Returns the total owed for this customer on all invoices with date earlier than -TIME. TIME is specified as a UNIX timestamp; see perlfunc/``time''). Also -see the Time::Local manpage and the Date::Parse manpage for conversion functions. -

    -
    apply_credits
    -
    -Applies (see the FS::cust_credit_bill manpage) unapplied credits (see the FS::cust_credit manpage) -to outstanding invoice balances in chronological order and returns the value -of any remaining unapplied credits available for refund -(see the FS::cust_refund manpage). -

    -
    apply_payments
    -
    -Applies (see the FS::cust_bill_pay manpage) unapplied payments (see the FS::cust_pay manpage) -to outstanding invoice balances in chronological order. -
    - #and returns the value of any remaining unapplied payments.
    -

    -
    total_credited
    -
    -Returns the total outstanding credit (see the FS::cust_credit manpage) for this -customer. See credited in the FS::cust_credit manpage. -

    -
    total_unapplied_payments
    -
    -Returns the total unapplied payments (see the FS::cust_pay manpage) for this customer. -See unapplied in the FS::cust_pay manpage. -

    -
    balance
    -
    -Returns the balance for this customer (total_owed minus total_credited -minus total_unapplied_payments). -

    -
    balance_date TIME
    -
    -Returns the balance for this customer, only considering invoices with date -earlier than TIME (total_owed_date minus total_credited minus -total_unapplied_payments). TIME is specified as a UNIX timestamp; see -perlfunc/``time''). Also see the Time::Local manpage and the Date::Parse manpage for conversion -functions. -

    -
    invoicing_list [ ARRAYREF ]
    -
    -If an arguement is given, sets these email addresses as invoice recipients -(see the FS::cust_main_invoice manpage). Errors are not fatal and are not reported -(except as warnings), so use check_invoicing_list first. -

    Returns a list of email addresses (with svcnum entries expanded).

    -

    Note: You can clear the invoicing list by passing an empty ARRAYREF. You can -check it without disturbing anything by passing nothing.

    -

    This interface may change in the future.

    -

    -
    check_invoicing_list ARRAYREF
    -
    -Checks these arguements as valid input for the invoicing_list method. If there -is an error, returns the error, otherwise returns false. -

    -
    default_invoicing_list
    -
    -Sets the invoicing list to all accounts associated with this customer. -

    -
    invoicing_list_addpost
    -
    -Adds postal invoicing to this customer. If this customer is already configured -to receive postal invoices, does nothing. -

    -
    referral_cust_main [ DEPTH [ EXCLUDE_HASHREF ] ]
    -
    -Returns an array of customers referred by this customer (referral_custnum set -to this custnum). If DEPTH is given, recurses up to the given depth, returning -customers referred by customers referred by this customer and so on, inclusive. -The default behavior is DEPTH 1 (no recursion). -

    -
    referral_cust_pkg [ DEPTH ]
    -
    -Like referral_cust_main, except returns a flat list of all unsuspended packages -for each customer. The number of items in this list may be useful for -comission calculations (perhaps after a grep). -

    -
    credit AMOUNT, REASON
    -
    -Applies a credit to this customer. If there is an error, returns the error, -otherwise returns false. -

    -
    charge AMOUNT PKG COMMENT
    -
    -Creates a one-time charge for this customer. If there is an error, returns -the error, otherwise returns false. -

    -

    -


    -

    SUBROUTINES

    -
    -
    check_and_rebuild_fuzzyfiles
    -
    -
    rebuild_fuzzyfiles
    -
    -
    all_last
    -
    -
    all_company
    -
    -
    append_fuzzyfiles LASTNAME COMPANY
    -
    -
    -

    -


    -

    VERSION

    -

    $Id: cust_main.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    The delete method.

    -

    The delete method should possibly take an FS::cust_main object reference -instead of a scalar customer number.

    -

    Bill and collect options should probably be passed as references instead of a -list.

    -

    CyberCash v2 forces us to define some variables in package main.

    -

    There should probably be a configuration file with a list of allowed credit -card types.

    -

    No multiple currency support (probably a larger project than just this module).

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, the FS::cust_pkg manpage, the FS::cust_bill manpage, the FS::cust_credit manpage -the FS::cust_pay_batch manpage, the FS::agent manpage, the FS::part_referral manpage, -the FS::cust_main_county manpage, the FS::cust_main_invoice manpage, -the FS::UID manpage, schema.html from the base documentation.

    - - - - diff --git a/httemplate/docs/man/FS/cust_main_county.html b/httemplate/docs/man/FS/cust_main_county.html deleted file mode 100644 index 2c5dcd3fc..000000000 --- a/httemplate/docs/man/FS/cust_main_county.html +++ /dev/null @@ -1,106 +0,0 @@ - - -FS::cust_main_county - Object methods for cust_main_county objects - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::cust_main_county - Object methods for cust_main_county objects

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::cust_main_county;
    -
    -  $record = new FS::cust_main_county \%hash;
    -  $record = new FS::cust_main_county { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -

    -


    -

    DESCRIPTION

    -

    An FS::cust_main_county object represents a tax rate, defined by locale. -FS::cust_main_county inherits from FS::Record. The following fields are -currently supported:

    -
    -
    taxnum - primary key (assigned automatically for new tax rates)
    -
    -
    state
    -
    -
    county
    -
    -
    country
    -
    -
    tax - percentage
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new tax rate. To add the tax rate to the database, see insert. -

    -
    insert
    -
    -Adds this tax rate to the database. If there is an error, returns the error, -otherwise returns false. -

    -
    delete
    -
    -Deletes this tax rate from the database. If there is an error, returns the -error, otherwise returns false. -

    -
    replace OLD_RECORD
    -
    -Replaces the OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. -

    -
    check
    -
    -Checks all fields to make sure this is a valid tax rate. If there is an error, -returns the error, otherwise returns false. Called by the insert and replace -methods. -

    -

    -


    -

    VERSION

    -

    $Id: cust_main_county.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, the FS::cust_main manpage, the FS::cust_bill manpage, schema.html from the base -documentation.

    - - - - diff --git a/httemplate/docs/man/FS/cust_main_invoice.html b/httemplate/docs/man/FS/cust_main_invoice.html deleted file mode 100644 index a7929a943..000000000 --- a/httemplate/docs/man/FS/cust_main_invoice.html +++ /dev/null @@ -1,114 +0,0 @@ - - -FS::cust_main_invoice - Object methods for cust_main_invoice records - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::cust_main_invoice - Object methods for cust_main_invoice records

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::cust_main_invoice;
    -
    -  $record = new FS::cust_main_invoice \%hash;
    -  $record = new FS::cust_main_invoice { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -
    -  $email_address = $record->address;
    -

    -


    -

    DESCRIPTION

    -

    An FS::cust_main_invoice object represents an invoice destination. FS::cust_main_invoice inherits from -FS::Record. The following fields are currently supported:

    -
    -
    destnum - primary key
    -
    -
    custnum - customer (see the FS::cust_main manpage)
    -
    -
    dest - Invoice destination: If numeric, a svcnum (see the FS::svc_acct manpage), if string, a literal email address, or `POST' to enable mailing (the default if no cust_main_invoice records exist)
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new invoice destination. To add the invoice destination to the database, see insert. -

    Note that this stores the hash reference, not a distinct copy of the hash it -points to. You can ask the object for a copy with the hash method.

    -

    -
    insert
    -
    -Adds this record to the database. If there is an error, returns the error, -otherwise returns false. -

    -
    delete
    -
    -Delete this record from the database. -

    -
    replace OLD_RECORD
    -
    -Replaces the OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. -

    -
    check
    -
    -Checks all fields to make sure this is a valid invoice destination. If there is -an error, returns the error, otherwise returns false. Called by the insert -and repalce methods. -

    -
    checkdest
    -
    -Checks the dest field only. If it finds that the account ends in the -same domain configured as the domain configuration file, it will change the -invoice destination from an email address to a service number (see -the FS::svc_acct manpage). -

    -
    address
    -
    -Returns the literal email address for this record (or `POST'). -

    -

    -


    -

    VERSION

    -

    $Id: cust_main_invoice.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, the FS::cust_main manpage

    - - - - diff --git a/httemplate/docs/man/FS/cust_pay.html b/httemplate/docs/man/FS/cust_pay.html deleted file mode 100644 index a8c481fc0..000000000 --- a/httemplate/docs/man/FS/cust_pay.html +++ /dev/null @@ -1,123 +0,0 @@ - - -FS::cust_pay - Object methods for cust_pay objects - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::cust_pay - Object methods for cust_pay objects

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::cust_pay;
    -
    -  $record = new FS::cust_pay \%hash;
    -  $record = new FS::cust_pay { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -

    -


    -

    DESCRIPTION

    -

    An FS::cust_pay object represents a payment; the transfer of money from a -customer. FS::cust_pay inherits from FS::Record. The following fields are -currently supported:

    -
    -
    paynum - primary key (assigned automatically for new payments)
    -
    -
    custnum - customer (see the FS::cust_main manpage)
    -
    -
    paid - Amount of this payment
    -
    -
    _date - specified as a UNIX timestamp; see perlfunc/``time''. Also see -the Time::Local manpage and the Date::Parse manpage for conversion functions.
    -
    -
    payby - `CARD' (credit cards), `BILL' (billing), or `COMP' (free)
    -
    -
    payinfo - card number, check #, or comp issuer (4-8 lowercase alphanumerics; think username), respectively
    -
    -
    paybatch - text field for tracking card processing
    -
    -
    closed - books closed flag, empty or `Y'
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new payment. To add the payment to the databse, see insert. -

    -
    insert
    -
    -Adds this payment to the database. -

    For backwards-compatibility and convenience, if the additional field invnum -is defined, an FS::cust_bill_pay record for the full amount of the payment -will be created. In this case, custnum is optional.

    -

    -
    delete
    -
    -Currently unimplemented (accounting reasons). -

    -
    replace OLD_RECORD
    -
    -Currently unimplemented (accounting reasons). -

    -
    check
    -
    -Checks all fields to make sure this is a valid payment. If there is an error, -returns the error, otherwise returns false. Called by the insert method. -

    -
    cust_bill_pay
    -
    -Returns all applications to invoices (see the FS::cust_bill_pay manpage) for this -payment. -

    -
    unapplied
    -
    -Returns the amount of this payment that is still unapplied; which is -paid minus all payment applications (see the FS::cust_bill_pay manpage). -

    -

    -


    -

    VERSION

    -

    $Id: cust_pay.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    Delete and replace methods.

    -

    -


    -

    SEE ALSO

    -

    the FS::cust_bill_pay manpage, the FS::cust_bill manpage, the FS::Record manpage, schema.html from the -base documentation.

    - - - - diff --git a/httemplate/docs/man/FS/cust_pay_batch.html b/httemplate/docs/man/FS/cust_pay_batch.html deleted file mode 100644 index 052ccac39..000000000 --- a/httemplate/docs/man/FS/cust_pay_batch.html +++ /dev/null @@ -1,132 +0,0 @@ - - -FS::cust_pay_batch - Object methods for batch cards - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::cust_pay_batch - Object methods for batch cards

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::cust_pay_batch;
    -
    -  $record = new FS::cust_pay_batch \%hash;
    -  $record = new FS::cust_pay_batch { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -

    -


    -

    DESCRIPTION

    -

    An FS::cust_pay_batch object represents a credit card transaction ready to be -batched (sent to a processor). FS::cust_pay_batch inherits from FS::Record. -Typically called by the collect method of an FS::cust_main object. The -following fields are currently supported:

    -
    -
    paybatchnum - primary key (automatically assigned)
    -
    -
    cardnum
    -
    -
    exp - card expiration
    -
    -
    amount
    -
    -
    invnum - invoice
    -
    -
    custnum - customer
    -
    -
    payname - name on card
    -
    -
    first - name
    -
    -
    last - name
    -
    -
    address1
    -
    -
    address2
    -
    -
    city
    -
    -
    state
    -
    -
    zip
    -
    -
    country
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new record. To add the record to the database, see insert. -

    Note that this stores the hash reference, not a distinct copy of the hash it -points to. You can ask the object for a copy with the hash method.

    -

    -
    insert
    -
    -Adds this record to the database. If there is an error, returns the error, -otherwise returns false. -

    -
    delete
    -
    -Delete this record from the database. If there is an error, returns the error, -otherwise returns false. -

    -
    replace OLD_RECORD
    -
    -#inactive -# -#Replaces the OLD_RECORD with this one in the database. If there is an error, -#returns the error, otherwise returns false. -

    -
    check
    -
    -Checks all fields to make sure this is a valid transaction. If there is -an error, returns the error, otherwise returns false. Called by the insert -and repalce methods. -

    -

    -


    -

    VERSION

    -

    $Id: cust_pay_batch.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    There should probably be a configuration file with a list of allowed credit -card types.

    -

    -


    -

    SEE ALSO

    -

    the FS::cust_main manpage, the FS::Record manpage

    - - - - diff --git a/httemplate/docs/man/FS/cust_pkg.html b/httemplate/docs/man/FS/cust_pkg.html deleted file mode 100644 index 76cb9e786..000000000 --- a/httemplate/docs/man/FS/cust_pkg.html +++ /dev/null @@ -1,217 +0,0 @@ - - -FS::cust_pkg - Object methods for cust_pkg objects - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::cust_pkg - Object methods for cust_pkg objects

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::cust_pkg;
    -
    -  $record = new FS::cust_pkg \%hash;
    -  $record = new FS::cust_pkg { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -
    -  $error = $record->cancel;
    -
    -  $error = $record->suspend;
    -
    -  $error = $record->unsuspend;
    -
    -  $part_pkg = $record->part_pkg;
    -
    -  @labels = $record->labels;
    -
    -  $seconds = $record->seconds_since($timestamp);
    -
    -  $error = FS::cust_pkg::order( $custnum, \@pkgparts );
    -  $error = FS::cust_pkg::order( $custnum, \@pkgparts, \@remove_pkgnums ] );
    -

    -


    -

    DESCRIPTION

    -

    An FS::cust_pkg object represents a customer billing item. FS::cust_pkg -inherits from FS::Record. The following fields are currently supported:

    -
    -
    pkgnum - primary key (assigned automatically for new billing items)
    -
    -
    custnum - Customer (see the FS::cust_main manpage)
    -
    -
    pkgpart - Billing item definition (see the FS::part_pkg manpage)
    -
    -
    setup - date
    -
    -
    bill - date
    -
    -
    susp - date
    -
    -
    expire - date
    -
    -
    cancel - date
    -
    -
    otaker - order taker (assigned automatically if null, see the FS::UID manpage)
    -
    -
    manual_flag - If this field is set to 1, disables the automatic -unsuspension of this package when using the unsuspendauto config file.
    -
    -
    -

    Note: setup, bill, susp, expire and cancel are specified as UNIX timestamps; -see perlfunc/``time''. Also see the Time::Local manpage and the Date::Parse manpage for -conversion functions.

    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Create a new billing item. To add the item to the database, see insert. -

    -
    insert
    -
    -Adds this billing item to the database (``Orders'' the item). If there is an -error, returns the error, otherwise returns false. -

    -
    delete
    -
    -This method now works but you probably shouldn't use it. -

    You don't want to delete billing items, because there would then be no record -the customer ever purchased the item. Instead, see the cancel method.

    -

    -
    replace OLD_RECORD
    -
    -Replaces the OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. -

    Currently, custnum, setup, bill, susp, expire, and cancel may be changed.

    -

    Changing pkgpart may have disasterous effects. See the order subroutine.

    -

    setup and bill are normally updated by calling the bill method of a customer -object (see the FS::cust_main manpage).

    -

    suspend is normally updated by the suspend and unsuspend methods.

    -

    cancel is normally updated by the cancel method (and also the order subroutine -in some cases).

    -

    -
    check
    -
    -Checks all fields to make sure this is a valid billing item. If there is an -error, returns the error, otherwise returns false. Called by the insert and -replace methods. -

    -
    cancel
    -
    -Cancels and removes all services (see the FS::cust_svc manpage and the FS::part_svc manpage) -in this package, then cancels the package itself (sets the cancel field to -now). -

    If there is an error, returns the error, otherwise returns false.

    -

    -
    suspend
    -
    -Suspends all services (see the FS::cust_svc manpage and the FS::part_svc manpage) in this -package, then suspends the package itself (sets the susp field to now). -

    If there is an error, returns the error, otherwise returns false.

    -

    -
    unsuspend
    -
    -Unsuspends all services (see the FS::cust_svc manpage and the FS::part_svc manpage) in this -package, then unsuspends the package itself (clears the susp field). -

    If there is an error, returns the error, otherwise returns false.

    -

    -
    part_pkg
    -
    -Returns the definition for this billing item, as an FS::part_pkg object (see -the FS::part_pkg manpage). -

    -
    cust_svc
    -
    -Returns the services for this package, as FS::cust_svc objects (see -the FS::cust_svc manpage) -

    -
    labels
    -
    -Returns a list of lists, calling the label method for all services -(see the FS::cust_svc manpage) of this billing item. -

    -
    cust_main
    -
    -Returns the parent customer object (see the FS::cust_main manpage). -

    -
    seconds_since TIMESTAMP
    -
    -Returns the number of seconds all accounts (see the FS::svc_acct manpage) in this -package have been online since TIMESTAMP. -

    TIMESTAMP is specified as a UNIX timestamp; see perlfunc/``time''. Also see -the Time::Local manpage and the Date::Parse manpage for conversion functions.

    -

    -

    -


    -

    SUBROUTINES

    -
    -
    order CUSTNUM, PKGPARTS_ARYREF, [ REMOVE_PKGNUMS_ARYREF [ RETURN_CUST_PKG_ARRAYREF ] ]
    -
    -CUSTNUM is a customer (see the FS::cust_main manpage) -

    PKGPARTS is a list of pkgparts specifying the the billing item definitions (see -the FS::part_pkg manpage) to order for this customer. Duplicates are of course -permitted.

    -

    REMOVE_PKGNUMS is an optional list of pkgnums specifying the billing items to -remove for this customer. The services (see the FS::cust_svc manpage) are moved to the -new billing items. An error is returned if this is not possible (see -the FS::pkg_svc manpage). An empty arrayref is equivalent to not specifying this -parameter.

    -

    RETURN_CUST_PKG_ARRAYREF, if specified, will be filled in with the -newly-created cust_pkg objects.

    -

    -

    -


    -

    VERSION

    -

    $Id: cust_pkg.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    sub order is not OO. Perhaps it should be moved to FS::cust_main and made so?

    -

    In sub order, the @pkgparts array (passed by reference) is clobbered.

    -

    Also in sub order, no money is adjusted. Once FS::part_pkg defines a standard -method to pass dates to the recur_prog expression, it should do so.

    -

    FS::svc_acct, FS::svc_acct_sm, and FS::svc_domain are loaded via 'use' at -compile time, rather than via 'require' in sub { setup, suspend, unsuspend, -cancel } because they use %FS::UID::callback to load configuration values. -Probably need a subroutine which decides what to do based on whether or not -we've fetched the user yet, rather than a hash. See FS::UID and the TODO.

    -

    Now that things are transactional should the check in the insert method be -moved to check ?

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, the FS::cust_main manpage, the FS::part_pkg manpage, the FS::cust_svc manpage, -the FS::pkg_svc manpage, schema.html from the base documentation

    - - - - diff --git a/httemplate/docs/man/FS/cust_refund.html b/httemplate/docs/man/FS/cust_refund.html deleted file mode 100644 index 93bb07b2d..000000000 --- a/httemplate/docs/man/FS/cust_refund.html +++ /dev/null @@ -1,114 +0,0 @@ - - -FS::cust_refund - Object method for cust_refund objects - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::cust_refund - Object method for cust_refund objects

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::cust_refund;
    -
    -  $record = new FS::cust_refund \%hash;
    -  $record = new FS::cust_refund { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -

    -


    -

    DESCRIPTION

    -

    An FS::cust_refund represents a refund: the transfer of money to a customer; -equivalent to a negative payment (see the FS::cust_pay manpage). FS::cust_refund -inherits from FS::Record. The following fields are currently supported:

    -
    -
    refundnum - primary key (assigned automatically for new refunds)
    -
    -
    custnum - customer (see the FS::cust_main manpage)
    -
    -
    refund - Amount of the refund
    -
    -
    _date - specified as a UNIX timestamp; see perlfunc/``time''. Also see -the Time::Local manpage and the Date::Parse manpage for conversion functions.
    -
    -
    payby - `CARD' (credit cards), `BILL' (billing), or `COMP' (free)
    -
    -
    payinfo - card number, P.O.#, or comp issuer (4-8 lowercase alphanumerics; think username)
    -
    -
    paybatch - text field for tracking card processing
    -
    -
    otaker - order taker (assigned automatically, see the FS::UID manpage)
    -
    -
    closed - books closed flag, empty or `Y'
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new refund. To add the refund to the database, see insert. -

    -
    insert
    -
    -Adds this refund to the database. -

    For backwards-compatibility and convenience, if the additional field crednum is -defined, an FS::cust_credit_refund record for the full amount of the refund -will be created. In this case, custnum is optional.

    -

    -
    delete
    -
    -Currently unimplemented (accounting reasons). -

    -
    replace OLD_RECORD
    -
    -Currently unimplemented (accounting reasons). -

    -
    check
    -
    -Checks all fields to make sure this is a valid refund. If there is an error, -returns the error, otherwise returns false. Called by the insert method. -

    -

    -


    -

    VERSION

    -

    $Id: cust_refund.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    Delete and replace methods.

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, the FS::cust_credit manpage, schema.html from the base documentation.

    - - - - diff --git a/httemplate/docs/man/FS/cust_svc.html b/httemplate/docs/man/FS/cust_svc.html deleted file mode 100644 index 55c90e28e..000000000 --- a/httemplate/docs/man/FS/cust_svc.html +++ /dev/null @@ -1,139 +0,0 @@ - - -FS::cust_svc - Object method for cust_svc objects - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::cust_svc - Object method for cust_svc objects

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::cust_svc;
    -
    -  $record = new FS::cust_svc \%hash
    -  $record = new FS::cust_svc { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -
    -  ($label, $value) = $record->label;
    -

    -


    -

    DESCRIPTION

    -

    An FS::cust_svc represents a service. FS::cust_svc inherits from FS::Record. -The following fields are currently supported:

    -
    -
    svcnum - primary key (assigned automatically for new services)
    -
    -
    pkgnum - Package (see the FS::cust_pkg manpage)
    -
    -
    svcpart - Service definition (see the FS::part_svc manpage)
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new service. To add the refund to the database, see insert. -Services are normally created by creating FS::svc_ objects (see -the FS::svc_acct manpage, the FS::svc_domain manpage, and the FS::svc_forward manpage, among others). -

    -
    insert
    -
    -Adds this service to the database. If there is an error, returns the error, -otherwise returns false. -

    -
    delete
    -
    -Deletes this service from the database. If there is an error, returns the -error, otherwise returns false. -

    Called by the cancel method of the package (see the FS::cust_pkg manpage).

    -

    -
    replace OLD_RECORD
    -
    -Replaces the OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. -

    -
    check
    -
    -Checks all fields to make sure this is a valid service. If there is an error, -returns the error, otehrwise returns false. Called by the insert and -replace methods. -

    -
    part_svc
    -
    -Returns the definition for this service, as a FS::part_svc object (see -the FS::part_svc manpage). -

    -
    cust_pkg
    -
    -Returns the definition for this service, as a FS::part_svc object (see -the FS::part_svc manpage). -

    -
    label
    -
    -Returns a list consisting of: -- The name of this service (from part_svc) -- A meaningful identifier (username, domain, or mail alias) -- The table name (i.e. svc_domain) for this service -

    -
    svc_x
    -
    -Returns the FS::svc_XXX object for this service (i.e. an FS::svc_acct object or -FS::svc_domain object, etc.) -

    -
    seconds_since TIMESTAMP
    -
    -See seconds_since in the FS::svc_acct manpage. Equivalent to -$cust_svc->svc_x->seconds_since, but more efficient. Meaningless for records -where svcdb is not ``svc_acct''. -

    -

    -


    -

    VERSION

    -

    $Id: cust_svc.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    Behaviour of changing the svcpart of cust_svc records is undefined and should -possibly be prohibited, and pkg_svc records are not checked.

    -

    pkg_svc records are not checked in general (here).

    -

    Deleting this record doesn't check or delete the svc_* record associated -with this record.

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, the FS::cust_pkg manpage, the FS::part_svc manpage, the FS::pkg_svc manpage, -schema.html from the base documentation

    - - - - diff --git a/httemplate/docs/man/FS/domain_record.html b/httemplate/docs/man/FS/domain_record.html deleted file mode 100644 index 0349f7b78..000000000 --- a/httemplate/docs/man/FS/domain_record.html +++ /dev/null @@ -1,112 +0,0 @@ - - -FS::domain_record - Object methods for domain_record records - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::domain_record - Object methods for domain_record records

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::domain_record;
    -
    -  $record = new FS::domain_record \%hash;
    -  $record = new FS::domain_record { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -

    -


    -

    DESCRIPTION

    -

    An FS::domain_record object represents an entry in a DNS zone. -FS::domain_record inherits from FS::Record. The following fields are currently -supported:

    -
    -
    recnum - primary key
    -
    -
    svcnum - Domain (see the FS::svc_domain manpage) of this entry
    -
    -
    reczone - partial (or full) zone for this entry
    -
    -
    recaf - address family for this entry, currently only `IN' is recognized.
    -
    -
    rectype - record type for this entry (A, MX, etc.)
    -
    -
    recdata - data for this entry
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new entry. To add the example to the database, see insert. -

    Note that this stores the hash reference, not a distinct copy of the hash it -points to. You can ask the object for a copy with the hash method.

    -

    -
    insert
    -
    -Adds this record to the database. If there is an error, returns the error, -otherwise returns false. -

    -
    delete
    -
    -Delete this record from the database. -

    -
    replace OLD_RECORD
    -
    -Replaces the OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. -

    -
    check
    -
    -Checks all fields to make sure this is a valid example. If there is -an error, returns the error, otherwise returns false. Called by the insert -and replace methods. -

    -

    -


    -

    VERSION

    -

    $Id: domain_record.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    The data validation doesn't check everything it could. In particular, -there is no protection against bad data that passes the regex, duplicate -SOA records, forgetting the trailing `.', impossible IP addersses, etc. Of -course, it's still better than editing the zone files directly. :)

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, schema.html from the base documentation.

    - - - - diff --git a/httemplate/docs/man/FS/nas.html b/httemplate/docs/man/FS/nas.html deleted file mode 100644 index 5a55964e1..000000000 --- a/httemplate/docs/man/FS/nas.html +++ /dev/null @@ -1,117 +0,0 @@ - - -FS::nas - Object methods for nas records - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::nas - Object methods for nas records

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::nas;
    -
    -  $record = new FS::nas \%hash;
    -  $record = new FS::nas {
    -    'nasnum'  => 1,
    -    'nasip'   => '10.4.20.23',
    -    'nasfqdn' => 'box1.brc.nv.us.example.net',
    -  };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -
    -  $error = $record->heartbeat($timestamp);
    -

    -


    -

    DESCRIPTION

    -

    An FS::nas object represents an Network Access Server on your network, such as -a terminal server or equivalent. FS::nas inherits from FS::Record. The -following fields are currently supported:

    -
    -
    nasnum - primary key
    -
    -
    nas - NAS name
    -
    -
    nasip - NAS ip address
    -
    -
    nasfqdn - NAS fully-qualified domain name
    -
    -
    last - timestamp indicating the last instant the NAS was in a known - state (used by the session monitoring).
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new NAS. To add the NAS to the database, see insert. -

    Note that this stores the hash reference, not a distinct copy of the hash it -points to. You can ask the object for a copy with the hash method.

    -

    -
    insert
    -
    -Adds this record to the database. If there is an error, returns the error, -otherwise returns false. -

    -
    delete
    -
    -Delete this record from the database. -

    -
    replace OLD_RECORD
    -
    -Replaces the OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. -

    -
    check
    -
    -Checks all fields to make sure this is a valid example. If there is -an error, returns the error, otherwise returns false. Called by the insert -and replace methods. -

    -
    heartbeat TIMESTAMP
    -
    -Updates the timestamp for this nas -

    -

    -


    -

    VERSION

    -

    $Id: nas.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, schema.html from the base documentation.

    - - - - diff --git a/httemplate/docs/man/FS/part_pkg.html b/httemplate/docs/man/FS/part_pkg.html deleted file mode 100644 index e1e96b54c..000000000 --- a/httemplate/docs/man/FS/part_pkg.html +++ /dev/null @@ -1,148 +0,0 @@ - - -FS::part_pkg - Object methods for part_pkg objects - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::part_pkg - Object methods for part_pkg objects

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::part_pkg;
    -
    -  $record = new FS::part_pkg \%hash
    -  $record = new FS::part_pkg { 'column' => 'value' };
    -
    -  $custom_record = $template_record->clone;
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -
    -  @pkg_svc = $record->pkg_svc;
    -
    -  $svcnum = $record->svcpart;
    -  $svcnum = $record->svcpart( 'svc_acct' );
    -

    -


    -

    DESCRIPTION

    -

    An FS::part_pkg object represents a billing item definition. FS::part_pkg -inherits from FS::Record. The following fields are currently supported:

    -
    -
    pkgpart - primary key (assigned automatically for new billing item definitions)
    -
    -
    pkg - Text name of this billing item definition (customer-viewable)
    -
    -
    comment - Text name of this billing item definition (non-customer-viewable)
    -
    -
    setup - Setup fee expression
    -
    -
    freq - Frequency of recurring fee
    -
    -
    recur - Recurring fee expression
    -
    -
    setuptax - Setup fee tax exempt flag, empty or `Y'
    -
    -
    recurtax - Recurring fee tax exempt flag, empty or `Y'
    -
    -
    plan - Price plan
    -
    -
    plandata - Price plan data
    -
    -
    disabled - Disabled flag, empty or `Y'
    -
    -
    -

    setup and recur are evaluated as Safe perl expressions. You can use numbers -just as you would normally. More advanced semantics are not yet defined.

    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new billing item definition. To add the billing item definition to -the database, see insert. -

    -
    clone
    -
    -An alternate constructor. Creates a new billing item definition by duplicating -an existing definition. A new pkgpart is assigned and `(CUSTOM) ' is prepended -to the comment field. To add the billing item definition to the database, see -insert. -

    -
    insert
    -
    -Adds this billing item definition to the database. If there is an error, -returns the error, otherwise returns false. -

    -
    delete
    -
    -Currently unimplemented. -

    -
    replace OLD_RECORD
    -
    -Replaces OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. -

    -
    check
    -
    -Checks all fields to make sure this is a valid billing item definition. If -there is an error, returns the error, otherwise returns false. Called by the -insert and replace methods. -

    -
    pkg_svc
    -
    -Returns all FS::pkg_svc objects (see the FS::pkg_svc manpage) for this package -definition (with non-zero quantity). -

    -
    svcpart [ SVCDB ]
    -
    -Returns the svcpart of a single service definition (see the FS::part_svc manpage) -associated with this billing item definition (see the FS::pkg_svc manpage). Returns -false if there not exactly one service definition with quantity 1, or if -SVCDB is specified and does not match the svcdb of the service definition, -

    -

    -


    -

    VERSION

    -

    $Id: part_pkg.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    The delete method is unimplemented.

    -

    setup and recur semantics are not yet defined (and are implemented in -FS::cust_bill. hmm.).

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, the FS::cust_pkg manpage, the FS::type_pkgs manpage, the FS::pkg_svc manpage, Safe. -schema.html from the base documentation.

    - - - - diff --git a/httemplate/docs/man/FS/part_referral.html b/httemplate/docs/man/FS/part_referral.html deleted file mode 100644 index 815b15cf1..000000000 --- a/httemplate/docs/man/FS/part_referral.html +++ /dev/null @@ -1,100 +0,0 @@ - - -FS::part_referral - Object methods for part_referral objects - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::part_referral - Object methods for part_referral objects

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::part_referral;
    -
    -  $record = new FS::part_referral \%hash
    -  $record = new FS::part_referral { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -

    -


    -

    DESCRIPTION

    -

    An FS::part_referral represents a referral - where a customer heard of your -services. This can be used to track the effectiveness of a particular piece of -advertising, for example. FS::part_referral inherits from FS::Record. The -following fields are currently supported:

    -
    -
    refnum - primary key (assigned automatically for new referrals)
    -
    -
    referral - Text name of this referral
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new referral. To add the referral to the database, see insert. -

    -
    insert
    -
    -Adds this referral to the database. If there is an error, returns the error, -otherwise returns false. -

    -
    delete
    -
    -Currently unimplemented. -

    -
    replace OLD_RECORD
    -
    -Replaces OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. -

    -
    check
    -
    -Checks all fields to make sure this is a valid referral. If there is an error, -returns the error, otherwise returns false. Called by the insert and replace -methods. -

    -

    -


    -

    VERSION

    -

    $Id: part_referral.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    The delete method is unimplemented.

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, the FS::cust_main manpage, schema.html from the base documentation.

    - - - - diff --git a/httemplate/docs/man/FS/part_svc.html b/httemplate/docs/man/FS/part_svc.html deleted file mode 100644 index 0f5126f81..000000000 --- a/httemplate/docs/man/FS/part_svc.html +++ /dev/null @@ -1,120 +0,0 @@ - - -FS::part_svc - Object methods for part_svc objects - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::part_svc - Object methods for part_svc objects

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::part_svc;
    -
    -  $record = new FS::part_svc \%hash
    -  $record = new FS::part_svc { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -

    -


    -

    DESCRIPTION

    -

    An FS::part_svc represents a service definition. FS::part_svc inherits from -FS::Record. The following fields are currently supported:

    -
    -
    svcpart - primary key (assigned automatically for new service definitions)
    -
    -
    svc - text name of this service definition
    -
    -
    svcdb - table used for this service. See the FS::svc_acct manpage, -the FS::svc_domain manpage, and the FS::svc_forward manpage, among others.
    -
    -
    disabled - Disabled flag, empty or `Y'
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new service definition. To add the service definition to the -database, see insert. -

    -
    insert
    -
    -Adds this service definition to the database. If there is an error, returns -the error, otherwise returns false. -

    -
    svcdb__field - Default or fixed value for field in svcdb.
    -
    -
    svcdb__field_flag - defines svcdb__field action: null, `D' for default, or `F' for fixed
    -
    -
    delete
    -
    -Currently unimplemented. -

    -
    replace OLD_RECORD
    -
    -Replaces OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. -

    -
    check
    -
    -Checks all fields to make sure this is a valid service definition. If there is -an error, returns the error, otherwise returns false. Called by the insert -and replace methods. -

    -
    part_svc_column COLUMNNAME
    -
    -Returns the part_svc_column object (see the FS::part_svc_column manpage) for the given -COLUMNNAME, or a new part_svc_column object if none exists. -

    -
    all_part_svc_column
    -
    -
    -

    -


    -

    VERSION

    -

    $Id: part_svc.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    Delete is unimplemented.

    -

    The list of svc_* tables is hardcoded. When svc_acct_pop is renamed, this -should be fixed.

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, the FS::part_svc_column manpage, the FS::part_pkg manpage, the FS::pkg_svc manpage, -the FS::cust_svc manpage, the FS::svc_acct manpage, the FS::svc_forward manpage, the FS::svc_domain manpage, -schema.html from the base documentation.

    - - - - diff --git a/httemplate/docs/man/FS/pkg_svc.html b/httemplate/docs/man/FS/pkg_svc.html deleted file mode 100644 index 44db9d5ff..000000000 --- a/httemplate/docs/man/FS/pkg_svc.html +++ /dev/null @@ -1,115 +0,0 @@ - - -FS::pkg_svc - Object methods for pkg_svc records - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::pkg_svc - Object methods for pkg_svc records

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::pkg_svc;
    -
    -  $record = new FS::pkg_svc \%hash;
    -  $record = new FS::pkg_svc { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -
    -  $part_pkg = $record->part_pkg;
    -
    -  $part_svc = $record->part_svc;
    -

    -


    -

    DESCRIPTION

    -

    An FS::pkg_svc record links a billing item definition (see the FS::part_pkg manpage) to -a service definition (see the FS::part_svc manpage). FS::pkg_svc inherits from -FS::Record. The following fields are currently supported:

    -
    -
    pkgpart - Billing item definition (see the FS::part_pkg manpage)
    -
    -
    svcpart - Service definition (see the FS::part_svc manpage)
    -
    -
    quantity - Quantity of this service definition that this billing item -definition includes
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Create a new record. To add the record to the database, see insert. -

    -
    insert
    -
    -Adds this record to the database. If there is an error, returns the error, -otherwise returns false. -

    -
    delete
    -
    -Deletes this record from the database. If there is an error, returns the -error, otherwise returns false. -

    -
    replace OLD_RECORD
    -
    -Replaces OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. -

    -
    check
    -
    -Checks all fields to make sure this is a valid record. If there is an error, -returns the error, otherwise returns false. Called by the insert and replace -methods. -

    -
    part_pkg
    -
    -Returns the FS::part_pkg object (see the FS::part_pkg manpage). -

    -
    part_svc
    -
    -Returns the FS::part_svc object (see the FS::part_svc manpage). -

    -

    -


    -

    VERSION

    -

    $Id: pkg_svc.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, the FS::part_pkg manpage, the FS::part_svc manpage, schema.html from the base -documentation.

    - - - - diff --git a/httemplate/docs/man/FS/port.html b/httemplate/docs/man/FS/port.html deleted file mode 100644 index 3851390c8..000000000 --- a/httemplate/docs/man/FS/port.html +++ /dev/null @@ -1,120 +0,0 @@ - - -FS::port - Object methods for port records - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::port - Object methods for port records

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::port;
    -
    -  $record = new FS::port \%hash;
    -  $record = new FS::port { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -
    -  $session = $port->session;
    -

    -


    -

    DESCRIPTION

    -

    An FS::port object represents an individual port on a NAS. FS::port inherits -from FS::Record. The following fields are currently supported:

    -
    -
    portnum - primary key
    -
    -
    ip - IP address of this port
    -
    -
    nasport - port number on the NAS
    -
    -
    nasnum - NAS this port is on - see the FS::nas manpage
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new port. To add the example to the database, see insert. -

    Note that this stores the hash reference, not a distinct copy of the hash it -points to. You can ask the object for a copy with the hash method.

    -

    -
    insert
    -
    -Adds this record to the database. If there is an error, returns the error, -otherwise returns false. -

    -
    delete
    -
    -Delete this record from the database. -

    -
    replace OLD_RECORD
    -
    -Replaces the OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. -

    -
    check
    -
    -Checks all fields to make sure this is a valid example. If there is -an error, returns the error, otherwise returns false. Called by the insert -and replace methods. -

    -
    session
    -
    -Returns the currently open session on this port, or if no session is currently -open, the most recent session. See the FS::session manpage. -

    -

    -


    -

    VERSION

    -

    $Id: port.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    The author forgot to customize this manpage.

    -

    The session method won't deal well if you have multiple open sessions on a -port, for example if your RADIUS server drops stop records. Suggestions for -how to deal with this sort of lossage welcome; should we close the session -when we get a new session on that port? Tag it as invalid somehow? Close it -one second after it was opened? *sigh* Maybe FS::session shouldn't let you -create overlapping sessions, at least folks will find out their logging is -dropping records.

    -

    If you think the above refers multiple user logins you need to read the -manpages again.

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, schema.html from the base documentation.

    - - - - diff --git a/httemplate/docs/man/FS/prepay_credit.html b/httemplate/docs/man/FS/prepay_credit.html deleted file mode 100644 index bb0c281c2..000000000 --- a/httemplate/docs/man/FS/prepay_credit.html +++ /dev/null @@ -1,106 +0,0 @@ - - -FS::prepay_credit - Object methods for prepay_credit records - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::prepay_credit - Object methods for prepay_credit records

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::prepay_credit;
    -
    -  $record = new FS::prepay_credit \%hash;
    -  $record = new FS::prepay_credit {
    -    'identifier' => '4198123455512121'
    -    'amount'     => '19.95',
    -  };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -

    -


    -

    DESCRIPTION

    -

    An FS::table_name object represents an pre--paid credit, such as a pre-paid -``calling card''. FS::prepay_credit inherits from FS::Record. The following -fields are currently supported:

    -
    -
    field - description
    -
    -
    identifier - identifier entered by the user to receive the credit
    -
    -
    amount - amount of the credit
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new pre-paid credit. To add the example to the database, see -insert. -

    Note that this stores the hash reference, not a distinct copy of the hash it -points to. You can ask the object for a copy with the hash method.

    -

    -
    insert
    -
    -Adds this record to the database. If there is an error, returns the error, -otherwise returns false. -

    -
    delete
    -
    -Delete this record from the database. -

    -
    replace OLD_RECORD
    -
    -Replaces the OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. -

    -
    check
    -
    -Checks all fields to make sure this is a valid pre-paid credit. If there is -an error, returns the error, otherwise returns false. Called by the insert -and replace methods. -

    -

    -


    -

    VERSION

    -

    $Id: prepay_credit.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, schema.html from the base documentation.

    - - - - diff --git a/httemplate/docs/man/FS/session.html b/httemplate/docs/man/FS/session.html deleted file mode 100644 index 571c2d44d..000000000 --- a/httemplate/docs/man/FS/session.html +++ /dev/null @@ -1,129 +0,0 @@ - - -FS::session - Object methods for session records - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::session - Object methods for session records

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::session;
    -
    -  $record = new FS::session \%hash;
    -  $record = new FS::session {
    -    'portnum' => 1,
    -    'svcnum'  => 2,
    -    'login'   => $timestamp,
    -    'logout'  => $timestamp,
    -  };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -
    -  $error = $record->nas_heartbeat($timestamp);
    -

    -


    -

    DESCRIPTION

    -

    An FS::session object represents an user login session. FS::session inherits -from FS::Record. The following fields are currently supported:

    -
    -
    sessionnum - primary key
    -
    -
    portnum - NAS port for this session - see the FS::port manpage
    -
    -
    svcnum - User for this session - see the FS::svc_acct manpage
    -
    -
    login - timestamp indicating the beginning of this user session.
    -
    -
    logout - timestamp indicating the end of this user session. May be null, - which indicates a currently open session.
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new session. To add the session to the database, see insert. -

    Note that this stores the hash reference, not a distinct copy of the hash it -points to. You can ask the object for a copy with the hash method.

    -

    -
    insert
    -
    -Adds this record to the database. If there is an error, returns the error, -otherwise returns false. If the `login' field is empty, it is replaced with -the current time. -

    -
    delete
    -
    -Delete this record from the database. -

    -
    replace OLD_RECORD
    -
    -Replaces the OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. If the `logout' field is empty, -it is replaced with the current time. -

    -
    check
    -
    -Checks all fields to make sure this is a valid session. If there is -an error, returns the error, otherwise returns false. Called by the insert -and replace methods. -

    -
    nas_heartbeat
    -
    -Heartbeats the nas associated with this session (see the FS::nas manpage). -

    -
    svc_acct
    -
    -Returns the svc_acct record associated with this session (see the FS::svc_acct manpage). -

    -

    -


    -

    VERSION

    -

    $Id: session.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    Maybe you shouldn't be able to insert a session if there's currently an open -session on that port. Or maybe the open session on that port should be flagged -as problematic? autoclosed? *sigh*

    -

    Hmm, sessions refer to current svc_acct records... probably need to constrain -deletions to svc_acct records such that no svc_acct records are deleted which -have a session (even if long-closed).

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, schema.html from the base documentation.

    - - - - diff --git a/httemplate/docs/man/FS/svc_Common.html b/httemplate/docs/man/FS/svc_Common.html deleted file mode 100644 index ccac5efa0..000000000 --- a/httemplate/docs/man/FS/svc_Common.html +++ /dev/null @@ -1,97 +0,0 @@ - - -FS::svc_Common - Object method for all svc_ records - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::svc_Common - Object method for all svc_ records

    -

    -


    -

    SYNOPSIS

    -

    use FS::svc_Common;

    -

    @ISA = qw( FS::svc_Common );

    -

    -


    -

    DESCRIPTION

    -

    FS::svc_Common is intended as a base class for table-specific classes to -inherit from, i.e. FS::svc_acct. FS::svc_Common inherits from FS::Record.

    -

    -


    -

    METHODS

    -
    -
    insert
    -
    -Adds this record to the database. If there is an error, returns the error, -otherwise returns false. -

    The additional fields pkgnum and svcpart (see the FS::cust_svc manpage) should be -defined. An FS::cust_svc record will be created and inserted.

    -

    -
    delete
    -
    -Deletes this account from the database. If there is an error, returns the -error, otherwise returns false. -

    The corresponding FS::cust_svc record will be deleted as well.

    -

    -
    setfixed
    -
    -Sets any fixed fields for this service (see the FS::part_svc manpage). If there is an -error, returns the error, otherwise returns the FS::part_svc object (use ref() -to test the return). Usually called by the check method. -

    -
    setdefault
    -
    -Sets all fields to their defaults (see the FS::part_svc manpage), overriding their -current values. If there is an error, returns the error, otherwise returns -the FS::part_svc object (use ref() to test the return). -

    -
    cust_svc
    -
    -Returns the cust_svc record associated with this svc_ record, as a FS::cust_svc -object (see the FS::cust_svc manpage). -

    -
    suspend
    -
    -
    unsuspend
    -
    -
    cancel
    -
    -Stubs - return false (no error) so derived classes don't need to define these -methods. Called by the cancel method of FS::cust_pkg (see the FS::cust_pkg manpage). -

    -

    -


    -

    VERSION

    -

    $Id: svc_Common.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    The setfixed method return value.

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, the FS::cust_svc manpage, the FS::part_svc manpage, the FS::cust_pkg manpage, schema.html -from the base documentation.

    - - - - diff --git a/httemplate/docs/man/FS/svc_acct.html b/httemplate/docs/man/FS/svc_acct.html deleted file mode 100644 index 93483f67d..000000000 --- a/httemplate/docs/man/FS/svc_acct.html +++ /dev/null @@ -1,275 +0,0 @@ - - -FS::svc_acct - Object methods for svc_acct records - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::svc_acct - Object methods for svc_acct records

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::svc_acct;
    -
    -  $record = new FS::svc_acct \%hash;
    -  $record = new FS::svc_acct { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -
    -  $error = $record->suspend;
    -
    -  $error = $record->unsuspend;
    -
    -  $error = $record->cancel;
    -
    -  %hash = $record->radius;
    -
    -  %hash = $record->radius_reply;
    -
    -  %hash = $record->radius_check;
    -
    -  $domain = $record->domain;
    -
    -  $svc_domain = $record->svc_domain;
    -
    -  $email = $record->email;
    -
    -  $seconds_since = $record->seconds_since($timestamp);
    -

    -


    -

    DESCRIPTION

    -

    An FS::svc_acct object represents an account. FS::svc_acct inherits from -FS::svc_Common. The following fields are currently supported:

    -
    -
    svcnum - primary key (assigned automatcially for new accounts)
    -
    -
    username
    -
    -
    _password - generated if blank
    -
    -
    popnum - Point of presence (see the FS::svc_acct_pop manpage)
    -
    -
    uid
    -
    -
    gid
    -
    -
    finger - GECOS
    -
    -
    dir - set automatically if blank (and uid is not)
    -
    -
    shell
    -
    -
    quota - (unimplementd)
    -
    -
    slipip - IP address
    -
    -
    seconds -
    -
    -
    domsvc - svcnum from svc_domain
    -
    -
    radius_Radius_Attribute - Radius-Attribute
    -
    -
    domsvc - service number of svc_domain with which to associate
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new account. To add the account to the database, see insert. -

    -
    insert
    -
    -Adds this account to the database. If there is an error, returns the error, -otherwise returns false. -

    The additional fields pkgnum and svcpart (see the FS::cust_svc manpage) should be -defined. An FS::cust_svc record will be created and inserted.

    -

    If the configuration value (see the FS::Conf manpage) shellmachine exists, and the -username, uid, and dir fields are defined, the command(s) specified in -the shellmachine-useradd configuration are added to the job queue (see -the FS::queue manpage and the freeside-queued manpage) to be exectued on shellmachine via ssh. -This behaviour can be surpressed by setting $FS::svc_acct::nossh_hack true. -If the shellmachine-useradd configuration file does not exist,

    -
    -  useradd -d $dir -m -s $shell -u $uid $username
    -

    is the default. If the shellmachine-useradd configuration file exists but -it empty,

    -
    -  cp -pr /etc/skel $dir; chown -R $uid.$gid $dir
    -

    is the default instead. Otherwise the contents of the file are treated as -a double-quoted perl string, with the following variables available: -$username, $uid, $gid, $dir, and $shell.

    -

    (TODOC: cyrus config file, the FS::queue manpage and the freeside-queued manpage)

    -

    -
    delete
    -
    -Deletes this account from the database. If there is an error, returns the -error, otherwise returns false. -

    The corresponding FS::cust_svc record will be deleted as well.

    -

    If the configuration value (see the FS::Conf manpage) shellmachine exists, the -command(s) specified in the shellmachine-userdel configuration file are -added to the job queue (see the FS::queue manpage and the freeside-queued manpage) to be executed -on shellmachine via ssh. This behavior can be surpressed by setting -$FS::svc_acct::nossh_hack true. If the shellmachine-userdel configuration -file does not exist,

    -
    -  userdel $username
    -

    is the default. If the shellmachine-userdel configuration file exists but -is empty,

    -
    -  rm -rf $dir
    -

    is the default instead. Otherwise the contents of the file are treated as a -double-quoted perl string, with the following variables available: -$username and $dir.

    -

    (TODOC: cyrus config file)

    -

    -
    replace OLD_RECORD
    -
    -Replaces OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. -

    If the configuration value (see the FS::Conf manpage) shellmachine exists, and the -dir field has changed, the command(s) specified in the shellmachine-usermod -configuraiton file are added to the job queue (see the FS::queue manpage and -the freeside-queued manpage) to be executed on shellmachine via ssh. This behavior can -be surpressed by setting $FS::svc-acct::nossh_hack true. If the -shellmachine-userdel configuration file does not exist or is empty,

    -
    -  [ -d $old_dir ] && mv $old_dir $new_dir || (
    -    chmod u+t $old_dir;
    -    mkdir $new_dir;
    -    cd $old_dir;
    -    find . -depth -print | cpio -pdm $new_dir;
    -    chmod u-t $new_dir;
    -    chown -R $uid.$gid $new_dir;
    -    rm -rf $old_dir
    -  )
    -

    is the default. This behaviour can be surpressed by setting -$FS::svc_acct::nossh_hack true.

    -

    -
    suspend
    -
    -Suspends this account by prefixing *SUSPENDED* to the password. If there is an -error, returns the error, otherwise returns false. -

    Called by the suspend method of FS::cust_pkg (see the FS::cust_pkg manpage).

    -

    -
    unsuspend
    -
    -Unsuspends this account by removing *SUSPENDED* from the password. If there is -an error, returns the error, otherwise returns false. -

    Called by the unsuspend method of FS::cust_pkg (see the FS::cust_pkg manpage).

    -

    -
    cancel
    -
    -Just returns false (no error) for now. -

    Called by the cancel method of FS::cust_pkg (see the FS::cust_pkg manpage).

    -

    -
    check
    -
    -Checks all fields to make sure this is a valid service. If there is an error, -returns the error, otherwise returns false. Called by the insert and replace -methods. -

    Sets any fixed values; see the FS::part_svc manpage.

    -

    -
    radius
    -
    -Depriciated, use radius_reply instead. -

    -
    radius_reply
    -
    -Returns key/value pairs, suitable for assigning to a hash, for any RADIUS -reply attributes of this record. -

    Note that this is now the preferred method for reading RADIUS attributes - -accessing the columns directly is discouraged, as the column names are -expected to change in the future.

    -

    -
    radius_check
    -
    -Returns key/value pairs, suitable for assigning to a hash, for any RADIUS -check attributes of this record. -

    Accessing RADIUS attributes directly is not supported and will break in the -future.

    -

    -
    domain
    -
    -Returns the domain associated with this account. -

    -
    svc_domain
    -
    -Returns the FS::svc_domain record for this account's domain (see -the FS::svc_domain manpage. -

    -
    cust_svc
    -
    -Returns the FS::cust_svc record for this account (see the FS::cust_svc manpage). -

    sub cust_svc { - my $self = shift; - qsearchs( 'cust_svc', { 'svcnum' => $self->svcnum } ); -}

    -

    -
    email
    -
    -Returns an email address associated with the account. -

    -
    seconds_since TIMESTAMP
    -
    -Returns the number of seconds this account has been online since TIMESTAMP. -See the FS::session manpage -

    TIMESTAMP is specified as a UNIX timestamp; see perlfunc/``time''. Also see -the Time::Local manpage and the Date::Parse manpage for conversion functions.

    -

    -
    ssh
    -
    -
    -

    -


    -

    VERSION

    -

    $Id: svc_acct.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    The bits which ssh should fork before doing so (or maybe queue jobs for a -daemon).

    -

    The $recref stuff in sub check should be cleaned up.

    -

    The suspend, unsuspend and cancel methods update the database, but not the -current object. This is probably a bug as it's unexpected and -counterintuitive.

    -

    -


    -

    SEE ALSO

    -

    the FS::svc_Common manpage, edit/part_svc.cgi from an installed web interface, -export.html from the base documentation, the FS::Record manpage, the FS::Conf manpage, -the FS::cust_svc manpage, the FS::part_svc manpage, the FS::cust_pkg manpage, the FS::queue manpage, -the freeside-queued manpage), the Net::SSH manpage, ssh, the FS::svc_acct_pop manpage, -schema.html from the base documentation.

    - - - - diff --git a/httemplate/docs/man/FS/svc_acct_pop.html b/httemplate/docs/man/FS/svc_acct_pop.html deleted file mode 100644 index 80900627e..000000000 --- a/httemplate/docs/man/FS/svc_acct_pop.html +++ /dev/null @@ -1,125 +0,0 @@ - - -FS::svc_acct_pop - Object methods for svc_acct_pop records - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::svc_acct_pop - Object methods for svc_acct_pop records

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::svc_acct_pop;
    -
    -  $record = new FS::svc_acct_pop \%hash;
    -  $record = new FS::svc_acct_pop { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -
    -  $html = FS::svc_acct_pop::popselector( $popnum, $state );
    -

    -


    -

    DESCRIPTION

    -

    An FS::svc_acct object represents an point of presence. FS::svc_acct_pop -inherits from FS::Record. The following fields are currently supported:

    -
    -
    popnum - primary key (assigned automatically for new accounts)
    -
    -
    city
    -
    -
    state
    -
    -
    ac - area code
    -
    -
    exch - exchange
    -
    -
    loc - rest of number
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new point of presence (if only it were that easy!). To add the -point of presence to the database, see insert. -

    -
    insert
    -
    -Adds this point of presence to the database. If there is an error, returns the -error, otherwise returns false. -

    -
    delete
    -
    -Removes this point of presence from the database. -

    -
    replace OLD_RECORD
    -
    -Replaces OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. -

    -
    check
    -
    -Checks all fields to make sure this is a valid point of presence. If there is -an error, returns the error, otherwise returns false. Called by the insert -and replace methods. -

    -
    text
    -
    -Returns: -

    ``$city, $state ($ac)/$exch''

    -

    -

    -


    -

    SUBROUTINES

    -
    -
    popselector [ POPNUM [ STATE ] ]
    -
    -
    -

    -


    -

    VERSION

    -

    $Id: svc_acct_pop.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    It should be renamed to part_pop.

    -

    popselector? putting web ui components in here? they should probably live -somewhere else...

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, the FS::svc_acct manpage, the FS::part_pop_local manpage, schema.html from the -base documentation.

    - - - - diff --git a/httemplate/docs/man/FS/svc_acct_sm.html b/httemplate/docs/man/FS/svc_acct_sm.html deleted file mode 100644 index 86c7b8b3b..000000000 --- a/httemplate/docs/man/FS/svc_acct_sm.html +++ /dev/null @@ -1,150 +0,0 @@ - - -FS::svc_acct_sm - Object methods for svc_acct_sm records - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::svc_acct_sm - Object methods for svc_acct_sm records

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::svc_acct_sm;
    -
    -  $record = new FS::svc_acct_sm \%hash;
    -  $record = new FS::svc_acct_sm { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -
    -  $error = $record->suspend;
    -
    -  $error = $record->unsuspend;
    -
    -  $error = $record->cancel;
    -

    -


    -

    WARNING

    -

    FS::svc_acct_sm is depreciated. This class is only included for migration -purposes. See the FS::svc_forward manpage.

    -

    -


    -

    DESCRIPTION

    -

    An FS::svc_acct_sm object represents a virtual mail alias. FS::svc_acct_sm -inherits from FS::Record. The following fields are currently supported:

    -
    -
    svcnum - primary key (assigned automatcially for new accounts)
    -
    -
    domsvc - svcnum of the virtual domain (see the FS::svc_domain manpage)
    -
    -
    domuid - uid of the target account (see the FS::svc_acct manpage)
    -
    -
    domuser - virtual username
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new virtual mail alias. To add the virtual mail alias to the -database, see insert. -

    -
    insert
    -
    -Adds this virtual mail alias to the database. If there is an error, returns -the error, otherwise returns false. -

    The additional fields pkgnum and svcpart (see the FS::cust_svc manpage) should be -defined. An FS::cust_svc record will be created and inserted.

    -
    - #If the configuration values (see L<FS::Conf>) shellmachine and qmailmachines
    - #exist, and domuser is `*' (meaning a catch-all mailbox), the command:
    - #
    - #  [ -e $dir/.qmail-$qdomain-default ] || {
    - #    touch $dir/.qmail-$qdomain-default;
    - #    chown $uid:$gid $dir/.qmail-$qdomain-default;
    - #  }
    - #
    - #is executed on shellmachine via ssh (see L<dot-qmail/"EXTENSION ADDRESSES">).
    - #This behaviour can be surpressed by setting $FS::svc_acct_sm::nossh_hack true.
    -

    -
    delete
    -
    -Deletes this virtual mail alias from the database. If there is an error, -returns the error, otherwise returns false. -

    The corresponding FS::cust_svc record will be deleted as well.

    -

    -
    replace OLD_RECORD
    -
    -Replaces OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. -

    -
    suspend
    -
    -Just returns false (no error) for now. -

    Called by the suspend method of FS::cust_pkg (see the FS::cust_pkg manpage).

    -

    -
    unsuspend
    -
    -Just returns false (no error) for now. -

    Called by the unsuspend method of FS::cust_pkg (see the FS::cust_pkg manpage).

    -

    -
    cancel
    -
    -Just returns false (no error) for now. -

    Called by the cancel method of FS::cust_pkg (see the FS::cust_pkg manpage).

    -

    -
    check
    -
    -Checks all fields to make sure this is a valid virtual mail alias. If there is -an error, returns the error, otherwise returns false. Called by the insert and -replace methods. -

    Sets any fixed values; see the FS::part_svc manpage.

    -

    -

    -


    -

    VERSION

    -

    $Id: svc_acct_sm.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    The remote commands should be configurable.

    -

    The $recref stuff in sub check should be cleaned up.

    -

    -


    -

    SEE ALSO

    -

    the FS::svc_forward manpage

    -

    the FS::Record manpage, the FS::Conf manpage, the FS::cust_svc manpage, the FS::part_svc manpage, the FS::cust_pkg manpage, -the FS::svc_acct manpage, the FS::svc_domain manpage, the Net::SSH manpage, ssh, dot-qmail, -schema.html from the base documentation.

    - - - - diff --git a/httemplate/docs/man/FS/svc_domain.html b/httemplate/docs/man/FS/svc_domain.html deleted file mode 100644 index 266e0b355..000000000 --- a/httemplate/docs/man/FS/svc_domain.html +++ /dev/null @@ -1,173 +0,0 @@ - - -FS::svc_domain - Object methods for svc_domain records - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::svc_domain - Object methods for svc_domain records

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::svc_domain;
    -
    -  $record = new FS::svc_domain \%hash;
    -  $record = new FS::svc_domain { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -
    -  $error = $record->suspend;
    -
    -  $error = $record->unsuspend;
    -
    -  $error = $record->cancel;
    -

    -


    -

    DESCRIPTION

    -

    An FS::svc_domain object represents a domain. FS::svc_domain inherits from -FS::svc_Common. The following fields are currently supported:

    -
    -
    svcnum - primary key (assigned automatically for new accounts)
    -
    -
    domain
    -
    -
    catchall - optional svcnum of an svc_acct record, designating an email catchall account.
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new domain. To add the domain to the database, see insert. -

    -
    insert
    -
    -Adds this domain to the database. If there is an error, returns the error, -otherwise returns false. -

    The additional fields pkgnum and svcpart (see the FS::cust_svc manpage) should be -defined. An FS::cust_svc record will be created and inserted.

    -

    The additional field action should be set to N for new domains or M -for transfers.

    -

    A registration or transfer email will be submitted unless -$FS::svc_domain::whois_hack is true.

    -

    The additional field email can be used to manually set the admin contact -email address on this email. Otherwise, the svc_acct records for this package -(see the FS::cust_pkg manpage) are searched. If there is exactly one svc_acct record -in the same package, it is automatically used. Otherwise an error is returned.

    -

    If any soamachine configuration file exists, an SOA record is added to -the domain_record table (see <FS::domain_record>).

    -

    If any machines are defined in the nsmachines configuration file, NS -records are added to the domain_record table (see the FS::domain_record manpage).

    -

    If any machines are defined in the mxmachines configuration file, MX -records are added to the domain_record table (see the FS::domain_record manpage).

    -

    If a machine is defined in the shellmachine configuration value, the -qmailmachines configuration file exists, and the catchall field points -to an an account with a home directory (see the FS::svc_acct manpage), the command:

    -
    -  [ -e $dir/.qmail-$qdomain-defualt ] || {
    -    touch $dir/.qmail-$qdomain-default;
    -    chown $uid:$gid $dir/.qmail-$qdomain-default;
    -  }
    -

    is executed on shellmachine via ssh (see dot-qmail/``EXTENSION ADDRESSES''). -This behaviour can be supressed by setting $FS::svc_domain::nossh_hack true.

    -

    a machine is defined -in the

    -

    -
    delete
    -
    -Deletes this domain from the database. If there is an error, returns the -error, otherwise returns false. -

    The corresponding FS::cust_svc record will be deleted as well.

    -

    -
    replace OLD_RECORD
    -
    -Replaces OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. -

    -
    suspend
    -
    -Just returns false (no error) for now. -

    Called by the suspend method of FS::cust_pkg (see the FS::cust_pkg manpage).

    -

    -
    unsuspend
    -
    -Just returns false (no error) for now. -

    Called by the unsuspend method of FS::cust_pkg (see the FS::cust_pkg manpage).

    -

    -
    cancel
    -
    -Just returns false (no error) for now. -

    Called by the cancel method of FS::cust_pkg (see the FS::cust_pkg manpage).

    -

    -
    check
    -
    -Checks all fields to make sure this is a valid domain. If there is an error, -returns the error, otherwise returns false. Called by the insert and replace -methods. -

    Sets any fixed values; see the FS::part_svc manpage.

    -

    -
    whois
    -
    -Returns the Net::Whois::Domain object (see the Net::Whois manpage) for this domain, or -undef if the domain is not found in whois. -

    (If $FS::svc_domain::whois_hack is true, returns that in all cases instead.)

    -

    -
    _whois
    -
    -Depriciated. -

    -
    submit_internic
    -
    -Submits a registration email for this domain. -

    -

    -


    -

    VERSION

    -

    $Id: svc_domain.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    All BIND/DNS fields should be included (and exported).

    -

    Delete doesn't send a registration template.

    -

    All registries should be supported.

    -

    Should change action to a real field.

    -

    The $recref stuff in sub check should be cleaned up.

    -

    -


    -

    SEE ALSO

    -

    the FS::svc_Common manpage, the FS::Record manpage, the FS::Conf manpage, the FS::cust_svc manpage, -the FS::part_svc manpage, the FS::cust_pkg manpage, the Net::Whois manpage, ssh, -dot-qmail, schema.html from the base documentation, config.html from the -base documentation.

    - - - - diff --git a/httemplate/docs/man/FS/svc_www.html b/httemplate/docs/man/FS/svc_www.html deleted file mode 100644 index 0e7f4f197..000000000 --- a/httemplate/docs/man/FS/svc_www.html +++ /dev/null @@ -1,134 +0,0 @@ - - -FS::svc_www - Object methods for svc_www records - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::svc_www - Object methods for svc_www records

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::svc_www;
    -
    -  $record = new FS::svc_www \%hash;
    -  $record = new FS::svc_www { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -
    -  $error = $record->suspend;
    -
    -  $error = $record->unsuspend;
    -
    -  $error = $record->cancel;
    -

    -


    -

    DESCRIPTION

    -

    An FS::svc_www object represents an web virtual host. FS::svc_www inherits -from FS::svc_Common. The following fields are currently supported:

    -
    -
    svcnum - primary key
    -
    -
    recnum - DNS `A' record corresponding to this web virtual host. (see the FS::domain_record manpage)
    -
    -
    usersvc - account (see the FS::svc_acct manpage) corresponding to this web virtual host.
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Creates a new web virtual host. To add the record to the database, see -insert. -

    Note that this stores the hash reference, not a distinct copy of the hash it -points to. You can ask the object for a copy with the hash method.

    -

    -
    insert
    -
    -Adds this record to the database. If there is an error, returns the error, -otherwise returns false. -

    The additional fields pkgnum and svcpart (see the FS::cust_svc manpage) should be -defined. An FS::cust_svc record will be created and inserted.

    -

    If the configuration values (see the FS::Conf manpage) apachemachine, and -apacheroot exist, the command:

    -
    -  mkdir $apacheroot/$zone;
    -  chown $username $apacheroot/$zone;
    -  ln -s $apacheroot/$zone $homedir/$zone
    -

    $zone is the DNS A record pointed to by recnum -$username is the username pointed to by usersvc -$homedir is that user's home directory

    -

    is executed on apachemachine via ssh. This behaviour can be surpressed by -setting $FS::svc_www::nossh_hack true.

    -

    -
    delete
    -
    -Delete this record from the database. -

    -
    replace OLD_RECORD
    -
    -Replaces the OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. -

    -
    suspend
    -
    -Called by the suspend method of FS::cust_pkg (see the FS::cust_pkg manpage). -

    -
    unsuspend
    -
    -Called by the unsuspend method of FS::cust_pkg (see the FS::cust_pkg manpage). -

    -
    cancel
    -
    -Called by the cancel method of FS::cust_pkg (see the FS::cust_pkg manpage). -

    -
    check
    -
    -Checks all fields to make sure this is a valid example. If there is -an error, returns the error, otherwise returns false. Called by the insert -and repalce methods. -

    -

    -


    -

    VERSION

    -

    $Id: svc_www.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    -


    -

    SEE ALSO

    -

    the FS::svc_Common manpage, the FS::Record manpage, the FS::domain_record manpage, the FS::cust_svc manpage, -the FS::part_svc manpage, the FS::cust_pkg manpage, schema.html from the base documentation.

    - - - - diff --git a/httemplate/docs/man/FS/type_pkgs.html b/httemplate/docs/man/FS/type_pkgs.html deleted file mode 100644 index ba258252f..000000000 --- a/httemplate/docs/man/FS/type_pkgs.html +++ /dev/null @@ -1,100 +0,0 @@ - - -FS::type_pkgs - Object methods for type_pkgs records - - - - - - - - - - - -
    -

    -

    NAME

    -

    FS::type_pkgs - Object methods for type_pkgs records

    -

    -


    -

    SYNOPSIS

    -
    -  use FS::type_pkgs;
    -
    -  $record = new FS::type_pkgs \%hash;
    -  $record = new FS::type_pkgs { 'column' => 'value' };
    -
    -  $error = $record->insert;
    -
    -  $error = $new_record->replace($old_record);
    -
    -  $error = $record->delete;
    -
    -  $error = $record->check;
    -

    -


    -

    DESCRIPTION

    -

    An FS::type_pkgs record links an agent type (see the FS::agent_type manpage) to a -billing item definition (see the FS::part_pkg manpage). FS::type_pkgs inherits from -FS::Record. The following fields are currently supported:

    -
    -
    typenum - Agent type, see the FS::agent_type manpage
    -
    -
    pkgpart - Billing item definition, see the FS::part_pkg manpage
    -
    -
    -

    -


    -

    METHODS

    -
    -
    new HASHREF
    -
    -Create a new record. To add the record to the database, see insert. -

    -
    insert
    -
    -Adds this record to the database. If there is an error, returns the error, -otherwise returns false. -

    -
    delete
    -
    -Deletes this record from the database. If there is an error, returns the -error, otherwise returns false. -

    -
    replace OLD_RECORD
    -
    -Replaces OLD_RECORD with this one in the database. If there is an error, -returns the error, otherwise returns false. -

    -
    check
    -
    -Checks all fields to make sure this is a valid record. If there is an error, -returns the error, otherwise returns false. Called by the insert and replace -methods. -

    -

    -


    -

    VERSION

    -

    $Id: type_pkgs.html,v 1.3 2002-01-29 17:42:46 ivan Exp $

    -

    -


    -

    BUGS

    -

    -


    -

    SEE ALSO

    -

    the FS::Record manpage, the FS::agent_type manpage, the FS::part_pkgs manpage, schema.html from the base -documentation.

    - - - - -- cgit v1.2.1 From 0b0a29bcdc6614efb752bd6663b3df2080a42bb1 Mon Sep 17 00:00:00 2001 From: ivan Date: Mon, 4 Feb 2002 17:12:05 +0000 Subject: ancient files --- httemplate/docs/man/FS/Bill.html | 32 -------------------------------- httemplate/docs/man/FS/Invoice.html | 32 -------------------------------- 2 files changed, 64 deletions(-) delete mode 100644 httemplate/docs/man/FS/Bill.html delete mode 100644 httemplate/docs/man/FS/Invoice.html (limited to 'httemplate/docs/man') diff --git a/httemplate/docs/man/FS/Bill.html b/httemplate/docs/man/FS/Bill.html deleted file mode 100644 index cf996ae80..000000000 --- a/httemplate/docs/man/FS/Bill.html +++ /dev/null @@ -1,32 +0,0 @@ - - -FS::Bill - Legacy stub - - - - - - - - - - -
    -

    -

    NAME

    -

    -FS::Bill - Legacy stub - -

    -


    -

    SYNOPSIS

    -

    -The functionality of FS::Bill has been integrated into FS::cust_main. - - - - diff --git a/httemplate/docs/man/FS/Invoice.html b/httemplate/docs/man/FS/Invoice.html deleted file mode 100644 index cc837be2e..000000000 --- a/httemplate/docs/man/FS/Invoice.html +++ /dev/null @@ -1,32 +0,0 @@ - - -FS::Invoice - Legacy stub - - - - - - - -

    - - -
    -

    -

    NAME

    -

    -FS::Invoice - Legacy stub - -

    -


    -

    SYNOPSIS

    -

    -The functionality of FS::Invoice has been integrated in FS::cust_bill. - - - - -- cgit v1.2.1 From 10435c0296ed4239e451503c60aa3412e58ef517 Mon Sep 17 00:00:00 2001 From: ivan Date: Fri, 30 May 2003 09:40:54 +0000 Subject: force inclusion of httemplate/docs/man hierarchy --- httemplate/docs/man/FS/part_export/.cvs_is_on_crack | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 httemplate/docs/man/FS/part_export/.cvs_is_on_crack (limited to 'httemplate/docs/man') diff --git a/httemplate/docs/man/FS/part_export/.cvs_is_on_crack b/httemplate/docs/man/FS/part_export/.cvs_is_on_crack new file mode 100644 index 000000000..e69de29bb -- cgit v1.2.1