summaryrefslogtreecommitdiff
path: root/httemplate/docs/man/FS
diff options
context:
space:
mode:
authorivan <ivan>2002-01-29 17:46:41 +0000
committerivan <ivan>2002-01-29 17:46:41 +0000
commitea0d3938b57a079ce4aa6db0cae316e3ac6da654 (patch)
tree1ee44728e7a81e1c7671ef154aee3c77fc565a7a /httemplate/docs/man/FS
parentc5c0ba135749164ec8ba75d18f76c29625e1bc7e (diff)
these are all auto-generated by the installation; don't check them into CVS
(probably should generate them for a release tarball though)
Diffstat (limited to 'httemplate/docs/man/FS')
-rw-r--r--httemplate/docs/man/FS/CGI.html100
-rw-r--r--httemplate/docs/man/FS/CGIwrapper.html16
-rw-r--r--httemplate/docs/man/FS/Conf.html97
-rw-r--r--httemplate/docs/man/FS/Record.html366
-rw-r--r--httemplate/docs/man/FS/SessionClient.html97
-rw-r--r--httemplate/docs/man/FS/SignupClient.html132
-rw-r--r--httemplate/docs/man/FS/UI/Base.html100
-rw-r--r--httemplate/docs/man/FS/UI/CGI.html94
-rw-r--r--httemplate/docs/man/FS/UI/Gtk.html91
-rw-r--r--httemplate/docs/man/FS/UI/agent.html16
-rw-r--r--httemplate/docs/man/FS/UID.html138
-rw-r--r--httemplate/docs/man/FS/agent.html121
-rw-r--r--httemplate/docs/man/FS/agent_type.html126
-rw-r--r--httemplate/docs/man/FS/cust_bill.html182
-rw-r--r--httemplate/docs/man/FS/cust_bill_pkg.html112
-rw-r--r--httemplate/docs/man/FS/cust_credit.html132
-rw-r--r--httemplate/docs/man/FS/cust_main.html419
-rw-r--r--httemplate/docs/man/FS/cust_main_county.html106
-rw-r--r--httemplate/docs/man/FS/cust_main_invoice.html114
-rw-r--r--httemplate/docs/man/FS/cust_pay.html123
-rw-r--r--httemplate/docs/man/FS/cust_pay_batch.html132
-rw-r--r--httemplate/docs/man/FS/cust_pkg.html217
-rw-r--r--httemplate/docs/man/FS/cust_refund.html114
-rw-r--r--httemplate/docs/man/FS/cust_svc.html139
-rw-r--r--httemplate/docs/man/FS/domain_record.html112
-rw-r--r--httemplate/docs/man/FS/nas.html117
-rw-r--r--httemplate/docs/man/FS/part_pkg.html148
-rw-r--r--httemplate/docs/man/FS/part_referral.html100
-rw-r--r--httemplate/docs/man/FS/part_svc.html120
-rw-r--r--httemplate/docs/man/FS/pkg_svc.html115
-rw-r--r--httemplate/docs/man/FS/port.html120
-rw-r--r--httemplate/docs/man/FS/prepay_credit.html106
-rw-r--r--httemplate/docs/man/FS/session.html129
-rw-r--r--httemplate/docs/man/FS/svc_Common.html97
-rw-r--r--httemplate/docs/man/FS/svc_acct.html275
-rw-r--r--httemplate/docs/man/FS/svc_acct_pop.html125
-rw-r--r--httemplate/docs/man/FS/svc_acct_sm.html150
-rw-r--r--httemplate/docs/man/FS/svc_domain.html173
-rw-r--r--httemplate/docs/man/FS/svc_www.html134
-rw-r--r--httemplate/docs/man/FS/type_pkgs.html100
40 files changed, 0 insertions, 5405 deletions
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::CGI - Subroutines for the web interface</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#subroutines">SUBROUTINES</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::CGI - Subroutines for the web interface</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::CGI qw(header menubar idiot eidiot popurl);</PRE>
-<PRE>
- print header( 'Title', '' );
- print header( 'Title', menubar('item', 'URL', ... ) );</PRE>
-<PRE>
- idiot &quot;error message&quot;;
- eidiot &quot;error message&quot;;</PRE>
-<PRE>
- $url = popurl; #returns current url
- $url = popurl(3); #three levels up</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>Provides a few common subroutines for the web interface.</P>
-<P>
-<HR>
-<H1><A NAME="subroutines">SUBROUTINES</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_header">header TITLE, MENUBAR</A></STRONG><BR>
-<DD>
-Returns an HTML header.
-<P></P>
-<DT><STRONG><A NAME="item_menubar_ITEM%2C_URL%2C_%2E%2E%2E">menubar ITEM, URL, ...</A></STRONG><BR>
-<DD>
-Returns an HTML menubar.
-<P></P>
-<DT><STRONG><A NAME="item_idiot">idiot ERROR</A></STRONG><BR>
-<DD>
-This is depriciated. Don't use it.
-<P>Sends headers and an HTML error message.</P>
-<P></P>
-<DT><STRONG><A NAME="item_eidiot">eidiot ERROR</A></STRONG><BR>
-<DD>
-This is depriciated. Don't use it.
-<P>Sends headers and an HTML error message, then exits.</P>
-<P></P>
-<DT><STRONG><A NAME="item_popurl">popurl LEVEL</A></STRONG><BR>
-<DD>
-Returns current URL with LEVEL levels of path removed from the end (default 0).
-<P></P>
-<DT><STRONG><A NAME="item_table">table</A></STRONG><BR>
-<DD>
-Returns HTML tag for beginning a table.
-<P></P>
-<DT><STRONG><A NAME="item_itable">itable</A></STRONG><BR>
-<DD>
-Returns HTML tag for beginning an (invisible) table.
-<P></P>
-<DT><STRONG><A NAME="item_ntable">ntable</A></STRONG><BR>
-<DD>
-This is getting silly.
-<P></P>
-<DT><STRONG><A NAME="item_small_custview_CUSTNUM_%7C%7C_CUST_MAIN_OBJECT%2C_">small_custview CUSTNUM || CUST_MAIN_OBJECT, COUNTRYDEFAULT</A></STRONG><BR>
-<DD>
-Sheesh. I should just switch to Mason.
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>Not OO.</P>
-<P>Not complete.</P>
-<P>small_custview sooooo doesn't belong here. i should just switch to Mason.</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/CGI.html">the CGI manpage</A>, <A HREF="../CGI/Base.html">the CGI::Base manpage</A></P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>./FS/FS/CGIwrapper.pm</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-<!-- INDEX END -->
-
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::Conf - Freeside configuration values</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::Conf - Freeside configuration values</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::Conf;</PRE>
-<PRE>
- $conf = new FS::Conf &quot;/config/directory&quot;;</PRE>
-<PRE>
- $FS::Conf::default_dir = &quot;/config/directory&quot;;
- $conf = new FS::Conf;</PRE>
-<PRE>
- $dir = $conf-&gt;dir;</PRE>
-<PRE>
- $value = $conf-&gt;config('key');
- @list = $conf-&gt;config('key');
- $bool = $conf-&gt;exists('key');</PRE>
-<PRE>
- @config_items = $conf-&gt;config_items;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>Read and write Freeside configuration values. Keys currently map to filenames,
-but this may change in the future.</P>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new_%5B_DIRECTORY_%5D">new [ DIRECTORY ]</A></STRONG><BR>
-<DD>
-Create a new configuration object. A directory arguement is required if
-$FS::Conf::default_dir has not been set.
-<P></P>
-<DT><STRONG><A NAME="item_dir">dir</A></STRONG><BR>
-<DD>
-Returns the directory.
-<P></P>
-<DT><STRONG><A NAME="item_config">config</A></STRONG><BR>
-<DD>
-Returns the configuration value or values (depending on context) for key.
-<P></P>
-<DT><STRONG><A NAME="item_exists">exists</A></STRONG><BR>
-<DD>
-Returns true if the specified key exists, even if the corresponding value
-is undefined.
-<P></P>
-<DT><STRONG><A NAME="item_touch">touch</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_set">set</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_config_items">config_items</A></STRONG><BR>
-<DD>
-Returns all of the possible configuration items as FS::ConfItem objects. See
-<A HREF=".././FS/ConfItem.html">the FS::ConfItem manpage</A>.
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>Write access (touch, set, delete) should be documented.</P>
-<P>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.</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P>``Configuration'' in the web interface (config/config.cgi).</P>
-<P>httemplate/docs/config.html</P>
-
-</BODY>
-
-</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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::Record - Database record objects</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#constructors">CONSTRUCTORS</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#subroutines">SUBROUTINES</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::Record - Database record objects</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::Record;
- use FS::Record qw(dbh fields qsearch qsearchs dbdef);</PRE>
-<PRE>
- $record = new FS::Record 'table', \%hash;
- $record = new FS::Record 'table', { 'column' =&gt; 'value', ... };</PRE>
-<PRE>
- $record = qsearchs FS::Record 'table', \%hash;
- $record = qsearchs FS::Record 'table', { 'column' =&gt; 'value', ... };
- @records = qsearch FS::Record 'table', \%hash;
- @records = qsearch FS::Record 'table', { 'column' =&gt; 'value', ... };</PRE>
-<PRE>
- $table = $record-&gt;table;
- $dbdef_table = $record-&gt;dbdef_table;</PRE>
-<PRE>
- $value = $record-&gt;get('column');
- $value = $record-&gt;getfield('column');
- $value = $record-&gt;column;</PRE>
-<PRE>
- $record-&gt;set( 'column' =&gt; 'value' );
- $record-&gt;setfield( 'column' =&gt; 'value' );
- $record-&gt;column('value');</PRE>
-<PRE>
- %hash = $record-&gt;hash;</PRE>
-<PRE>
- $hashref = $record-&gt;hashref;</PRE>
-<PRE>
- $error = $record-&gt;insert;
- #$error = $record-&gt;add; #depriciated</PRE>
-<PRE>
- $error = $record-&gt;delete;
- #$error = $record-&gt;del; #depriciated</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);
- #$error = $new_record-&gt;rep($old_record); #depriciated</PRE>
-<PRE>
- $value = $record-&gt;unique('column');</PRE>
-<PRE>
- $error = $record-&gt;ut_float('column');
- $error = $record-&gt;ut_number('column');
- $error = $record-&gt;ut_numbern('column');
- $error = $record-&gt;ut_money('column');
- $error = $record-&gt;ut_text('column');
- $error = $record-&gt;ut_textn('column');
- $error = $record-&gt;ut_alpha('column');
- $error = $record-&gt;ut_alphan('column');
- $error = $record-&gt;ut_phonen('column');
- $error = $record-&gt;ut_anything('column');
- $error = $record-&gt;ut_name('column');</PRE>
-<PRE>
- $dbdef = reload_dbdef;
- $dbdef = reload_dbdef &quot;/non/standard/filename&quot;;
- $dbdef = dbdef;</PRE>
-<PRE>
- $quoted_value = _quote($value,'table','field');</PRE>
-<PRE>
- #depriciated
- $fields = hfields('table');
- if ( $fields-&gt;{Field} ) { # etc.</PRE>
-<PRE>
- @fields = fields 'table'; #as a subroutine
- @fields = $record-&gt;fields; #as a method call</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>(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.</P>
-<P>
-<HR>
-<H1><A NAME="constructors">CONSTRUCTORS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new_%5B_TABLE%2C_%5D_HASHREF">new [ TABLE, ] HASHREF</A></STRONG><BR>
-<DD>
-Creates a new record. It doesn't store it in the database, though. See
-<A HREF="#insert">insert</A> for that.
-<P>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 <EM>hash</EM>
-method.</P>
-<P>TABLE can only be omitted when a dervived class overrides the table method.</P>
-<P></P>
-<DT><STRONG><A NAME="item_qsearch_TABLE%2C_HASHREF%2C_SELECT%2C_EXTRA_SQL">qsearch TABLE, HASHREF, SELECT, EXTRA_SQL</A></STRONG><BR>
-<DD>
-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.
-<P>###oops, argh, FS::Record::new only lets us create database fields.
-#Normal behaviour if SELECT is not specified is `*', as in
-#<CODE>SELECT * FROM table WHERE ...</CODE>. 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.</P>
-<P></P>
-<DT><STRONG><A NAME="item_jsearch_TABLE%2C_HASHREF%2C_SELECT%2C_EXTRA_SQL%2C">jsearch TABLE, HASHREF, SELECT, EXTRA_SQL, PRIMARY_TABLE, PRIMARY_KEY</A></STRONG><BR>
-<DD>
-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.
-<P>Arguments:</P>
-<P></P>
-<DT><STRONG><A NAME="item_qsearchs">qsearchs TABLE, HASHREF</A></STRONG><BR>
-<DD>
-Same as qsearch, except that if more than one record matches, it <STRONG>carp</STRONG>s but
-returns the first. If this happens, you either made a logic error in asking
-for a single item, or your data is corrupted.
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_table">table</A></STRONG><BR>
-<DD>
-Returns the table name.
-<P></P>
-<DT><STRONG><A NAME="item_dbdef_table">dbdef_table</A></STRONG><BR>
-<DD>
-Returns the FS::dbdef_table object for the table.
-<P></P>
-<DT><STRONG><A NAME="item_get%2C_getfield_COLUMN">get, getfield COLUMN</A></STRONG><BR>
-<DD>
-Returns the value of the column/field/key COLUMN.
-<P></P>
-<DT><STRONG><A NAME="item_set%2C_setfield_COLUMN%2C_VALUE">set, setfield COLUMN, VALUE</A></STRONG><BR>
-<DD>
-Sets the value of the column/field/key COLUMN to VALUE. Returns VALUE.
-<P></P>
-<DT><STRONG><A NAME="item_AUTLOADED_METHODS">AUTLOADED METHODS</A></STRONG><BR>
-<DD>
-$record-&gt;column is a synonym for $record-&gt;get('column');
-<P>$record-&gt;<CODE>column('value')</CODE> is a synonym for $record-&gt;set('column','value');</P>
-<P></P>
-<DT><STRONG><A NAME="item_hash">hash</A></STRONG><BR>
-<DD>
-Returns a list of the column/value pairs, usually for assigning to a new hash.
-<P>To make a distinct duplicate of an FS::Record object, you can do:</P>
-<PRE>
- $new = new FS::Record ( $old-&gt;table, { $old-&gt;hash } );</PRE>
-<P></P>
-<DT><STRONG><A NAME="item_hashref">hashref</A></STRONG><BR>
-<DD>
-Returns a reference to the column/value hash.
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Inserts this record to the database. If there is an error, returns the error,
-otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_add">add</A></STRONG><BR>
-<DD>
-Depriciated (use insert instead).
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Delete this record from the database. If there is an error, returns the error,
-otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_del">del</A></STRONG><BR>
-<DD>
-Depriciated (use delete instead).
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Replace the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_rep">rep</A></STRONG><BR>
-<DD>
-Depriciated (use replace instead).
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-Not yet implemented, croaks. Derived classes should provide a check method.
-<P></P>
-<DT><STRONG><A NAME="item_unique">unique COLUMN</A></STRONG><BR>
-<DD>
-Replaces COLUMN in record with a unique number. Called by the <STRONG>add</STRONG> method
-on primary keys and single-field unique columns (see <A HREF="../DBIx/DBSchema/Table.html">the DBIx::DBSchema::Table manpage</A>).
-Returns the new value.
-<P></P>
-<DT><STRONG><A NAME="item_ut_float_COLUMN">ut_float COLUMN</A></STRONG><BR>
-<DD>
-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.
-<P></P>
-<DT><STRONG><A NAME="item_ut_number_COLUMN">ut_number COLUMN</A></STRONG><BR>
-<DD>
-Check/untaint simple numeric data (whole numbers). May not be null. If there
-is an error, returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_ut_numbern_COLUMN">ut_numbern COLUMN</A></STRONG><BR>
-<DD>
-Check/untaint simple numeric data (whole numbers). May be null. If there is
-an error, returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_ut_money_COLUMN">ut_money COLUMN</A></STRONG><BR>
-<DD>
-Check/untaint monetary numbers. May be negative. Set to 0 if null. If there
-is an error, returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_ut_text_COLUMN">ut_text COLUMN</A></STRONG><BR>
-<DD>
-Check/untaint text. Alphanumerics, spaces, and the following punctuation
-symbols are currently permitted: ! @ # $ % &amp; ( ) - + ; : ' `` , . ? /
-May not be null. If there is an error, returns the error, otherwise returns
-false.
-<P></P>
-<DT><STRONG><A NAME="item_ut_textn_COLUMN">ut_textn COLUMN</A></STRONG><BR>
-<DD>
-Check/untaint text. Alphanumerics, spaces, and the following punctuation
-symbols are currently permitted: ! @ # $ % &amp; ( ) - + ; : ' `` , . ? /
-May be null. If there is an error, returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_ut_alpha_COLUMN">ut_alpha COLUMN</A></STRONG><BR>
-<DD>
-Check/untaint alphanumeric strings (no spaces). May not be null. If there is
-an error, returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG>ut_alpha COLUMN</STRONG><BR>
-<DD>
-Check/untaint alphanumeric strings (no spaces). May be null. If there is an
-error, returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_ut_phonen_COLUMN_%5B_COUNTRY_%5D">ut_phonen COLUMN [ COUNTRY ]</A></STRONG><BR>
-<DD>
-Check/untaint phone numbers. May be null. If there is an error, returns
-the error, otherwise returns false.
-<P>Takes an optional two-letter ISO country code; without it or with unsupported
-countries, ut_phonen simply calls ut_alphan.</P>
-<P></P>
-<DT><STRONG><A NAME="item_ut_ip_COLUMN">ut_ip COLUMN</A></STRONG><BR>
-<DD>
-Check/untaint ip addresses. IPv4 only for now.
-<P></P>
-<DT><STRONG><A NAME="item_ut_ipn_COLUMN">ut_ipn COLUMN</A></STRONG><BR>
-<DD>
-Check/untaint ip addresses. IPv4 only for now. May be null.
-<P></P>
-<DT><STRONG><A NAME="item_ut_domain_COLUMN">ut_domain COLUMN</A></STRONG><BR>
-<DD>
-Check/untaint host and domain names.
-<P></P>
-<DT><STRONG><A NAME="item_ut_name_COLUMN">ut_name COLUMN</A></STRONG><BR>
-<DD>
-Check/untaint proper names; allows alphanumerics, spaces and the following
-punctuation: , . - '
-<P>May not be null.</P>
-<P></P>
-<DT><STRONG><A NAME="item_ut_zip_COLUMN">ut_zip COLUMN</A></STRONG><BR>
-<DD>
-Check/untaint zip codes.
-<P></P>
-<DT><STRONG><A NAME="item_ut_country_COLUMN">ut_country COLUMN</A></STRONG><BR>
-<DD>
-Check/untaint country codes. Country names are changed to codes, if possible -
-see <A HREF="../Locale/Country.html">the Locale::Country manpage</A>.
-<P></P>
-<DT><STRONG><A NAME="item_ut_anything_COLUMN">ut_anything COLUMN</A></STRONG><BR>
-<DD>
-Untaints arbitrary data. Be careful.
-<P></P>
-<DT><STRONG><A NAME="item_ut_enum_COLUMN_CHOICES_ARRAYREF">ut_enum COLUMN CHOICES_ARRAYREF</A></STRONG><BR>
-<DD>
-Check/untaint a column, supplying all possible choices, like the ``enum'' type.
-<P></P>
-<DT><STRONG><A NAME="item_fields_%5B_TABLE_%5D">fields [ TABLE ]</A></STRONG><BR>
-<DD>
-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 <A HREF="../DBIx/DBSchema/Table.html">the DBIx::DBSchema::Table manpage</A>).
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="subroutines">SUBROUTINES</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_reload_dbdef"><CODE>reload_dbdef([FILENAME])</CODE></A></STRONG><BR>
-<DD>
-Load a database definition (see <A HREF="../DBIx/DBSchema.html">the DBIx::DBSchema manpage</A>), optionally from a
-non-default filename. This command is executed at startup unless
-<EM>$FS::Record::setup_hack</EM> is true. Returns a DBIx::DBSchema object.
-<P></P>
-<DT><STRONG><A NAME="item_dbdef">dbdef</A></STRONG><BR>
-<DD>
-Returns the current database definition. See <A HREF="../FS/dbdef.html">the FS::dbdef manpage</A>.
-<P></P>
-<DT><STRONG><A NAME="item__quote_VALUE%2C_TABLE%2C_COLUMN">_quote VALUE, TABLE, COLUMN</A></STRONG><BR>
-<DD>
-This is an internal function used to construct SQL statements. It returns
-VALUE DBI-quoted (see <EM>DBI/``quote''</EM>) unless VALUE is a number and the column
-type (see <A HREF="../FS/dbdef_column.html">the FS::dbdef_column manpage</A>) does not end in `char' or `binary'.
-<P></P>
-<DT><STRONG><A NAME="item_hfields">hfields TABLE</A></STRONG><BR>
-<DD>
-This is depriciated. Don't use it.
-<P>It returns a hash-type list with the fields of this record's table set true.</P>
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>This module should probably be renamed, since much of the functionality is
-of general use. It is not completely unlike Adapter::DBI (see below).</P>
-<P>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.)</P>
-<P>The whole fields / hfields mess should be removed.</P>
-<P>The various WHERE clauses should be subroutined.</P>
-<P>table string should be depriciated in favor of FS::dbdef_table.</P>
-<P>No doubt we could benefit from a Tied hash. Documenting how exists / defined
-true maps to the database (and WHERE clauses) would also help.</P>
-<P>The ut_ methods should ask the dbdef for a default length.</P>
-<P>ut_sqltype (like ut_varchar) should all be defined</P>
-<P>A fallback check method should be provided which uses the dbdef.</P>
-<P>The ut_money method assumes money has two decimal digits.</P>
-<P>The Pg money kludge in the new method only strips `$'.</P>
-<P>The ut_phonen method only checks US-style phone numbers.</P>
-<P>The _quote function should probably use ut_float instead of a regex.</P>
-<P>All the subroutines probably should be methods, here or elsewhere.</P>
-<P>Probably should borrow/use some dbdef methods where appropriate (like sub
-fields)</P>
-<P>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)</P>
-<P>ut_zip should take an optional country like ut_phone.</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF="../DBIx/DBSchema.html">the DBIx::DBSchema manpage</A>, <A HREF=".././FS/UID.html">the FS::UID manpage</A>, <EM>DBI</EM></P>
-<P>Adapter::DBI from Ch. 11 of Advanced Perl Programming by Sriram Srinivasan.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::SessionClient - Freeside session client API</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#subroutines">SUBROUTINES</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::SessionClient - Freeside session client API</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::SessionClient qw( login portnum logout );</PRE>
-<PRE>
- $error = login ( {
- 'username' =&gt; $username,
- 'password' =&gt; $password,
- 'login' =&gt; $timestamp,
- 'portnum' =&gt; $portnum,
- } );</PRE>
-<PRE>
- $portnum = portnum( { 'ip' =&gt; $ip } ) or die &quot;unknown ip!&quot;
- $portnum = portnum( { 'nasnum' =&gt; $nasnum, 'nasport' =&gt; $nasport } )
- or die &quot;unknown nasnum/nasport&quot;;</PRE>
-<PRE>
- $error = logout ( {
- 'username' =&gt; $username,
- 'password' =&gt; $password,
- 'logout' =&gt; $timestamp,
- 'portnum' =&gt; $portnum,
- } );</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>This modules provides an API for a remote session application.</P>
-<P>It needs to be run as the freeside user. Because of this, the program which
-calls these subroutines should be written very carefully.</P>
-<P>
-<HR>
-<H1><A NAME="subroutines">SUBROUTINES</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_login">login HASHREF</A></STRONG><BR>
-<DD>
-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.
-<P>Returns a scalar error message, or the empty string for success.</P>
-<P></P>
-<DT><STRONG><A NAME="item_portnum">portnum</A></STRONG><BR>
-<DD>
-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.
-<P></P>
-<DT><STRONG><A NAME="item_logout">logout HASHREF</A></STRONG><BR>
-<DD>
-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.
-<P>Returns a scalar error message, or the empty string for success.</P>
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: SessionClient.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><EM>fs_sessiond</EM></P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::SignupClient - Freeside signup client API</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#subroutines">SUBROUTINES</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::SignupClient - Freeside signup client API</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::SignupClient qw( signup_info new_customer );</PRE>
-<PRE>
- ( $locales, $packages, $pops ) = signup_info;</PRE>
-<PRE>
- $error = new_customer ( {
- 'first' =&gt; $first,
- 'last' =&gt; $last,
- 'ss' =&gt; $ss,
- 'comapny' =&gt; $company,
- 'address1' =&gt; $address1,
- 'address2' =&gt; $address2,
- 'city' =&gt; $city,
- 'county' =&gt; $county,
- 'state' =&gt; $state,
- 'zip' =&gt; $zip,
- 'country' =&gt; $country,
- 'daytime' =&gt; $daytime,
- 'night' =&gt; $night,
- 'fax' =&gt; $fax,
- 'payby' =&gt; $payby,
- 'payinfo' =&gt; $payinfo,
- 'paydate' =&gt; $paydate,
- 'payname' =&gt; $payname,
- 'invoicing_list' =&gt; $invoicing_list,
- 'referral_custnum' =&gt; $referral_custnum,
- 'pkgpart' =&gt; $pkgpart,
- 'username' =&gt; $username,
- '_password' =&gt; $password,
- 'popnum' =&gt; $popnum,
- } );</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>This module provides an API for a remote signup server.</P>
-<P>It needs to be run as the freeside user. Because of this, the program which
-calls these subroutines should be written very carefully.</P>
-<P>
-<HR>
-<H1><A NAME="subroutines">SUBROUTINES</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_signup_info">signup_info</A></STRONG><BR>
-<DD>
-Returns three array references of hash references.
-<P>The first set of hash references is of allowable locales. Each hash reference
-has the following keys:
- taxnum
- state
- county
- country</P>
-<P>The second set of hash references is of allowable packages. Each hash
-reference has the following keys:
- pkgpart
- pkg</P>
-<P>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</P>
-<P></P>
-<DT><STRONG><A NAME="item_new_customer_HASHREF">new_customer HASHREF</A></STRONG><BR>
-<DD>
-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
-<P>Returns a scalar error message, or the empty string for success.</P>
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><EM>fs_signupd</EM>, <A HREF="../FS/SignupServer.html">the FS::SignupServer manpage</A>, <A HREF=".././FS/cust_main.html">the FS::cust_main manpage</A></P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::UI::Base - Base class for all user-interface objects</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
- <LI><A HREF="#history">HISTORY</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::UI::Base - Base class for all user-interface objects</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::UI::SomeInterface;
- use FS::UI::some_table;</PRE>
-<PRE>
- $interface = new FS::UI::some_table;</PRE>
-<PRE>
- $error = $interface-&gt;browse;
- $error = $interface-&gt;search;
- $error = $interface-&gt;view;
- $error = $interface-&gt;edit;
- $error = $interface-&gt;process;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>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:</P>
-<PRE>
- package FS::UI::table_name;
- use vars qw ( @ISA );
- use FS::UI::Base;
- @ISA = qw( FS::UI::Base );
- sub db_table { 'table_name'; }</PRE>
-<P>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.</P>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_browse">browse</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_title">title</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_addwidget">addwidget</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: Base.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>This documentation is incomplete.</P>
-<P>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.</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF="../.././FS/UI/Gtk.html">the FS::UI::Gtk manpage</A>, <A HREF="../.././FS/UI/CGI.html">the FS::UI::CGI manpage</A></P>
-<P>
-<HR>
-<H1><A NAME="history">HISTORY</A></H1>
-<P>$Log: Base.html,v $
-<P>Revision 1.3 2002-01-29 17:42:46 ivan
-<P>weight, plan and plandata fields in part_bill_event
-<P>
-Revision 1.1 1999/08/04 09:03:53 ivan
-initial checkin of module files for proper perl installation</P>
-<P>Revision 1.1 1999/01/20 09:30:36 ivan
-skeletal cross-UI UI code.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::UI::CGI - Base class for CGI user-interface objects</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
- <LI><A HREF="#history">HISTORY</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::UI::CGI - Base class for CGI user-interface objects</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::UI::CGI;
- use FS::UI::some_table;</PRE>
-<PRE>
- $interface = new FS::UI::some_table;</PRE>
-<PRE>
- $error = $interface-&gt;browse;
- $error = $interface-&gt;search;
- $error = $interface-&gt;view;
- $error = $interface-&gt;edit;
- $error = $interface-&gt;process;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>An FS::UI::CGI object represents a CGI interface object.</P>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item__header">_header</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item__footer">_footer</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_interface">interface</A></STRONG><BR>
-<DD>
-Returns the string `CGI'. Useful for the author of a table-specific UI class
-to conditionally specify certain behaviour.
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: CGI.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>This documentation is incomplete.</P>
-<P>In _Tableborder, headers should be links that sort on their fields.</P>
-<P>_Link uses a constant $BASE_URL</P>
-<P>_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)</P>
-<P>Still some small bits of widget code same as FS::UI::Gtk.</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF="../.././FS/UI/Base.html">the FS::UI::Base manpage</A></P>
-<P>
-<HR>
-<H1><A NAME="history">HISTORY</A></H1>
-<P>$Log: CGI.html,v $
-<P>Revision 1.3 2002-01-29 17:42:46 ivan
-<P>weight, plan and plandata fields in part_bill_event
-<P>
-Revision 1.1 1999/08/04 09:03:53 ivan
-initial checkin of module files for proper perl installation</P>
-<P>Revision 1.1 1999/01/20 09:30:36 ivan
-skeletal cross-UI UI code.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::UI::Gtk - Base class for Gtk user-interface objects</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
- <LI><A HREF="#history">HISTORY</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::UI::Gtk - Base class for Gtk user-interface objects</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::UI::Gtk;
- use FS::UI::some_table;</PRE>
-<PRE>
- $interface = new FS::UI::some_table;</PRE>
-<PRE>
- $error = $interface-&gt;browse;
- $error = $interface-&gt;search;
- $error = $interface-&gt;view;
- $error = $interface-&gt;edit;
- $error = $interface-&gt;process;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>An FS::UI::Gtk object represents a Gtk user interface object.</P>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_interface">interface</A></STRONG><BR>
-<DD>
-Returns the string `Gtk'. Useful for the author of a table-specific UI class
-to conditionally specify certain behaviour.
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: Gtk.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>This documentation is incomplete.</P>
-<P>_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.</P>
-<P>There should be a persistant, per-(freeside)-user store for window positions
-and sizes and sort fields etc (see <A HREF="../.././FS/UI/CGI.html#bugs">BUGS in the FS::UI::CGI manpage</A>.</P>
-<P>Still some small bits of widget code same as FS::UI::CGI.</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF="../.././FS/UI/Base.html">the FS::UI::Base manpage</A></P>
-<P>
-<HR>
-<H1><A NAME="history">HISTORY</A></H1>
-<P>$Log: Gtk.html,v $
-<P>Revision 1.3 2002-01-29 17:42:46 ivan
-<P>weight, plan and plandata fields in part_bill_event
-<P>
-Revision 1.1 1999/08/04 09:03:53 ivan
-initial checkin of module files for proper perl installation</P>
-<P>Revision 1.1 1999/01/20 09:30:36 ivan
-skeletal cross-UI UI code.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>./FS/FS/UI/agent.pm</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-<!-- INDEX END -->
-
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::UID - Subroutines for database login and assorted other stuff</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#subroutines">SUBROUTINES</A></LI>
- <LI><A HREF="#callbacks">CALLBACKS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::UID - Subroutines for database login and assorted other stuff</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::UID qw(adminsuidsetup cgisuidsetup dbh datasrc getotaker
- checkeuid checkruid);</PRE>
-<PRE>
- adminsuidsetup $user;</PRE>
-<PRE>
- $cgi = new CGI;
- $dbh = cgisuidsetup($cgi);</PRE>
-<PRE>
- $dbh = dbh;</PRE>
-<PRE>
- $datasrc = datasrc;</PRE>
-<PRE>
- $driver_name = driver_name;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>Provides a hodgepodge of subroutines.</P>
-<P>
-<HR>
-<H1><A NAME="subroutines">SUBROUTINES</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_adminsuidsetup">adminsuidsetup USER</A></STRONG><BR>
-<DD>
-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).
-<P></P>
-<DT><STRONG><A NAME="item_cgisuidsetup_CGI_object">cgisuidsetup CGI_object</A></STRONG><BR>
-<DD>
-Takes a single argument, which is a CGI (see <A HREF=".././FS/CGI.html">the CGI manpage</A>) or Apache (see <EM>Apache</EM>)
-object (CGI::Base is depriciated). Runs cgisetotaker and then adminsuidsetup.
-<P></P>
-<DT><STRONG><A NAME="item_cgi">cgi</A></STRONG><BR>
-<DD>
-Returns the CGI (see <A HREF=".././FS/CGI.html">the CGI manpage</A>) object.
-<P></P>
-<DT><STRONG><A NAME="item_dbh">dbh</A></STRONG><BR>
-<DD>
-Returns the DBI database handle.
-<P></P>
-<DT><STRONG><A NAME="item_datasrc">datasrc</A></STRONG><BR>
-<DD>
-Returns the DBI data source.
-<P></P>
-<DT><STRONG><A NAME="item_driver_name">driver_name</A></STRONG><BR>
-<DD>
-Returns just the driver name portion of the DBI data source.
-<P></P>
-<DT><STRONG><A NAME="item_getotaker">getotaker</A></STRONG><BR>
-<DD>
-Returns the current Freeside user.
-<P></P>
-<DT><STRONG><A NAME="item_cgisetotaker">cgisetotaker</A></STRONG><BR>
-<DD>
-Sets and returns the CGI REMOTE_USER. $cgi should be defined as a CGI.pm
-object (see <A HREF=".././FS/CGI.html">the CGI manpage</A>) or an Apache object (see <EM>Apache</EM>). Support for CGI::Base
-and derived classes is depriciated.
-<P></P>
-<DT><STRONG><A NAME="item_checkeuid">checkeuid</A></STRONG><BR>
-<DD>
-Returns true if effective UID is that of the freeside user.
-<P></P>
-<DT><STRONG><A NAME="item_checkruid">checkruid</A></STRONG><BR>
-<DD>
-Returns true if the real UID is that of the freeside user.
-<P></P>
-<DT><STRONG><A NAME="item_getsecrets_%5B_USER_%5D">getsecrets [ USER ]</A></STRONG><BR>
-<DD>
-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.
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="callbacks">CALLBACKS</A></H1>
-<P>Warning: this interface is likely to change in future releases.</P>
-<P>A package can install a callback to be run in adminsuidsetup by putting a
-coderef into the hash %FS::UID::callback :</P>
-<PRE>
- $coderef = sub { warn &quot;Hi, I'm returning your call!&quot; };
- $FS::UID::callback{'Package::Name'};</PRE>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: UID.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>Too many package-global variables.</P>
-<P>Not OO.</P>
-<P>No capabilities yet. When mod_perl and Authen::DBI are implemented,
-cgisuidsetup will go away as well.</P>
-<P>Goes through contortions to support non-OO syntax with multiple datasrc's.</P>
-<P>Callbacks are inelegant.</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/CGI.html">the CGI manpage</A>, <EM>DBI</EM>, config.html from the base documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::agent - Object methods for agent records</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::agent - Object methods for agent records</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::agent;</PRE>
-<PRE>
- $record = new FS::agent \%hash;
- $record = new FS::agent { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<PRE>
- $agent_type = $record-&gt;agent_type;</PRE>
-<PRE>
- $hashref = $record-&gt;pkgpart_hashref;
- #may purchase $pkgpart if $hashref-&gt;{$pkgpart};</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>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:</P>
-<DL>
-<DT><STRONG><A NAME="item_key">agemtnum - primary key (assigned automatically for new agents)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_agent_%2D_Text_name_of_this_agent">agent - Text name of this agent</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_typenum_%2D_Agent_type%2E_See_FS%3A%3Aagent_type">typenum - Agent type. See <A HREF=".././FS/agent_type.html">the FS::agent_type manpage</A></A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_prog_%2D_For_future_use%2E">prog - For future use.</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_freq_%2D_For_future_use%2E">freq - For future use.</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new agent. To add the agent to the database, see <A HREF="#insert">insert</A>.
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this agent to the database. If there is an error, returns the error,
-otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-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.
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P>
-<DT><STRONG><A NAME="item_agent_type">agent_type</A></STRONG><BR>
-<DD>
-Returns the FS::agent_type object (see <A HREF=".././FS/agent_type.html">the FS::agent_type manpage</A>) for this agent.
-<P></P>
-<DT><STRONG><A NAME="item_pkgpart_hashref">pkgpart_hashref</A></STRONG><BR>
-<DD>
-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
-<A HREF=".././FS/part_pkg.html">the FS::part_pkg manpage</A>.
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: agent.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/agent_type.html">the FS::agent_type manpage</A>, <A HREF=".././FS/cust_main.html">the FS::cust_main manpage</A>, <A HREF=".././FS/part_pkg.html">the FS::part_pkg manpage</A>,
-schema.html from the base documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::agent_type - Object methods for agent_type records</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::agent_type - Object methods for agent_type records</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::agent_type;</PRE>
-<PRE>
- $record = new FS::agent_type \%hash;
- $record = new FS::agent_type { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<PRE>
- $hashref = $record-&gt;pkgpart_hashref;
- #may purchase $pkgpart if $hashref-&gt;{$pkgpart};</PRE>
-<PRE>
- @type_pkgs = $record-&gt;type_pkgs;</PRE>
-<PRE>
- @pkgparts = $record-&gt;pkgpart;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>An FS::agent_type object represents an agent type. Every agent (see
-<A HREF=".././FS/agent.html">the FS::agent manpage</A>) has an agent type. Agent types define which packages (see
-<A HREF=".././FS/part_pkg.html">the FS::part_pkg manpage</A>) may be purchased by customers (see <A HREF=".././FS/cust_main.html">the FS::cust_main manpage</A>), via
-FS::type_pkgs records (see <A HREF=".././FS/type_pkgs.html">the FS::type_pkgs manpage</A>). FS::agent_type inherits from
-FS::Record. The following fields are currently supported:</P>
-<DL>
-<DT><STRONG><A NAME="item_key">typenum - primary key (assigned automatically for new agent types)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_atype_%2D_Text_name_of_this_agent_type">atype - Text name of this agent type</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new agent type. To add the agent type to the database, see
-<A HREF="#insert">insert</A>.
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this agent type to the database. If there is an error, returns the error,
-otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-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.
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P>
-<DT><STRONG><A NAME="item_pkgpart_hashref">pkgpart_hashref</A></STRONG><BR>
-<DD>
-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
-<A HREF=".././FS/part_pkg.html">the FS::part_pkg manpage</A>.
-<P></P>
-<DT><STRONG><A NAME="item_type_pkgs">type_pkgs</A></STRONG><BR>
-<DD>
-Returns all FS::type_pkgs objects (see <A HREF=".././FS/type_pkgs.html">the FS::type_pkgs manpage</A>) for this agent type.
-<P></P>
-<DT><STRONG><A NAME="item_pkgpart">pkgpart</A></STRONG><BR>
-<DD>
-Returns the pkgpart of all package definitions (see <A HREF=".././FS/part_pkg.html">the FS::part_pkg manpage</A>) for this
-agent type.
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: agent_type.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/agent.html">the FS::agent manpage</A>, <A HREF=".././FS/type_pkgs.html">the FS::type_pkgs manpage</A>, <A HREF=".././FS/cust_main.html">the FS::cust_main manpage</A>,
-<A HREF=".././FS/part_pkg.html">the FS::part_pkg manpage</A>, schema.html from the base documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::cust_bill - Object methods for cust_bill records</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::cust_bill - Object methods for cust_bill records</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::cust_bill;</PRE>
-<PRE>
- $record = new FS::cust_bill \%hash;
- $record = new FS::cust_bill { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<PRE>
- ( $total_previous_balance, @previous_cust_bill ) = $record-&gt;previous;</PRE>
-<PRE>
- @cust_bill_pkg_objects = $cust_bill-&gt;cust_bill_pkg;</PRE>
-<PRE>
- ( $total_previous_credits, @previous_cust_credit ) = $record-&gt;cust_credit;</PRE>
-<PRE>
- @cust_pay_objects = $cust_bill-&gt;cust_pay;</PRE>
-<PRE>
- $tax_amount = $record-&gt;tax;</PRE>
-<PRE>
- @lines = $cust_bill-&gt;print_text;
- @lines = $cust_bill-&gt;print_text $time;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>An FS::cust_bill object represents an invoice; a declaration that a customer
-owes you money. The specific charges are itemized as <STRONG>cust_bill_pkg</STRONG> records
-(see <A HREF=".././FS/cust_bill_pkg.html">the FS::cust_bill_pkg manpage</A>). FS::cust_bill inherits from FS::Record. The
-following fields are currently supported:</P>
-<DL>
-<DT><STRONG><A NAME="item_key">invnum - primary key (assigned automatically for new invoices)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_customer">custnum - customer (see <A HREF=".././FS/cust_main.html">the FS::cust_main manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item__date_%2D_specified_as_a_UNIX_timestamp%3B_see_per">_date - specified as a UNIX timestamp; see <EM>perlfunc/``time''</EM>. Also see
-<A HREF="../Time/Local.html">the Time::Local manpage</A> and <A HREF="../Date/Parse.html">the Date::Parse manpage</A> for conversion functions.</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_charged_%2D_amount_of_this_invoice">charged - amount of this invoice</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_automatically">printed - how many times this invoice has been printed automatically
-(see <A HREF=".././FS/cust_main.html#collect">collect in the FS::cust_main manpage</A>).</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_closed_%2D_books_closed_flag%2C_empty_or_%60Y%27">closed - books closed flag, empty or `Y'</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new invoice. To add the invoice to the database, see <A HREF="#insert">insert</A>.
-Invoices are normally created by calling the bill method of a customer object
-(see <A HREF=".././FS/cust_main.html">the FS::cust_main manpage</A>).
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this invoice to the database (``Posts'' the invoice). If there is an error,
-returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Currently unimplemented. I don't remove invoices because there would then be
-no record you ever posted this invoice (which is bad, no?)
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-<P>Only printed may be changed. printed is normally updated by calling the
-collect method of a customer object (see <A HREF=".././FS/cust_main.html">the FS::cust_main manpage</A>).</P>
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P>
-<DT><STRONG><A NAME="item_previous">previous</A></STRONG><BR>
-<DD>
-Returns a list consisting of the total previous balance for this customer,
-followed by the previous outstanding invoices (as FS::cust_bill objects also).
-<P></P>
-<DT><STRONG><A NAME="item_cust_bill_pkg">cust_bill_pkg</A></STRONG><BR>
-<DD>
-Returns the line items (see <A HREF=".././FS/cust_bill_pkg.html">the FS::cust_bill_pkg manpage</A>) for this invoice.
-<P></P>
-<DT><STRONG><A NAME="item_cust_credit">cust_credit</A></STRONG><BR>
-<DD>
-Depreciated. See the cust_credited method.
-<PRE>
- #Returns a list consisting of the total previous credited (see
- #L&lt;FS::cust_credit&gt;) and unapplied for this customer, followed by the previous
- #outstanding credits (FS::cust_credit objects).</PRE>
-<P></P>
-<DT><STRONG><A NAME="item_cust_pay">cust_pay</A></STRONG><BR>
-<DD>
-Depreciated. See the cust_bill_pay method.
-<P>#Returns all payments (see <A HREF=".././FS/cust_pay.html">the FS::cust_pay manpage</A>) for this invoice.</P>
-<P></P>
-<DT><STRONG><A NAME="item_cust_bill_pay">cust_bill_pay</A></STRONG><BR>
-<DD>
-Returns all payment applications (see <A HREF=".././FS/cust_bill_pay.html">the FS::cust_bill_pay manpage</A>) for this invoice.
-<P></P>
-<DT><STRONG><A NAME="item_cust_credited">cust_credited</A></STRONG><BR>
-<DD>
-Returns all applied credits (see <A HREF=".././FS/cust_credit_bill.html">the FS::cust_credit_bill manpage</A>) for this invoice.
-<P></P>
-<DT><STRONG><A NAME="item_tax">tax</A></STRONG><BR>
-<DD>
-Returns the tax amount (see <A HREF=".././FS/cust_bill_pkg.html">the FS::cust_bill_pkg manpage</A>) for this invoice.
-<P></P>
-<DT><STRONG><A NAME="item_owed">owed</A></STRONG><BR>
-<DD>
-Returns the amount owed (still outstanding) on this invoice, which is charged
-minus all payment applications (see <A HREF=".././FS/cust_bill_pay.html">the FS::cust_bill_pay manpage</A>) and credit
-applications (see <A HREF=".././FS/cust_credit_bill.html">the FS::cust_credit_bill manpage</A>).
-<P></P>
-<DT><STRONG><A NAME="item_print_text_%5BTIME%5D%3B">print_text [TIME];</A></STRONG><BR>
-<DD>
-Returns an text invoice, as a list of lines.
-<P>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 <EM>perlfunc/``time''</EM>. Also see
-<A HREF="../Time/Local.html">the Time::Local manpage</A> and <A HREF="../Date/Parse.html">the Date::Parse manpage</A> for conversion functions.</P>
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: cust_bill.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>The delete method.</P>
-<P>print_text formatting (and some logic :/) is in source, but needs to be
-slurped in from a file. Also number of lines ($=).</P>
-<P>missing print_ps for a nice postscript copy (maybe HylaFAX-cover-page-style
-or something similar so the look can be completely customized?)</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/cust_main.html">the FS::cust_main manpage</A>, <A HREF=".././FS/cust_bill_pay.html">the FS::cust_bill_pay manpage</A>, <EM>FS:;cust_pay</EM>,
-<A HREF=".././FS/cust_bill_pkg.html">the FS::cust_bill_pkg manpage</A>, <A HREF="../FS/cust_bill_credit.html">the FS::cust_bill_credit manpage</A>, schema.html from the base
-documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::cust_bill_pkg - Object methods for cust_bill_pkg records</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::cust_bill_pkg - Object methods for cust_bill_pkg records</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::cust_bill_pkg;</PRE>
-<PRE>
- $record = new FS::cust_bill_pkg \%hash;
- $record = new FS::cust_bill_pkg { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>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:</P>
-<DL>
-<DT><STRONG><A NAME="item_invoice">invnum - invoice (see <A HREF=".././FS/cust_bill.html">the FS::cust_bill manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_package">pkgnum - package (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>) or 0 for the special virtual sales tax package</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_setup_%2D_setup_fee">setup - setup fee</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_recur_%2D_recurring_fee">recur - recurring fee</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_sdate_%2D_starting_date_of_recurring_fee">sdate - starting date of recurring fee</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_edate_%2D_ending_date_of_recurring_fee">edate - ending date of recurring fee</A></STRONG><BR>
-<DD>
-</DL>
-<P>sdate and edate are specified as UNIX timestamps; see <EM>perlfunc/``time''</EM>. Also
-see <A HREF="../Time/Local.html">the Time::Local manpage</A> and <A HREF="../Date/Parse.html">the Date::Parse manpage</A> for conversion functions.</P>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new line item. To add the line item to the database, see
-<A HREF="#insert">insert</A>. Line items are normally created by calling the bill method of a
-customer object (see <A HREF=".././FS/cust_main.html">the FS::cust_main manpage</A>).
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this line item to the database. If there is an error, returns the error,
-otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Currently unimplemented. I don't remove line items because there would then be
-no record the items ever existed (which is bad, no?)
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Currently unimplemented. This would be even more of an accounting nightmare
-than deleteing the items. Just don't do it.
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: cust_bill_pkg.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/cust_bill.html">the FS::cust_bill manpage</A>, <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>, <A HREF=".././FS/cust_main.html">the FS::cust_main manpage</A>, schema.html
-from the base documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::cust_credit - Object methods for cust_credit records</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::cust_credit - Object methods for cust_credit records</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::cust_credit;</PRE>
-<PRE>
- $record = new FS::cust_credit \%hash;
- $record = new FS::cust_credit { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>An FS::cust_credit object represents a credit; the equivalent of a negative
-<STRONG>cust_bill</STRONG> record (see <A HREF=".././FS/cust_bill.html">the FS::cust_bill manpage</A>). FS::cust_credit inherits from
-FS::Record. The following fields are currently supported:</P>
-<DL>
-<DT><STRONG><A NAME="item_key">crednum - primary key (assigned automatically for new credits)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_customer">custnum - customer (see <A HREF=".././FS/cust_main.html">the FS::cust_main manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_amount_%2D_amount_of_the_credit">amount - amount of the credit</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item__date_%2D_specified_as_a_UNIX_timestamp%3B_see_per">_date - specified as a UNIX timestamp; see <EM>perlfunc/``time''</EM>. Also see
-<A HREF="../Time/Local.html">the Time::Local manpage</A> and <A HREF="../Date/Parse.html">the Date::Parse manpage</A> for conversion functions.</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_taker">otaker - order taker (assigned automatically, see <A HREF=".././FS/UID.html">the FS::UID manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_reason_%2D_text">reason - text</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_closed_%2D_books_closed_flag%2C_empty_or_%60Y%27">closed - books closed flag, empty or `Y'</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new credit. To add the credit to the database, see <A HREF="#insert">insert</A>.
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this credit to the database (``Posts'' the credit). If there is an error,
-returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Currently unimplemented.
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Credits may not be modified; there would then be no record the credit was ever
-posted.
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P>
-<DT><STRONG><A NAME="item_cust_refund">cust_refund</A></STRONG><BR>
-<DD>
-Depreciated. See the cust_credit_refund method.
-<P>#Returns all refunds (see <A HREF=".././FS/cust_refund.html">the FS::cust_refund manpage</A>) for this credit.</P>
-<P></P>
-<DT><STRONG><A NAME="item_cust_credit_refund">cust_credit_refund</A></STRONG><BR>
-<DD>
-Returns all refund applications (see <A HREF=".././FS/cust_credit_refund.html">the FS::cust_credit_refund manpage</A>) for this credit.
-<P></P>
-<DT><STRONG><A NAME="item_cust_credit_bill">cust_credit_bill</A></STRONG><BR>
-<DD>
-Returns all application to invoices (see <A HREF=".././FS/cust_credit_bill.html">the FS::cust_credit_bill manpage</A>) for this
-credit.
-<P></P>
-<DT><STRONG><A NAME="item_credited">credited</A></STRONG><BR>
-<DD>
-Returns the amount of this credit that is still outstanding; which is
-amount minus all refund applications (see <A HREF=".././FS/cust_credit_refund.html">the FS::cust_credit_refund manpage</A>) and
-applications to invoices (see <A HREF=".././FS/cust_credit_bill.html">the FS::cust_credit_bill manpage</A>).
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: cust_credit.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>The delete method.</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/cust_credit_refund.html">the FS::cust_credit_refund manpage</A>, <A HREF=".././FS/cust_refund.html">the FS::cust_refund manpage</A>,
-<A HREF=".././FS/cust_credit_bill.html">the FS::cust_credit_bill manpage</A> <A HREF=".././FS/cust_bill.html">the FS::cust_bill manpage</A>, schema.html from the base
-documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::cust_main - Object methods for cust_main records</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#subroutines">SUBROUTINES</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::cust_main - Object methods for cust_main records</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::cust_main;</PRE>
-<PRE>
- $record = new FS::cust_main \%hash;
- $record = new FS::cust_main { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<PRE>
- @cust_pkg = $record-&gt;all_pkgs;</PRE>
-<PRE>
- @cust_pkg = $record-&gt;ncancelled_pkgs;</PRE>
-<PRE>
- @cust_pkg = $record-&gt;suspended_pkgs;</PRE>
-<PRE>
- $error = $record-&gt;bill;
- $error = $record-&gt;bill %options;
- $error = $record-&gt;bill 'time' =&gt; $time;</PRE>
-<PRE>
- $error = $record-&gt;collect;
- $error = $record-&gt;collect %options;
- $error = $record-&gt;collect 'invoice_time' =&gt; $time,
- 'batch_card' =&gt; 'yes',
- 'report_badcard' =&gt; 'yes',
- ;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>An FS::cust_main object represents a customer. FS::cust_main inherits from
-FS::Record. The following fields are currently supported:</P>
-<DL>
-<DT><STRONG><A NAME="item_key">custnum - primary key (assigned automatically for new customers)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_agent">agentnum - agent (see <A HREF=".././FS/agent.html">the FS::agent manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_referral">refnum - referral (see <A HREF=".././FS/part_referral.html">the FS::part_referral manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_first_%2D_name">first - name</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_last_%2D_name">last - name</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_number">ss - social security number (optional)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_company_%2D_%28optional%29">company - (optional)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_address1">address1</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_address2_%2D_%28optional%29">address2 - (optional)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_city">city</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_county_%2D_%28optional%2C_see_FS%3A%3Acust_main_co">county - (optional, see <A HREF=".././FS/cust_main_county.html">the FS::cust_main_county manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_state_%2D_%28see_FS%3A%3Acust_main_county%29">state - (see <A HREF=".././FS/cust_main_county.html">the FS::cust_main_county manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_zip">zip</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_country_%2D_%28see_FS%3A%3Acust_main_county%29">country - (see <A HREF=".././FS/cust_main_county.html">the FS::cust_main_county manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_phone">daytime - phone (optional)</A></STRONG><BR>
-<DD>
-<DT><STRONG>night - phone (optional)</STRONG><BR>
-<DD>
-<DT><STRONG>fax - phone (optional)</STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_ship_first_%2D_name">ship_first - name</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_ship_last_%2D_name">ship_last - name</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_ship_company_%2D_%28optional%29">ship_company - (optional)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_ship_address1">ship_address1</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_ship_address2_%2D_%28optional%29">ship_address2 - (optional)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_ship_city">ship_city</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_ship_county_%2D_%28optional%2C_see_FS%3A%3Acust_ma">ship_county - (optional, see <A HREF=".././FS/cust_main_county.html">the FS::cust_main_county manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_ship_state_%2D_%28see_FS%3A%3Acust_main_county%29">ship_state - (see <A HREF=".././FS/cust_main_county.html">the FS::cust_main_county manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_ship_zip">ship_zip</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_ship_country_%2D_%28see_FS%3A%3Acust_main_county%2">ship_country - (see <A HREF=".././FS/cust_main_county.html">the FS::cust_main_county manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG>ship_daytime - phone (optional)</STRONG><BR>
-<DD>
-<DT><STRONG>ship_night - phone (optional)</STRONG><BR>
-<DD>
-<DT><STRONG>ship_fax - phone (optional)</STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_payby_%2D_%60CARD%27_%28credit_cards%29%2C_%60BILL">payby - `CARD' (credit cards), `BILL' (billing), `COMP' (free), or `PREPAY' (special billing type: applies a credit - see <A HREF=".././FS/prepay_credit.html">the FS::prepay_credit manpage</A> and sets billing type to BILL)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_issuer">payinfo - card number, P.O., comp issuer (4-8 lowercase alphanumerics; think username) or prepayment identifier (see <A HREF=".././FS/prepay_credit.html">the FS::prepay_credit manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_paydate_%2D_expiration_date%2C_mm%2Fyyyy%2C_m%2Fyy">paydate - expiration date, mm/yyyy, m/yyyy, mm/yy or m/yy</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_payname_%2D_name_on_card_or_billing_name">payname - name on card or billing name</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_tax_%2D_tax_exempt%2C_empty_or_%60Y%27">tax - tax exempt, empty or `Y'</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_taker">otaker - order taker (assigned automatically, see <A HREF=".././FS/UID.html">the FS::UID manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_comments">comments - comments (optional)</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new customer. To add the customer to the database, see <A HREF="#insert">insert</A>.
-<P>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 <EM>hash</EM> method.</P>
-<P></P>
-<DT><STRONG><A NAME="item_insert_%5B_CUST_PKG_HASHREF_%5B_%2C_INVOICING_LIST">insert [ CUST_PKG_HASHREF [ , INVOICING_LIST_ARYREF ] ]</A></STRONG><BR>
-<DD>
-Adds this customer to the database. If there is an error, returns the error,
-otherwise returns false.
-<P>CUST_PKG_HASHREF: If you pass a Tie::RefHash data structure to the insert
-method containing FS::cust_pkg and FS::svc_<EM>tablename</EM> 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:</P>
-<PRE>
- use Tie::RefHash;
- tie %hash, 'Tie::RefHash'; #this part is important
- %hash = (
- $cust_pkg =&gt; [ $svc_acct ],
- ...
- );
- $cust_main-&gt;insert( \%hash );</PRE>
-<P>INVOICING_LIST_ARYREF: If you pass an arrarref to the insert method, it will
-be set as the invoicing list (see <A HREF="#invoicing_list">invoicing_list</A>). 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:</P>
-<PRE>
- $cust_main-&gt;insert( {}, [ $email, 'POST' ] );</PRE>
-<P></P>
-<DT><STRONG><A NAME="item_delete_NEW_CUSTNUM">delete NEW_CUSTNUM</A></STRONG><BR>
-<DD>
-This deletes the customer. If there is an error, returns the error, otherwise
-returns false.
-<P>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 <A HREF=".././FS/cust_pkg.html#cancel">cancel in the FS::cust_pkg manpage</A>).</P>
-<P>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 <A HREF=".././FS/cust_pkg.html#cancel">cancel in the FS::cust_pkg manpage</A>?</P>
-<P>You can't delete a customer with invoices (see <A HREF=".././FS/cust_bill.html">the FS::cust_bill manpage</A>),
-or credits (see <A HREF=".././FS/cust_credit.html">the FS::cust_credit manpage</A>) or payments (see <A HREF=".././FS/cust_pay.html">the FS::cust_pay manpage</A>).</P>
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD_%5B_INVOICING_LIST_ARYREF_%5D">replace OLD_RECORD [ INVOICING_LIST_ARYREF ]</A></STRONG><BR>
-<DD>
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-<P>INVOICING_LIST_ARYREF: If you pass an arrarref to the insert method, it will
-be set as the invoicing list (see <A HREF="#invoicing_list">invoicing_list</A>). Errors return as
-expected and rollback the entire transaction; it is not necessary to call
-check_invoicing_list first. Here's an example:</P>
-<PRE>
- $new_cust_main-&gt;replace( $old_cust_main, [ $email, 'POST' ] );</PRE>
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P>
-<DT><STRONG><A NAME="item_all_pkgs">all_pkgs</A></STRONG><BR>
-<DD>
-Returns all packages (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>) for this customer.
-<P></P>
-<DT><STRONG><A NAME="item_ncancelled_pkgs">ncancelled_pkgs</A></STRONG><BR>
-<DD>
-Returns all non-cancelled packages (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>) for this customer.
-<P></P>
-<DT><STRONG><A NAME="item_suspended_pkgs">suspended_pkgs</A></STRONG><BR>
-<DD>
-Returns all suspended packages (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>) for this customer.
-<P></P>
-<DT><STRONG><A NAME="item_unflagged_suspended_pkgs">unflagged_suspended_pkgs</A></STRONG><BR>
-<DD>
-Returns all unflagged suspended packages (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>) for this
-customer (thouse packages without the `manual_flag' set).
-<P></P>
-<DT><STRONG><A NAME="item_unsuspended_pkgs">unsuspended_pkgs</A></STRONG><BR>
-<DD>
-Returns all unsuspended (and uncancelled) packages (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>) for
-this customer.
-<P></P>
-<DT><STRONG><A NAME="item_unsuspend">unsuspend</A></STRONG><BR>
-<DD>
-Unsuspends all unflagged suspended packages (see <A HREF="#unflagged_suspended_pkgs">unflagged_suspended_pkgs</A>
-and <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>) for this customer. Always returns a list: an empty list
-on success or a list of errors.
-<P></P>
-<DT><STRONG><A NAME="item_suspend">suspend</A></STRONG><BR>
-<DD>
-Suspends all unsuspended packages (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>) for this customer.
-Always returns a list: an empty list on success or a list of errors.
-<P></P>
-<DT><STRONG><A NAME="item_cancel">cancel</A></STRONG><BR>
-<DD>
-Cancels all uncancelled packages (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>) for this customer.
-Always returns a list: an empty list on success or a list of errors.
-<P></P>
-<DT><STRONG><A NAME="item_bill">bill OPTIONS</A></STRONG><BR>
-<DD>
-Generates invoices (see <A HREF=".././FS/cust_bill.html">the FS::cust_bill manpage</A>) for this customer. Usually used in
-conjunction with the collect method.
-<P>Options are passed as name-value pairs.</P>
-<P>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
-<EM>perlfunc/``time''</EM>). Also see <A HREF="../Time/Local.html">the Time::Local manpage</A> and <A HREF="../Date/Parse.html">the Date::Parse manpage</A> for conversion
-functions. For example:</P>
-<PRE>
- use Date::Parse;
- ...
- $cust_main-&gt;bill( 'time' =&gt; str2time('April 20th, 2001') );</PRE>
-<P>If there is an error, returns the error, otherwise returns false.</P>
-<P></P>
-<DT><STRONG><A NAME="item_collect">collect OPTIONS</A></STRONG><BR>
-<DD>
-(Attempt to) collect money for this customer's outstanding invoices (see
-<A HREF=".././FS/cust_bill.html">the FS::cust_bill manpage</A>). Usually used after the bill method.
-<P>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').</P>
-<P>If there is an error, returns the error, otherwise returns false.</P>
-<P>Options are passed as name-value pairs.</P>
-<P>Currently available options are:</P>
-<P>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 <EM>perlfunc/``time''</EM>). Also see <A HREF="../Time/Local.html">the Time::Local manpage</A> and <A HREF="../Date/Parse.html">the Date::Parse manpage</A>
-for conversion functions.</P>
-<P>batch_card - Set this true to batch cards (see <A HREF=".././FS/cust_pay_batch.html">the FS::cust_pay_batch manpage</A>). By
-default, cards are processed immediately, which will generate an error if
-CyberCash is not installed.</P>
-<P>report_badcard - Set this true if you want bad card transactions to
-return an error. By default, they don't.</P>
-<P>force_print - force printing even if invoice has been printed more than once
-every 30 days, and don't increment the `printed' field.</P>
-<P></P>
-<DT><STRONG><A NAME="item_total_owed">total_owed</A></STRONG><BR>
-<DD>
-Returns the total owed for this customer on all invoices
-(see <A HREF=".././FS/cust_bill.html#owed">owed in the FS::cust_bill manpage</A>).
-<P></P>
-<DT><STRONG><A NAME="item_total_owed_date_TIME">total_owed_date TIME</A></STRONG><BR>
-<DD>
-Returns the total owed for this customer on all invoices with date earlier than
-TIME. TIME is specified as a UNIX timestamp; see <EM>perlfunc/``time''</EM>). Also
-see <A HREF="../Time/Local.html">the Time::Local manpage</A> and <A HREF="../Date/Parse.html">the Date::Parse manpage</A> for conversion functions.
-<P></P>
-<DT><STRONG><A NAME="item_apply_credits">apply_credits</A></STRONG><BR>
-<DD>
-Applies (see <A HREF=".././FS/cust_credit_bill.html">the FS::cust_credit_bill manpage</A>) unapplied credits (see <A HREF=".././FS/cust_credit.html">the FS::cust_credit manpage</A>)
-to outstanding invoice balances in chronological order and returns the value
-of any remaining unapplied credits available for refund
-(see <A HREF=".././FS/cust_refund.html">the FS::cust_refund manpage</A>).
-<P></P>
-<DT><STRONG><A NAME="item_apply_payments">apply_payments</A></STRONG><BR>
-<DD>
-Applies (see <A HREF=".././FS/cust_bill_pay.html">the FS::cust_bill_pay manpage</A>) unapplied payments (see <A HREF=".././FS/cust_pay.html">the FS::cust_pay manpage</A>)
-to outstanding invoice balances in chronological order.
-<PRE>
- #and returns the value of any remaining unapplied payments.</PRE>
-<P></P>
-<DT><STRONG><A NAME="item_total_credited">total_credited</A></STRONG><BR>
-<DD>
-Returns the total outstanding credit (see <A HREF=".././FS/cust_credit.html">the FS::cust_credit manpage</A>) for this
-customer. See <A HREF=".././FS/cust_credit.html#credited">credited in the FS::cust_credit manpage</A>.
-<P></P>
-<DT><STRONG><A NAME="item_total_unapplied_payments">total_unapplied_payments</A></STRONG><BR>
-<DD>
-Returns the total unapplied payments (see <A HREF=".././FS/cust_pay.html">the FS::cust_pay manpage</A>) for this customer.
-See <A HREF=".././FS/cust_pay.html#unapplied">unapplied in the FS::cust_pay manpage</A>.
-<P></P>
-<DT><STRONG><A NAME="item_balance">balance</A></STRONG><BR>
-<DD>
-Returns the balance for this customer (total_owed minus total_credited
-minus total_unapplied_payments).
-<P></P>
-<DT><STRONG><A NAME="item_balance_date_TIME">balance_date TIME</A></STRONG><BR>
-<DD>
-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
-<EM>perlfunc/``time''</EM>). Also see <A HREF="../Time/Local.html">the Time::Local manpage</A> and <A HREF="../Date/Parse.html">the Date::Parse manpage</A> for conversion
-functions.
-<P></P>
-<DT><STRONG><A NAME="item_invoicing_list_%5B_ARRAYREF_%5D">invoicing_list [ ARRAYREF ]</A></STRONG><BR>
-<DD>
-If an arguement is given, sets these email addresses as invoice recipients
-(see <A HREF=".././FS/cust_main_invoice.html">the FS::cust_main_invoice manpage</A>). Errors are not fatal and are not reported
-(except as warnings), so use check_invoicing_list first.
-<P>Returns a list of email addresses (with svcnum entries expanded).</P>
-<P>Note: You can clear the invoicing list by passing an empty ARRAYREF. You can
-check it without disturbing anything by passing nothing.</P>
-<P>This interface may change in the future.</P>
-<P></P>
-<DT><STRONG><A NAME="item_check_invoicing_list_ARRAYREF">check_invoicing_list ARRAYREF</A></STRONG><BR>
-<DD>
-Checks these arguements as valid input for the invoicing_list method. If there
-is an error, returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_default_invoicing_list">default_invoicing_list</A></STRONG><BR>
-<DD>
-Sets the invoicing list to all accounts associated with this customer.
-<P></P>
-<DT><STRONG><A NAME="item_invoicing_list_addpost">invoicing_list_addpost</A></STRONG><BR>
-<DD>
-Adds postal invoicing to this customer. If this customer is already configured
-to receive postal invoices, does nothing.
-<P></P>
-<DT><STRONG><A NAME="item_referral_cust_main_%5B_DEPTH_%5B_EXCLUDE_HASHREF_%">referral_cust_main [ DEPTH [ EXCLUDE_HASHREF ] ]</A></STRONG><BR>
-<DD>
-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).
-<P></P>
-<DT><STRONG><A NAME="item_referral_cust_pkg_%5B_DEPTH_%5D">referral_cust_pkg [ DEPTH ]</A></STRONG><BR>
-<DD>
-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).
-<P></P>
-<DT><STRONG><A NAME="item_credit">credit AMOUNT, REASON</A></STRONG><BR>
-<DD>
-Applies a credit to this customer. If there is an error, returns the error,
-otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_charge">charge AMOUNT PKG COMMENT</A></STRONG><BR>
-<DD>
-Creates a one-time charge for this customer. If there is an error, returns
-the error, otherwise returns false.
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="subroutines">SUBROUTINES</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_check_and_rebuild_fuzzyfiles">check_and_rebuild_fuzzyfiles</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_rebuild_fuzzyfiles">rebuild_fuzzyfiles</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_all_last">all_last</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_all_company">all_company</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_append_fuzzyfiles_LASTNAME_COMPANY">append_fuzzyfiles LASTNAME COMPANY</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: cust_main.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>The delete method.</P>
-<P>The delete method should possibly take an FS::cust_main object reference
-instead of a scalar customer number.</P>
-<P>Bill and collect options should probably be passed as references instead of a
-list.</P>
-<P>CyberCash v2 forces us to define some variables in package main.</P>
-<P>There should probably be a configuration file with a list of allowed credit
-card types.</P>
-<P>No multiple currency support (probably a larger project than just this module).</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>, <A HREF=".././FS/cust_bill.html">the FS::cust_bill manpage</A>, <A HREF=".././FS/cust_credit.html">the FS::cust_credit manpage</A>
-<A HREF=".././FS/cust_pay_batch.html">the FS::cust_pay_batch manpage</A>, <A HREF=".././FS/agent.html">the FS::agent manpage</A>, <A HREF=".././FS/part_referral.html">the FS::part_referral manpage</A>,
-<A HREF=".././FS/cust_main_county.html">the FS::cust_main_county manpage</A>, <A HREF=".././FS/cust_main_invoice.html">the FS::cust_main_invoice manpage</A>,
-<A HREF=".././FS/UID.html">the FS::UID manpage</A>, schema.html from the base documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::cust_main_county - Object methods for cust_main_county objects</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::cust_main_county - Object methods for cust_main_county objects</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::cust_main_county;</PRE>
-<PRE>
- $record = new FS::cust_main_county \%hash;
- $record = new FS::cust_main_county { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>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:</P>
-<DL>
-<DT><STRONG><A NAME="item_key">taxnum - primary key (assigned automatically for new tax rates)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_state">state</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_county">county</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_country">country</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_tax_%2D_percentage">tax - percentage</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new tax rate. To add the tax rate to the database, see <A HREF="#insert">insert</A>.
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this tax rate to the database. If there is an error, returns the error,
-otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Deletes this tax rate from the database. If there is an error, returns the
-error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: cust_main_county.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/cust_main.html">the FS::cust_main manpage</A>, <A HREF=".././FS/cust_bill.html">the FS::cust_bill manpage</A>, schema.html from the base
-documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::cust_main_invoice - Object methods for cust_main_invoice records</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::cust_main_invoice - Object methods for cust_main_invoice records</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::cust_main_invoice;</PRE>
-<PRE>
- $record = new FS::cust_main_invoice \%hash;
- $record = new FS::cust_main_invoice { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<PRE>
- $email_address = $record-&gt;address;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>An FS::cust_main_invoice object represents an invoice destination. FS::cust_main_invoice inherits from
-FS::Record. The following fields are currently supported:</P>
-<DL>
-<DT><STRONG><A NAME="item_destnum_%2D_primary_key">destnum - primary key</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_customer">custnum - customer (see <A HREF=".././FS/cust_main.html">the FS::cust_main manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_svcnum">dest - Invoice destination: If numeric, a svcnum (see <A HREF=".././FS/svc_acct.html">the FS::svc_acct manpage</A>), if string, a literal email address, or `POST' to enable mailing (the default if no cust_main_invoice records exist)</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new invoice destination. To add the invoice destination to the database, see <A HREF="#insert">insert</A>.
-<P>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 <EM>hash</EM> method.</P>
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Delete this record from the database.
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P>
-<DT><STRONG><A NAME="item_checkdest">checkdest</A></STRONG><BR>
-<DD>
-Checks the dest field only. If it finds that the account ends in the
-same domain configured as the <STRONG>domain</STRONG> configuration file, it will change the
-invoice destination from an email address to a service number (see
-<A HREF=".././FS/svc_acct.html">the FS::svc_acct manpage</A>).
-<P></P>
-<DT><STRONG><A NAME="item_address">address</A></STRONG><BR>
-<DD>
-Returns the literal email address for this record (or `POST').
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: cust_main_invoice.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/cust_main.html">the FS::cust_main manpage</A></P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::cust_pay - Object methods for cust_pay objects</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::cust_pay - Object methods for cust_pay objects</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::cust_pay;</PRE>
-<PRE>
- $record = new FS::cust_pay \%hash;
- $record = new FS::cust_pay { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>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:</P>
-<DL>
-<DT><STRONG><A NAME="item_key">paynum - primary key (assigned automatically for new payments)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_customer">custnum - customer (see <A HREF=".././FS/cust_main.html">the FS::cust_main manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_paid_%2D_Amount_of_this_payment">paid - Amount of this payment</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item__date_%2D_specified_as_a_UNIX_timestamp%3B_see_per">_date - specified as a UNIX timestamp; see <EM>perlfunc/``time''</EM>. Also see
-<A HREF="../Time/Local.html">the Time::Local manpage</A> and <A HREF="../Date/Parse.html">the Date::Parse manpage</A> for conversion functions.</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_payby_%2D_%60CARD%27_%28credit_cards%29%2C_%60BILL">payby - `CARD' (credit cards), `BILL' (billing), or `COMP' (free)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_issuer">payinfo - card number, check #, or comp issuer (4-8 lowercase alphanumerics; think username), respectively</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_paybatch_%2D_text_field_for_tracking_card_processi">paybatch - text field for tracking card processing</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_closed_%2D_books_closed_flag%2C_empty_or_%60Y%27">closed - books closed flag, empty or `Y'</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new payment. To add the payment to the databse, see <A HREF="#insert">insert</A>.
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this payment to the database.
-<P>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.</P>
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Currently unimplemented (accounting reasons).
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Currently unimplemented (accounting reasons).
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P>
-<DT><STRONG><A NAME="item_cust_bill_pay">cust_bill_pay</A></STRONG><BR>
-<DD>
-Returns all applications to invoices (see <A HREF=".././FS/cust_bill_pay.html">the FS::cust_bill_pay manpage</A>) for this
-payment.
-<P></P>
-<DT><STRONG><A NAME="item_unapplied">unapplied</A></STRONG><BR>
-<DD>
-Returns the amount of this payment that is still unapplied; which is
-paid minus all payment applications (see <A HREF=".././FS/cust_bill_pay.html">the FS::cust_bill_pay manpage</A>).
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: cust_pay.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>Delete and replace methods.</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/cust_bill_pay.html">the FS::cust_bill_pay manpage</A>, <A HREF=".././FS/cust_bill.html">the FS::cust_bill manpage</A>, <A HREF=".././FS/Record.html">the FS::Record manpage</A>, schema.html from the
-base documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::cust_pay_batch - Object methods for batch cards</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::cust_pay_batch - Object methods for batch cards</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::cust_pay_batch;</PRE>
-<PRE>
- $record = new FS::cust_pay_batch \%hash;
- $record = new FS::cust_pay_batch { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>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:</P>
-<DL>
-<DT><STRONG><A NAME="item_key">paybatchnum - primary key (automatically assigned)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_cardnum">cardnum</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_exp_%2D_card_expiration">exp - card expiration</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_amount">amount</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_invnum_%2D_invoice">invnum - invoice</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_custnum_%2D_customer">custnum - customer</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_payname_%2D_name_on_card">payname - name on card</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_first_%2D_name">first - name</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_last_%2D_name">last - name</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_address1">address1</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_address2">address2</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_city">city</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_state">state</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_zip">zip</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_country">country</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new record. To add the record to the database, see <A HREF="#insert">insert</A>.
-<P>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 <EM>hash</EM> method.</P>
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Delete this record from the database. If there is an error, returns the error,
-otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-#inactive
-#
-#Replaces the OLD_RECORD with this one in the database. If there is an error,
-#returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: cust_pay_batch.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>There should probably be a configuration file with a list of allowed credit
-card types.</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/cust_main.html">the FS::cust_main manpage</A>, <A HREF=".././FS/Record.html">the FS::Record manpage</A></P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::cust_pkg - Object methods for cust_pkg objects</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#subroutines">SUBROUTINES</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::cust_pkg - Object methods for cust_pkg objects</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::cust_pkg;</PRE>
-<PRE>
- $record = new FS::cust_pkg \%hash;
- $record = new FS::cust_pkg { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<PRE>
- $error = $record-&gt;cancel;</PRE>
-<PRE>
- $error = $record-&gt;suspend;</PRE>
-<PRE>
- $error = $record-&gt;unsuspend;</PRE>
-<PRE>
- $part_pkg = $record-&gt;part_pkg;</PRE>
-<PRE>
- @labels = $record-&gt;labels;</PRE>
-<PRE>
- $seconds = $record-&gt;seconds_since($timestamp);</PRE>
-<PRE>
- $error = FS::cust_pkg::order( $custnum, \@pkgparts );
- $error = FS::cust_pkg::order( $custnum, \@pkgparts, \@remove_pkgnums ] );</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>An FS::cust_pkg object represents a customer billing item. FS::cust_pkg
-inherits from FS::Record. The following fields are currently supported:</P>
-<DL>
-<DT><STRONG><A NAME="item_key">pkgnum - primary key (assigned automatically for new billing items)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_Customer">custnum - Customer (see <A HREF=".././FS/cust_main.html">the FS::cust_main manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_definition">pkgpart - Billing item definition (see <A HREF=".././FS/part_pkg.html">the FS::part_pkg manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_setup_%2D_date">setup - date</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_bill_%2D_date">bill - date</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_susp_%2D_date">susp - date</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_expire_%2D_date">expire - date</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_cancel_%2D_date">cancel - date</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_taker">otaker - order taker (assigned automatically if null, see <A HREF=".././FS/UID.html">the FS::UID manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_manual_flag_%2D_If_this_field_is_set_to_1%2C_disab">manual_flag - If this field is set to 1, disables the automatic
-unsuspension of this package when using the <STRONG>unsuspendauto</STRONG> config file.</A></STRONG><BR>
-<DD>
-</DL>
-<P>Note: setup, bill, susp, expire and cancel are specified as UNIX timestamps;
-see <EM>perlfunc/``time''</EM>. Also see <A HREF="../Time/Local.html">the Time::Local manpage</A> and <A HREF="../Date/Parse.html">the Date::Parse manpage</A> for
-conversion functions.</P>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Create a new billing item. To add the item to the database, see <A HREF="#insert">insert</A>.
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this billing item to the database (``Orders'' the item). If there is an
-error, returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-This method now works but you probably shouldn't use it.
-<P>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.</P>
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-<P>Currently, custnum, setup, bill, susp, expire, and cancel may be changed.</P>
-<P>Changing pkgpart may have disasterous effects. See the order subroutine.</P>
-<P>setup and bill are normally updated by calling the bill method of a customer
-object (see <A HREF=".././FS/cust_main.html">the FS::cust_main manpage</A>).</P>
-<P>suspend is normally updated by the suspend and unsuspend methods.</P>
-<P>cancel is normally updated by the cancel method (and also the order subroutine
-in some cases).</P>
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P>
-<DT><STRONG><A NAME="item_cancel">cancel</A></STRONG><BR>
-<DD>
-Cancels and removes all services (see <A HREF=".././FS/cust_svc.html">the FS::cust_svc manpage</A> and <A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>)
-in this package, then cancels the package itself (sets the cancel field to
-now).
-<P>If there is an error, returns the error, otherwise returns false.</P>
-<P></P>
-<DT><STRONG><A NAME="item_suspend">suspend</A></STRONG><BR>
-<DD>
-Suspends all services (see <A HREF=".././FS/cust_svc.html">the FS::cust_svc manpage</A> and <A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>) in this
-package, then suspends the package itself (sets the susp field to now).
-<P>If there is an error, returns the error, otherwise returns false.</P>
-<P></P>
-<DT><STRONG><A NAME="item_unsuspend">unsuspend</A></STRONG><BR>
-<DD>
-Unsuspends all services (see <A HREF=".././FS/cust_svc.html">the FS::cust_svc manpage</A> and <A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>) in this
-package, then unsuspends the package itself (clears the susp field).
-<P>If there is an error, returns the error, otherwise returns false.</P>
-<P></P>
-<DT><STRONG><A NAME="item_part_pkg">part_pkg</A></STRONG><BR>
-<DD>
-Returns the definition for this billing item, as an FS::part_pkg object (see
-<A HREF=".././FS/part_pkg.html">the FS::part_pkg manpage</A>).
-<P></P>
-<DT><STRONG><A NAME="item_cust_svc">cust_svc</A></STRONG><BR>
-<DD>
-Returns the services for this package, as FS::cust_svc objects (see
-<A HREF=".././FS/cust_svc.html">the FS::cust_svc manpage</A>)
-<P></P>
-<DT><STRONG><A NAME="item_labels">labels</A></STRONG><BR>
-<DD>
-Returns a list of lists, calling the label method for all services
-(see <A HREF=".././FS/cust_svc.html">the FS::cust_svc manpage</A>) of this billing item.
-<P></P>
-<DT><STRONG><A NAME="item_cust_main">cust_main</A></STRONG><BR>
-<DD>
-Returns the parent customer object (see <A HREF=".././FS/cust_main.html">the FS::cust_main manpage</A>).
-<P></P>
-<DT><STRONG><A NAME="item_seconds_since_TIMESTAMP">seconds_since TIMESTAMP</A></STRONG><BR>
-<DD>
-Returns the number of seconds all accounts (see <A HREF=".././FS/svc_acct.html">the FS::svc_acct manpage</A>) in this
-package have been online since TIMESTAMP.
-<P>TIMESTAMP is specified as a UNIX timestamp; see <EM>perlfunc/``time''</EM>. Also see
-<A HREF="../Time/Local.html">the Time::Local manpage</A> and <A HREF="../Date/Parse.html">the Date::Parse manpage</A> for conversion functions.</P>
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="subroutines">SUBROUTINES</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_order_CUSTNUM%2C_PKGPARTS_ARYREF%2C_%5B_REMOVE_PKG">order CUSTNUM, PKGPARTS_ARYREF, [ REMOVE_PKGNUMS_ARYREF [ RETURN_CUST_PKG_ARRAYREF ] ]</A></STRONG><BR>
-<DD>
-CUSTNUM is a customer (see <A HREF=".././FS/cust_main.html">the FS::cust_main manpage</A>)
-<P>PKGPARTS is a list of pkgparts specifying the the billing item definitions (see
-<A HREF=".././FS/part_pkg.html">the FS::part_pkg manpage</A>) to order for this customer. Duplicates are of course
-permitted.</P>
-<P>REMOVE_PKGNUMS is an optional list of pkgnums specifying the billing items to
-remove for this customer. The services (see <A HREF=".././FS/cust_svc.html">the FS::cust_svc manpage</A>) are moved to the
-new billing items. An error is returned if this is not possible (see
-<A HREF=".././FS/pkg_svc.html">the FS::pkg_svc manpage</A>). An empty arrayref is equivalent to not specifying this
-parameter.</P>
-<P>RETURN_CUST_PKG_ARRAYREF, if specified, will be filled in with the
-newly-created cust_pkg objects.</P>
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: cust_pkg.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>sub order is not OO. Perhaps it should be moved to FS::cust_main and made so?</P>
-<P>In sub order, the @pkgparts array (passed by reference) is clobbered.</P>
-<P>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.</P>
-<P>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.</P>
-<P>Now that things are transactional should the check in the insert method be
-moved to check ?</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/cust_main.html">the FS::cust_main manpage</A>, <A HREF=".././FS/part_pkg.html">the FS::part_pkg manpage</A>, <A HREF=".././FS/cust_svc.html">the FS::cust_svc manpage</A>,
-<A HREF=".././FS/pkg_svc.html">the FS::pkg_svc manpage</A>, schema.html from the base documentation</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::cust_refund - Object method for cust_refund objects</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::cust_refund - Object method for cust_refund objects</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::cust_refund;</PRE>
-<PRE>
- $record = new FS::cust_refund \%hash;
- $record = new FS::cust_refund { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>An FS::cust_refund represents a refund: the transfer of money to a customer;
-equivalent to a negative payment (see <A HREF=".././FS/cust_pay.html">the FS::cust_pay manpage</A>). FS::cust_refund
-inherits from FS::Record. The following fields are currently supported:</P>
-<DL>
-<DT><STRONG><A NAME="item_key">refundnum - primary key (assigned automatically for new refunds)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_customer">custnum - customer (see <A HREF=".././FS/cust_main.html">the FS::cust_main manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_refund_%2D_Amount_of_the_refund">refund - Amount of the refund</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item__date_%2D_specified_as_a_UNIX_timestamp%3B_see_per">_date - specified as a UNIX timestamp; see <EM>perlfunc/``time''</EM>. Also see
-<A HREF="../Time/Local.html">the Time::Local manpage</A> and <A HREF="../Date/Parse.html">the Date::Parse manpage</A> for conversion functions.</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_payby_%2D_%60CARD%27_%28credit_cards%29%2C_%60BILL">payby - `CARD' (credit cards), `BILL' (billing), or `COMP' (free)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_issuer">payinfo - card number, P.O.#, or comp issuer (4-8 lowercase alphanumerics; think username)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_paybatch_%2D_text_field_for_tracking_card_processi">paybatch - text field for tracking card processing</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_taker">otaker - order taker (assigned automatically, see <A HREF=".././FS/UID.html">the FS::UID manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_closed_%2D_books_closed_flag%2C_empty_or_%60Y%27">closed - books closed flag, empty or `Y'</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new refund. To add the refund to the database, see <A HREF="#insert">insert</A>.
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this refund to the database.
-<P>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.</P>
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Currently unimplemented (accounting reasons).
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Currently unimplemented (accounting reasons).
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: cust_refund.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>Delete and replace methods.</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/cust_credit.html">the FS::cust_credit manpage</A>, schema.html from the base documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::cust_svc - Object method for cust_svc objects</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::cust_svc - Object method for cust_svc objects</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::cust_svc;</PRE>
-<PRE>
- $record = new FS::cust_svc \%hash
- $record = new FS::cust_svc { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<PRE>
- ($label, $value) = $record-&gt;label;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>An FS::cust_svc represents a service. FS::cust_svc inherits from FS::Record.
-The following fields are currently supported:</P>
-<DL>
-<DT><STRONG><A NAME="item_key">svcnum - primary key (assigned automatically for new services)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_Package">pkgnum - Package (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_definition">svcpart - Service definition (see <A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>)</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new service. To add the refund to the database, see <A HREF="#insert">insert</A>.
-Services are normally created by creating FS::svc_ objects (see
-<A HREF=".././FS/svc_acct.html">the FS::svc_acct manpage</A>, <A HREF=".././FS/svc_domain.html">the FS::svc_domain manpage</A>, and <A HREF=".././FS/svc_forward.html">the FS::svc_forward manpage</A>, among others).
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this service to the database. If there is an error, returns the error,
-otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Deletes this service from the database. If there is an error, returns the
-error, otherwise returns false.
-<P>Called by the cancel method of the package (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>).</P>
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P>
-<DT><STRONG><A NAME="item_part_svc">part_svc</A></STRONG><BR>
-<DD>
-Returns the definition for this service, as a FS::part_svc object (see
-<A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>).
-<P></P>
-<DT><STRONG><A NAME="item_cust_pkg">cust_pkg</A></STRONG><BR>
-<DD>
-Returns the definition for this service, as a FS::part_svc object (see
-<A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>).
-<P></P>
-<DT><STRONG><A NAME="item_label">label</A></STRONG><BR>
-<DD>
-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
-<P></P>
-<DT><STRONG><A NAME="item_svc_x">svc_x</A></STRONG><BR>
-<DD>
-Returns the FS::svc_XXX object for this service (i.e. an FS::svc_acct object or
-FS::svc_domain object, etc.)
-<P></P>
-<DT><STRONG><A NAME="item_seconds_since_TIMESTAMP">seconds_since TIMESTAMP</A></STRONG><BR>
-<DD>
-See <A HREF=".././FS/svc_acct.html#seconds_since">seconds_since in the FS::svc_acct manpage</A>. Equivalent to
-$cust_svc-&gt;svc_x-&gt;seconds_since, but more efficient. Meaningless for records
-where <STRONG>svcdb</STRONG> is not ``svc_acct''.
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: cust_svc.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>Behaviour of changing the svcpart of cust_svc records is undefined and should
-possibly be prohibited, and pkg_svc records are not checked.</P>
-<P>pkg_svc records are not checked in general (here).</P>
-<P>Deleting this record doesn't check or delete the svc_* record associated
-with this record.</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>, <A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>, <A HREF=".././FS/pkg_svc.html">the FS::pkg_svc manpage</A>,
-schema.html from the base documentation</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::domain_record - Object methods for domain_record records</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::domain_record - Object methods for domain_record records</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::domain_record;</PRE>
-<PRE>
- $record = new FS::domain_record \%hash;
- $record = new FS::domain_record { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>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:</P>
-<DL>
-<DT><STRONG><A NAME="item_recnum_%2D_primary_key">recnum - primary key</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_Domain">svcnum - Domain (see <A HREF=".././FS/svc_domain.html">the FS::svc_domain manpage</A>) of this entry</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_partial">reczone - partial (or full) zone for this entry</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_recaf_%2D_address_family_for_this_entry%2C_current">recaf - address family for this entry, currently only `IN' is recognized.</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_entry">rectype - record type for this entry (A, MX, etc.)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_recdata_%2D_data_for_this_entry">recdata - data for this entry</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new entry. To add the example to the database, see <A HREF="#insert">insert</A>.
-<P>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 <EM>hash</EM> method.</P>
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Delete this record from the database.
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: domain_record.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>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. :)</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, schema.html from the base documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::nas - Object methods for nas records</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::nas - Object methods for nas records</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::nas;</PRE>
-<PRE>
- $record = new FS::nas \%hash;
- $record = new FS::nas {
- 'nasnum' =&gt; 1,
- 'nasip' =&gt; '10.4.20.23',
- 'nasfqdn' =&gt; 'box1.brc.nv.us.example.net',
- };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<PRE>
- $error = $record-&gt;heartbeat($timestamp);</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>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:</P>
-<DL>
-<DT><STRONG><A NAME="item_nasnum_%2D_primary_key">nasnum - primary key</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_nas_%2D_NAS_name">nas - NAS name</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_nasip_%2D_NAS_ip_address">nasip - NAS ip address</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_nasfqdn_%2D_NAS_fully%2Dqualified_domain_name">nasfqdn - NAS fully-qualified domain name</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_state">last - timestamp indicating the last instant the NAS was in a known
- state (used by the session monitoring).</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new NAS. To add the NAS to the database, see <A HREF="#insert">insert</A>.
-<P>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 <EM>hash</EM> method.</P>
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Delete this record from the database.
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P>
-<DT><STRONG><A NAME="item_heartbeat">heartbeat TIMESTAMP</A></STRONG><BR>
-<DD>
-Updates the timestamp for this nas
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: nas.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, schema.html from the base documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::part_pkg - Object methods for part_pkg objects</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::part_pkg - Object methods for part_pkg objects</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::part_pkg;</PRE>
-<PRE>
- $record = new FS::part_pkg \%hash
- $record = new FS::part_pkg { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $custom_record = $template_record-&gt;clone;</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<PRE>
- @pkg_svc = $record-&gt;pkg_svc;</PRE>
-<PRE>
- $svcnum = $record-&gt;svcpart;
- $svcnum = $record-&gt;svcpart( 'svc_acct' );</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>An FS::part_pkg object represents a billing item definition. FS::part_pkg
-inherits from FS::Record. The following fields are currently supported:</P>
-<DL>
-<DT><STRONG><A NAME="item_key">pkgpart - primary key (assigned automatically for new billing item definitions)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_definition">pkg - Text name of this billing item definition (customer-viewable)</A></STRONG><BR>
-<DD>
-<DT><STRONG>comment - Text name of this billing item definition (non-customer-viewable)</STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_setup_%2D_Setup_fee_expression">setup - Setup fee expression</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_freq_%2D_Frequency_of_recurring_fee">freq - Frequency of recurring fee</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_recur_%2D_Recurring_fee_expression">recur - Recurring fee expression</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_setuptax_%2D_Setup_fee_tax_exempt_flag%2C_empty_or">setuptax - Setup fee tax exempt flag, empty or `Y'</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_recurtax_%2D_Recurring_fee_tax_exempt_flag%2C_empt">recurtax - Recurring fee tax exempt flag, empty or `Y'</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_plan_%2D_Price_plan">plan - Price plan</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_plandata_%2D_Price_plan_data">plandata - Price plan data</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_disabled_%2D_Disabled_flag%2C_empty_or_%60Y%27">disabled - Disabled flag, empty or `Y'</A></STRONG><BR>
-<DD>
-</DL>
-<P>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.</P>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new billing item definition. To add the billing item definition to
-the database, see <A HREF="#insert">insert</A>.
-<P></P>
-<DT><STRONG><A NAME="item_clone">clone</A></STRONG><BR>
-<DD>
-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
-<A HREF="#insert">insert</A>.
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this billing item definition to the database. If there is an error,
-returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Currently unimplemented.
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P>
-<DT><STRONG><A NAME="item_pkg_svc">pkg_svc</A></STRONG><BR>
-<DD>
-Returns all FS::pkg_svc objects (see <A HREF=".././FS/pkg_svc.html">the FS::pkg_svc manpage</A>) for this package
-definition (with non-zero quantity).
-<P></P>
-<DT><STRONG><A NAME="item_svcpart_%5B_SVCDB_%5D">svcpart [ SVCDB ]</A></STRONG><BR>
-<DD>
-Returns the svcpart of a single service definition (see <A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>)
-associated with this billing item definition (see <A HREF=".././FS/pkg_svc.html">the FS::pkg_svc manpage</A>). 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,
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: part_pkg.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>The delete method is unimplemented.</P>
-<P>setup and recur semantics are not yet defined (and are implemented in
-FS::cust_bill. hmm.).</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>, <A HREF=".././FS/type_pkgs.html">the FS::type_pkgs manpage</A>, <A HREF=".././FS/pkg_svc.html">the FS::pkg_svc manpage</A>, <EM>Safe</EM>.
-schema.html from the base documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::part_referral - Object methods for part_referral objects</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::part_referral - Object methods for part_referral objects</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::part_referral;</PRE>
-<PRE>
- $record = new FS::part_referral \%hash
- $record = new FS::part_referral { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>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:</P>
-<DL>
-<DT><STRONG><A NAME="item_key">refnum - primary key (assigned automatically for new referrals)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_referral_%2D_Text_name_of_this_referral">referral - Text name of this referral</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new referral. To add the referral to the database, see <A HREF="#insert">insert</A>.
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this referral to the database. If there is an error, returns the error,
-otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Currently unimplemented.
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: part_referral.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>The delete method is unimplemented.</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/cust_main.html">the FS::cust_main manpage</A>, schema.html from the base documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::part_svc - Object methods for part_svc objects</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::part_svc - Object methods for part_svc objects</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::part_svc;</PRE>
-<PRE>
- $record = new FS::part_svc \%hash
- $record = new FS::part_svc { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>An FS::part_svc represents a service definition. FS::part_svc inherits from
-FS::Record. The following fields are currently supported:</P>
-<DL>
-<DT><STRONG><A NAME="item_key">svcpart - primary key (assigned automatically for new service definitions)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_svc_%2D_text_name_of_this_service_definition">svc - text name of this service definition</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_svcdb_%2D_table_used_for_this_service%2E_See_FS%3A">svcdb - table used for this service. See <A HREF=".././FS/svc_acct.html">the FS::svc_acct manpage</A>,
-<A HREF=".././FS/svc_domain.html">the FS::svc_domain manpage</A>, and <A HREF=".././FS/svc_forward.html">the FS::svc_forward manpage</A>, among others.</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_disabled_%2D_Disabled_flag%2C_empty_or_%60Y%27">disabled - Disabled flag, empty or `Y'</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new service definition. To add the service definition to the
-database, see <A HREF="#insert">insert</A>.
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this service definition to the database. If there is an error, returns
-the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_svcdb__field_%2D_Default_or_fixed_value_for_field_"><EM>svcdb</EM>__<EM>field</EM> - Default or fixed value for <EM>field</EM> in <EM>svcdb</EM>.</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_svcdb__field_flag_%2D_defines_svcdb__field_action%"><EM>svcdb</EM>__<EM>field</EM>_flag - defines <EM>svcdb</EM>__<EM>field</EM> action: null, `D' for default, or `F' for fixed</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Currently unimplemented.
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P>
-<DT><STRONG><A NAME="item_part_svc_column_COLUMNNAME">part_svc_column COLUMNNAME</A></STRONG><BR>
-<DD>
-Returns the part_svc_column object (see <A HREF=".././FS/part_svc_column.html">the FS::part_svc_column manpage</A>) for the given
-COLUMNNAME, or a new part_svc_column object if none exists.
-<P></P>
-<DT><STRONG><A NAME="item_all_part_svc_column">all_part_svc_column</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: part_svc.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>Delete is unimplemented.</P>
-<P>The list of svc_* tables is hardcoded. When svc_acct_pop is renamed, this
-should be fixed.</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/part_svc_column.html">the FS::part_svc_column manpage</A>, <A HREF=".././FS/part_pkg.html">the FS::part_pkg manpage</A>, <A HREF=".././FS/pkg_svc.html">the FS::pkg_svc manpage</A>,
-<A HREF=".././FS/cust_svc.html">the FS::cust_svc manpage</A>, <A HREF=".././FS/svc_acct.html">the FS::svc_acct manpage</A>, <A HREF=".././FS/svc_forward.html">the FS::svc_forward manpage</A>, <A HREF=".././FS/svc_domain.html">the FS::svc_domain manpage</A>,
-schema.html from the base documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::pkg_svc - Object methods for pkg_svc records</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::pkg_svc - Object methods for pkg_svc records</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::pkg_svc;</PRE>
-<PRE>
- $record = new FS::pkg_svc \%hash;
- $record = new FS::pkg_svc { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<PRE>
- $part_pkg = $record-&gt;part_pkg;</PRE>
-<PRE>
- $part_svc = $record-&gt;part_svc;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>An FS::pkg_svc record links a billing item definition (see <A HREF=".././FS/part_pkg.html">the FS::part_pkg manpage</A>) to
-a service definition (see <A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>). FS::pkg_svc inherits from
-FS::Record. The following fields are currently supported:</P>
-<DL>
-<DT><STRONG><A NAME="item_definition">pkgpart - Billing item definition (see <A HREF=".././FS/part_pkg.html">the FS::part_pkg manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG>svcpart - Service definition (see <A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>)</STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_quantity_%2D_Quantity_of_this_service_definition_t">quantity - Quantity of this service definition that this billing item
-definition includes</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Create a new record. To add the record to the database, see <A HREF="#insert">insert</A>.
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Deletes this record from the database. If there is an error, returns the
-error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P>
-<DT><STRONG><A NAME="item_part_pkg">part_pkg</A></STRONG><BR>
-<DD>
-Returns the FS::part_pkg object (see <A HREF=".././FS/part_pkg.html">the FS::part_pkg manpage</A>).
-<P></P>
-<DT><STRONG><A NAME="item_part_svc">part_svc</A></STRONG><BR>
-<DD>
-Returns the FS::part_svc object (see <A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>).
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: pkg_svc.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/part_pkg.html">the FS::part_pkg manpage</A>, <A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>, schema.html from the base
-documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::port - Object methods for port records</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::port - Object methods for port records</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::port;</PRE>
-<PRE>
- $record = new FS::port \%hash;
- $record = new FS::port { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<PRE>
- $session = $port-&gt;session;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>An FS::port object represents an individual port on a NAS. FS::port inherits
-from FS::Record. The following fields are currently supported:</P>
-<DL>
-<DT><STRONG><A NAME="item_portnum_%2D_primary_key">portnum - primary key</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_ip_%2D_IP_address_of_this_port">ip - IP address of this port</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_nasport_%2D_port_number_on_the_NAS">nasport - port number on the NAS</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_nasnum_%2D_NAS_this_port_is_on_%2D_see_FS%3A%3Anas">nasnum - NAS this port is on - see <A HREF=".././FS/nas.html">the FS::nas manpage</A></A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new port. To add the example to the database, see <A HREF="#insert">insert</A>.
-<P>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 <EM>hash</EM> method.</P>
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Delete this record from the database.
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P>
-<DT><STRONG><A NAME="item_session">session</A></STRONG><BR>
-<DD>
-Returns the currently open session on this port, or if no session is currently
-open, the most recent session. See <A HREF=".././FS/session.html">the FS::session manpage</A>.
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: port.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>The author forgot to customize this manpage.</P>
-<P>The session method won't deal well if you have multiple open sessions on a
-port, for example if your RADIUS server drops <STRONG>stop</STRONG> 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.</P>
-<P>If you think the above refers multiple user logins you need to read the
-manpages again.</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, schema.html from the base documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::prepay_credit - Object methods for prepay_credit records</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::prepay_credit - Object methods for prepay_credit records</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::prepay_credit;</PRE>
-<PRE>
- $record = new FS::prepay_credit \%hash;
- $record = new FS::prepay_credit {
- 'identifier' =&gt; '4198123455512121'
- 'amount' =&gt; '19.95',
- };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>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:</P>
-<DL>
-<DT><STRONG><A NAME="item_field_%2D_description">field - description</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_identifier_%2D_identifier_entered_by_the_user_to_r">identifier - identifier entered by the user to receive the credit</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_amount_%2D_amount_of_the_credit">amount - amount of the credit</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new pre-paid credit. To add the example to the database, see
-<A HREF="#insert">insert</A>.
-<P>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 <EM>hash</EM> method.</P>
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Delete this record from the database.
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: prepay_credit.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, schema.html from the base documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::session - Object methods for session records</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::session - Object methods for session records</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::session;</PRE>
-<PRE>
- $record = new FS::session \%hash;
- $record = new FS::session {
- 'portnum' =&gt; 1,
- 'svcnum' =&gt; 2,
- 'login' =&gt; $timestamp,
- 'logout' =&gt; $timestamp,
- };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<PRE>
- $error = $record-&gt;nas_heartbeat($timestamp);</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>An FS::session object represents an user login session. FS::session inherits
-from FS::Record. The following fields are currently supported:</P>
-<DL>
-<DT><STRONG><A NAME="item_sessionnum_%2D_primary_key">sessionnum - primary key</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_portnum_%2D_NAS_port_for_this_session_%2D_see_FS%3">portnum - NAS port for this session - see <A HREF=".././FS/port.html">the FS::port manpage</A></A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_svcnum_%2D_User_for_this_session_%2D_see_FS%3A%3As">svcnum - User for this session - see <A HREF=".././FS/svc_acct.html">the FS::svc_acct manpage</A></A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_login_%2D_timestamp_indicating_the_beginning_of_th">login - timestamp indicating the beginning of this user session.</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_logout_%2D_timestamp_indicating_the_end_of_this_us">logout - timestamp indicating the end of this user session. May be null,
- which indicates a currently open session.</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new session. To add the session to the database, see <A HREF="#insert">insert</A>.
-<P>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 <EM>hash</EM> method.</P>
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-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.
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Delete this record from the database.
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-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.
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P>
-<DT><STRONG><A NAME="item_nas_heartbeat">nas_heartbeat</A></STRONG><BR>
-<DD>
-Heartbeats the nas associated with this session (see <A HREF=".././FS/nas.html">the FS::nas manpage</A>).
-<P></P>
-<DT><STRONG><A NAME="item_svc_acct">svc_acct</A></STRONG><BR>
-<DD>
-Returns the svc_acct record associated with this session (see <A HREF=".././FS/svc_acct.html">the FS::svc_acct manpage</A>).
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: session.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>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*</P>
-<P>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).</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, schema.html from the base documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::svc_Common - Object method for all svc_ records</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::svc_Common - Object method for all svc_ records</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<P>use FS::svc_Common;</P>
-<P>@ISA = qw( FS::svc_Common );</P>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>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.</P>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-<P>The additional fields pkgnum and svcpart (see <A HREF=".././FS/cust_svc.html">the FS::cust_svc manpage</A>) should be
-defined. An FS::cust_svc record will be created and inserted.</P>
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Deletes this account from the database. If there is an error, returns the
-error, otherwise returns false.
-<P>The corresponding FS::cust_svc record will be deleted as well.</P>
-<P></P>
-<DT><STRONG><A NAME="item_setfixed">setfixed</A></STRONG><BR>
-<DD>
-Sets any fixed fields for this service (see <A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>). If there is an
-error, returns the error, otherwise returns the FS::part_svc object (use <CODE>ref()</CODE>
-to test the return). Usually called by the check method.
-<P></P>
-<DT><STRONG><A NAME="item_setdefault">setdefault</A></STRONG><BR>
-<DD>
-Sets all fields to their defaults (see <A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>), overriding their
-current values. If there is an error, returns the error, otherwise returns
-the FS::part_svc object (use <CODE>ref()</CODE> to test the return).
-<P></P>
-<DT><STRONG><A NAME="item_cust_svc">cust_svc</A></STRONG><BR>
-<DD>
-Returns the cust_svc record associated with this svc_ record, as a FS::cust_svc
-object (see <A HREF=".././FS/cust_svc.html">the FS::cust_svc manpage</A>).
-<P></P>
-<DT><STRONG><A NAME="item_suspend">suspend</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_unsuspend">unsuspend</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_cancel">cancel</A></STRONG><BR>
-<DD>
-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 <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>).
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: svc_Common.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>The setfixed method return value.</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/cust_svc.html">the FS::cust_svc manpage</A>, <A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>, <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>, schema.html
-from the base documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::svc_acct - Object methods for svc_acct records</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::svc_acct - Object methods for svc_acct records</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::svc_acct;</PRE>
-<PRE>
- $record = new FS::svc_acct \%hash;
- $record = new FS::svc_acct { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<PRE>
- $error = $record-&gt;suspend;</PRE>
-<PRE>
- $error = $record-&gt;unsuspend;</PRE>
-<PRE>
- $error = $record-&gt;cancel;</PRE>
-<PRE>
- %hash = $record-&gt;radius;</PRE>
-<PRE>
- %hash = $record-&gt;radius_reply;</PRE>
-<PRE>
- %hash = $record-&gt;radius_check;</PRE>
-<PRE>
- $domain = $record-&gt;domain;</PRE>
-<PRE>
- $svc_domain = $record-&gt;svc_domain;</PRE>
-<PRE>
- $email = $record-&gt;email;</PRE>
-<PRE>
- $seconds_since = $record-&gt;seconds_since($timestamp);</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>An FS::svc_acct object represents an account. FS::svc_acct inherits from
-FS::svc_Common. The following fields are currently supported:</P>
-<DL>
-<DT><STRONG><A NAME="item_key">svcnum - primary key (assigned automatcially for new accounts)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_username">username</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item__password_%2D_generated_if_blank">_password - generated if blank</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_presence">popnum - Point of presence (see <A HREF=".././FS/svc_acct_pop.html">the FS::svc_acct_pop manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_uid">uid</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_gid">gid</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_finger_%2D_GECOS">finger - GECOS</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_blank">dir - set automatically if blank (and uid is not)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_shell">shell</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_quota_%2D_%28unimplementd%29">quota - (unimplementd)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_slipip_%2D_IP_address">slipip - IP address</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_seconds_%2D">seconds -</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_domsvc_%2D_svcnum_from_svc_domain">domsvc - svcnum from svc_domain</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_radius_Radius_Attribute_%2D_Radius%2DAttribute">radius_<EM>Radius_Attribute</EM> - <EM>Radius-Attribute</EM></A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_domsvc_%2D_service_number_of_svc_domain_with_which">domsvc - service number of svc_domain with which to associate</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new account. To add the account to the database, see <A HREF="#insert">insert</A>.
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this account to the database. If there is an error, returns the error,
-otherwise returns false.
-<P>The additional fields pkgnum and svcpart (see <A HREF=".././FS/cust_svc.html">the FS::cust_svc manpage</A>) should be
-defined. An FS::cust_svc record will be created and inserted.</P>
-<P>If the configuration value (see <A HREF=".././FS/Conf.html">the FS::Conf manpage</A>) shellmachine exists, and the
-username, uid, and dir fields are defined, the <CODE>command(s)</CODE> specified in
-the shellmachine-useradd configuration are added to the job queue (see
-<A HREF=".././FS/queue.html">the FS::queue manpage</A> and <A HREF=".././bin/freeside-queued.html">the freeside-queued manpage</A>) 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,</P>
-<PRE>
- useradd -d $dir -m -s $shell -u $uid $username</PRE>
-<P>is the default. If the shellmachine-useradd configuration file exists but
-it empty,</P>
-<PRE>
- cp -pr /etc/skel $dir; chown -R $uid.$gid $dir</PRE>
-<P>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.</P>
-<P>(TODOC: cyrus config file, <A HREF=".././FS/queue.html">the FS::queue manpage</A> and <A HREF=".././bin/freeside-queued.html">the freeside-queued manpage</A>)</P>
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Deletes this account from the database. If there is an error, returns the
-error, otherwise returns false.
-<P>The corresponding FS::cust_svc record will be deleted as well.</P>
-<P>If the configuration value (see <A HREF=".././FS/Conf.html">the FS::Conf manpage</A>) shellmachine exists, the
-<CODE>command(s)</CODE> specified in the shellmachine-userdel configuration file are
-added to the job queue (see <A HREF=".././FS/queue.html">the FS::queue manpage</A> and <A HREF=".././bin/freeside-queued.html">the freeside-queued manpage</A>) 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,</P>
-<PRE>
- userdel $username</PRE>
-<P>is the default. If the shellmachine-userdel configuration file exists but
-is empty,</P>
-<PRE>
- rm -rf $dir</PRE>
-<P>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.</P>
-<P>(TODOC: cyrus config file)</P>
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-<P>If the configuration value (see <A HREF=".././FS/Conf.html">the FS::Conf manpage</A>) shellmachine exists, and the
-dir field has changed, the <CODE>command(s)</CODE> specified in the shellmachine-usermod
-configuraiton file are added to the job queue (see <A HREF=".././FS/queue.html">the FS::queue manpage</A> and
-<A HREF=".././bin/freeside-queued.html">the freeside-queued manpage</A>) 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,</P>
-<PRE>
- [ -d $old_dir ] &amp;&amp; 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
- )</PRE>
-<P>is the default. This behaviour can be surpressed by setting
-$FS::svc_acct::nossh_hack true.</P>
-<P></P>
-<DT><STRONG><A NAME="item_suspend">suspend</A></STRONG><BR>
-<DD>
-Suspends this account by prefixing *SUSPENDED* to the password. If there is an
-error, returns the error, otherwise returns false.
-<P>Called by the suspend method of FS::cust_pkg (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>).</P>
-<P></P>
-<DT><STRONG><A NAME="item_unsuspend">unsuspend</A></STRONG><BR>
-<DD>
-Unsuspends this account by removing *SUSPENDED* from the password. If there is
-an error, returns the error, otherwise returns false.
-<P>Called by the unsuspend method of FS::cust_pkg (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>).</P>
-<P></P>
-<DT><STRONG><A NAME="item_cancel">cancel</A></STRONG><BR>
-<DD>
-Just returns false (no error) for now.
-<P>Called by the cancel method of FS::cust_pkg (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>).</P>
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P>Sets any fixed values; see <A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>.</P>
-<P></P>
-<DT><STRONG><A NAME="item_radius">radius</A></STRONG><BR>
-<DD>
-Depriciated, use radius_reply instead.
-<P></P>
-<DT><STRONG><A NAME="item_radius_reply">radius_reply</A></STRONG><BR>
-<DD>
-Returns key/value pairs, suitable for assigning to a hash, for any RADIUS
-reply attributes of this record.
-<P>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.</P>
-<P></P>
-<DT><STRONG><A NAME="item_radius_check">radius_check</A></STRONG><BR>
-<DD>
-Returns key/value pairs, suitable for assigning to a hash, for any RADIUS
-check attributes of this record.
-<P>Accessing RADIUS attributes directly is not supported and will break in the
-future.</P>
-<P></P>
-<DT><STRONG><A NAME="item_domain">domain</A></STRONG><BR>
-<DD>
-Returns the domain associated with this account.
-<P></P>
-<DT><STRONG><A NAME="item_svc_domain">svc_domain</A></STRONG><BR>
-<DD>
-Returns the FS::svc_domain record for this account's domain (see
-<A HREF=".././FS/svc_domain.html">the FS::svc_domain manpage</A>.
-<P></P>
-<DT><STRONG><A NAME="item_cust_svc">cust_svc</A></STRONG><BR>
-<DD>
-Returns the FS::cust_svc record for this account (see <A HREF=".././FS/cust_svc.html">the FS::cust_svc manpage</A>).
-<P>sub cust_svc {
- my $self = shift;
- qsearchs( 'cust_svc', { 'svcnum' =&gt; $self-&gt;svcnum } );
-}</P>
-<P></P>
-<DT><STRONG><A NAME="item_email">email</A></STRONG><BR>
-<DD>
-Returns an email address associated with the account.
-<P></P>
-<DT><STRONG><A NAME="item_seconds_since_TIMESTAMP">seconds_since TIMESTAMP</A></STRONG><BR>
-<DD>
-Returns the number of seconds this account has been online since TIMESTAMP.
-See <A HREF=".././FS/session.html">the FS::session manpage</A>
-<P>TIMESTAMP is specified as a UNIX timestamp; see <EM>perlfunc/``time''</EM>. Also see
-<A HREF="../Time/Local.html">the Time::Local manpage</A> and <A HREF="../Date/Parse.html">the Date::Parse manpage</A> for conversion functions.</P>
-<P></P>
-<DT><STRONG><A NAME="item_ssh">ssh</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: svc_acct.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>The bits which ssh should fork before doing so (or maybe queue jobs for a
-daemon).</P>
-<P>The $recref stuff in sub check should be cleaned up.</P>
-<P>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.</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/svc_Common.html">the FS::svc_Common manpage</A>, edit/part_svc.cgi from an installed web interface,
-export.html from the base documentation, <A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/Conf.html">the FS::Conf manpage</A>,
-<A HREF=".././FS/cust_svc.html">the FS::cust_svc manpage</A>, <A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>, <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>, <A HREF=".././FS/queue.html">the FS::queue manpage</A>,
-<A HREF=".././bin/freeside-queued.html">the freeside-queued manpage</A>), <A HREF="../Net/SSH.html">the Net::SSH manpage</A>, <A HREF="#item_ssh">ssh</A>, <A HREF=".././FS/svc_acct_pop.html">the FS::svc_acct_pop manpage</A>,
-schema.html from the base documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::svc_acct_pop - Object methods for svc_acct_pop records</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#subroutines">SUBROUTINES</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::svc_acct_pop - Object methods for svc_acct_pop records</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::svc_acct_pop;</PRE>
-<PRE>
- $record = new FS::svc_acct_pop \%hash;
- $record = new FS::svc_acct_pop { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<PRE>
- $html = FS::svc_acct_pop::popselector( $popnum, $state );</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>An FS::svc_acct object represents an point of presence. FS::svc_acct_pop
-inherits from FS::Record. The following fields are currently supported:</P>
-<DL>
-<DT><STRONG><A NAME="item_key">popnum - primary key (assigned automatically for new accounts)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_city">city</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_state">state</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_ac_%2D_area_code">ac - area code</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_exch_%2D_exchange">exch - exchange</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_loc_%2D_rest_of_number">loc - rest of number</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new point of presence (if only it were that easy!). To add the
-point of presence to the database, see <A HREF="#insert">insert</A>.
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this point of presence to the database. If there is an error, returns the
-error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Removes this point of presence from the database.
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P>
-<DT><STRONG><A NAME="item_text">text</A></STRONG><BR>
-<DD>
-Returns:
-<P>``$city, $state ($ac)/$exch''</P>
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="subroutines">SUBROUTINES</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_popselector_%5B_POPNUM_%5B_STATE_%5D_%5D">popselector [ POPNUM [ STATE ] ]</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: svc_acct_pop.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>It should be renamed to part_pop.</P>
-<P>popselector? putting web ui components in here? they should probably live
-somewhere else...</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/svc_acct.html">the FS::svc_acct manpage</A>, <A HREF=".././FS/part_pop_local.html">the FS::part_pop_local manpage</A>, schema.html from the
-base documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::svc_acct_sm - Object methods for svc_acct_sm records</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#warning">WARNING</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::svc_acct_sm - Object methods for svc_acct_sm records</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::svc_acct_sm;</PRE>
-<PRE>
- $record = new FS::svc_acct_sm \%hash;
- $record = new FS::svc_acct_sm { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<PRE>
- $error = $record-&gt;suspend;</PRE>
-<PRE>
- $error = $record-&gt;unsuspend;</PRE>
-<PRE>
- $error = $record-&gt;cancel;</PRE>
-<P>
-<HR>
-<H1><A NAME="warning">WARNING</A></H1>
-<P>FS::svc_acct_sm is <STRONG>depreciated</STRONG>. This class is only included for migration
-purposes. See <A HREF=".././FS/svc_forward.html">the FS::svc_forward manpage</A>.</P>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>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:</P>
-<DL>
-<DT><STRONG><A NAME="item_key">svcnum - primary key (assigned automatcially for new accounts)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_domain">domsvc - svcnum of the virtual domain (see <A HREF=".././FS/svc_domain.html">the FS::svc_domain manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_account">domuid - uid of the target account (see <A HREF=".././FS/svc_acct.html">the FS::svc_acct manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_domuser_%2D_virtual_username">domuser - virtual username</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new virtual mail alias. To add the virtual mail alias to the
-database, see <A HREF="#insert">insert</A>.
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this virtual mail alias to the database. If there is an error, returns
-the error, otherwise returns false.
-<P>The additional fields pkgnum and svcpart (see <A HREF=".././FS/cust_svc.html">the FS::cust_svc manpage</A>) should be
-defined. An FS::cust_svc record will be created and inserted.</P>
-<PRE>
- #If the configuration values (see L&lt;FS::Conf&gt;) 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&lt;dot-qmail/&quot;EXTENSION ADDRESSES&quot;&gt;).
- #This behaviour can be surpressed by setting $FS::svc_acct_sm::nossh_hack true.</PRE>
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Deletes this virtual mail alias from the database. If there is an error,
-returns the error, otherwise returns false.
-<P>The corresponding FS::cust_svc record will be deleted as well.</P>
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_suspend">suspend</A></STRONG><BR>
-<DD>
-Just returns false (no error) for now.
-<P>Called by the suspend method of FS::cust_pkg (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>).</P>
-<P></P>
-<DT><STRONG><A NAME="item_unsuspend">unsuspend</A></STRONG><BR>
-<DD>
-Just returns false (no error) for now.
-<P>Called by the unsuspend method of FS::cust_pkg (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>).</P>
-<P></P>
-<DT><STRONG><A NAME="item_cancel">cancel</A></STRONG><BR>
-<DD>
-Just returns false (no error) for now.
-<P>Called by the cancel method of FS::cust_pkg (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>).</P>
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P>Sets any fixed values; see <A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>.</P>
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: svc_acct_sm.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>The remote commands should be configurable.</P>
-<P>The $recref stuff in sub check should be cleaned up.</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/svc_forward.html">the FS::svc_forward manpage</A></P>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/Conf.html">the FS::Conf manpage</A>, <A HREF=".././FS/cust_svc.html">the FS::cust_svc manpage</A>, <A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>, <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>,
-<A HREF=".././FS/svc_acct.html">the FS::svc_acct manpage</A>, <A HREF=".././FS/svc_domain.html">the FS::svc_domain manpage</A>, <A HREF="../Net/SSH.html">the Net::SSH manpage</A>, <EM>ssh</EM>, <EM>dot-qmail</EM>,
-schema.html from the base documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::svc_domain - Object methods for svc_domain records</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::svc_domain - Object methods for svc_domain records</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::svc_domain;</PRE>
-<PRE>
- $record = new FS::svc_domain \%hash;
- $record = new FS::svc_domain { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<PRE>
- $error = $record-&gt;suspend;</PRE>
-<PRE>
- $error = $record-&gt;unsuspend;</PRE>
-<PRE>
- $error = $record-&gt;cancel;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>An FS::svc_domain object represents a domain. FS::svc_domain inherits from
-FS::svc_Common. The following fields are currently supported:</P>
-<DL>
-<DT><STRONG><A NAME="item_key">svcnum - primary key (assigned automatically for new accounts)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_domain">domain</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_catchall_%2D_optional_svcnum_of_an_svc_acct_record">catchall - optional svcnum of an svc_acct record, designating an email catchall account.</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new domain. To add the domain to the database, see <A HREF="#insert">insert</A>.
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this domain to the database. If there is an error, returns the error,
-otherwise returns false.
-<P>The additional fields <EM>pkgnum</EM> and <EM>svcpart</EM> (see <A HREF=".././FS/cust_svc.html">the FS::cust_svc manpage</A>) should be
-defined. An FS::cust_svc record will be created and inserted.</P>
-<P>The additional field <EM>action</EM> should be set to <EM>N</EM> for new domains or <EM>M</EM>
-for transfers.</P>
-<P>A registration or transfer email will be submitted unless
-$FS::svc_domain::whois_hack is true.</P>
-<P>The additional field <EM>email</EM> can be used to manually set the admin contact
-email address on this email. Otherwise, the svc_acct records for this package
-(see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>) are searched. If there is exactly one svc_acct record
-in the same package, it is automatically used. Otherwise an error is returned.</P>
-<P>If any <EM>soamachine</EM> configuration file exists, an SOA record is added to
-the domain_record table (see &lt;FS::domain_record&gt;).</P>
-<P>If any machines are defined in the <EM>nsmachines</EM> configuration file, NS
-records are added to the domain_record table (see <A HREF=".././FS/domain_record.html">the FS::domain_record manpage</A>).</P>
-<P>If any machines are defined in the <EM>mxmachines</EM> configuration file, MX
-records are added to the domain_record table (see <A HREF=".././FS/domain_record.html">the FS::domain_record manpage</A>).</P>
-<P>If a machine is defined in the <EM>shellmachine</EM> configuration value, the
-<EM>qmailmachines</EM> configuration file exists, and the <EM>catchall</EM> field points
-to an an account with a home directory (see <A HREF=".././FS/svc_acct.html">the FS::svc_acct manpage</A>), the command:</P>
-<PRE>
- [ -e $dir/.qmail-$qdomain-defualt ] || {
- touch $dir/.qmail-$qdomain-default;
- chown $uid:$gid $dir/.qmail-$qdomain-default;
- }</PRE>
-<P>is executed on shellmachine via ssh (see <EM>dot-qmail/``EXTENSION ADDRESSES''</EM>).
-This behaviour can be supressed by setting $FS::svc_domain::nossh_hack true.</P>
-<P>a machine is defined
-in the</P>
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Deletes this domain from the database. If there is an error, returns the
-error, otherwise returns false.
-<P>The corresponding FS::cust_svc record will be deleted as well.</P>
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_suspend">suspend</A></STRONG><BR>
-<DD>
-Just returns false (no error) for now.
-<P>Called by the suspend method of FS::cust_pkg (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>).</P>
-<P></P>
-<DT><STRONG><A NAME="item_unsuspend">unsuspend</A></STRONG><BR>
-<DD>
-Just returns false (no error) for now.
-<P>Called by the unsuspend method of FS::cust_pkg (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>).</P>
-<P></P>
-<DT><STRONG><A NAME="item_cancel">cancel</A></STRONG><BR>
-<DD>
-Just returns false (no error) for now.
-<P>Called by the cancel method of FS::cust_pkg (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>).</P>
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P>Sets any fixed values; see <A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>.</P>
-<P></P>
-<DT><STRONG><A NAME="item_whois">whois</A></STRONG><BR>
-<DD>
-Returns the Net::Whois::Domain object (see <A HREF="../Net/Whois.html">the Net::Whois manpage</A>) for this domain, or
-undef if the domain is not found in whois.
-<P>(If $FS::svc_domain::whois_hack is true, returns that in all cases instead.)</P>
-<P></P>
-<DT><STRONG><A NAME="item__whois">_whois</A></STRONG><BR>
-<DD>
-Depriciated.
-<P></P>
-<DT><STRONG><A NAME="item_submit_internic">submit_internic</A></STRONG><BR>
-<DD>
-Submits a registration email for this domain.
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: svc_domain.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>All BIND/DNS fields should be included (and exported).</P>
-<P>Delete doesn't send a registration template.</P>
-<P>All registries should be supported.</P>
-<P>Should change action to a real field.</P>
-<P>The $recref stuff in sub check should be cleaned up.</P>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/svc_Common.html">the FS::svc_Common manpage</A>, <A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/Conf.html">the FS::Conf manpage</A>, <A HREF=".././FS/cust_svc.html">the FS::cust_svc manpage</A>,
-<A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>, <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>, <A HREF="../Net/Whois.html">the Net::Whois manpage</A>, <EM>ssh</EM>,
-<EM>dot-qmail</EM>, schema.html from the base documentation, config.html from the
-base documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::svc_www - Object methods for svc_www records</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::svc_www - Object methods for svc_www records</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::svc_www;</PRE>
-<PRE>
- $record = new FS::svc_www \%hash;
- $record = new FS::svc_www { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<PRE>
- $error = $record-&gt;suspend;</PRE>
-<PRE>
- $error = $record-&gt;unsuspend;</PRE>
-<PRE>
- $error = $record-&gt;cancel;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>An FS::svc_www object represents an web virtual host. FS::svc_www inherits
-from FS::svc_Common. The following fields are currently supported:</P>
-<DL>
-<DT><STRONG><A NAME="item_svcnum_%2D_primary_key">svcnum - primary key</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_recnum_%2D_DNS_%60A%27_record_corresponding_to_thi">recnum - DNS `A' record corresponding to this web virtual host. (see <A HREF=".././FS/domain_record.html">the FS::domain_record manpage</A>)</A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_account">usersvc - account (see <A HREF=".././FS/svc_acct.html">the FS::svc_acct manpage</A>) corresponding to this web virtual host.</A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Creates a new web virtual host. To add the record to the database, see
-<A HREF="#insert">insert</A>.
-<P>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 <EM>hash</EM> method.</P>
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-<P>The additional fields pkgnum and svcpart (see <A HREF=".././FS/cust_svc.html">the FS::cust_svc manpage</A>) should be
-defined. An FS::cust_svc record will be created and inserted.</P>
-<P>If the configuration values (see <A HREF=".././FS/Conf.html">the FS::Conf manpage</A>) <EM>apachemachine</EM>, and
-<EM>apacheroot</EM> exist, the command:</P>
-<PRE>
- mkdir $apacheroot/$zone;
- chown $username $apacheroot/$zone;
- ln -s $apacheroot/$zone $homedir/$zone</PRE>
-<P><EM>$zone</EM> is the DNS A record pointed to by <EM>recnum</EM>
-<EM>$username</EM> is the username pointed to by <EM>usersvc</EM>
-<EM>$homedir</EM> is that user's home directory</P>
-<P>is executed on <EM>apachemachine</EM> via ssh. This behaviour can be surpressed by
-setting $FS::svc_www::nossh_hack true.</P>
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Delete this record from the database.
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Replaces the OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_suspend">suspend</A></STRONG><BR>
-<DD>
-Called by the suspend method of FS::cust_pkg (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>).
-<P></P>
-<DT><STRONG><A NAME="item_unsuspend">unsuspend</A></STRONG><BR>
-<DD>
-Called by the unsuspend method of FS::cust_pkg (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>).
-<P></P>
-<DT><STRONG><A NAME="item_cancel">cancel</A></STRONG><BR>
-<DD>
-Called by the cancel method of FS::cust_pkg (see <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>).
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: svc_www.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/svc_Common.html">the FS::svc_Common manpage</A>, <A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/domain_record.html">the FS::domain_record manpage</A>, <A HREF=".././FS/cust_svc.html">the FS::cust_svc manpage</A>,
-<A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>, <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>, schema.html from the base documentation.</P>
-
-</BODY>
-
-</HTML>
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 @@
-<HTML>
-<HEAD>
-<TITLE>FS::type_pkgs - Object methods for type_pkgs records</TITLE>
-<LINK REV="made" HREF="mailto:perl@packages.debian.org">
-</HEAD>
-
-<BODY>
-
-<A NAME="__index__"></A>
-<!-- INDEX BEGIN -->
-
-<UL>
-
- <LI><A HREF="#name">NAME</A></LI>
- <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
- <LI><A HREF="#description">DESCRIPTION</A></LI>
- <LI><A HREF="#methods">METHODS</A></LI>
- <LI><A HREF="#version">VERSION</A></LI>
- <LI><A HREF="#bugs">BUGS</A></LI>
- <LI><A HREF="#see also">SEE ALSO</A></LI>
-</UL>
-<!-- INDEX END -->
-
-<HR>
-<P>
-<H1><A NAME="name">NAME</A></H1>
-<P>FS::type_pkgs - Object methods for type_pkgs records</P>
-<P>
-<HR>
-<H1><A NAME="synopsis">SYNOPSIS</A></H1>
-<PRE>
- use FS::type_pkgs;</PRE>
-<PRE>
- $record = new FS::type_pkgs \%hash;
- $record = new FS::type_pkgs { 'column' =&gt; 'value' };</PRE>
-<PRE>
- $error = $record-&gt;insert;</PRE>
-<PRE>
- $error = $new_record-&gt;replace($old_record);</PRE>
-<PRE>
- $error = $record-&gt;delete;</PRE>
-<PRE>
- $error = $record-&gt;check;</PRE>
-<P>
-<HR>
-<H1><A NAME="description">DESCRIPTION</A></H1>
-<P>An FS::type_pkgs record links an agent type (see <A HREF=".././FS/agent_type.html">the FS::agent_type manpage</A>) to a
-billing item definition (see <A HREF=".././FS/part_pkg.html">the FS::part_pkg manpage</A>). FS::type_pkgs inherits from
-FS::Record. The following fields are currently supported:</P>
-<DL>
-<DT><STRONG><A NAME="item_typenum_%2D_Agent_type%2C_see_FS%3A%3Aagent_type">typenum - Agent type, see <A HREF=".././FS/agent_type.html">the FS::agent_type manpage</A></A></STRONG><BR>
-<DD>
-<DT><STRONG><A NAME="item_pkgpart_%2D_Billing_item_definition%2C_see_FS%3A%3">pkgpart - Billing item definition, see <A HREF=".././FS/part_pkg.html">the FS::part_pkg manpage</A></A></STRONG><BR>
-<DD>
-</DL>
-<P>
-<HR>
-<H1><A NAME="methods">METHODS</A></H1>
-<DL>
-<DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
-<DD>
-Create a new record. To add the record to the database, see <A HREF="#insert">insert</A>.
-<P></P>
-<DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
-<DD>
-Adds this record to the database. If there is an error, returns the error,
-otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
-<DD>
-Deletes this record from the database. If there is an error, returns the
-error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
-<DD>
-Replaces OLD_RECORD with this one in the database. If there is an error,
-returns the error, otherwise returns false.
-<P></P>
-<DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
-<DD>
-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.
-<P></P></DL>
-<P>
-<HR>
-<H1><A NAME="version">VERSION</A></H1>
-<P>$Id: type_pkgs.html,v 1.3 2002-01-29 17:42:46 ivan Exp $</P>
-<P>
-<HR>
-<H1><A NAME="bugs">BUGS</A></H1>
-<P>
-<HR>
-<H1><A NAME="see also">SEE ALSO</A></H1>
-<P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/agent_type.html">the FS::agent_type manpage</A>, <A HREF="../FS/part_pkgs.html">the FS::part_pkgs manpage</A>, schema.html from the base
-documentation.</P>
-
-</BODY>
-
-</HTML>